GithubHelp home page GithubHelp logo

pypa / trove-classifiers Goto Github PK

View Code? Open in Web Editor NEW
129.0 11.0 92.0 158 KB

Canonical source for classifiers on PyPI.

Home Page: https://pypi.org/p/trove-classifiers/

License: Apache License 2.0

Makefile 1.43% Python 98.57%

trove-classifiers's Introduction

Canonical source for classifiers on PyPI.

Classifiers categorize projects per PEP 301. Use this package to validate classifiers in packages for PyPI upload or download.

Usage

To install from PyPI:

$ pip install trove-classifiers

This package can be invoked as a module to print a list of classifiers:

$ python -m trove_classifiers | grep -Ei pyramid
Framework :: Pyramid

In addition, this package's API is two importable objects:

Classifiers (trove_classifiers.classifiers)

A set containing classifiers (as strings). Useful for determining membership.

Example - determine if a classifier is valid:

>>> from trove_classifiers import classifiers
>>> 'License :: OSI Approved' in classifiers
True
>>> 'Fuzzy :: Wuzzy :: Was :: A :: Bear' in classifiers
False
>>>

Deprecated classifiers (trove_classifiers.deprecated_classifiers)

A dict, mapping a deprecated classifier (string) to a list of classifiers which replaces it (strings).

Example - determine if a classifier is deprecated:

>>> from trove_classifiers import deprecated_classifiers
>>> 'License :: OSI Approved' in deprecated_classifiers
False
>>> 'Natural Language :: Ukranian' in deprecated_classifiers
True
>>> deprecated_classifiers["Natural Language :: Ukranian"]
['Natural Language :: Ukrainian']

trove-classifiers's People

Contributors

aa-turner avatar angerson avatar bollwyvl avatar brainwane avatar carltongibson avatar di avatar felixxm avatar gasman avatar gotmax23 avatar hramezani avatar hugovk avatar kdeldycke avatar kodiologist avatar leofang avatar ljmf00 avatar m3vaz avatar markatwood avatar marksweb avatar mcsinyx avatar mgorny avatar nessita avatar ofek avatar pradyunsg avatar pysimplegui avatar romainmuller avatar sbidoul avatar simonw avatar thedrow avatar tiangolo avatar webknjaz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

trove-classifiers's Issues

Request trove classifier: Framework :: aiohttp

Request to add a new Trove classifier.

The name of the classifier you would like to add

Framework :: aiohttp

Why do you want to add this classifier?

https://github.com/aio-libs/aiohttp is very widely used in the Python community.
It has 13M downloads per month at the moment of writing: https://pypistats.org/packages/aiohttp
More than 50 libraries officially claim that they are built on top of aiohttp: https://docs.aiohttp.org/en/stable/third_party.html
Many more libraries exist but out of the list.
libraries.io claims that 1141 PyPI packages depend on aiohttp: https://libraries.io/pypi/aiohttp/dependents

Adding a trove classifier would benefit the project as it will make related projects more discoverable.
aiohttp already has a big and stable ecosystem, adding a dedicated classifier simplifies the searching.

Use tox to run test suite

GNU make is neither portable nor flexible in term of specifying Python version. If this is a favored change, I'd like to help out.

Request to add classifier License :: OSI Approved :: Free Public License 1.0.0 (0BSD)

Request to add a new Trove classifiers.

The name of the classifier you would like to add

  • License :: OSI Approved :: Free Public License 1.0.0 (0BSD)
  • License :: OSI Approved :: Zero-Clause BSD (0BSD)

Why do you want to add this classifiers?

Why do the current classifiers not meet your need?

It is new license approved by OSI. See https://opensource.org/licenses/0BSD

How many projects do you expect to use this new classifier?

This license is also as simple as possible so in future - almost all trivial project or "public domain". For now at least one, my project. (and more my projects in future)

If you are requesting multiple classifiers, why do you need more than one?

OSI approved this license with two names, but it is only one license. I prefer "Free Public License" as it somehow describes what it is. 0BSD is also good name but there is a need to know BSD license background. There is only one - 0BSD in SPDX, see https://spdx.org/licenses/ , so at least please add "0BSD".

Classifiers identifying supported NVIDIA CUDA version(s)

I'm representing TensorFlow SIG Build, a Google-supported community group about building and packaging TensorFlow (a machine learning framework for many different platforms and environments) in OSS. TensorFlow releases each support different versions of NVIDIA CUDA, a platform for GPU-accelerated computing, and we think a classifier could be the right place to expose this to users.

Example of what this could look like:

Environment :: NVIDIA CUDA :: 10.2
Environment :: NVIDIA CUDA :: ...

With one classifier for each of the releases listed on the NVIDIA CUDA Toolkit archive:
10.2, 10.1, 10.0, 9.2, 9.1, 9.0, 8.0, 7.5, 7.0, 6.5, 6.0, 5.5, 5.0, 4.2, 4.1, 4.0, 3.2, 3.1, 3.0, 2.3, 2.2, 2.1, 2.0, 1.1, 1.0. The list would need to be updated for each CUDA release; judging by that page's release dates, a new release occurs about once or twice per year.

Notability

TensorFlow and its related projects could make use of CUDA classifiers:

  • TensorFlow: tensorflow, tensorflow-gpu, tf-nightly, tf-nightly-gpu
  • TensorFlow Community packages with GPU components: tensorflow-addons, tfa-nightly

Many existing projects track separate packages to identify the CUDA version and standardizing the information as a classifier would be useful for searching:

  • CuPy: cupy-cuda80, cupy-cuda90, cupy-cuda91, cupy-cuda92, cupy-cuda10, cupy-cuda101, cupy-cuda102
  • CuGraph: cugraph-cuda92, cugraph-cuda10
  • ThunderSVM: thundersvm-cuda10
  • CuML: cuml-cuda100, cuml-cuda92
  • CuDF: cudf-cuda100, cudf-cuda92
  • MxNet: mxnet-cu92, mxnet-cu92mkl, mxnet-cu91, mxnet-cu91mkl, mxnet-cu90, mxnet-cu90mkl, mxnet-cu80, mxnet-cu80mkl, mxnet-cu75, mxnet-cu75mkl, mxnet-mkl
  • Many others (PyPI)

Other projects simply reference CUDA but don't explicitly state their supported versions, for example:

Considerations / Discussion

  • Classifier Hierarchy: NVIDIA CUDA is a platform rather than a framework. For this reason I put it under "Environment", but I'm not sure that's the most appropriate, considering...
  • Future patterns: There are more platforms than just CUDA which TensorFlow and other packages may support in the future, such as MKL (MxNet, above) and SYCL. I am not an expert on these, but wanted to mention them because Pip cannot group multiples of these platforms under one project name (related: discussion thread for PEP 599). Does "Environment" capture all of these kinds of platforms?
  • Referencing NVIDIA CUDA correctly: I'm not sure if there are more-severe-than-politeness constraints here, as long as we use "NVIDIA CUDA", NVIDIA's preferred reference style.
  • Alternatives: There is a "platforms" argument to setuptools.setup() which seems to be mostly unused. We could use this for extra data like CuDNN version, but nothing here would be standardized.

Ultimately, I think there is a place for a classifier like this, but the specifics may need some more input from the community.

I've previously discussed this a little with @di.

Request Pytonik classifier

Pytonik is a web framework requires classifier to support development of its libraries, It will help team members, developers, and contributors to search and build modules / package under pytonik classifier. Kindly add pytonik classifier.

  • Framework :: Pytonik
  • Framework :: Pytonik :: Version

Thank you

new classifier topic: research data management

What's the problem this feature will solve?
More and more software in the scope of research data management is being developed. Without a topic research data management it is hard to find these software packages.

Describe the solution you'd like
Add a new classifier e.g. Topic::Scientific/Engineering:: research data management

New classifier: The 3-Clause BSD Licence

I would like to request the addition of a new trove classifier for "The 3-Clause BSD License". The full classifier would be:
License :: OSI Approved :: The 3-Clause BSD License (BSD-3-Clause)

Our project eclipse-cyclonedds/cyclonedds-python is dual licensed for EPL-2 and EDL-1.0 which is equivalent with BSD-3-CLAUSE which right now cannot be reflected on Pypi.

The BSD-3-CLAUSE license in question can be found here. The EDL-1.0 can be found here

Add missing SPDX ID and OSI name

Some licenses are missing the SPDX ID, thus making the actual license uncertain.

As an example, in https://pypi.org/project/undatum/ the license is "OSI Approved :: BSD License" but pypi reports "BSD License (MIT)".
The actual license file reports MIT, so this is certain an issued caused by the author.

I suggest to add at least the OSI license name and SPDX ID for the popular/strong community licenses: https://opensource.org/licenses/?categories=popular-strong-community.

Thanks.

See also #70

ENH: console_script that prints classifiers to stdout

A command that lists the PyPI trove classifiers just like python setup.py register --list-classifiers (which doesn't work anymore) in order to list the trove classifiers such that they can be grepped

(This was possible with setup.py register --list-classifiers, which doesn't work anymore with a note about twine: pypa/twine#583)

These are the lists:

Workaround:

curl -s 'https://pypi.org/pypi?%3Aaction=list_classifiers' \
  | grep -Ei 'development status|license'

Request to add `Framework :: Pylint` classifier

Hi folks,

This new classifier will be useful for users of https://github.com/PyCQA/pylint to discover plugins published by the community. Pylint has support for custom plugins and there are quite a few already created by the community such as pylint-django or pytest-pylint. Also doing a basic naive search in PyPi yield quite a few results of packages that might be good candidates of this new trove classifier: https://pypi.org/search/?q=pylint&o=

Flake8 also has its own classifier which is another popular tool for static analysis.

Thanks a lot!

Request to add new trove classifier Framework :: Hatch

Request to add a new Trove classifier.

The name of the classifier(s) you would like to add:

  • Framework :: Hatch

Why do you want to add this classifier?

Hatch is an extensible Python project manager mentioned multiple times on https://packaging.python.org (see 1, 2, 3, 4) that has recently undergone a rewrite.

In v1.0.0 releasing in the coming weeks, every major feature is now implemented as a plugin similar to pytest, tox, and devpi. Comprehensive documentation is located here: https://ofek.dev/hatch/latest/plugins/about/

Two plugins currently exist:

It would be nice if the docs for v1 can mention Framework :: Hatch

Adding new CUDA trove classifiers

Currently the latest CUDA version listed is 11.2. Though 11.3 and 11.4 are out. Also 11.5 was released today. Would it be possible to add these trove classifiers to the list?

cc @m3vaz

Request trove classifiers for ASGI

Request to add a new Trove classifier.

The name of the classifiers you would like to add

  • Topic :: Internet :: WWW/HTTP :: ASGI
  • Topic :: Internet :: WWW/HTTP :: ASGI :: Application
  • Topic :: Internet :: WWW/HTTP :: ASGI :: Middleware
  • Topic :: Internet :: WWW/HTTP :: ASGI :: Server

Why do you want to add these classifiers?

  • The same classifiers exist for WSGI.
  • async/asyncio gains more and more popularity in the Python community. In a few days Python 2.7 will finally reach its EOL and then all supported versions of Python support asyncio.
  • Django 3.0 is the first release of Django with basic async support, continuing the work started with channels back in 2015. Django is very conservative when it comes to new features and even they decided to support async.
  • There's a spec: https://github.com/django/asgiref/
  • There are (at least) three servers: https://asgi.readthedocs.io/en/latest/implementations.html#servers

New classifier: `Framework :: Plone :: 6.1`

Plone, the python CMS is getting ready to create a new version 6.1, and just like with the 11 previous releases that also have a trove classifier, we would like to have a new trove classifier.

Thanks! ๐Ÿ™๐Ÿพ ๐Ÿ€

Add Esmerald trove Classifier

The name of the classifier to add.

"Framework :: Esmerald"

Reason why

The reason being is because a the release of a new python ASGI framework that wants to be used by a lot of people and it is full opensource.

Add classifier for the AnyIO framework

Request to add a new Trove classifier.

The name of the classifier you would like to add

  • Framework :: AnyIO

Why do you want to add this classifier?

There are already several projects on PyPI using the "anyio" library. Since PyPI does not have an option to search by dependencies, it would be good to have a trove classifier added so that AnyIO based projects can identify themselves as such for easier searching.

PEP 561 stub-only packages

Shouldn't there be a classifier for types-* or *-stubs packages such as defined by PEP 561 (actually PEP says stub packages MUST be named *-stubs but it seems every package is named types-*)?

I believe having a dedicated classifier for stub-only packages (and ๐Ÿคž widepsread adoption) would make things easier when searching for stub packages for a specific package.

tests are distributed in wheels and thus installed

This is the content of the latest release:

$ less -F trove_classifiers-2020.6.20-py3-none-any.whl 
Metadata-Version: 2.1
Name: trove-classifiers
Version: 2020.6.20
Summary: Canonical source for classifiers on PyPI (pypi.org).
Home-page: https://github.com/pypa/trove-classifiers
Author: The PyPI Admins
Author-email: [email protected]
License: UNKNOWN
Keywords: classifiers
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Description-Content-Type: text/markdown

Archive:  trove_classifiers-2020.6.20-py3-none-any.whl
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
       0  Defl:N        2   0% 2020-06-20 21:29 00000000  tests/__init__.py
    2007  Defl:N      486  76% 2020-06-20 21:29 b9ab9114  tests/test_classifiers.py
    1943  Defl:N      551  72% 2020-06-20 21:29 a9facb7d  tests/lib/__init__.py
     152  Defl:N       78  49% 2020-06-20 21:29 4ef7fcaf  tests/lib/__main__.py
   35022  Defl:N     5773  84% 2020-06-20 21:29 931af31b  trove_classifiers/__init__.py
     104  Defl:N       67  36% 2020-06-20 21:29 3400f3e2  trove_classifiers/__main__.py
   11357  Defl:N     3948  65% 2020-06-20 21:30 7b5d04bc  trove_classifiers-2020.6.20.dist-info/LICENSE
    2145  Defl:N      912  58% 2020-06-20 21:30 49bbfabd  trove_classifiers-2020.6.20.dist-info/METADATA
      92  Defl:N       92   0% 2020-06-20 21:30 7e388cfa  trove_classifiers-2020.6.20.dist-info/WHEEL
      24  Defl:N       26  -8% 2020-06-20 21:30 f84e9ac5  trove_classifiers-2020.6.20.dist-info/top_level.txt
     937  Defl:N      534  43% 2020-06-20 21:30 f113450e  trove_classifiers-2020.6.20.dist-info/RECORD
--------          -------  ---                            -------
   53783            12469  77%                            11 files

Installing this creates the following file in my Python site:

$ pip show -f trove_classifiers
Name: trove-classifiers
Version: 2020.6.20
Summary: Canonical source for classifiers on PyPI (pypi.org).
Home-page: https://github.com/pypa/trove-classifiers
Author: The PyPI Admins
Author-email: [email protected]
License: UNKNOWN
Location: /home/cnx/.local/lib/python3.8/site-packages
Requires: 
Required-by: 
Files:
  tests/__init__.py
  tests/__pycache__/__init__.cpython-38.pyc
  tests/__pycache__/test_classifiers.cpython-38.pyc
  tests/lib/__init__.py
  tests/lib/__main__.py
  tests/lib/__pycache__/__init__.cpython-38.pyc
  tests/lib/__pycache__/__main__.cpython-38.pyc
  tests/test_classifiers.py
  trove_classifiers-2020.6.20.dist-info/INSTALLER
  trove_classifiers-2020.6.20.dist-info/LICENSE
  trove_classifiers-2020.6.20.dist-info/METADATA
  trove_classifiers-2020.6.20.dist-info/RECORD
  trove_classifiers-2020.6.20.dist-info/REQUESTED
  trove_classifiers-2020.6.20.dist-info/WHEEL
  trove_classifiers-2020.6.20.dist-info/top_level.txt
  trove_classifiers/__init__.py
  trove_classifiers/__main__.py
  trove_classifiers/__pycache__/__init__.cpython-38.pyc
  trove_classifiers/__pycache__/__main__.cpython-38.pyc

I thought the tests package was not intended to be installed so I filed GH-36 trying to solve this.

Feature request: Want new valid classifier

What's the problem this feature will solve?
I want to add License :: OSI Approved :: GNU Lesser General Public License v2.1 (LGPLv2.1) for LGPL v2.1 as a valid classifier.

Describe the solution you'd like
Just want to add License :: OSI Approved :: GNU Lesser General Public License v2.1 (LGPLv2.1) as a valid classifier.

Additional context
LGPL v2.1 is also very popular.

Request to add trove classifiers for CPU architectures

Hello there!

I am using mostly Python for scientific programming in bioinformatics, and I've come to develop several packages with support for particular CPU features, such as SIMD extensions. At the moment, listing compiled extensions is not obvious with classifiers (there is no Compiled classifier like there is a Typing :: Typed for typed packages), but in general using Programming Language :: C or Programming Language :: Cython is enough.

However, I was wondering if it would make sense to add classifiers to list CPU architectures, given:

  1. there is now the Environment :: GPU classifier, which can be used to tag CUDA-enabled code
  2. some packages may only run on certain target platforms (for instance when only x86 is supported by an upstream dependency)
  3. it would be nice to classify packages targeting specific targets like Arm, or supporting special features like SSE.

This is open for discussion, but I could imagine an Architecture classifier something like:

Architecture :: Any
Architecture :: x86
Architecture :: x86-64
Architecture :: Arm :: Armv7
Architecture :: Arm :: Aarch64

etc. for architectures, maybe with :: Only variants for code only supporting an architecture (e.g. Architecture :: x86-64 :: Only, like Programming Language :: Python :: 3 :: Only)

For CPU features, maybe something like:

Architecture :: x86-64 :: SSE
Architecture :: x86-64 :: SSE2
...
Architecture :: Arm :: Armv7 :: NEON
Architecture :: Arm :: Aarch64 :: NEON
Architecture :: Arm :: Aarch64 :: Helium

Since there is already an Environment :: GPU classifier, another option would be to use an Environment :: CPU root classifier (e.g. Environment :: CPU :: Arm :: Aarch64 :: NEON to mark that a package implements NEON-accelerated computation, or Environment :: CPU :: x86-64 :: Only to mark that a package is only available with an x86-64 CPU).

Add trove classifier for the Hippocratic License

Request to add a new Trove classifier for the Hippocratic License.

The name of the classifier you would like to add

  • License :: Hippocratic License

Why do you want to add this classifier?

None of the existing licenses prevents use by parties infringing on the declaration of human rights, several projects have started adopting such licenses and it would be nice to be able to browse them programmatically.

Request to add `Framework :: Inkscape`

Request to add a new Trove classifier.

The name of the classifier you would like to add

  • Framework :: Inkscape
  • Framework :: Inkscape :: Extensions

Why do you want to add this classifier?

The Inkscape project would like to install it's python based extensions using pip/pypi and having a specific classifier would allow our inkscape extension manager graphical user interface to search for and show only Inkscape specific extensions in the results.

Background issue: pypa/packaging-problems#335

The Inkscape project uses the word "extensions", but I see plugins is the typical word used in python land. Either would be fine, extensions for preference.

Request trove classifier: Framework :: Celery

Request to add a new Trove classifier.

The name of the classifier you would like to add

  • Framework :: Celery

Why do you want to add this classifier?

Celery is very widely used in the Python community. Github has many repositories tagged with Celery.
It has some projects related to it which are not maintained by the Celery team such as redbeat and flower among others.

There are some libraries which extend Django's functionality or Flask's functionality using Celery.

Adding a trove classifier would benefit the project as it will make related projects more discoverable.

Add `Framework :: Masonite :: 4.0` and `Framework :: Masonite :: 4.1`

It's a request to add two new classifier for Masonite Framework. I am not sure that's the right process to make this request but I will try here.

The name of the classifier(s) you would like to add

Framework :: Masonite :: 4.0
Framework :: Masonite :: 4.1

Why do you want to add this classifier?

From now on we only had a generic framework classifier Framework :: Masonite. We would like to track Masonite related packages on PyPi and have as Django a classifier for each minor version.

Thank you in advance :)

Pip won't build the latest version from source

When attempting to build trove-classifiers from source to debug another issue I found that pip builds, then discards, several versions before finally settling on 2020.5.21

pip wheel trove-classifiers --no-binary trove-classifiers
Output
Looking in indexes: https://pypi.io/simple
Collecting trove-classifiers
  Downloading trove-classifiers-2021.2.28.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/4f/14/987119024841eaca291b12e8f70c8abe6d07b8b90c3f36d52c6c748d21df/trove-classifiers-2021.2.28.tar.gz#sha256=6078eaf42ef6a0b528c850c829fa11d42d704ea9e68c2b39614209caca1ef1c0 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/4f/14/987119024841eaca291b12e8f70c8abe6d07b8b90c3f36d52c6c748d21df/trove-classifiers-2021.2.28.tar.gz#sha256=6078eaf42ef6a0b528c850c829fa11d42d704ea9e68c2b39614209caca1ef1c0 has inconsistent version: filename has '2021.2.28', but metadata has '2021.3.23'
  Downloading trove-classifiers-2021.1.14.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/6e/30/60a54184e9d084c7e036426ee9465cdbfa46d5a77d77c407dcba1c2c9e2f/trove-classifiers-2021.1.14.tar.gz#sha256=c33727ad75fbcee42b0b9eff3ac4704461d17bd230a29e1f24c94b3e6f666d72 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/6e/30/60a54184e9d084c7e036426ee9465cdbfa46d5a77d77c407dcba1c2c9e2f/trove-classifiers-2021.1.14.tar.gz#sha256=c33727ad75fbcee42b0b9eff3ac4704461d17bd230a29e1f24c94b3e6f666d72 has inconsistent version: filename has '2021.1.14', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.10.21.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/70/c0/c7df8a3272d10270292a3e9f5dc107fb99ead411f9a8452cf34e653b6d04/trove-classifiers-2020.10.21.tar.gz#sha256=ad33e51c5aaf5fdd25bf0571f12cb67b885bf73db25a0ca629b66acbd58b654d (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/70/c0/c7df8a3272d10270292a3e9f5dc107fb99ead411f9a8452cf34e653b6d04/trove-classifiers-2020.10.21.tar.gz#sha256=ad33e51c5aaf5fdd25bf0571f12cb67b885bf73db25a0ca629b66acbd58b654d has inconsistent version: filename has '2020.10.21', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.10.7.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/0c/84/8c65806b58102d0383961e3228df841e3c72347ff530aedad2fb8d9e842c/trove-classifiers-2020.10.7.tar.gz#sha256=9fee2ffe8f2709f102677f0d7745db3b8125cb1e11fcfef9e2324fab545f11d9 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/0c/84/8c65806b58102d0383961e3228df841e3c72347ff530aedad2fb8d9e842c/trove-classifiers-2020.10.7.tar.gz#sha256=9fee2ffe8f2709f102677f0d7745db3b8125cb1e11fcfef9e2324fab545f11d9 has inconsistent version: filename has '2020.10.7', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.10.6.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/b5/46/c47618f65d8052e6123b5f1230db8327b9dd88bca14b0fae51d03a709e72/trove-classifiers-2020.10.6.tar.gz#sha256=ba09f65bb6f5364f98c76d01390c3174efbdfaae421e4ff1ca101a5d96256d2f (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/b5/46/c47618f65d8052e6123b5f1230db8327b9dd88bca14b0fae51d03a709e72/trove-classifiers-2020.10.6.tar.gz#sha256=ba09f65bb6f5364f98c76d01390c3174efbdfaae421e4ff1ca101a5d96256d2f has inconsistent version: filename has '2020.10.6', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.9.25.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/ca/38/f05822373cb310ee81944b3b2ee678c5c155e6848110279f5d708762c950/trove-classifiers-2020.9.25.tar.gz#sha256=44c975c35ee2144da632e09931ea5aaf32277459809af17b711715eb789c2624 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/ca/38/f05822373cb310ee81944b3b2ee678c5c155e6848110279f5d708762c950/trove-classifiers-2020.9.25.tar.gz#sha256=44c975c35ee2144da632e09931ea5aaf32277459809af17b711715eb789c2624 has inconsistent version: filename has '2020.9.25', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.9.8.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/94/2d/482a2a63977b00a595bfbfbd19223f1538fb8479f3abd6c721017aaa6aad/trove-classifiers-2020.9.8.tar.gz#sha256=27ecd4f2b4ddb24f7f60a83bceedbdf3e4896c2c4d635ad172c9b1c803893193 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/94/2d/482a2a63977b00a595bfbfbd19223f1538fb8479f3abd6c721017aaa6aad/trove-classifiers-2020.9.8.tar.gz#sha256=27ecd4f2b4ddb24f7f60a83bceedbdf3e4896c2c4d635ad172c9b1c803893193 has inconsistent version: filename has '2020.9.8', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.9.3.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/f2/bc/4a475fa0c7a92d0c60f5603fd7380a809dc612b9c0b172fb8fc36bba0812/trove-classifiers-2020.9.3.tar.gz#sha256=169d6851734d75e303b092c13f0778ce765ac43978d7afa00f4d36d802cea75f (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/f2/bc/4a475fa0c7a92d0c60f5603fd7380a809dc612b9c0b172fb8fc36bba0812/trove-classifiers-2020.9.3.tar.gz#sha256=169d6851734d75e303b092c13f0778ce765ac43978d7afa00f4d36d802cea75f has inconsistent version: filename has '2020.9.3', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.8.17.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/c2/f0/84916ec7c790ff45449d849202d164dfeb6eb889cae83fe0e2b9be482ddf/trove-classifiers-2020.8.17.tar.gz#sha256=a38bf56e5e5db7e9a5c5bc65b3aae1e4058ad0092e4fbcaefe824bd0c370ecbf (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/c2/f0/84916ec7c790ff45449d849202d164dfeb6eb889cae83fe0e2b9be482ddf/trove-classifiers-2020.8.17.tar.gz#sha256=a38bf56e5e5db7e9a5c5bc65b3aae1e4058ad0092e4fbcaefe824bd0c370ecbf has inconsistent version: filename has '2020.8.17', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.8.14.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/af/58/9a1c085132bafdfa0f6969017f903a508e714bd3899d5ed40901cb631c11/trove-classifiers-2020.8.14.tar.gz#sha256=1c2b5f85ca32c516f488eb80a95333e6e7d1cd5f443c9cbc03e63f83876d85ef (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/af/58/9a1c085132bafdfa0f6969017f903a508e714bd3899d5ed40901cb631c11/trove-classifiers-2020.8.14.tar.gz#sha256=1c2b5f85ca32c516f488eb80a95333e6e7d1cd5f443c9cbc03e63f83876d85ef has inconsistent version: filename has '2020.8.14', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.8.11.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/16/da/a80eaf3d853de19046d0660da38d2679e2103d54b6bbb8b3c048dd1ab0bb/trove-classifiers-2020.8.11.tar.gz#sha256=1df5ca68425fa0ef3f8c74f17e736b68316de9a6ea5fddad0dd72b7040f490a8 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/16/da/a80eaf3d853de19046d0660da38d2679e2103d54b6bbb8b3c048dd1ab0bb/trove-classifiers-2020.8.11.tar.gz#sha256=1df5ca68425fa0ef3f8c74f17e736b68316de9a6ea5fddad0dd72b7040f490a8 has inconsistent version: filename has '2020.8.11', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.8.7.tar.gz (11 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/77/03/8d415623b7475cc70a6f01727a744183bacb4c93726dc8f21143b55238f1/trove-classifiers-2020.8.7.tar.gz#sha256=2971a3ff0f38234baccf0eac33bdd72d47d422d1dd930a5d569cd4c7066abbd1 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/77/03/8d415623b7475cc70a6f01727a744183bacb4c93726dc8f21143b55238f1/trove-classifiers-2020.8.7.tar.gz#sha256=2971a3ff0f38234baccf0eac33bdd72d47d422d1dd930a5d569cd4c7066abbd1 has inconsistent version: filename has '2020.8.7', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.8.6.tar.gz (14 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/93/6e/d90d715b15fe55fb6e745a39ee2c8cb566ea9dc2953c570407554e911628/trove-classifiers-2020.8.6.tar.gz#sha256=0e5ec7ee343477380859cdeb2270185642da89de5ae75f7a5d04d97e1ccc6a20 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/93/6e/d90d715b15fe55fb6e745a39ee2c8cb566ea9dc2953c570407554e911628/trove-classifiers-2020.8.6.tar.gz#sha256=0e5ec7ee343477380859cdeb2270185642da89de5ae75f7a5d04d97e1ccc6a20 has inconsistent version: filename has '2020.8.6', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.8.3.tar.gz (14 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/e9/82/dbc3b859f080a972a936269f39de0ee7b90f14932b266341f5ef4701542f/trove-classifiers-2020.8.3.tar.gz#sha256=4615c42c4f974fdc51f04b74e1e3322467a71e12da265f764f0ecc0702db0f36 (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/e9/82/dbc3b859f080a972a936269f39de0ee7b90f14932b266341f5ef4701542f/trove-classifiers-2020.8.3.tar.gz#sha256=4615c42c4f974fdc51f04b74e1e3322467a71e12da265f764f0ecc0702db0f36 has inconsistent version: filename has '2020.8.3', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.7.30.tar.gz (14 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/86/02/1d8d42de38f28f43ec59ad6c2d7213c5a964a296c9d486c3ccc5b4642bb5/trove-classifiers-2020.7.30.tar.gz#sha256=18ae23b211aebf54242b6d2bef916ca28a8c91d366f4c07ed3e2d48b3a12d6ab (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/86/02/1d8d42de38f28f43ec59ad6c2d7213c5a964a296c9d486c3ccc5b4642bb5/trove-classifiers-2020.7.30.tar.gz#sha256=18ae23b211aebf54242b6d2bef916ca28a8c91d366f4c07ed3e2d48b3a12d6ab has inconsistent version: filename has '2020.7.30', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.6.20.tar.gz (14 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
WARNING: Discarding https://files.pythonhosted.org/packages/7f/d4/dc7e41ff41235b45912081a92e44d8826834b158e9dfe4b8a3ed58a49b3f/trove-classifiers-2020.6.20.tar.gz#sha256=14b331541cbfc63bab496809bbb8c09c86ffb6f5c5a0265556480e4f19f5827c (from https://pypi.org/simple/trove-classifiers/). Requested trove-classifiers from https://files.pythonhosted.org/packages/7f/d4/dc7e41ff41235b45912081a92e44d8826834b158e9dfe4b8a3ed58a49b3f/trove-classifiers-2020.6.20.tar.gz#sha256=14b331541cbfc63bab496809bbb8c09c86ffb6f5c5a0265556480e4f19f5827c has inconsistent version: filename has '2020.6.20', but metadata has '2021.3.23'
  Downloading trove-classifiers-2020.5.21.tar.gz (14 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
Building wheels for collected packages: trove-classifiers
  Building wheel for trove-classifiers (PEP 517) ... done
  Created wheel for trove-classifiers: filename=trove_classifiers-2020.5.21-py3-none-any.whl size=14065 sha256=f7584820b28c2ba83da0557a9285028c540639284e2c3fe4f0d9c26ffe116940
  Stored in directory: /home/domdf/.cache/pip/wheels/67/c2/71/468657a6caf886b53f4b0ad2b19cc46b75b2ca666e156ce436
Successfully built trove-classifiers

pip is version 21.0.1

I would have expected the latest version to build correctly, and pip stop there.

Add `Framework :: Plone :: Distribution`

The name of the classifier you would like to add

Framework :: Plone :: Distribution

Why do you want to add this classifier?

Plone just released the initial support for Distributions -- a pre-packaged version of Plone that includes specific features, themes, modules, and configurations. It is a convenient way to get a specific website up and running quickly, as the distribution includes everything needed to run that type of site. -- and we want to be able to segment new distributions from our existing addon ecosystem,

Even though the plone.distribution package is a new addition to Plone, over the years, the concept of a pre-packaged version of Plone has been used by many integrators and developers around the world. The following packages are good examples of public implementations of this concept:

Request trove classifier for scikit-learn

Request to add a new Trove classifier.

The name of the classifier you would like to add

  • scipy :: scikit-learn
  • scipy :: learn

Why do you want to add this classifier?

scikit-learn is one of the most popular "general purpose" machine learning frameworks for Python. There are many Python packages extending the functionality of scikit-learn, refer to this incomplete list of PyPi packages (section algorithms and extensions). A search for "sklearn" on pypi.org has 441 hits right now. scikit-learn is an extension of SciPy, one of the most popular Python ecosystems for mathematics, science, and engineering. SciPy extensions are called scikits. A search for "scikit" on pypi.org has 1130 hits right now. A trove classifier would help people to find suitable packages on pypi and would allow to process package meta data automatically using the Warehouse APIs. One of the proposed classifiers above could be suitable for scikit-learn.

Automatic deploys 1x a day

Since this repo is using Github Actions, would be great to add this so there isn't a separate deploy step.

Request to add trove classifier for CAN bus

Request to add a new Trove classifier.

The name of the classifier you would like to add

"Topic :: System :: Hardware :: Controller Area Network (CAN)"

Why do you want to add this classifier?

To correctly categorize projects based on the CAN bus.

Request to add trove classifier Framework :: SageMath

Request to add a new Trove classifier.

The name of the classifier you would like to add

  • Framework :: SageMath

Why do you want to add this classifier?

SageMath is one of the most popular open source computer algebra software, used for teaching and research in Mathematics, Physics, Computer Science, and more. SageMath's interface language is Python; pip is integrated to its command line, has recently become the preferred way to distribute packages based on SageMath, and introductory workshops now teach the basics of Python packaging.

Currently, a search for "sagemath" on PyPI shows 38 results, but a search for "sage" (a legacy name for SageMath) shows 113 projects, many of which are related to SageMath.

Request: more precise license classifiers

Hello,

Going throught the list of available classifiers at https://pypi.python.org/pypi?%3Aaction=list_classifiers , I feel like some of the license classifiers are not precise enough. For instance, there is a "License :: OSI Approved :: BSD License" that could refer to multiple licenses: BSD-2-Clause, BSD-2-Clause-Patent, BSD-3-Clause. In order to determine the actual license used by a project that only specifies "License :: OSI Approved :: BSD License", one has to look at the LICENSE file distributed with the source code.

This is an issue for downstream package maintainers for two reasons:

  • automated tools (such as pypi2deb, guix import, upt) meant to help them by parsing PyPI and generating a package may have trouble finding the exact license used by a package;
  • some versions of a license may be GPL/FSF/DFSG compatible while other versions may not: therefore it makes it harder than necessary to know whether a given package may be included in a given distribution.

I think the following licenses should be added (if possible to both pypi-legacy and warehouse):

  • License :: OSI Approved :: Academic Free License 1.1 (AFL-1.1)
  • License :: OSI Approved :: Academic Free License 1.2 (AFL-1.2)
  • License :: OSI Approved :: Academic Free License 2.0 (AFL-2.0)
  • License :: OSI Approved :: Academic Free License 2.1 (AFL-2.1)
  • License :: OSI Approved :: Academic Free License 3.0 (AFL-3.0)
  • License :: Apache Software License 1.0 (Apache-1.0)
  • License :: OSI Approved :: Apache Software License 1.1 (Apache-1.1)
  • License :: OSI Approved :: Apache Software License 2.0 (Apache-2.0)
  • License :: OSI Approved :: Apple Public Source License 1.0 (APSL-1.0)
  • License :: OSI Approved :: Apple Public Source License 1.1 (APSL-1.1)
  • License :: OSI Approved :: Apple Public Source License 1.2 (APSL-1.2)
  • License :: OSI Approved :: Apple Public Source License 2.0 (APSL-2.0)
  • License :: OSI Approved :: Artistic License 1.0 (Artistic-1.0)
  • License :: OSI Approved :: Artistic License 2.0 (Artistic-2.0)
  • License :: OSI Approved :: BSD 2-Clause "Simplified License" (BSD-2-Clause)
  • License :: OSI Approved :: BSD 2-Clause Plus Patent License (BSD-2-Clause-Patent)
  • License :: OSI Approved :: BSD 3-Clause "New" or "Revised" License (BSD-3-Clause)
  • License :: OSI Approved :: GNU Lesser General Public License v2.0 (LGPLv2.0)
  • License :: OSI Approved :: GNU Lesser General Public License v2.0 or later (LGPLv2.0+)
  • License :: OSI Approved :: GNU Lesser General Public License v2.1 (LGPLv2.1)
  • License :: OSI Approved :: GNU Lesser General Public License v2.1 or later (LGPLv2.1+)
  • License :: OSI Approved :: GNU Lesser General Public License v3.0 (LGPLv3.0)
  • License :: OSI Approved :: GNU Lesser General Public License v3.0 or later (LGPLv3.0+)

In parentheses are the spdx identifiers (see https://spdx.org/licenses/) except for LGPL* where I used identifiers similar to those currently used for the various versions of the GPL.

Regarding the LGPL classifiers, we may also state that v2 and v2+ (currently in the list of valid classifiers) refer to v2.0 and v2.0+ and not to v2.1 and v2.1+, which would remove the need for the LGPLv2 and LGPLv2.0+ classifiers.

I decided not to include less used variants of the BSD licences - they may be added in the future if need be.

What do you think about this?

Add type hints

Hi,

for the python API, did you consider to add inline type hints or pyi files as well as an py.typed file?
If this is added, a programmatic access can be checked by mypy.

I'm happy to open a PR to add this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.