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

Strict python minimum version for install (Issue #112) and auto-deployment via actions #113

Merged
merged 5 commits into from
May 24, 2022

Conversation

IAlibay
Copy link
Member

@IAlibay IAlibay commented May 24, 2022

Add python_requires, drops universal entry for wheel generation (note we probably should clean that out of the core repo's setup.cfg too...)

To do:

  • test that this works on testpypi (@orbeckst could you give me access on both pypi and testpypi? my user name is IAlibay on both)
  • test that this works for wheel generation using build

@codecov
Copy link

codecov bot commented May 24, 2022

Codecov Report

Merging #113 (5e1fe04) into master (a15397d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #113   +/-   ##
=======================================
  Coverage   87.56%   87.56%           
=======================================
  Files           5        5           
  Lines         748      748           
  Branches      133      133           
=======================================
  Hits          655      655           
  Misses         56       56           
  Partials       37       37           

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a15397d...5e1fe04. Read the comment docs.

@IAlibay IAlibay changed the title Strict python minimum version for install (Issue #112) Strict python minimum version for install (Issue #112) and auto-deployment via actions May 24, 2022
@@ -0,0 +1,57 @@
name: Build and upload to PyPI
Copy link
Member Author

@IAlibay IAlibay May 24, 2022

Choose a reason for hiding this comment

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

pypa has some really good docs on this, it was a surprising experience: https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/

This will run a build runner every time we push/PR, and also whenever there's a release. If we push a new tag it will upload the build to testpypi for us to check before a release, if we pusblish a release it'll be automatically pushed to pypi.

What needs to be done here is:

  1. Uploading the relevant github secret API tokens for testpypi and pypi.
  2. Checking that the testpypi upload works (create a fake tag for an alpha version of 1.0.1 upload it and then delete the tag?)
  3. Checking that the pypi upload works on publication of the next release.

Copy link
Member

Choose a reason for hiding this comment

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

This looks good (as in the PyPI docs).

I don't have a TestPyPI account. Can you set up the TestPyPI repo and the secrets?

@orbeckst
Copy link
Member

@IAlibay I invited you as owner on PyPi for gdf

@IAlibay
Copy link
Member Author

IAlibay commented May 24, 2022

@IAlibay I invited you as owner on PyPi for gdf

thanks, is there a testpypi project too?

@orbeckst
Copy link
Member

Will you be able to check the new workflow once you have accepted ownership of gdf or do you need me to do something here?

@orbeckst
Copy link
Member

No, there's no testpypi.

@IAlibay
Copy link
Member Author

IAlibay commented May 24, 2022

Will you be able to check the new workflow once you have accepted ownership of gdf or do you need me to do something here?

Yeah I'll need to create a testpypi version but that should be fine

Copy link
Member

@orbeckst orbeckst left a comment

Choose a reason for hiding this comment

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

LGTM, as far as I can tell. Thank you for modernizing!


* Setup is now solely possible using python 3.8 and above.
* Deployment is now automatically done using github actions.

Copy link
Member

Choose a reason for hiding this comment

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

Should there be a "Fixes" that indicates that 1.0.0 could fail to install if it was incorrectly attempted in a 2.7 or <3.8 environment?

Copy link
Member Author

Choose a reason for hiding this comment

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

Sure I can swap that first bullet point to a fixes entry.

@@ -0,0 +1,57 @@
name: Build and upload to PyPI
Copy link
Member

Choose a reason for hiding this comment

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

This looks good (as in the PyPI docs).

I don't have a TestPyPI account. Can you set up the TestPyPI repo and the secrets?

@IAlibay IAlibay temporarily deployed to deploy May 24, 2022 19:33 Inactive
@IAlibay
Copy link
Member Author

IAlibay commented May 24, 2022

Ok I've removed the requirement to review the build action because otherwise this will never end. Everything seems to work right now, I just need to create the 1.0.1 release tag and see if testpypi likes it.

@IAlibay IAlibay merged commit 18ff3ee into master May 24, 2022
@IAlibay IAlibay deleted the issue-112 branch May 24, 2022 19:44
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.

None yet

2 participants