Thanks for starting this Artur! For package name, +1 on `*apache-polaris*` as this is exactly the project name and also recommended by ASF [1].
For the CLI script name, is it possible to keep the original *`polaris*` since it is short, simple and easy to remember and use? Our CLI could interact with both management and catalog apis hence putting `catalog` in the name may be a little confusing. Would like to learn what others think about this! Best regards, Jonas [1] https://incubator.apache.org/guides/distribution.html#:~:text=PyPI On Tue, Oct 7, 2025 at 5:29 AM artur rakhmatulin < [email protected]> wrote: > Hello everyone! > As part of the "Package Python CLI tool in the binary distribution #2419" > initiative [1], we need to agree on the package name for Apache Polaris > Catalog that will be used for publishing to PyPI. > The current name "polaris" cannot be used as it's already taken by another > package unrelated to Apache Polaris. > I've created a separate Github Issue [2] to discuss this matter. > > Proposed options: > - apache-polaris - available > - polaris-catalog - taken https://pypi.org/project/polaris-catalog/ > ... > > TLDR; > ??? Is this a CLI or SDK? > The current implementation is not just a CLI tool, but also a library. > After the package is delivered to PyPI, users will be able to use the CLI > tool as well as import the library into their projects. > The CLI tool name is defined through the [project.scripts] configuration in > the pyproject.toml file [3] > > Example: > ``` > [project.scripts] > polaris-catalog-cli = "cli.polaris_cli:main" > ``` > > When installing the package via "pipx install apache-polaris", the bin file > will be available in ~/.local/bin/ > > polaris-catalog-cli --help > > This means that to use the CLI, there's no need to clone the entire > project. > > ??? How does it work now? > Currently, to use the CLI you need to clone the entire project and use > ./polaris from the project root directory. When calling ./polaris, > automatic initialization of the Python environment occurs. > > +-------------------------------------------------------------+ > | cd polaris && ./polaris | > +-------------------------------------------------------------+ > +-------------------------------------------------------------+ > | python environment inside ./polaris project dir | > | +-------------------------------------------------------+ | > | | 1 - check ./polaris-venv | | > | +-------------------------------------------------------+ | > | v | > | +------------------------------------------+ | > | | 1.1 - initialize ./polaris-venv through | | > | | python3 -m venv | | > | +------------------------------------------+ | > | +-------------------------------------------------------+ | > | | 2 - activate python env ./polaris-venv/bin/activate | | > | +-------------------------------------------------------+ | > | v | > | +------------------------------------------+ | > | | 2.1 - install dependencies | | > | | ./regtests/requirements.txt | | > | +------------------------------------------+ | > | v | > | +------------------------------------------+ | > | | 2.2 - ./poetry install ./client/python | | > | +------------------------------------------+ | > | +-------------------------------------------------------+ | > | | 3 - calling ./polaris -> ./polaris-venv/bin/polaris | | > | +-------------------------------------------------------+ | > +-------------------------------------------------------------+ > > > [1]: https://github.com/apache/polaris/issues/2419 > [2]: https://github.com/apache/polaris/issues/2699 > [3]: > > https://github.com/apache/polaris/blob/main/client/python/pyproject.toml#L45 > > > -- > Best regards, Artur Rakhmatulin > e-mail: [email protected], > telegram: https://t.me/binarycat0 >
