Metacello is a package management system for Monticello that allows users to define configurations and versions for projects. A configuration file specifies the Monticello files, dependencies, and versions used by a project. Metacello is intended for users of a project, not developers, and allows loading projects along with their dependencies and executing code during and after loading. The current version is 1.0-beta.27.4 and there are plans to release 1.0 by the end of the year with improvements to version naming and validation.
1. Metacello
M a r i a n o D a l e
M a rt i n e z H e n r i c h s
P e c k
Tuesday, September 28, 2010 1
2. Everything you wanted to know about Metacello,
but were afraid to ask
Tuesday, September 28, 2010 2
3. What is Metacello
Package management system for Monticello.
ConïŹguration âïŹleâ per project.
Tuesday, September 28, 2010 3
4. A conïŹguration âïŹleâ deïŹnes project versions.
A version is:
List of Monticello ïŹles (mcz) used by the
project.
List of other projects used by the project.
A speciïŹcation of dependencies between
packages and projects.
Tuesday, September 28, 2010 4
8. Tutorial step 1
Create a conïŹguration.
Create a version.
Create a baseline
New version for the same baseline
Tuesday, September 28, 2010 8
9. Tutorial step 2
Load a project.
Metacello bootstrap.
Project description.
Dialect support.
Tuesday, September 28, 2010 9
10. Tutorial step 3
Pre a post code execution.
Project references.
Groups.
Query and load options.
Tuesday, September 28, 2010 10
11. Now
Current version: 1.0-beta.27.4
~100 conïŹgurations in the MetacelloRepository
http://www.squeaksource.com/MetacelloRepository
And evolving...
Tuesday, September 28, 2010 11
12. Future
1.0 release by the end of the year.
Improve version naming.
Validation.
Ongoing bug ïŹxes.
Tuesday, September 28, 2010 12
13. http://code.google.com/p/metacello/
metacello@googlegroups.com
Pharo By Example 2 chapter
Tests
Documentation
Tuesday, September 28, 2010 13