Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.


Tailbone is unavailable in PyPM, because there aren't any builds for it in the package repositories. Click the linked icons to find out why.

 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
Windows (64-bit)
Mac OS X (10.5+)
Linux (32-bit)
Linux (64-bit)
GNU Affero GPL v3

Tailbone is an extensible web application based on Rattail. It provides a "back-office network environment" (BONE) for use in managing retail data.

Please see Rattail's home page for more information.


  • Fixed change password template/form.


  • Added forms.alchemy module and changed CRUD view to use it.
  • Added progress template.


  • Changed vendor filter in product search to find "any vendor".

    I.e. the current filter is not restricted to the preferred vendor only. Probably should still add one (back) for preferred only as well; hence the commented code.


  • Major overhaul for standalone operation.

    This removes some of the edbob reliance, as well as borrowing some templates and styling etc. from Dtail.

    Stop using edbob.db.engine, stop using all edbob templates, etc.

  • Fix authorization policy bug.

    This was really an edge case, but in any event the problem would occur when a user was logged in, and then that user account was deleted.

  • Added global_title() to base template.

  • Made logo more easily customizable in login template.


  • Rebranded to Tailbone.


  • Added some tests.

  • Added helpers module.

    Also added a Pyramid subscriber hook to add the module to the template renderer context with a key of h. This is nothing really new, but it overrides the helper provided by edbob, and adds a pretty_date() function (which maybe isn't a good idea anyway..?).

  • Added simpleform wildcard import to forms module.

  • Added autocomplete view and template.

  • Fixed customer group deletion.

    Now any customer associations are dropped first, to avoid database integrity errors.

  • Stole grids and grid-based views from edbob.

  • Removed several references to edbob.

  • Replaced Grid.clickable with .viewable.

    Clickable grid rows seemed to be more irritating than useful. Now a view icon is shown instead.

  • Added style for grid checkbox cells.

  • Fixed FormAlchemy table rendering when underlying session is not primary.

    This was needed for a grid based on a LOC SMS session.

  • Added grid sort arrow images.

  • Improved query modification logic in alchemy grid views.

  • Overhauled report views to allow easier template customization.

  • Improved product UPC search so check digit is optional.

  • Fixed import issue with views.reports module.


  • Fixed bugs where edit links were appearing for unprivileged users.

  • Added support for product codes.

    These are shown when viewing a product, and may be used to locate a product via search filters.


  • Removed setup.cfg file.

  • Added Session to rattail.pyramid namespace.

  • Added Email Address field to Vendor CRUD views.

  • Added extra key lookups for customer and product routes.

    Now the CRUD routes for these objects can leverage UUIDs of various related objects in addition to the primary object. More should be done with this, but at least we have a start.

  • Replaced forms module with subpackage; added some initial goodies (many of which are currently just imports from edbob).

  • Added/edited various CRUD templates for consistency.

  • Modified several view modules so their Pyramid configuration is more "extensible." This just means routes and views are defined as two separate steps, so that derived applications may inherit the route definitions if they so choose.

  • Added Employee CRUD views; added Email Address field to index view.

  • Updated people view module so it no longer derives from that of edbob.

  • Added support for, and some implementations of, extra key lookup abilities to CRUD views. This allows URLs to use a "natural" key (e.g. Customer ID instead of UUID), for cases where that is more helpful.

  • Product CRUD now uses autocomplete for Brand field. Also, price fields no longer appear within an editable fieldset.

  • Within Store index view, default sort is now ID instead of Name.

  • Added Contact and Phone Number fields to Vendor CRUD views; added Contact and Email Address fields to index view.


  • [feature] Added CRUD view and template.
  • [feature] Added AutocompleteView.
  • [feature] Added Person autocomplete view and User CRUD views.
  • [feature] Added id and status fields to Employee grid view.


  • [feature] Sorted the Ordering Worksheet by product brand, description.


  • [feature] Made batch creation and execution threads aware of sys.excepthook. Updated both instances to use rattail.threads.Thread instead of threading.Thread. This way if an exception occurs within the thread, the registered handler will be invoked.


  • [bug] Label profile editing now uses stripping field renderer to avoid problems with leading/trailing whitespace.
  • [feature] Added Inventory Worksheet report.


  • [feature] Added Brand and Size fields to the Ordering Worksheet. Also tweaked the template styles slightly, and added the ability to override the template via config.
  • [feature] Added "preferred only" option to Ordering Worksheet.


  • [bug] Fixed bug where requesting deletion of non-existent batch row was redirecting to a non-existent route.


  • [bug] Fixed batch grid and CRUD views so that the execution time shows a pretty (and local) display instead of 24-hour UTC time.


  • [feature] Added some more CRUD. Mostly this was for departments, subdepartments, brands and products. This was rather ad-hoc and still is probably far from complete.
  • [general] Changed main batch route.
  • [bug] Fixed label profile templates so they properly handle a missing or invalid printer spec.


  • [bug] Fixed bug which prevented UPC search from working on products screen.


  • [general] Fixed namespace packages, per setuptools documentation.
  • [feature] Added support for LabelProfile.visible. This field may now be edited, and it is honored when displaying the list of available profiles to be used for printing from the products page.
  • [bug] Fixed bug where non-numeric data entered in the UPC search field on the products page was raising an error.


  • [bug] Fixed product label printing to handle any uncaught exception, and report the error message to the end user.


  • [general] Updated category views and templates. These were sorely out of date.


  • Add brands autocomplete view.
  • Add departments autocomplete view.
  • Add ID filter to vendors grid.


  • Tweak batch progress indicators.
  • Add "Executed" column, filter to batch grid.


  • Add ability to restrict batch providers via config.


  • Add Vendor CRUD.
  • Add Brand views.


  • Added support for GPC data type.
  • Added eager import of rattail.sil in before_render hook.
  • Removed rattail.pyramid.util module.
  • Added initial batch support: views, templates, creation from Product grid.
  • Added support for rattail.LabelProfile class.
  • Improved Product grid to include filter/sort on Vendor.
  • Cleaned up dependencies.
  • Added rattail.pyramid.includeme().
  • Added CustomerGroup CRUD view (read only).
  • Added hot links to Customer CRUD view.
  • Added Store index, CRUD views.
  • Updated rattail.pyramid.views.includeme().
  • Added email_preference to Customer CRUD.


  • Update grid and CRUD views per changes in edbob.


  • Add price field renderers.
  • Add/tweak lots of views for database models.
  • Add label printing to product list view.
  • Add (some of) Product CRUD.


  • Refactor category views.


  • Initial port to Rattail v0.3.

Subscribe to package updates

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.