This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Latest Version Dependencies status unknown Test status unknown Test coverage unknown
Project Description

Introduction

This package is intended to be a drop-in replacement for the Ditz distributed issue tracker. It provides a pyditz command-line program, which acts (mostly) the same way as ditz, and it adds several other nice things too:

  • Whereas ditz, when typed on its own, runs the todo command, pyditz drops you into a command shell where you can run Ditz commands and get completion on command names, issue names and release names according to context.
  • With PyDitz, you don’t have to run it from the same directory where the issue database is; it will look in parent directories for it.
  • It keeps an intelligent cache of issues, so parsing of all the YAML files isn’t necessary for each command. This greatly improves speed when you have lots of issues.
  • You can extend PyDitz using plugins that you write—either simple standalone files (similar to the ditz ‘hook’ feature), or packages that use setuptools entrypoints.
  • You can use the database engine of PyDitz in Python programs to migrate bug databases to and from Ditz format, or create summary reports in your own favourite format. Me, I prefer reStructuredText and rst2pdf.

Requirements

To install and run it:
PyYAML, Jinja2, cerberus and six
To have nice terminal highlighting output:
Pygments (and colorama if you’re on Windows)
To mark up description and comment text in HTML output:
Markups (and the modules it needs to function)
To run the test suite:
Nose, Mock and Coverage
To build the documentation:
Sphinx, and the alabaster theme.

Installation

The usual incantation will install things:

pip install pyditz

This will install the ditz module and a console command called pyditz to invoke in a similar manner to the original ditz.

If you want to shadow the original completely, and have the ditz command run this instead, you have two options:

  1. Define the environment variable DITZCMD to be ditz. This only takes effect at installation time. Of course, instead of ditz you can choose anything else more keyboard-friendly.
  2. Create your own shell alias.

Documentation

The current documentation can be found online here. You can also look at an example of the HTML output.

License

PyDitz is distributed under the GNU Lesser General Public License, v2 or later.

Changes

Version 0.10 (2016-11-27)

  • Improve startup operations
  • Allow abbreviation of issue names
  • Sort issues by last-modified time
  • Implement issue-claiming commands
  • Use cerberus for data validation

Version 0.9.1 (2016-03-24)

  • bugfix: Line wrapping problem in terminal
  • bugfix: Fix problems with version detection
  • Minor package improvements

Version 0.9 (2015-09-27)

  • bugfix: Bytes output if pygments is not installed
  • bugfix: Initialization command doesn’t work
  • Implement the ‘edit’ command
  • Implement command plugins
  • Add support for markup in HTML output
  • Allow per-project config file
  • New command to list all issues
  • Add project file to version control
  • Add validation schemas
  • Search more fields with grep

Version 0.8.1 (2015-08-18)

  • bugfix: Fix non-ASCII text in issue data
  • bugfix: HTML plugin load failure

Version 0.8 (2014-12-05)

  • bugfix: Grep arguments not handled correctly
  • Allow customization of HTML output
  • Allow issues to be specified by ID
  • Add progress time indicator to ‘show’ and HTML
  • Implement exporting directly to archive
  • Add section arg to config command
  • Add exporter plugin system
  • Add python 3 support
  • Improve the default HTML style
  • Move ~/.ditzrc to ~/.ditz/ditz.cfg
  • Relicense under LGPL

Version 0.7 (2014-09-28)

  • bugfix: Handle YAML comment char in strings
  • Add VCS support
  • Add unicode support
  • Add issue type column to HTML output
  • Add command to display configuration
  • Implement the ‘validate’ command
  • Add output highlighting
  • Add support for command aliases
  • Add pager support
  • Improve the documentation
  • Wire up the remaining program options
  • Improve configuration settings
  • Improve logging command output

Version 0.6.2 (2014-08-10)

  • bugfix: Name substitution not done in issue description

Version 0.6.1 (2014-08-09)

  • bugfix: Print message on successful unassignment
  • bugfix: Ignore unreleased releases when assigning issues

Version 0.6 (2014-03-28)

  • bugfix: Handle non-ASCII characters when writing output
  • Install as ‘ditz’ if required by user
  • Add HTML component column if multiple components in use
  • Don’t show HTML release column for unassigned issues
  • Print message on successful issue assignment

Version 0.5.2 (2013-12-20)

  • bugfix: Blank lines shouldn’t end a comment

Version 0.5.1 (2013-12-18)

  • bugfix: Prompt for component when creating issues
  • bugfix: Show issue status even if not closed

Version 0.5 (2013-12-12)

  • bugfix: Issue names not replaced in comment text
  • bugfix: Reconfigure clobbers existing file
  • Add sortable tables to HTML output
  • Write some user documentation
  • Add a user config file

Version 0.4 (2013-12-09)

  • Implement the ‘html’ command

Version 0.3 (2013-11-23)

  • bugfix: Multiple ‘issuedir’ keywords in init

Version 0.2 (2013-11-23)

  • bugfix: Fix up problems with blank comments

Version 0.1 (2013-11-23)

  • bugfix: Fix round-tripping of issue files
  • Implement all the ditz commands
Release History

Release History

0.10

This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.9.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.9

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.8.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.8

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.7

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.6.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.6.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.6

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.5.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.5.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.5

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.4

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.3

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.2

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

0.1

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

TODO: Brief introduction on what you do with files - including link to relevant help section.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pyditz-0.10-py2.7.egg (138.0 kB) Copy SHA256 Checksum SHA256 2.7 Egg Nov 27, 2016
pyditz-0.10-py2.py3-none-any.whl (74.4 kB) Copy SHA256 Checksum SHA256 2.7 Wheel Nov 27, 2016
pyditz-0.10.tar.gz (127.0 kB) Copy SHA256 Checksum SHA256 Source Nov 27, 2016
pyditz-0.10.zip (194.1 kB) Copy SHA256 Checksum SHA256 Source Nov 27, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS HPE HPE Development Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting