Skip to content

Publish a new release on PyPi (2.9.0) #134

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

Closed
s-celles opened this issue May 29, 2019 · 29 comments · Fixed by #170
Closed

Publish a new release on PyPi (2.9.0) #134

s-celles opened this issue May 29, 2019 · 29 comments · Fixed by #170

Comments

@s-celles
Copy link
Member

Thanks to great work of @Flamefire we are now ready to publish a new release on PyPi

Here is a release procedure to follow
https://github.com/k-bx/python-semver/blob/master/release-procedure.md

but maybe we should have a discussion before about version numbering.

I don't really know if this new version should be named 2.8.2 or 2.9.0 (to respect semver)

Your opinions?

PS : I won't be available during the next coming days (until next week) so either @k-bx can publish or we can wait some days.

@Flamefire
Copy link
Contributor

Although it is mostly a bugfix release (comparison was broken in last version) it contains a new feature: iterable

So it should be 2.9.0

@pedrocunha
Copy link

Hi - any plans to release a new version? The documentation does not match the available release on supporting comparison between VersionInfo objects and tuples. Thanks!

@migueleliasweb
Copy link

Hey all, any updates on this?

@ofek
Copy link
Contributor

ofek commented Oct 1, 2019

@k-bx Can you please upload a new release? Many of us are blocked on this 🙁

@s-celles
Copy link
Member Author

s-celles commented Oct 1, 2019

Ideally I think the following PR should be merged before (#140 #138 and maybe #146)
We need a PR to prepare this release (see https://github.com/k-bx/python-semver/blob/master/release-procedure.md)
CHANGELOG at least should be updated (it haven't been updated since last release 2.8.1 (9 Jul 2018) which was see https://github.com/k-bx/python-semver/pulls?q=is%3Apr+is%3Aclosed
Contributions are always welcome!

@tomschr
Copy link
Member

tomschr commented Oct 1, 2019

Maybe you want to have PR #147 included in the release as well. 😉

@s-celles
Copy link
Member Author

Reopening because I don't understand what is going wrong.

I've tag a new release on Github but I facing an issue when trying to upload to Pypi

According my previous release procedure I should do:

git clean -xfd
python setup.py register sdist bdist_wheel --universal
twine upload dist/*

but this is what I'm getting:

$ python setup.py register sdist bdist_wheel --universal
running register
running egg_info
creating semver.egg-info
writing semver.egg-info/PKG-INFO
writing dependency_links to semver.egg-info/dependency_links.txt
writing entry points to semver.egg-info/entry_points.txt
writing top-level names to semver.egg-info/top_level.txt
writing manifest file 'semver.egg-info/SOURCES.txt'
reading manifest file 'semver.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'semver.egg-info/SOURCES.txt'
running check
warning: Check: This command has been deprecated. Use `twine check` instead: https://packaging.python.org/guides/making-a-pypi-friendly-readme#validating-restructuredtext-markup

warning: Check: The project's long_description has invalid markup which will not be rendered on PyPI. The following syntax errors were detected:
line 44: Error: Unknown interpreted text role "func".


Registering semver to https://upload.pypi.org/legacy/
Server response (410): Project pre-registration is no longer required or supported, upload your files instead.
WARNING: Registering is deprecated, use twine to upload instead (https://pypi.org/p/twine/)
running sdist
creating semver-2.8.2
creating semver-2.8.2/semver.egg-info
copying files to semver-2.8.2...
copying LICENSE.txt -> semver-2.8.2
copying MANIFEST.in -> semver-2.8.2
copying README.rst -> semver-2.8.2
copying semver.py -> semver-2.8.2
copying setup.cfg -> semver-2.8.2
copying setup.py -> semver-2.8.2
copying test_semver.py -> semver-2.8.2
copying semver.egg-info/PKG-INFO -> semver-2.8.2/semver.egg-info
copying semver.egg-info/SOURCES.txt -> semver-2.8.2/semver.egg-info
copying semver.egg-info/dependency_links.txt -> semver-2.8.2/semver.egg-info
copying semver.egg-info/entry_points.txt -> semver-2.8.2/semver.egg-info
copying semver.egg-info/top_level.txt -> semver-2.8.2/semver.egg-info
Writing semver-2.8.2/setup.cfg
creating dist
Creating tar archive
removing 'semver-2.8.2' (and everything under it)
running bdist_wheel
running build
running build_py
creating build
creating build/lib
copying semver.py -> build/lib
installing to build/bdist.macosx-10.9-x86_64/wheel
running install
running install_lib
creating build/bdist.macosx-10.9-x86_64
creating build/bdist.macosx-10.9-x86_64/wheel
copying build/lib/semver.py -> build/bdist.macosx-10.9-x86_64/wheel
running install_egg_info
Copying semver.egg-info to build/bdist.macosx-10.9-x86_64/wheel/semver-2.8.2-py3.7.egg-info
running install_scripts
adding license file "LICENSE.txt" (matched pattern "LICEN[CS]E*")
creating build/bdist.macosx-10.9-x86_64/wheel/semver-2.8.2.dist-info/WHEEL
creating 'dist/semver-2.8.2-py2.py3-none-any.whl' and adding 'build/bdist.macosx-10.9-x86_64/wheel' to it
adding 'semver.py'
adding 'semver-2.8.2.dist-info/LICENSE.txt'
adding 'semver-2.8.2.dist-info/METADATA'
adding 'semver-2.8.2.dist-info/WHEEL'
adding 'semver-2.8.2.dist-info/entry_points.txt'
adding 'semver-2.8.2.dist-info/top_level.txt'
adding 'semver-2.8.2.dist-info/RECORD'

I don't understanding why I'm still having 2.8.2 number and not 2.9.0

Any idea what is going wrong?

@s-celles
Copy link
Member Author

Well the problem was that I was in my master... not k-bx/python-semver master but there is still a problem.

$ twine upload dist/*
Uploading distributions to https://upload.pypi.org/legacy/
Uploading semver-2.9.0-py2.py3-none-any.whl
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 16.9k/16.9k [00:01<00:00, 9.27kB/s]
NOTE: Try --verbose to see response content.
HTTPError: 400 Client Error: The description failed to render in the default format of reStructuredText. See https://pypi.org/help/#description-content-type for more information. for url: https://upload.pypi.org/legacy/

@s-celles s-celles changed the title Publish a new release on PyPi Publish a new release on PyPi (2.9.0) Oct 30, 2019
@tomschr
Copy link
Member

tomschr commented Oct 30, 2019

@scls19fr

I think, your error messages is related to the CHANGELOG.rst file. That filename changed and the suffix .rst was added.

Probably the long_description_content_type key in setup.py is missing. See https://pypi.org/help/#description-content-type (taken from the error message. 😉 )

@ofek
Copy link
Contributor

ofek commented Oct 30, 2019

@scls19fr and in https://github.com/k-bx/python-semver/blob/master/README.rst you can't use Sphinx directives

@s-celles
Copy link
Member Author

s-celles commented Oct 30, 2019

@tomschr long_description_content_type is only necessary for not rst file (ie when using for example Markdown).

@ofek is right... see #171

@Flamefire
Copy link
Contributor

Maybe easier: Use Markdown?

@tomschr
Copy link
Member

tomschr commented Oct 30, 2019

Maybe easier: Use Markdown?

The CHANGELOG.rst file can't be included into the doc anymore (well, actually you can, but it would be a bit more cumbersome).

@tomschr
Copy link
Member

tomschr commented Oct 30, 2019

@ofek is right... see #171

Oh really? I wasn't aware of that. Strange that PyPI seems to have problems with this. Couldn't they just ignore the :func: directive?

@s-celles
Copy link
Member Author

s-celles commented Oct 30, 2019

Maybe you can ask them (opening an issue on their side if it doesn't exist)

@s-celles
Copy link
Member Author

It seems that 2.9.0
is now available on https://pypi.org/project/semver/

can't understand why doc is still numbered as 2.8.2
https://python-semver.readthedocs.io/en/latest/

@s-celles
Copy link
Member Author

Doc build wasn't passing correctly.
Now it's fine https://python-semver.readthedocs.io/en/latest/

@tomschr
Copy link
Member

tomschr commented Oct 30, 2019

@scls19fr Thanks you for all your efforts! 👍

@s-celles
Copy link
Member Author

Thanks all! I think we still need to improve the release procedure to have smoother release.
#173

Automatic build of doc should also be on our top 1 priority list (#95)

@tomschr
Copy link
Member

tomschr commented Oct 30, 2019

I think we still need to improve the release procedure to have smoother release.

Maybe Git Actions could help? See https://github.com/marketplace/actions/deploy-pypi or https://github.com/marketplace/actions/pypi-publish for a PyPI action.

Here is more: https://packaging.python.org/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/

@s-celles
Copy link
Member Author

Yes but I haven't try it myself.

@tomschr
Copy link
Member

tomschr commented Oct 30, 2019

Maybe I can try something, but it takes some time.

@tomschr
Copy link
Member

tomschr commented Oct 31, 2019

@scls19fr I've created a GitHub Action for my forked repo. Seems it works for me. 😉

If you want to use it, you need to do these steps:

  1. Enable/register/whatever these GitHub Actions for your repo.
  2. Add your secrets for PyPI.org and test.pypi.org to your GitHub settings > Secrets.
    Keep in mind, the names must be test_pypi_password and pypi_password.
  3. Remove the comments in .github/workflow/publish-to-test-pypi.yml (should we use a better name?)

I've followed mostly the examples mentioned in #134 (comment).

If you like it, I can open a PR for this repo.

Let me know what you think. 😉

@s-celles
Copy link
Member Author

I haven't access to "settings" in this repository.
I think we should either ask @k-bx to do it or fork this repository in a GitHub organization where we could do that.
@tomschr @k-bx what are your opinions?

@tomschr
Copy link
Member

tomschr commented Oct 31, 2019

@scls19fr
Thanks for your response and for asking about my opinion. 😊 I'm not sure if I can be of any value to this issue, so I'm fine with whatever you decide.

These GitHub Actions, once enabled, can be basically changed by everyone with a simple pull request (it's just the .github/workflow/ directory).

@s-celles
Copy link
Member Author

I've created https://github.com/python-semver GH org and sent an invite to @k-bx to be an owner.
I'm waiting for an answer before going beyond.

@k-bx
Copy link
Contributor

k-bx commented Nov 1, 2019

Hey, sure, feel free to move into an organization. Also, please ping me by my email directly if I'm needed, I'm rarely reading the github issues.

@tomschr
Copy link
Member

tomschr commented Nov 2, 2019

@scls19fr @k-bx Maybe you know that already so sorry to bother. With a GitHub organization you can group trusted members into different teams which different permissions (an author team has write/push permission, but cannot change admin settings, but an admin team can).

This may be a start:

@s-celles
Copy link
Member Author

s-celles commented Nov 3, 2019

Hi all,

Thanks @k-bx for accepting the idea of a GH org.
This should greatly help collective maintenance work on python-semver!

In order to keep issues history, I think you will need to transfer ownership of https://github.com/k-bx/python-semver to https://github.com/python-semver/ Github org.

https://help.github.com/en/github/administering-a-repository/transferring-a-repository#transferring-a-repository-owned-by-your-user-account

Kind regards

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 a pull request may close this issue.

7 participants