Python Redmine is a library for communicating with a Redmine project management application. Redmine exposes some of it's data via REST API for which Python Redmine provides a simple but powerful Pythonic API inspired by a well-known Django ORM:
>>> from redmine import Redmine
>>> redmine = Redmine('http://demo.redmine.org', username='foo', password='bar')
>>> project = redmine.project.get('vacation')
>>> project.id
30404
>>> project.identifier
'vacation'
>>> project.created_on
datetime.datetime(2013, 12, 31, 13, 27, 47)
>>> project.issues
<redmine.resultsets.ResourceSet object with Issue resources>
>>> project.issues[0]
<redmine.resources.Issue #34441 "Vacation">
>>> dir(project.issues[0])
['assigned_to', 'author', 'created_on', 'description', 'done_ratio',
'due_date', 'estimated_hours', 'id', 'priority', 'project', 'relations',
'start_date', 'status', 'subject', 'time_entries', 'tracker', 'updated_on']
>>> project.issues[0].subject
'Vacation'
>>> project.issues[0].time_entries
<redmine.resultsets.ResourceSet object with TimeEntry resources>
- Supports 100% of Redmine API features
- Supports Python 2.6 - 3.4, PyPy and PyPy3
- Extensively documented
- Provides ORM-style Pythonic API
Python Redmine relies heavily on great Requests library by Kenneth Reitz for all the http(s) calls.
To install Python Redmine, simply:
$ pip install python-redmine
or:
$ easy_install python-redmine
Documentation is available at http://python-redmine.readthedocs.org.
I will be glad to get your feedback, pull requests, issues, whatever. Feel free to contact me for any questions.
If you like this project and want to support it you have 3 options:
- Just give this project a star at the top of the GitHub repository. That doesn't cost you anything but makes the author happier.
- You can express your gratitude via Gratipay.
- Become a sponsor. Contact me via
tepkeev at gmail dot com
if you are interested in becoming a sponsor and we will discuss the terms and conditions.
Python Redmine is licensed under Apache 2.0 license. Check the LICENSE for details.