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
>

Reply via email to