Skip to main content
PyCon US is happening May 14th-22nd in Pittsburgh, PA USA.  Learn more

Configuration components for the SPARC platform

Project description

Basic common configuration tools used in the SPARC platform. Includes, but not limited to Zope Component ZCML utilities.

ZCA Configuration

Tools that leverage SPARC packages are usually also dependant on Zope Component Architecture (http://docs.zope.org/zope.component/narr.html). Use of ZCA requires component configuration,which SPARC does via ZCML (https://github.com/zopefoundation/zope.component/blob/master/docs/zcml.rst).

Among other things, sparc.common provides access to Configure(), an easy function that can be used to configure dependant applications.

### Usage - ZCA configuration

This simplifies your ability to create components via ZCML and have your application parse the ZCML files to allow them to be registered for lookup. >>> import a.package.that.contains.a.configure.zcml >>> import another.package.that.contains.a.configure.zcml >>> from sparc.common import Configure >>> Configure([your.package.that.contains.a.configure.zcml, … another.package.that.contains.a.configure.zcml])

You will now have access to components configured within those packages.

### Usage - Retrieve user feedback from CLI application

This simplifies the process of getting feedback for processing within a CLI application. >>> import sparc.common >>> from sparc.common import Configure >>> from sparc.common import ICallable >>> from zope.component import getUtility >>> Configure([sparc.common]) >>> asker = getUtiliy(ICallable, ‘sparc.common.ask_question’) >>> answer = asker(u”How are you?”, required = True, answers = … {‘1’:’awesome’,’2’:’ok’,’3’:’not so good’}, tries = 3) How are you? (1) awesome (2) ok (3) not so good

>>> print answer
'1'

0.0.1

  • initial release

0.0.2

  • let value getter have a default

  • allow pacakge-less zcml imports (file-path only zcml declarations)

  • update IPyContainerConfigValue to allow deep key reference

  • fix dependency identifiers

  • fix generator error

  • remove dependency on ZCA from implementations

  • remove dependency on zope.component

  • add travis ci config

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page