Monthly Archives: September 2018

Key questions/answers about Tonel

> Hi,
> So the future for Pharo is Iceberg/git/tonel and that is fine.
> My question however is: if I convert my external libraries to this new format, what is the reach of this new technology ? Can people still load code in older versions of Pharo ? I think 6.x is no problem, but what about earlier versions ? What about other  Smalltalk implementations ? What is the official answer here ?

In absence of Iceberg, Tonel can be used as any other MCRepository. You can save and read your packages as it would be with a “metadataless filetree”.
That means, in Pharo without iceberg you need to save/read from your cloned repository.
Saving to your cloned repository  will write files to disk. Which means you need to go there and do a regular git commit/push cycle.

While this is annoying compared with the usage of Iceberg, is perfectly doable: it is the same as while using metadataless filetree.

Tonel is tested to work up to Pharo 3. Older Pharos may work (there is no reason why not) but maybe some minor adjustments are needed.

I designed Tonel to be easily portable. I didn’t used a lot of Pharo elements that would have done my life a lot easier (like using RBParser instead parsing manual). This way other dialects can take it and make it work. Now, making it work, is a problem of other dialects users (I’m willing to help, but that work will fall in other persons).
I know it is already ported to Gemstone and it was being ported to Squeak.

> A second question: suppose a repo is converted, is then still possible to copy a version  over to an old MC repo ? Just to keep it in sync.

You can save your packages as you want.
You can save a package with Iceberg and then read it with Monticello.,
And viceversa.
Now, it you want to “transfer” the history from git to an mcz, you will need to do some migration tool.


> Thx,
> Sven

[Ann] Migrated Artefact library to GitHub

Hi all,

I've moved the Artefact library to GitHub (

I've also made some changes to it in the way and made a 1.7.0 version with:
 - support for Pharo7 streams
 - a baseline

So, people using Artifact, you can contribute through pull requests ^^,

[Ann] Chrysal: a library to manage configuration files

Chrysal is a library to express and manage external configurations expressed as STON files. Chrysal is the successor of Cocoon but it does not use any magical things like DNU and Magritte. Chrysal is purely static, it means that given a list of items, a reader class is generated that manages the conversion between the two worlds (what the end-users is declaring and what the application needs). At runtime a generated Chrysal configuration can be a subclass of a domain subclass of Chrysal configuration. This way we can define behavior that will not be lost during the recompilation of the chrysal configuration (the one based on the actual description).

  • Chrysal creates at compile time a reader that is responsible for mapping end-user expressed configurations to their internal representations (for example a ‘a/b/c.html’ into a file reference object).
  • In addition at runtime a configuration object can customize the default behavior of the generated reader.
  • Finally the configuration developer can extend Chrysal to support new data.

PharoJS V22 is out.

Hi, PharoJS V22 is out. It mainly provides a fix to deal with the GitHub restructuring due to migration to Pharo 7.0. Below you’ll find PharoJS V22 Release Log!/~noury/PharoJS

[ANN] New Pharo 6.1 stable VM


Following what I had in my todo list for when coming back from ESUG, I promoted a new stable VM for Pharo 6.1.
This is the VM that has been tested during almost two months for Pharo 7.0, so it should be fine, but let me know if there is any problem.

Why being a Pharo Association Member matters?

Hi Pharo supporters
First I would like thank you. And I would like to show you that your membership in the Pharo association is really
helping Pharo. We are creating a precise report but the main message is the same.
You concretely help Pharo.
First,  we would like to really thank you for your support because as you will see it is important. Your contributions are making an impact.


Until now, the association did not make visible how was spent the money from your membership. It’s time to fix this.
In the first place, the support we got from last year enable the creation of monthly activities helping with the development of Pharo. The association is now the support for the following ones:
  • Sprint organisations: Every month sprints to correct Pharo bugs are organised. You can join remotely or organise one at your location
  • TechTalks: Every month a technical talk is been done to give visibility on Pharo process and Pharo projects and interact with the community to get feedback
Next, your association contributions are securing vital Pharo infrastructures. It pays:
  • The domains such as
  • The hosting This year we moved out of Inria infrastructure because we could not identify the cause of a huge network latency. It got resolved – it was a fiber which was in bad condition but not cut. This was fixed at the level of Renater national back-bone layer, but we decided to stay outside. We plan to migrate to a better service.
  • The wild apricot software which manages the association. It will enable us to do more with the association. (40$/month)
  • The newsletter via Mailchimp. This newsletter is a real success with more than 2300 recipients . You get see the archive at (30$/month)
  • The mailing-lists are managed with Mailname a professional service.
On another note, we would like to remember the advantages of being an association member:
  • Reduction for the PharoDays