Third year in a row the Snowsprint is back. Now stronger then ever, faster internet, fun, tutorials, experienced developers and of course cheese and meat!
- Pre-sprint proposed topics
- Videos - talks, discussions, interviews, screencasts
- Photos tagged with "snowsprint06" on Flickr and Flickr Snow Sprint 2006 group
Summary of sprint activities
Pluggable Plone Syndication
Tom Lazar, Ben Ackland, Rick Hurst, Nate Aune, Andy Nicholson
Enable advanced (RSS 2.0, Atom) site-wide syndication on all ATCT
Tramline / LimewireMatt Hamilton, Karl Madgsick
Added two features to tramline:
1) Store files on the filesystem names after their base32 encoded sha1 digest. This makes it compatible with the naming used for Limewire magnet links.
2) Conditionally invoke tramline only when a form field has a certain suffix, eg. ':tramline'. This means we can create an updated macro for
file.pt that causes tramline to only handle a file when needed.
mod_tramline is a mod_python module for Apache 2.x that provides some input/output filters that monitor limewire clients downloading content and gives out x-alt headers to subsequent downloaders of a file. This allows 'swarming' in which clients download chunks of data off each other.
PloneTramline will be updated shortly to take advantage of the new features of tramline above.
PloneTramline product page |
Tramline talk | Tramline interview
Flash Media PlayerGünter Dressel
Building an open source Flash Media Player for Plone which can play audio and video files.
The player will be able to use Plone's CSS, so you can have a consistent styling throughout your site.
PloneCreativeCommons / CCPublisherTim Olsen, Russ Ferriday, Nate Aune
Investigated current PloneCreativeCommons product and imported latest 0.2.2.7
into collective subversion repository. Started working on a Five branch.
SVN repository | Tracker issues
Webdev: TTW for Zope 3Rocky Burt, Bernd Dorn, Stephan Richter
WebDev has achieved a state whereby its possible to define
view components using a TTW interface. Resources were also made to be
Video talk | Video interview | ViewCVS
Cubed - Plone on Zope 3David Whitfield-Morris, Stephan Richter, Kamal Gill, Rocky Burt, Rob Miller,
Bernd Dorn, Jodok Batlogg, Michael Breidenbrücker, Roger Ineichen
SQLObjectSree Rameshaiah, Jochen Knuth
Membrane / CMFMember / MembletsRob Miller, Jean-Paul Ladage, Jens Klein, Sasha Vincic
Rob's Membrane componentized blog post | Membrane product page | SVN repository
Ajax - Jsonserver, kukit, azaxBalaz Ree, Godefroid Chapelle, Kamal Gill
kukit.js : works with html entities now, accepts xpath selectors to apply the commands, improved harvesting of form values, tested with IE6, Safari 1.3, Thunderbird 1.5, Opera 8.5, Konqueror.
azax : removed the dependency on lxml, refactored AzaxResponse in AzaxView, fixed the code with html entities, add xpath selectors support
Jsonserver2 | kukit | azax | Godefroid's summary report of the Berne Ajax Sprint
Released 1.0-final (2.1.2 and 2.0.5 compatibility), worked on ajax support, brought the code back in line with current azax and kukit snowsprint branches, added ajax delete and ajax drag and drop (mostly done - 1 bug left).
Video interview | Screencast | Product page | SVN repository
Bittorrent and ATVideo / ATMediaFileAndy Nicholson, Wolfgang Reutz
SVN bittorrent branch |
Archetypes ComponentsAlec Mitchell, Harald Frießnegger, Daniel Nouri, David Whitfield-Morris, Jens Klein
Define concrete set of interface to describe the requirement for content to make references and to be referenced. These interfaces and their implementations are usable for all content types (z3, cmf, etc). Pull the reference engine out of archetypes, realize it using zope3 components and provide a migration for Archetypes 1.5.
Video discussion | Proposal | SVN reference-componentization | SVN components
Schema BurgerTom "Spanky" Kapanka, Stephan Richter
ATAudio templatesKamal Gill, Rick Hurst
ATPhoto -> ATImage Transition, ZIPFolderRuss Ferriday, Jean-François Roche
Made some structural changes in ATContentTypes packages, to facilitate groups moving to adapters based on ATCT. Made a first attempt at a ComponentArchitecture (CA) adapter for zipping folders and documents to an archive, in the form of a universal archiver. Built unit and doctests to explain functions. Committed the above to the ATCT trunk with alecm.
Started a HOW-TO to help developers transition to five. Started a screencast on our progress. Both need some rework due to our refactorings.
Immediately on return from sprint, refactored the archive functionality into a TreeWalker with IOperator, and IFolderFilter, and a miniscule ArchivingOperator. This is wrapped in an IArchiver controller, so that the original doc tests still pass, with minimal changes.
Migration of existing ATPhoto and ATPhotoAlbum will continue. HOW-TO and screencast will be ready by about Feb 15th.
Jeff wants everyone to know about using Zope3 interfaces for all future ATCT related work. RIght at the end of the sprint it was realized that the z3 interfaces as then defined would not work outside ATCT package - due to import ordering. Jeff fixed that during the party on the last night. He says, "don't use Z2 interfaces anymore for ATCT (all interfaces in the interfaces.py are deprecated) but do use all the Z3 interfaces in the interface *folder*". The "interface" folder will be the location for the interfaces we are developing to port the ATPhoto functionality to ATImage, and interfaces developed by others to add behavior to ATCT.
ATCT svn branch | Improvement proposal
XML Forest, AT XML Import/exportJens Klein, Tom "Spanky" Kapanka, Sasha Vincic,
Zope3 Interface Support for ArchGenXMLJens Klein, Jean-Paul Ladage
Thanks to Five we are now able to write Zope 3 components in Zope 2. With ArchGenXML it is now possible to generate Zope 3 interfaces by assigning the z3 stereotype to an interface and the class that implements the interface will be generated with the Zope 3 implements() method. In addition Jean-Paul added support staticmethod declarations which can be called without having to instanciate an object first.
This sprint also gave a good opportunity to discuss the goals for Genesis, the next version of ArchGenXML. Genesis' architecture is going to be much more modular and allow to generate multiple types of code by using profiles, e.g. pure python classes, modules and packages, Plone 2.x Archetypes or Zope 3 components.
Reinout's blog post | SVN ArchGenXML trunk
Plone 2.5-alpha releaseAlec Mitchell
The ability to use Zope3 MessageIDs in Plone; this is now the official mechanism for performing translations from python code. (plip)
Status messages are no longer passed via query strings, but provided by a Zope3 style global utility which allows for translating messages and displaying multiple messages resulting from a given user action. (plip)
Plone now includes CMFPlacefulWorkflow, which allows type->workflow mappings to be configured independently in different places in your portal. (plip)
Announcement | 2.5 Milestone roadmap
LimeWire main sponsor of the sprint
Lovely Systems organizes the sprint
Telesis(ters) helps with the organization