Closed pelson closed 6 years ago
But why gpg and not gnupg_ng
as Debian has done (see #47)?
@ankostis - the name itself I don't have any opinion on. The key for me was to have any different name. Notice that, as I understand it, https://github.com/isislovecruft/python-gnupg/issues/47#issuecomment-282588942 didn't actually come to a conclusion about the imported name, only the name of the package to be installed (i.e. apt-get install python-gnupg-ng
). This PR changes the import name.
There are at least 5 names, and the situation is the following (please correct me where I'm wrong):
gnupg
, gnupg
, gpg
python-gnupg
, gnupg
, gpg
python-gnupg
& python3-gnupg
, python-gnupg-ng
, I suggest to add a "header" in the README listing the current names in usage for for all above cases (see our project for example).
Regarding this PR, my preference would be to use gnupg-ng
for the import package and python-gnupg-ng
for the PyPi-package & distro-package,
python-gnupg
is already contained in the GitHub url, so either keep it (or even better, move it)gpg
, which happens to be the name of the main command-line tool of the "GNU Privcay Guard" project, drops important information about this project and it's relying native-library.[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=754120
Why perform a name change to solve one naming conflict if the result will only create another naming conflict? It's just that instead of having a naming conflict with the project this one forked from you're going for a conflict with the actual parent project, you know, the one you're wrapping.
Case in point, I don't have this project installed, but I do have this:
Python 3.7.0 (default, Jun 29 2018, 13:09:59)
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import gnupg
>>> import gpg
>>> gnupg.__version__
'0.4.1'
>>> gpg.__version__
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: module 'gpg' has no attribute '__version__'
>>> gpg.version.versionstr
'1.11.2-beta89'
>>>
The Python bindings for the GPGME API import as gpg for the module name. Creating a situation where you would be squatting both the project forked from and the GNU Privacy Guard itself is pushing deeply into uncool territory.
I'm keen to avoid this PR sitting in the repository idly
Given the uptake, I'll close.
This is a highly speculative PR that attempts to rename the high-level importable
gnupg
togpg
in an attempt to address #47. I'm not trying to be abrasive - this is a sincere attempt at exploring the renaming space. I definitely will have missed some small details in this PR, and subsequent work is highly likely, however, with this change I'm able to install python-gnupg and gnupg side-by-side:I'm keen to avoid this PR sitting in the repository idly - @isislovecruft I strongly support either merging it or closing it (either is completely fine with me).