Skip to content

Enhancement: add macOS smoke automation and improve macOS quick start #4757

@August1314

Description

@August1314

Summary

MinerU already documents support for macOS 14+ and Apple Silicon, but the repository still lacks two pieces that would make the macOS path much easier to trust and maintain:

  1. a lightweight macOS smoke automation job in CI
  2. a more explicit macOS-first quick start for first install / first run / first model download

I think these two changes are a better fit for the open-source repository than adding a new end-user shell script entrypoint.

Current gap

The current docs already promise:

  • macOS 14+ support
  • Apple Silicon / MPS support
  • uv as a recommended install path
  • CLI / API / Gradio as supported entrypoints

But in practice:

  • CI is currently Ubuntu-centric, so macOS installation regressions are harder to catch early
  • the quick start does not clearly spell out the recommended first verification sequence on macOS
  • first-time model download behavior can still be confusing for new macOS users, especially on Apple Silicon and in regions where huggingface is unstable

This is not a duplicate of existing macOS runtime bug reports. The proposal here is specifically about CI coverage and onboarding/documentation gaps.

Related but not duplicate issues

There is already enough evidence that macOS is an active user path, not an edge case. Examples:

Related docs/workflow context:

These issues span installer UX, Apple Silicon dependency/runtime behavior, MPS-related execution expectations, and documentation/workflow maintenance.

Proposal

1. Add a macOS smoke automation job

Suggested scope:

  • runs-on: macos-latest
  • Python 3.12
  • install via uv venv --python 3.12 + uv pip install .[core]
  • smoke checks only:
    • mineru --version
    • mineru-models-download --help
    • mineru-api --help
    • mineru-gradio --help

Out of scope for the first iteration:

  • real model downloads
  • long parsing jobs
  • network-sensitive end-to-end validation

2. Improve the macOS quick start

Suggested additions in both Chinese and English docs:

  • recommend uv first on Apple Silicon
  • suggest a first verification sequence:
    • mineru --version
    • mineru-models-download --help
    • mineru-api --help
    • mineru-gradio --help
  • clarify that the first real parse may download models, which is expected
  • recommend export MINERU_MODEL_SOURCE=modelscope for users in regions where huggingface is unstable
  • recommend starting with -b pipeline for the most predictable first run on macOS

Non-goals

For the first upstream contribution, I do not recommend:

  • adding a new repository-level scripts/ entrypoint
  • adding .command launchers
  • auto-installing system dependencies like uv or brew
  • introducing shell wrappers that manage ~/mineru.json or local model state on behalf of users

Those workflows may be useful locally, but they seem more like personal/operator tooling than the minimum maintainable surface for the core repository.

Why this direction

From the repository + website + docs perspective, this seems like the lowest-risk, highest-acceptance contribution path:

  • aligns with support already promised in README/docs
  • adds validation without expanding the runtime surface area
  • improves macOS onboarding without competing with the official client / hosted product surfaces
  • matches the kind of small documentation-oriented improvements that have already been accepted upstream

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationenhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions