Emerald Sprint Report Out¶
Merging versioning and and constrained types into Dexterity near Beautiful Seattle.
Thanks to the fabulous Seattle Plone folk, we had another west coast sprint, the Emerald Sprint, on lovely Camano Island. The focus was polishing Dexterity, it was a gorgeous location, a very productive sprint, and I very much hope we can make it an annual thing. We might have a better chance at that if we choose a topic next year such that David can just be another sprinter for once. :-)
Firstly, I have to give a huge shout out to our Maven of Fine Dining, Sally, and to Alice for yet more above-and-beyond contributions to the culinary experience of this sprint. The food was simply incredible and I have to say I love a sprint that has that element. I was spoiled before by the cooking at the Cioppino Sprint and the Sea Sprint and the food at this sprint may have out done them!
The sprint location was an excellent choice and everything was very well organized by Cris, Luke, Fulvio and David. I was very sad to learn that Cris wasn’t going to be able to stay for the sprint and wish him the best. Thanks also to Ian Anderson and Andy Leeb for treating us to a delicious dinner out on our first night.
We did a brainstorming session where we all voted for what we found to be the most important. Then David and Matthew marked the items that they thought were clear low-hanging fruit that didn’t require a lot of design or other discussion. After seeing what the other sprinters chose for I opted for tackling some of the remaining low-hanging fruit. That ended up being two tasks both of which involved merging work done by others previously in add-ons or other packages not in Dexterity core where they belong: versioning and constrained types.
Working on versioning involved merging two add-on packages into
Dexterity core. The collective.cmfeditionsdexteritycompat
add-on makes it possible to use the history view on Dexterity content
and I merged it into plone.app.versioningbehavior. The
collective.dexteritydiff add-on brings parity with Archetypes
when viewing diffs between versions and I merged it into
Products.CMFDiffTool. Both packages were done by Rafael
Oliveira and worked perfectly, my only job was doing the merge and
reconciling the tests. Fortunately, Rafael had written tests and
had done so using plone.app.testing. Unfortunately,
Products.CMFEditions does not use plone.app.testing and since
such tests can not run in the same test run as
are run, that meant I had to back-port the tests Rafael wrote off
of plone.app.testing back to ZopeTestCase. I hate going
backwards but enough things build on the Products.CMFEditions tests
that I guessed it would take too long and be to disruptive to convert
all those tests. After that, I spent the rest of the sprint trying to
complete my plone.app.testing.api branch which is intended to make
such conversions easier.
I also had the opportunity to bring Gin Apocrypha with me and bar tend for the event. It was my first time trying to check enough items on the plane to be able to mix my whole menu and it actually worked out very well. So I think I may be willing to check a bag in the future to be able to bring Gin Apocrypha to events I don’t drive to in the future!
It was a great sprint and I love the Seattle area so I really hope this happens again. This sprint being focused on Dexterity and David being Dexterity’s maintainer and fearless leader, I know I pestered him a lot as I needed to ask questions and get perspective, but he did a great job facilitating everything. For that reason if no other, I hope the next Emerald Sprint can be on a topic such that David can get back to basics and enjoy being just another sprinter again. :-)
Updated on 13 February 2013
Imported from Plone on Mar 15, 2021. The date for this update is the last modified date in Plone.