Skip to content

Conversation

@lucascolley
Copy link
Member

If I'm to be the one to tackle something like data-apis/array-api-extra#583 for this repo, this PR will help keep me sane :)

Clearly plenty more work to do to get this up to par with array-api-extra, but I think that merging something like this would be a good start.

[project]
name = "array-api-compat"
dynamic = ["version"]
version = "1.13.0"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dynamic versioning does not play well with pixi-build-python right now. I have no experience with setuptools-scm so not sure if this is acceptable

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure TBH. One one hand, the version is manually set in __init__, so it looks like we're not using dynamic versioning. Or maybe this "dynamic" setting in pyproject.toml makes it pick the version from __init__.
There's also a bit of magic around trusted publishing and I've no idea how this works (other than push a tag and it just works).

I suppose the way to check it is make a change in a branch, then try making a release to a testpypi (requires a manual editing of the relevant GH workflow) and see if this still works.

My personal prio for now is to get ready for 2025.12 spec release. That, among other things, requires a lot of manual testing locally, of matching branches of multiple projects. My workflow involves a lot of

$ pushd ../array-api-tests
$ git co matching_branch
$ run tests
# swear quietly
$ popd 
# fix
$ pip install -e .
$ pushd ../array-api-tests
# run tests again
# swear loudly
# fix it in -tests
# repeat until convergence

not sure how that translates to the pixified workflow (swearing is optional), and I'd prefer to do a single thing at a time.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, this could be a whole lot nicer with Pixi but it will need some hours of setup. I'll let you swear loudly for now :)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm pretty sure swearing is invariant w.r.t. tooling. Am open to an experimental test of this hypothesis after 1.14 ships. Don't know which part of flipping between branches and projects can be streamlined, but am always open to pleasant surprises.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using an explicit version number is fine. Opinions obviously vary, but I'd consider it an improvement.

Versioning is unrelated to trusted publising.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe no point in committing the lock file at this stage 🤷

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.

3 participants