Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make repo package-able #32

Closed
5 tasks done
Tracked by #23
AdrianDAlessandro opened this issue Aug 29, 2024 · 2 comments · Fixed by #76
Closed
5 tasks done
Tracked by #23

Make repo package-able #32

AdrianDAlessandro opened this issue Aug 29, 2024 · 2 comments · Fixed by #76

Comments

@AdrianDAlessandro
Copy link
Collaborator

AdrianDAlessandro commented Aug 29, 2024

The repo structure is not currently consistent with the tooling used for building python packages. In particular, the data files are not in findable locations.

Ideally we should lift the severity of restrictions on dependencies for compatibility with other people's code.

Some requirements for this:

@alexdewar
Copy link
Collaborator

I'm just looking at the last task ("Ease restrictions on dependency versions") and after a bit of reading I think we're probably fine to leave things more or less as they are. Apparently if you specify a dependency version as ^1.2.3, this is equivalent to >=1.2.3,<2.0.0 (see here). The poetry.lock file isn't used at all when you do pip install my_package -- it's just for developers. Given that this package is for a program not a library, I figure that's probably enough flexibility in dependency versions.

The only thing is that this version logic depends on packages using semver and in the case of the regex package, it's clearly versioned by date instead. So I suppose we might want to change that version to be regex = ">=2024.9.11" or something instead.

More info: https://python-poetry.org/docs/basic-usage/

@AdrianDAlessandro
Copy link
Collaborator Author

I'm just looking at the last task ("Ease restrictions on dependency versions") and after a bit of reading I think we're probably fine to leave things more or less as they are. Apparently if you specify a dependency version as ^1.2.3, this is equivalent to >=1.2.3,<2.0.0 (see here). The poetry.lock file isn't used at all when you do pip install my_package -- it's just for developers. Given that this package is for a program not a library, I figure that's probably enough flexibility in dependency versions.

The only thing is that this version logic depends on packages using semver and in the case of the regex package, it's clearly versioned by date instead. So I suppose we might want to change that version to be regex = ">=2024.9.11" or something instead.

More info: https://python-poetry.org/docs/basic-usage/

Sorry, I didn't see this comment before I made #71

This sounds good, and mostly in line with my expectations. The only thing is if we keep automatically updating the versions of these packages, won't we restrict compatibility with other packages that can only use older versions? I would've assumed we should set the versions to the oldest version that the package supports to make it it as compatible as possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants