Skip to content

packaging: add conda recipe (conda-forge staged-recipes candidate) - #111

Merged
andre-merzky merged 6 commits into
develfrom
feature/conda
Aug 19, 2026
Merged

packaging: add conda recipe (conda-forge staged-recipes candidate)#111
andre-merzky merged 6 commits into
develfrom
feature/conda

Conversation

@andre-merzky

Copy link
Copy Markdown
Member

Adds recipe/meta.yaml: pure-python noarch recipe pinned to the released radical-orbit 0.3.0 sdist (sha256 verified; devel's VERSION=0.4.0 is unreleased — the recipe tracks PyPI). All runtime deps resolve on conda-forge (msgpack maps to conda's msgpack-python; psij-python is noarch there); depends on rhapsody-py, so submission goes into one interdependent staged-recipes PR together with the rhapsody and asyncflow recipes.

The authoritative copy will live in the conda-forge feedstock after staged-recipes submission; this in-repo copy is the working reference.

Verification: jinja renders and YAML parses; the sdist ships LICENSE.md, VERSION, and a pregenerated _version.py (git-describe versioning is harmless for tarball builds).

🤖 Generated with Claude Code

andre-merzky and others added 4 commits August 13, 2026 15:18
Pure-python noarch. All run deps resolve on conda-forge (msgpack ->
msgpack-python, psij-python is noarch there); depends on rhapsody-py,
so the rhapsody feedstock must merge first.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@andre-merzky

Copy link
Copy Markdown
Member Author

/gemini review

1 similar comment
@andre-merzky

Copy link
Copy Markdown
Member Author

/gemini review

Not noarch: setup.py templates the build interpreter's purelib path
(lib/pythonX.Y/site-packages) into radical-orbit-endpoint-wrapper.sh,
so one build cannot serve all python versions; build per-python with
skip on <3.10 instead. doc_url pointed at a 404 (real slug has no
hyphen: radicalorbit.readthedocs.io). wheel added to host to not
depend on setuptools bundling bdist_wheel.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@andre-merzky

Copy link
Copy Markdown
Member Author

Local review (gemini unresponsive; Claude Code fallback, medium effort) — findings addressed in the latest commit:

  • dropped noarch: python: setup.py templates the build interpreter's purelib path (lib/pythonX.Y/site-packages) into radical-orbit-endpoint-wrapper.sh, so one build cannot serve all Python versions; now builds per-python (skip <3.10)
  • doc_url fixed: radical-orbit.readthedocs.io is a 404, the existing project is radicalorbit.readthedocs.io
  • wheel added to host requirements

Upstream flag needing a decision before the conda-forge submission: the 0.3.0 sdist's LICENSE.md contains the LGPL-3.0 license text while setup.py/PKG-INFO/classifiers all say MIT — the recipe currently declares MIT and bundles that LICENSE.md, which conda-forge reviewers will flag as contradictory. Needs the intended license confirmed and LICENSE.md fixed upstream (ideally in the next release, since conda-forge builds from the sdist).

@andre-merzky
andre-merzky merged commit e39e9b3 into devel Aug 19, 2026
5 checks passed
@andre-merzky
andre-merzky deleted the feature/conda branch August 19, 2026 01:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant