Congrats Chris. Awesome!
On 5-Jul-09, at 10:46 PM, Chris McDonough wrote:
> The first major release of the BFG web framework (aka "repoze.bfg"),
> version 1.0, is available. See http://bfg.repoze.org/ for general
> information about repoze.bfg.
> BFG is a Python web framework based on WSGI. It is inspired by Zope,
> Pylons, and Django. It makes use of a number of Zope technologies
> under the hood.
> BFG is developed as part of the more general Repoze project
> (http://repoze.org). It is released under the BSD-like license
> available from http://repoze.org/license.html .
> BFG version 1.0 represents one year of development effort. The first
> release of BFG, version 0.1, was made in July of 2008. Since then,
> roughly 80 pre-1.0 releases have been made. None of these pre-1.0
> releases explicitly promised any backwards compatibility with any
> earlier release.
> Version 1.0, however, marks the first point at which the repoze.bfg
> API has been "frozen". Future releases in the 1.X line guarantee
> API-level backward compatibility with 1.0. A backwards
> incompatibility with 1.0 at the API level in any future 1.X version
> will be considered a bug.
> More Details
> BFG contains moderate, incremental improvements to patterns found in
> earlier-generation web frameworks. It tries to make real-world web
> application development and deployment more fun, more predictable, and
> more productive. To this end, BFG has the the following features:
> - WSGI-based deployment: PasteDeploy and mod_wsgi compatible.
> - Runs under Python 2.4, 2.5, and 2.6.
> - Runs on UNIX, Windows, and Google App Engine.
> - Full documentation coverage: no feature or API is undocumented.
> - A comprehensive set of unit tests. The repoze.bfg package contains
> 11K lines of Python code. 8000 lines of that total line count is
> unit test code that tests the remaining 3000 lines.
> - Sparse resource utilization: BFG has a small memory footprint and
> doesn't waste any CPU cycles.
> - Doesn't have an unreasonable set of dependencies: "easy_install"
> -ing repoze.bfg over broadband takes less than a minute.
> - Quick startup: a typical BFG application starts up in about a
> - Offers extremely fast XML/HTML and text templating via Chameleon
> - Persistence-agnostic: use SQLAlchemy, "raw" SQL, ZODB, CouchDB,
> filesystem files, LDAP, or anything else which suits a particular
> application's needs.
> - Provides a variety of starter project templates. Each template
> makes it possible to quickly start developing a BFG application
> using a particular application stack.
> - Offers URL-to-code mapping like Django or Pylons' *URL routing* or
> like Zope's *graph traversal*, or allows a combination of both
> routing and traversal. This helps make it feel familiar to both
> Zope and Pylons developers.
> - Offers debugging modes for common development error conditions (for
> example, when a view cannot be found, or when authorization is being
> inappropriately granted or denied).
> - Allows developers to organize their code however they see fit; the
> framework is not opinionated about code structure.
> - Allows developers to write code that is easily unit-testable.
> Avoids using thread local data structures which hamper testability.
> Provides helper APIs which make it easy to mock framework components
> such as templates and views.
> - Provides an optional declarative context-sensitive authorization
> system. This system prevents or allows the execution of code based
> on a comparison of credentials possessed by the requestor against
> ACL information stored by a BFG application.
> - Behavior of an an application built using BFG can be extended or
> overridden arbitrarily by a third-party developer without any
> modification to the original application's source code. This makes
> BFG a good choice for building frameworks and other "extensible
> - Zope and Plone developers will be comfortable with the terminology
> and concepts used by BFG; they are almost all Zope-derived.
> Excruciating Details
> Quick installation:
> easy_install -i http://dist.repoze.org/bfg/current repoze.bfg
> General support and information:
> Sample Applications
> Detailed narrative and API documentation:
> Bug tracker:
> IRC support:
> repoze.bfg is developed primarily by Agendaless Consulting
> (http://agendaless.com) and a team of contributors.
> Special thanks to these people, without whom this release would not
> have been possible:
> Malthe Borch, Carlos de la Guardia, Chris Rossi, Shane Hathaway, Tom
> Moroz, Yalan Teng, Jason Lantz, Todd Koym, Jessica Geist, Hanno
> Schlichting, Reed O'Brien, Sebastien Douche, Ian Bicking, Jim Fulton,
> Martijn Faassen, Ben Bangert, Fernando Correa Neto, YoungKing, Rob
> Miller, Wichert Akkermann, David Pratt, Mark Ramm, and Chris Perkins.
> Repoze-dev mailing list
Repoze-dev mailing list