Skip to content

build: move local path dependencies to remote packages for clean clone/build #12

@PsychQuantClaw

Description

@PsychQuantClaw

Description

swift build can fail from a clean clone because Package.swift still references several local path dependencies that are not present after cloning the repo (for example under packages/... and/or similar local-only directories).

In the earlier reproduction on a fresh macdoc clone, build/setup work ran into missing local package paths and had to be patched around manually. The underlying issue is that the package graph is not fully reproducible from a clean environment.

Why this is a problem

This breaks clean install/build reproducibility:

  • a fresh clone cannot reliably build without extra local package directories being prepared first
  • contributors / CI / new machines may fail immediately
  • the repo implicitly depends on local filesystem state that is not captured in Git

Suggestion

Please consider replacing missing local path-based dependencies with remote package references (url:) wherever possible, including the private/internal packages that are expected to come from GitHub rather than local checkout paths.

Examples of the intended direction:

  • doc-converter-swift
  • word-to-md-swift
  • ooxml-swift
  • markdown-swift
  • marker-swift
  • pdf-to-latex-swift
  • apabib-* packages

If some packages must remain private, they should still be referenced as remote Git dependencies instead of untracked local directories.

Steps to reproduce

git clone https://github.com/PsychQuant/macdoc.git
cd macdoc
swift build -c release

Expected behavior

A clean clone should build successfully without requiring manual creation/cloning of extra local package directories.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions