castorini / rank_llm

RankLLM is a Python toolkit for reproducible information retrieval research using rerankers, with a focus on listwise reranking.
http://rankllm.ai
Apache License 2.0
294 stars 38 forks source link

PyPI naming conventions #17

Closed lintool closed 11 months ago

lintool commented 11 months ago

@ronakice @sahel-sh and I had a long discussion about PyPI naming conventions on Slack, capturing the tl;dr -

The final decision was rank-llm as the project name (i.e., used in pip install) and rank_llm as the package name (i.e., used in import statements).

This was a helpful resource: https://blogs.gentoo.org/mgorny/2023/02/09/the-inconsistencies-around-python-package-naming-and-the-new-policy/

Modules should have short, all-lowercase names. Underscores can be used in the module name if it improves readability. Python packages should also have short, all-lowercase names, although the use of underscores is discouraged.

PEP 8 – Style Guide for Python Code: Package nad Module Names

So, rank_llm is more readable than rankllm, hence the decision for package name.

As Python packages are published on PyPI, they become accessible via PyPI project names. The current rules for package names are described in the Package name normalization specification: ... Package name normalization

Hence, rank-llm as the project name.