===========
whatsonpypi
===========
.. image:: https://img.shields.io/pypi/v/whatsonpypi.svg
:target: https://pypi.python.org/pypi/whatsonpypi
.. image:: https://pepy.tech/badge/whatsonpypi
:target: https://pepy.tech/project/whatsonpypi
:alt: Downloads
CLI tool to get package info from PyPI and/or manipulate requirements.
Installation
------------
.. code-block:: bash
$ pip install -U whatsonpypi
Requirements
------------
Python 3.7+
Features
--------
* Find information on a package on PyPI
Examples:
.. code-block:: bash
$ whatsonpypi django
NAME
Django
LATEST VERSION
2.1.5
SUMMARY
A high-level Python Web framework that encourages rapid development and clean, pragmatic design.
PACKAGE URL
https://pypi.org/project/Django/
AUTHOR
Django Software Foundation
LATEST RELEASES
2.2a1, 2.1rc1, 2.1b1, 2.1a1, 2.1.5
* For more information..
Examples:
.. code-block:: bash
$ whatsonpypi django --more
...
* Version specific information..
Examples:
.. code-block:: bash
$ whatsonpypi django==2.1.4 --more
...
* Launch documentation URL of project in a browser tab
Examples:
.. code-block:: bash
$ whatsonpypi django --docs
* Add packages to your requirements files.
Examples:
.. code-block:: bash
$ whatsonpypi django --add
By default, it searches for files with names matching ``requirements*.txt``
in the current working directory and adds the dependency to the end of the
file.
You can change the filename pattern to search for. The pattern may contain simple
shell-style wildcards.
.. code-block:: bash
$ whatsonpypi django --add --req-pattern "*.txt"
**If there's more than one file**, you will see a prompt allowing you to select the files
that should be modified.
If you want the dependency to be added to a specific line,
mention a comment ``#wopp`` on its own line, which will be replaced with the dependency:
Example:
Do this in your requirements.txt:
.. code-block:: yaml
# Django
django==2.1.5
# testing
pytest==4.1.1
#wopp
Then running this:
.. code-block:: bash
$ whatsonpypi pytest-runner --add
will produce this:
.. code-block:: yaml
# Django
django==2.1.5
# testing
pytest==4.1.1
pytest-runner==4.2
Use requirements specifications as needed. ``==``, ``>=``, ``<=`` or ``~=`` using
``--ee``, ``--ge``, ``--le`` or ``--te``. Default is ``--ee``:
.. code-block:: bash
$ whatsonpypi pytest-runner --add --ge
will produce this:
.. code-block:: yaml
# Django
django==2.1.5
# testing
pytest==4.1.1
pytest-runner>=4.2
Existing dependencies will be replaced with newer versions. Dependency version
by default is the latest unless specified explicitly like:
.. code-block:: bash
$ whatsonpypi pytest-runner==4.1 --add
Note that you may have you to double quote it in order to prevent Bash from parsing it.
.. code-block:: bash
$ whatsonpypi "pytest-runner>=4.1" --add
Optionally, directory to search for requirement files can be specified with ``--req-dir``.
Both absolute and relative paths are allowed. Must be a directory.
.. code-block:: bash
$ whatsonpypi pytest-runner==4.1 --add --req-dir /Users/Me/Documents/GitHub/project/requirements
Default value (if not provided) is the directory where the command is run (cwd).
Also, optionally, you can specify comments to add before a dependency.
Note that the comment will not be added if the dependency already exists in the file.
For example, running this:
.. code-block:: bash
$ whatsonpypi pytest-runner --add --comment 'testing'
will add this:
.. code-block:: yaml
# testing
pytest-runner==4.2
See all options with:
.. code-block:: bash
$ whatsonpypi --help
Credits
-------
* Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template for getting me started.
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
=======
History
=======
0.3.7 (2023-01-11)
------------------
* add -o/--page to open PyPI page
0.3.6 (2023-01-11)
------------------
* fix None values from PyPI API
0.3.5 (2023-01-10)
------------------
* remove debug logs
0.3.4 (2023-01-09)
------------------
* fix null pointers
0.3.3 (2023-01-08)
------------------
* make versions flexible
0.3.2 (2023-01-07)
------------------
* Fix version and spec parsing
0.3.1 (2023-01-07)
------------------
* add --le, --ge, --ee, --te for requirements
0.3.0 (2023-01-06)
------------------
* dropped Python2 support. Requires 3.7+ now.
0.2.8 (2019-02-13)
------------------
* more py2 fixes
* use utf-8 while opening files
0.2.7 (2019-02-12)
------------------
* fix for py2 ImportError
0.2.6 (2019-02-06)
------------------
* fix absence of new lines
0.2.5 (2019-02-05)
------------------
* fix requirements file format check
0.2.4 (2019-01-29)
------------------
* add --comment to allow mentioning comments with --add
0.2.3 (2019-01-26)
------------------
* add --req-pattern to allow specifying search pattern for requirements files
* raise Error when no requirements files are found
0.2.2 (2019-01-23)
------------------
* Fix empty dependencies display
0.2.1 (2019-01-23)
------------------
* Small fixes
0.2.0 (2019-01-22)
------------------
* Add -a/--add to enable adding packages to requirement files.
* Added -d/--docs to launch docs URL in browser
* Allow version specific querying
0.1.2 (2019-01-20)
------------------
* Display more package info
* added --more/-m for even more info
0.1.1 (2019-01-02)
------------------
* First release on PyPI.
Raw data
{
"_id": null,
"home_page": "https://github.com/viseshrp/whatsonpypi",
"name": "whatsonpypi",
"maintainer": "Visesh Prasad",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "visesh@live.com",
"keywords": "whatsonpypi wopp pypi requirements virtualenv venv",
"author": "Visesh Prasad",
"author_email": "visesh@live.com",
"download_url": "",
"platform": null,
"description": "===========\nwhatsonpypi\n===========\n\n\n.. image:: https://img.shields.io/pypi/v/whatsonpypi.svg\n :target: https://pypi.python.org/pypi/whatsonpypi\n\n.. image:: https://pepy.tech/badge/whatsonpypi\n :target: https://pepy.tech/project/whatsonpypi\n :alt: Downloads\n\n\nCLI tool to get package info from PyPI and/or manipulate requirements.\n\n\nInstallation\n------------\n\n.. code-block:: bash\n\n $ pip install -U whatsonpypi\n\n\nRequirements\n------------\n\nPython 3.7+\n\n\nFeatures\n--------\n\n* Find information on a package on PyPI\n\n Examples:\n\n .. code-block:: bash\n\n $ whatsonpypi django\n NAME\n Django\n LATEST VERSION\n 2.1.5\n SUMMARY\n A high-level Python Web framework that encourages rapid development and clean, pragmatic design.\n PACKAGE URL\n https://pypi.org/project/Django/\n AUTHOR\n Django Software Foundation\n LATEST RELEASES\n 2.2a1, 2.1rc1, 2.1b1, 2.1a1, 2.1.5\n\n\n* For more information..\n\n Examples:\n\n .. code-block:: bash\n\n $ whatsonpypi django --more\n ...\n\n\n* Version specific information..\n\n Examples:\n\n .. code-block:: bash\n\n $ whatsonpypi django==2.1.4 --more\n ...\n\n\n* Launch documentation URL of project in a browser tab\n\n Examples:\n\n .. code-block:: bash\n\n $ whatsonpypi django --docs\n\n\n* Add packages to your requirements files.\n\n Examples:\n\n .. code-block:: bash\n\n $ whatsonpypi django --add\n\n\n By default, it searches for files with names matching ``requirements*.txt``\n in the current working directory and adds the dependency to the end of the\n file.\n\n You can change the filename pattern to search for. The pattern may contain simple\n shell-style wildcards.\n\n .. code-block:: bash\n\n $ whatsonpypi django --add --req-pattern \"*.txt\"\n\n\n **If there's more than one file**, you will see a prompt allowing you to select the files\n that should be modified.\n\n If you want the dependency to be added to a specific line,\n mention a comment ``#wopp`` on its own line, which will be replaced with the dependency:\n\n Example:\n\n Do this in your requirements.txt:\n\n .. code-block:: yaml\n\n # Django\n django==2.1.5\n # testing\n pytest==4.1.1\n #wopp\n\n Then running this:\n\n .. code-block:: bash\n\n $ whatsonpypi pytest-runner --add\n\n will produce this:\n\n .. code-block:: yaml\n\n # Django\n django==2.1.5\n # testing\n pytest==4.1.1\n pytest-runner==4.2\n\n Use requirements specifications as needed. ``==``, ``>=``, ``<=`` or ``~=`` using\n ``--ee``, ``--ge``, ``--le`` or ``--te``. Default is ``--ee``:\n\n .. code-block:: bash\n\n $ whatsonpypi pytest-runner --add --ge\n\n will produce this:\n\n .. code-block:: yaml\n\n # Django\n django==2.1.5\n # testing\n pytest==4.1.1\n pytest-runner>=4.2\n\n Existing dependencies will be replaced with newer versions. Dependency version\n by default is the latest unless specified explicitly like:\n\n .. code-block:: bash\n\n $ whatsonpypi pytest-runner==4.1 --add\n\n\n Note that you may have you to double quote it in order to prevent Bash from parsing it.\n\n .. code-block:: bash\n\n $ whatsonpypi \"pytest-runner>=4.1\" --add\n\n Optionally, directory to search for requirement files can be specified with ``--req-dir``.\n Both absolute and relative paths are allowed. Must be a directory.\n\n .. code-block:: bash\n\n $ whatsonpypi pytest-runner==4.1 --add --req-dir /Users/Me/Documents/GitHub/project/requirements\n\n Default value (if not provided) is the directory where the command is run (cwd).\n\n Also, optionally, you can specify comments to add before a dependency.\n Note that the comment will not be added if the dependency already exists in the file.\n\n For example, running this:\n\n .. code-block:: bash\n\n $ whatsonpypi pytest-runner --add --comment 'testing'\n\n will add this:\n\n .. code-block:: yaml\n\n # testing\n pytest-runner==4.2\n\nSee all options with:\n\n.. code-block:: bash\n\n $ whatsonpypi --help\n\nCredits\n-------\n\n* Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template for getting me started.\n\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n\n\n\n=======\nHistory\n=======\n\n0.3.7 (2023-01-11)\n------------------\n\n* add -o/--page to open PyPI page\n\n0.3.6 (2023-01-11)\n------------------\n\n* fix None values from PyPI API\n\n0.3.5 (2023-01-10)\n------------------\n\n* remove debug logs\n\n0.3.4 (2023-01-09)\n------------------\n\n* fix null pointers\n\n0.3.3 (2023-01-08)\n------------------\n\n* make versions flexible\n\n0.3.2 (2023-01-07)\n------------------\n\n* Fix version and spec parsing\n\n0.3.1 (2023-01-07)\n------------------\n\n* add --le, --ge, --ee, --te for requirements\n\n0.3.0 (2023-01-06)\n------------------\n\n* dropped Python2 support. Requires 3.7+ now.\n\n0.2.8 (2019-02-13)\n------------------\n\n* more py2 fixes\n* use utf-8 while opening files\n\n0.2.7 (2019-02-12)\n------------------\n\n* fix for py2 ImportError\n\n0.2.6 (2019-02-06)\n------------------\n\n* fix absence of new lines\n\n0.2.5 (2019-02-05)\n------------------\n\n* fix requirements file format check\n\n0.2.4 (2019-01-29)\n------------------\n\n* add --comment to allow mentioning comments with --add\n\n0.2.3 (2019-01-26)\n------------------\n\n* add --req-pattern to allow specifying search pattern for requirements files\n* raise Error when no requirements files are found\n\n0.2.2 (2019-01-23)\n------------------\n\n* Fix empty dependencies display\n\n0.2.1 (2019-01-23)\n------------------\n\n* Small fixes\n\n0.2.0 (2019-01-22)\n------------------\n\n* Add -a/--add to enable adding packages to requirement files.\n* Added -d/--docs to launch docs URL in browser\n* Allow version specific querying\n\n0.1.2 (2019-01-20)\n------------------\n\n* Display more package info\n* added --more/-m for even more info\n\n0.1.1 (2019-01-02)\n------------------\n\n* First release on PyPI.\n",
"bugtrack_url": null,
"license": "MIT license",
"summary": "CLI tool to get package info from PyPI and add to requirements.",
"version": "0.3.7",
"split_keywords": [
"whatsonpypi",
"wopp",
"pypi",
"requirements",
"virtualenv",
"venv"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5f54d9b10250f7d1f9edc0ebc4ff041523bba648a865294cf9f738c741803490",
"md5": "d94fec5e2b30e40b7efc4e29f6c6d016",
"sha256": "8371949b4cd901dc59be5acb48c990e8be66595ee3bc974a54c233ef3c3638e7"
},
"downloads": -1,
"filename": "whatsonpypi-0.3.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d94fec5e2b30e40b7efc4e29f6c6d016",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 14194,
"upload_time": "2023-01-12T04:08:48",
"upload_time_iso_8601": "2023-01-12T04:08:48.717178Z",
"url": "https://files.pythonhosted.org/packages/5f/54/d9b10250f7d1f9edc0ebc4ff041523bba648a865294cf9f738c741803490/whatsonpypi-0.3.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-12 04:08:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "viseshrp",
"github_project": "whatsonpypi",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "whatsonpypi"
}