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

PyPI #2

Open
jayvdb opened this issue Jul 29, 2019 · 6 comments
Open

PyPI #2

jayvdb opened this issue Jul 29, 2019 · 6 comments
Assignees
Labels

Comments

@jayvdb
Copy link

jayvdb commented Jul 29, 2019

I couldnt find this published on PyPI.

That is a prerequisite for packaging in most distros, as their package naming convention usually names the package after the PyPI name.

openSUSE has libchardet packages, so publishing this Python package should be really easy.

@Joungkyun Joungkyun self-assigned this Jul 29, 2019
@Joungkyun
Copy link
Owner

Joungkyun commented Jul 29, 2019

The purpose of this python module (python-chardet) is to improve performance by modifying only the module without changing the code.

This means that anyone who wants to use this module wants to improve performance without changing the code.

Therefore, this module crashes when it is installed at the same time with PyPI's chardet. Moreover, PyPI's chardet is so famous.

For this reason, I can not register with PyPI.

@jayvdb
Copy link
Author

jayvdb commented Jul 29, 2019

You can register it under a different name.

Distros often have conflicting packages. Rpm has a tag in the .spec to indicate conflicts.

@Joungkyun
Copy link
Owner

Distros can be packaged without registering at PyPI. I think this is an other issue.

The reason for not registering at PyPI are as follows:

  1. It has the same namespace and apis as PyPI chardet.
  2. Because of the above reasons, a conflict may occur when installing with PIP.

@jayvdb
Copy link
Author

jayvdb commented Jul 31, 2019

https://en.opensuse.org/openSUSE:Packaging_Python see Naming policy

If you only upload a sdist, and not a wheel, the setup.py is always executed. setup.py can refuse to install if the system already has a chardet module.

I have it mostly packaged at https://build.opensuse.org/package/show/home:jayvdb:py-new/python-chardet-c , but I can not submit it as an alternative to the original chardet until it has registered a name. I also fixed up the lib https://build.opensuse.org/request/show/720085

@Joungkyun
Copy link
Owner

Well. It seems to be talking differently.

What I worry about is that when I register this extension with PyPI, it crashes because of the same API, namesapce as the existing chardet.

Distros is not my worry yet.

@jayvdb
Copy link
Author

jayvdb commented Aug 1, 2019

What about renaming the dso to _chardet_c and the python code to namespace chardet_c ?

Then it can co-exist with all of the similar libraries
https://build.opensuse.org/package/show/home:jayvdb:py-new/python-cchardet
https://build.opensuse.org/package/show/home:jayvdb:py-new/python-pychardet

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

No branches or pull requests

2 participants