Skip to content

Add native Stone manifest support#359

Merged
KevinRK29 merged 4 commits intodropbox:mainfrom
aaronsky:codex/asky/stone-output-manifest
May 6, 2026
Merged

Add native Stone manifest support#359
KevinRK29 merged 4 commits intodropbox:mainfrom
aaronsky:codex/asky/stone-output-manifest

Conversation

@aaronsky
Copy link
Copy Markdown
Contributor

@aaronsky aaronsky commented May 6, 2026

Description

Adds the native Stone manifest support that xplat needs:

  • --output-manifest to report generated output paths without writing generated file contents.
  • Default validation that backend writes stay under the configured output root.
  • --expected-output-manifest to compare generated output paths against a checked manifest.
  • --recursive so directory spec arguments expand to .stone files.

This PR now includes the landed middle stack changes so the remaining stack can land cleanly.

Checklist

General Contributing

  • Have you read the Code of Conduct and signed the CLA?

Is This a Code Change?

  • Non-code related change (markdown/git settings etc)
  • Code Change
  • Example/Test Code Change

Validation

  • Have you ran tox?
  • Do the tests pass?

Verification run directly with the CI lint/test steps:

  • uv run --no-project --with-requirements requirements.txt --with-requirements test/requirements.txt --with flake8==5.0.4 --with pylint flake8 setup.py example stone test
  • uv run --no-project --with-requirements requirements.txt --with-requirements test/requirements.txt --with flake8==5.0.4 --with pylint --with setuptools pylint --rcfile=.pylintrc setup.py example stone test
  • uv run --no-project --with-requirements requirements.txt --with-requirements test/requirements.txt --with pytest --with mock pytest
  • uv run --no-project --with-requirements requirements.txt --with-requirements test/requirements.txt --with enum34 --with mypy --with types-six ./mypy-run.sh

@aaronsky aaronsky force-pushed the codex/asky/stone-output-manifest branch 2 times, most recently from 4957fbe to a42376c Compare May 6, 2026 14:00
@aaronsky aaronsky mentioned this pull request May 6, 2026
6 tasks
@aaronsky aaronsky changed the title Add native output manifest mode Add native Stone manifest support May 6, 2026
@aaronsky aaronsky force-pushed the codex/asky/stone-output-manifest branch from 9f03669 to fb99efd Compare May 6, 2026 20:19
@codecov
Copy link
Copy Markdown

codecov Bot commented May 6, 2026

Codecov Report

❌ Patch coverage is 69.00000% with 31 lines in your changes missing coverage. Please review.
✅ Project coverage is 51.34%. Comparing base (1ad079b) to head (fb99efd).
⚠️ Report is 4 commits behind head on main.

Files with missing lines Patch % Lines
stone/cli.py 64.44% 15 Missing and 1 partial ⚠️
stone/backends/obj_c_types.py 0.00% 7 Missing ⚠️
stone/backends/swift_types.py 0.00% 3 Missing ⚠️
stone/backend.py 94.44% 1 Missing and 1 partial ⚠️
stone/compiler.py 66.66% 1 Missing and 1 partial ⚠️
stone/backends/swift.py 66.66% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #359      +/-   ##
==========================================
+ Coverage   49.98%   51.34%   +1.35%     
==========================================
  Files          37       37              
  Lines        8808     8870      +62     
  Branches     1892     1911      +19     
==========================================
+ Hits         4403     4554     +151     
+ Misses       4087     3974     -113     
- Partials      318      342      +24     
Flag Coverage Δ
unit 51.34% <69.00%> (+1.35%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@KevinRK29 KevinRK29 merged commit f0eac74 into dropbox:main May 6, 2026
11 checks passed
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.

4 participants