Hello all,
Today, we worked on moving Moose on pharo2.0. We needed to update a few
baselines because some packages were already present in Pharo2.0. For
example,
- RPackage is already present in Pharo 2.0, so no need to load it in the
image.
- PetitParser loads Glamour, which loads NECompletion and NEC does not have
configuration for pharo2.0.
We decided to move all the moose code to STHub before porting it to 2.0 so
that we can save changes somewhere. Some projects are created in STHub in
the Moose team:
Fame (Moved all code from FAME on squeaksource to STHub, updated
configurationOf to load from STHub + creating a version with latest dev.)
Glamour (in the process of downloading packages but its taking long, but
glamour will be difficult because it has dependencies with other projects
so may be it should be moved incrementally. Doru, I think you can take lead
on that since you know the project better)
Moose (FAMIX + Moose-Core, downloading packages, will be committing next
week)
PetitParser (will be moved next week too)
For people interested in moving code, here are the scripts for fetch and
push.
==================================
"fetch all FAME packages from their repository"
| go |
go := Gofer new squeaksource: 'Fame'.
((go allResolved select: [:aPac |'*Fam*' match: aPac packageName ])
do: [:each |
self crLog: each packageName.
go package: each packageName.
Transcript show: each printString ; cr.
go fetch.]).
======================================
"commit all FAME packages into the smalltalkhub FAME project"
|go repo|
repo := MCSmalltalkhubRepository
owner: 'Moose'
project: 'Fame'
user: 'XXX'
password: 'XXX'.
go := Gofer new.
go repository: repo.
(((FileSystem disk workingDirectory / 'package-cache')
allFiles select: [:each | '*Fame*.mcz' match: each basename])
groupedBy: [:each | (each base copyUpToLast: $-) ])
keys do: [:name | go package: name; push]
Now, moving to Pharo2.0 is important, so it will be good to kill this
boring task by working collaboratively :-)
Usman
P.S: The last step of moving every project is to create a new baseline to
point to STHub for the project and preferably create a version with that
baseline.