Closed foolip closed 4 months ago
Based on skimming the documentation it looks straightforward.
One decision that would need to be made is whether to enable the _USE_FAST_MASKING
optimisation. Currently I think most (all?) users don't use this because it requires compiling some C++ code, but pypi might make that easier.
I've never done this myself, where is the documentation?
Presumably this could be done in a CI step so that it's the same process every time, not done on a developer's machine.
https://packaging.python.org/tutorials/packaging-projects/
It's not immediately clear to me if non-human accounts are permitted.
@ricea and @foolip over on https://github.com/web-platform-tests/wpt/issues/35978 we tried to release a new version of wptserve on PyPI to unblock a couple of other projects depending on a newer version. But sadly it fails because this package is still not published on PyPI.
Do you think that this could be done? For now we probably can use the link to the git repository but it would be nicer to see a release on PyPI itself.
Also if it should be published as pywebsocket3
the package name in setup.py needs to be updated, as well as the mod_pywebsockets
folder renamed.
If you have experiment with packaging for PyPI your help would be greatly appreciated.
The first thing that should be clear is definitely the name. I assume that mod_pywebsockets
is not what you want, and pywebsocket3
sounds to be bound to Python3
. There is also already a pywebsocket package on PyPI.
Oh, the clash with the "other" pywebsocket is unfortunate. I'd rather keep the name pywebsocket3
. mod_pywebsocket
is a leftover from when we used to support running as an Apache module. Renaming it will greatly inconvenience many of our users, but if it is necessary to go into PyPI then the cost is acceptable. I intend to drop support for python 2 eventually.
The PR for renaming the module has just been merged. Now we have two questions to follow-up:
@ricea maybe you can give some feedback? Thanks!
I'm investigating the CI question.
I agree with your opinion that we should bump the version to 4.0.0 as this was a breaking change. I was planning to use 4.0.0 for the first version without Python 2 support, but we can make that 5.0.0 :smiley:
Is there more work to do to get rid of Python 2 support beside removing the usage of six
?
AFAIK removing usage of six
is all that needs to be done. There's no particular hurry as we don't have a need for Python 3 features at the moment.
@ricea with PR #34 merged, would you mind to tag the release that push the new version to pypi? I would love to update the web-platform test repository for the new version. Thanks a lot!
Sorry for the delay. I tagged release v4.0.0. Please check if it looks okay.
Thanks Adam. I pulled and run all the tests locally. All of them pass, so it looks fine to me. I only filed a new issue for a deprecation warning.
Hi @ricea. Do you have an update regarding the release for PyPI? I would appreciate if you could upload it. Thanks.
A release on PyPI would not only help us with web-platform tests but also would unblock several other projects that are waiting for an official release of this tool.
@foolip maybe you know who else could help to get the package released on PyPI? Thanks.
Is there anyone else who could help with this issue and the release on PyPI?
I've asked @quasi-mod to take it over.
pywebsocket3 is officially on PyPi!
I have set GitHub actions to make new PyPi releases when a release is published on GitHub.
Thanks so much for helping out :)
Thanks a lot for making it available on PyPI! Maybe some more details could be added to the readme to give a better description for the package on Pypi?
pywebsocket3 is vendored into web-platform-tests, and it looks like there is no released package which could be used to avoid the copying. Can pywebsocket3 be released on pypi.org to make this possible? (Not imminent, but eventually.)