Metadata-Version: 2.1
Name: jira
Version: 3.1.1
Summary: Python library for interacting with JIRA via REST APIs.
Home-page: https://github.com/pycontribs/jira
Author: Ben Speakmon
Author-email: ben.speakmon@gmail.com
Maintainer: Sorin Sbarnea
Maintainer-email: sorin.sbarnea@gmail.com
License: BSD
Project-URL: Bug Tracker, https://github.com/pycontribs/jira/issues
Project-URL: Release Management, https://github.com/pycontribs/jira/projects
Project-URL: CI: GitHub Actions, https://github.com/pycontribs/jira/actions
Project-URL: Source Code, https://github.com/pycontribs/jira.git
Project-URL: Documentation, https://jira.readthedocs.io
Project-URL: Forum, https://community.atlassian.com/t5/tag/jira-python/tg-p?sort=recent
Keywords: api,atlassian,jira,rest,web
Platform: any
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Other Environment
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Internet :: WWW/HTTP
Requires-Python: >=3.6
Description-Content-Type: text/x-rst; charset=UTF-8
License-File: LICENSE
License-File: AUTHORS.rst
Requires-Dist: defusedxml
Requires-Dist: keyring
Requires-Dist: requests-oauthlib (>=1.1.0)
Requires-Dist: requests (>=2.10.0)
Requires-Dist: requests-toolbelt
Requires-Dist: setuptools (>=20.10.1)
Provides-Extra: async
Requires-Dist: requests-futures (>=0.9.7) ; extra == 'async'
Provides-Extra: cli
Requires-Dist: ipython (>=4.0.0) ; extra == 'cli'
Provides-Extra: docs
Requires-Dist: Sphinx (>=2.2.0) ; extra == 'docs'
Requires-Dist: sphinx-rtd-theme (>=0.4.3) ; extra == 'docs'
Provides-Extra: opt
Requires-Dist: filemagic (>=1.6) ; extra == 'opt'
Requires-Dist: PyJWT ; extra == 'opt'
Requires-Dist: requests-jwt ; extra == 'opt'
Requires-Dist: requests-kerberos ; extra == 'opt'
Provides-Extra: test
Requires-Dist: docutils (>=0.12) ; extra == 'test'
Requires-Dist: flaky ; extra == 'test'
Requires-Dist: MarkupSafe (>=0.23) ; extra == 'test'
Requires-Dist: oauthlib ; extra == 'test'
Requires-Dist: py (>=1.4) ; extra == 'test'
Requires-Dist: pytest-cache ; extra == 'test'
Requires-Dist: pytest-cov ; extra == 'test'
Requires-Dist: pytest-instafail ; extra == 'test'
Requires-Dist: pytest-sugar ; extra == 'test'
Requires-Dist: pytest-timeout (>=1.3.1) ; extra == 'test'
Requires-Dist: pytest-xdist (>=2.2) ; extra == 'test'
Requires-Dist: pytest (<7.0,>=6.0.0) ; extra == 'test'
Requires-Dist: PyYAML (>=5.1) ; extra == 'test'
Requires-Dist: requests-mock ; extra == 'test'
Requires-Dist: requires.io ; extra == 'test'
Requires-Dist: tenacity ; extra == 'test'
Requires-Dist: wheel (>=0.24.0) ; extra == 'test'
Requires-Dist: xmlrunner (>=1.7.7) ; extra == 'test'
Requires-Dist: yanc (>=0.3.3) ; extra == 'test'

===================
Jira Python Library
===================

.. image:: https://img.shields.io/pypi/v/jira.svg
    :target: https://pypi.python.org/pypi/jira/

.. image:: https://img.shields.io/pypi/l/jira.svg
    :target: https://pypi.python.org/pypi/jira/

.. image:: https://img.shields.io/github/issues/pycontribs/jira.svg
    :target: https://github.com/pycontribs/jira/issues

.. image:: https://img.shields.io/badge/irc-%23pycontribs-blue
    :target: irc:///#pycontribs

------------

.. image:: https://readthedocs.org/projects/jira/badge/?version=main
    :target: https://jira.readthedocs.io/

.. image:: https://codecov.io/gh/pycontribs/jira/branch/main/graph/badge.svg
    :target: https://codecov.io/gh/pycontribs/jira

.. image:: https://img.shields.io/bountysource/team/pycontribs/activity.svg
    :target: https://www.bountysource.com/teams/pycontribs/issues?tracker_ids=3650997

.. image:: https://requires.io/github/pycontribs/jira/requirements.svg?branch=main
    :target: https://requires.io/github/pycontribs/jira/requirements/?branch=main
    :alt: Requirements Status


This library eases the use of the Jira REST API from Python and it has been used in production for years.

As this is an open-source project that is community maintained, do not be surprised if some bugs or features are not implemented quickly enough. You are always welcomed to use BountySource_ to motivate others to help.

.. _BountySource: https://www.bountysource.com/teams/pycontribs/issues?tracker_ids=3650997


Quickstart
----------

Feeling impatient? I like your style.

.. code-block:: python

    from jira import JIRA

    jira = JIRA('https://jira.atlassian.com')

    issue = jira.issue('JRA-9')
    print(issue.fields.project.key)            # 'JRA'
    print(issue.fields.issuetype.name)         # 'New Feature'
    print(issue.fields.reporter.displayName)   # 'Mike Cannon-Brookes [Atlassian]'


Installation
------------

Download and install using ``pip install jira`` or ``easy_install jira``

You can also try ``pip install --user --upgrade jira`` which will install or
upgrade jira to your user directory. Or maybe you ARE using a virtualenv_
right?

By default only the basic library dependencies are installed, so if you want
to use the ``cli`` tool or other optional dependencies do perform a full
installation using ``pip install jira[opt,cli,test]``

.. _virtualenv: https://virtualenv.pypa.io/


Usage
-----

See the documentation_ for full details.

.. _documentation: https://jira.readthedocs.org/


Development
-----------

Development takes place on GitHub_ using the default repository branch. Each
version is tagged.

Setup
=====
* Fork_ repo
* Keep it sync_'ed while you are developing
* Install pyenv_
* develop and test
    * Launch docker jira server
        - ``docker run -dit -p 2990:2990 --name jira addono/jira-software-standalone``
    * Lint
        - ``tox -e lint``
    * Run tests
        - ``tox``
    * Run tests for one env only
        - ``tox -e py37``
    * Specify what tests to run with pytest_
        - ``tox -e py39 -- tests/resources/test_attachment.py``
    * Debug tests with breakpoints by disabling the coverage plugin, with the ``--no-cov`` argument.
        - Example for VSCode on Windows :

        .. code-block:: java

            {
                "name": "Pytest",
                "type": "python",
                "request": "launch",
                "python": ".tox\\py39\\Scripts\\python.exe",
                "module": "pytest",
                "env": {
                    "CI_JIRA_URL": "http://localhost:2990/jira",
                    "CI_JIRA_ADMIN": "admin",
                    "CI_JIRA_ADMIN_PASSWORD": "admin",
                    "CI_JIRA_USER": "jira_user",
                    "CI_JIRA_USER_FULL_NAME": "Newly Created CI User",
                    "CI_JIRA_USER_PASSWORD": "jira",
                    "CI_JIRA_ISSUE": "Task",
                    "PYTEST_TIMEOUT": "0", // Don't timeout
                },
                "args": [
                    // "-v",
                    "--no-cov", // running coverage affects breakpoints
                    "tests/resources/test_attachment.py"
                ]
            }

    * Build and publish with TWINE
        - ``tox -e publish``

.. _Fork: https://help.github.com/articles/fork-a-repo/
.. _sync: https://help.github.com/articles/syncing-a-fork/
.. _pyenv: https://amaral.northwestern.edu/resources/guides/pyenv-tutorial
.. _pytest: https://docs.pytest.org/en/stable/usage.html#specifying-tests-selecting-tests


Jira REST API Reference Links
=============================

When updating interactions with the Jira REST API please refer to the documentation below. We aim to support both Jira Cloud and Jira Server / Data Center.

1. `Jira Cloud`_                / `Jira Server`_ (main REST API reference)
2. `Jira Software Cloud`_       / `Jira Software Server`_ (former names include: Jira Agile, Greenhopper)
3. `Jira Service Desk Cloud`_   / `Jira Service Desk Server`_

.. _`Jira Cloud`: https://developer.atlassian.com/cloud/jira/platform/rest/v2/
.. _`Jira Server`: https://docs.atlassian.com/software/jira/docs/api/REST/latest/
.. _`Jira Software Cloud`: https://developer.atlassian.com/cloud/jira/software/rest/
.. _`Jira Software Server`: https://docs.atlassian.com/jira-software/REST/latest/
.. _`Jira Service Desk Cloud`: https://docs.atlassian.com/jira-servicedesk/REST/cloud/
.. _`Jira Service Desk Server`: https://docs.atlassian.com/jira-servicedesk/REST/server/


Credits
-------

In addition to all the contributors we would like to thank to these companies:

* Atlassian_ for developing such a powerful issue tracker and for providing a free on-demand Jira_ instance that we can use for continuous integration testing.
* JetBrains_ for providing us with free licenses of PyCharm_
* GitHub_ for hosting our continuous integration and our git repo
* Navicat_ for providing us free licenses of their powerful database client GUI tools.

.. _Atlassian: https://www.atlassian.com/
.. _Jira: https://pycontribs.atlassian.net
.. _JetBrains: https://www.jetbrains.com/
.. _PyCharm: https://www.jetbrains.com/pycharm/
.. _GitHub: https://github.com/pycontribs/jira
.. _Navicat: https://www.navicat.com/

.. image:: https://raw.githubusercontent.com/pycontribs/resources/main/logos/x32/logo-atlassian.png
   :target: https://www.atlassian.com/

.. image:: https://raw.githubusercontent.com/pycontribs/resources/main/logos/x32/logo-pycharm.png
    :target: https://www.jetbrains.com/

.. image:: https://raw.githubusercontent.com/pycontribs/resources/main/logos/x32/logo-navicat.png
    :target: https://www.navicat.com/


