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

Sort out pynco vs. nco on PyPI #70

Open
mx-moth opened this issue Mar 6, 2023 · 1 comment
Open

Sort out pynco vs. nco on PyPI #70

mx-moth opened this issue Mar 6, 2023 · 1 comment
Assignees

Comments

@mx-moth
Copy link
Collaborator

mx-moth commented Mar 6, 2023

This project goes under a few names in different places, and the differences are confusing some users.

  • The repository is called pynco
  • It uses the nco programs
  • The Python package is published as nco on PyPI. The documentation instructs users to pip install nco
  • There is also a package named pynco on PyPI, owned by the maintainers of this project, but has not been updated since 2015
  • The package is named pynco on conda-forge
  • nco on conda-forge is the nco programs that this project binds to
  • The Python module that users import is called nco

The project should settle on using either pynco or nco, but not both. As nco is an established project that this project binds to, my vote is to settle on pynco. To move everything to pynco the following steps would be required:

  • Call the package pynco on PyPI
    • Update the package name in the package metadata
    • Update the README and documentation to instruct used to install the correct package
    • Release version 2.0.0 of pynco to PyPI
    • Deprecate the nco PyPI package
  • Rename the Python module to pynco
    • Update the documentation to reflect this change
    • Add a backwards compatibility nco import, with a deprecation warning. Two options:
      • Ship two modules in the package, nco and pynco. Importing nco would raise a DeprecationWarning but otherwise be an alias for the correct pynco module.
      • The pynco PyPI package only provides the pynco module. The nco PyPI package provides the nco module which depends on pynco. When a user calls import nco a deprecation warning is raised instructing users to move to pynco.
@czender
Copy link
Member

czender commented Mar 7, 2023

I agree that this package should be called pynco everywhere. We do not want users to have to install pynco along with the base NCO. The two are logically segregated. And I agree that the name change from nco to pynco on PyPI merits bumping the version number from 1.1.0 to 2.0.0. I'm on the fence regarding the proposed deprecation method because they look like a lot of packaging work. It's tempting to drop the old Python nco package once the RTD documentation and the GitHub README.md are modified to say that the module/package name has forever changed from nco to pynco.

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

No branches or pull requests

2 participants