Skip to main content

Simple, super-flexible options. Does magic upon request.

Project description

options helps represent option and configuration data in a clean, high-function way. Changes to options can “overlay” earlier or default settings.

For most functions and classes, options is overkill. Python’s function arguments, *args, **kwargs, and inheritance patterns are elegant and sufficient for 99.9% of all development situations. options is for the top 0.1%:

  • highly functional classes (or functions),
  • with many different features and options,
  • which might be adjusted or overriden at any time,
  • yet that need “reasonable” or “intelligent” defaults, and
  • that yearn for a simple, unobtrusive API.

In those cases, Python’s simpler built-in, inheritance-based model adds complexity. Non-trivial options and argument-management code spreads through many individual methods. This is where options’s layered, delegation-based approach begins to shine.

http://d.pr/i/6JI4+

For more backstory, see this StackOverflow.com discussion of how to combat “configuration sprawl”. options full documentation can be found at Read the Docs. For examples of options in use, see say and show.

Project details


Release history Release notifications

History Node

1.4.8

History Node

1.4.7

History Node

1.4.6

History Node

1.4.5

History Node

1.4.4

History Node

1.4.3

History Node

1.4.2

History Node

1.4.1

History Node

1.4.0

History Node

1.3.2

History Node

1.3.1

History Node

1.3.0

History Node

1.2.5

History Node

1.2.2

History Node

1.2.1

History Node

1.2.0

History Node

1.1.7

History Node

1.1.6

History Node

1.1.5

This version
History Node

1.1.4

History Node

1.1.3

History Node

1.1.2

History Node

1.1.1

History Node

1.1.0

History Node

1.0.7

History Node

1.0.6

History Node

1.0.5

History Node

1.0.4

History Node

1.0.3

History Node

1.0.2

History Node

1.0.1

History Node

1.0

History Node

0.451

History Node

0.426

History Node

0.420

History Node

0.417

History Node

0.416

History Node

0.411

History Node

0.402

History Node

0.327

History Node

0.45

History Node

0.5

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
options-1.1.4.tar.gz (210.5 kB) Copy SHA256 hash SHA256 Source None Apr 25, 2014
options-1.1.4.zip (224.6 kB) Copy SHA256 hash SHA256 Source None Apr 25, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page