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

Update setup methods and Python version requirements #69

Merged
merged 21 commits into from
Jul 24, 2024

Conversation

mattpitkin
Copy link
Collaborator

@mattpitkin mattpitkin commented Jul 3, 2024

In this MR, I have:

  • dropped support for Python 3.7, so the minimum support version is Python 3.8.
  • remove some old Python 2 compatibility workarounds that are no longer necessary
  • moved most setup information from setup.py into pyproject.toml (including building with NumPy v2.0.0, which allows NumPy v2.0.0 compatibility, while still supporting running with earlier versions.)
  • switched from manual versioning to instead use setuptools_scm, i.e., versions are determined by git tags.
  • some Mac OS GitHub action CI fixes from Attempt to fix the Mac OS CI builds #67 and others that now fix the CI.

@vallis - are you happy for these changes to be made?

If/when merged, I'd propose creating a new v3.5.0 release.

 - move project information from setup.py to pyproject.toml
 - set Python 3.9 as minimum supported version (in line with new NumPy
version support)
 - switch versioning to use setuptools_scm (version created from git
tag)
…pinning that will be unneccsary for Python >=3.9
@mattpitkin mattpitkin requested a review from vallis July 3, 2024 21:26
@JPGlaser
Copy link

@vallis any update on getting this merged and a new version tagged + conda-forge built? The lack of availability with Python 3.11 is causing some IPTA / NANOGrav infrastructure issues.

@mattpitkin Is there a reason why this pull request excludes 3.12?

~ Joe G.

@mattpitkin
Copy link
Collaborator Author

@JPGlaser there's no reason for this to exclude python 3.12. I can add it into the github action CI job and check that it builds

@mattpitkin
Copy link
Collaborator Author

mattpitkin commented Jul 19, 2024

I've included Python 3.12 in the test suite (which passes) and added the Python 3.12 classifier in pyproject.toml.

@JPGlaser
Copy link

Everything looks good on my end. @vallis any chance we can get this merged sooner than later?

~ Joe G.

@siyuan-chen
Copy link
Collaborator

Hi Matt and Joe,
I have talked to Michele at the IPTA meeting about updating libstempo to use the new functionality of tempo2 (like FDJUMP and NE_SW), and getting merge request pulled in a more timely fashion. He mentioned that he does not have that much time to maintain libstempo. And has his hands full with discovery.
So, I volunteered to help him as a maintainer for libstempo moving forward.

This request looks fine. I'll look over it in more details in a bit and then pull the merge the pull request. Please bear with me, if stuff breaks, as I am not as careful and knowledgeable as Michele with libstempo.

@mattpitkin
Copy link
Collaborator Author

@siyuan-chen Great, thanks for this. I'm happy to merge this MR and generate the new release if you want (Michele has given me admin access to the repo and the libstempo PyPI)?

@siyuan-chen siyuan-chen merged commit 5bdf286 into vallis:master Jul 24, 2024
12 checks passed
@siyuan-chen
Copy link
Collaborator

@mattpitkin I just merged this. Should be fine. As for updating the version, I think you can go ahead with 3.5.0 and also do the pypi release (I am not so familiar with that process).
I want to point out that there are possibly some functions that need to be added, so that libstempo works with the updates to tempo2 for the IPTA DR3 work. So, we may need to update later on to 3.5.X. Matt, you can decide if you want to wait or we just make another version later.

1 similar comment
@siyuan-chen
Copy link
Collaborator

@mattpitkin I just merged this. Should be fine. As for updating the version, I think you can go ahead with 3.5.0 and also do the pypi release (I am not so familiar with that process).
I want to point out that there are possibly some functions that need to be added, so that libstempo works with the updates to tempo2 for the IPTA DR3 work. So, we may need to update later on to 3.5.X. Matt, you can decide if you want to wait or we just make another version later.

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