Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

A testing ground for Keg related code and ideas.

Project Description

Keg Elements is the testing ground for ideas and code that will eventually make their way into Keg or an official Keg extension.

Development beta

To develop on this project, begin by running our tests:

git clone keg-elements-src
cd keg-elements-src

You can then examine tox.ini for insights into our development process. In particular, we:

  • use py.test for testing (and coverage analysis)
  • use flake8 for linting
  • store pip requirements files in requirements/
  • cache wheels in requirements/wheelhouse for faster & more reliable CI builds

Dependency Management

Adding a dependency involves:

  1. If it’s a run-time dependency, add to
  2. Adding the dependency to one of the requirements files in requirements/.
  3. Running requirements/

Preview Readme

When updating the readme, use restview --long-description to preview changes.

Issues & Discussion

Please direct questions, comments, bugs, feature requests, etc. to:

Current Status



0.5.4 released 2017-08-08

  • Use pyp to manage releases (5b11356)
  • FEAT: Add file/stream encryption methods (aeab61a)

0.5.3 - 2017-04-26

  • FEAT: Add DontCare for Easy Testing (28643d6)

0.5.2 - 2017-03-23

  • FEAT: Add additional utility functions (2e27a60)
  • BUG: Check all records when updating a collection (fffb7c8)

0.5.0 - 2016-12-19

  • FEAT: Create crypto primitives (5a981b5)
  • Refactor testing_create kwargs validation and ignore “_” prefixed keys (484d032)

0.4.2 - 2016-11-11

  • FEATURE: Verify kwargs correspond to columns and relationships in testing_create. (db533dd)
  • FEATURE: Add support for form-level validation. (GH-53)

0.4.1 - 2016-10-19

  • Add unique form validator (a0c7447)

0.4.0 - 2016-09-08

  • FEATURE: Port MethodsMixin with a number of helpful functions when working with SQLAlchemy ORM entites. (GH-49, GH-51)
  • FEATURE: Add a new TimeZone Column. (GH-50)
  • MAINTENANCE: Provide better testing support for polymorphic SQLAlchemy ORM entities. (GH-47)
  • BUG: Fix descripions when implicitly rendering checkboxes (GH-48)

0.3.2 - 2016-08-03

  • Support dirty_check flag on form objects (GH-46)


  • Allow FieldMeta to override default widget and add extra validators (GH-38)
  • Allow customization of readonly and disabled attributes on input, select, and radio fields (GH-37)
  • Improve the logic for when to default a form field to RequiredBoolRadioField (GH-36)
  • Upgrades to the CI Environment


  • Allow static renders to be configured with custom macros. (GH-34)
  • Syncronize static templates with dynamic templates. (GH-31)
  • You can now give a field a description with a string or callback. (GH-23, GH-22)
  • Introduced a RequiredBoolReadioField for use with boolean columns. (GH-25)
  • Support randomly filling EmailTypes. (GH-24)
  • Support additional parameters for randomizing integers. (GH-19)
  • testing_create will randomly select a boolean value for SQLAlchemy boolean fields. (GH-28)
  • We now have a working CI. (GH-27)
  • Constraint tests will fail if all fields are not covered. (GH-21)
  • Introduced a new form-upload macro. (GH-18)
  • Static render now uses unless it is a SelectField (GH-16)
  • MethodsMixin has a new to_dict method. (d83d93f)
  • MethodsMixin has a new ensure method. (e5687ed)
  • Fix bug where static renderes whould not output the label. (GH-33)
  • Fix property names when using automatic test cases. (GH-29)
  • Fix issue where we wouldn’t use a consistent json parser. (GH-13)
  • Fix a bug where polymorphic columns are included in testing_create. (147c23)

development version: 2015-07-28

  • Add db.mixins with DefaultColsMixin (id, Arrow lib UTC timestamps) and MethodsMixin (incomplete).
  • Some MethodsMixin methods now have support for commit/flush parameters.
  • Add .testing:EntityBase which uses named tuples to declare the checks needed and adds some additional logic.

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(45.6 kB) Copy SHA256 Hash SHA256
Wheel py2.py3 Aug 8, 2017
(39.4 kB) Copy SHA256 Hash SHA256
Source None Aug 8, 2017

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Kabu Creative Kabu Creative UX & Design Google Google Cloud Servers Fastly Fastly CDN StatusPage StatusPage Statuspage DigiCert DigiCert EV Certificate