Hi gabriel

I think so because this is important for many people.

Stef

On Fri, Oct 6, 2017 at 8:46 PM, Gabriel Cotelli <[email protected]> wrote:
> Will it be also integrated on Pharo 6.1?
>
> On Fri, Oct 6, 2017 at 3:10 PM, Esteban Lorenzano <[email protected]>
> wrote:
>>
>>
>> On 6 Oct 2017, at 20:08, Esteban Lorenzano <[email protected]> wrote:
>>
>>
>> On 6 Oct 2017, at 20:05, Stephane Ducasse <[email protected]> wrote:
>>
>> Hi esteban
>>
>> I did not find the script that you mentioned.
>>
>>
>> the one for filetree to tonel?
>>
>> https://github.com/pharo-vcs/tonel/blob/master/MigrateFromFileTree.md
>>
>> I will copy here:
>>
>> locationDir := 'path/to/your/repo' asFileReference.
>> subDir := 'your-source-dir-or-empty'.
>> sourceDir := locationDir.
>> subDir
>>      ifNotNil: [
>>              subDirWithDelim := subDir, '/'.
>>              sourceDir := sourceDir / subDir ]
>>      ifNil: [
>>              subDirWithDelim := '' ].
>>
>> repo := IceRepositoryCreator new
>>      location: locationDir;
>>      subdirectory: subDir;
>>      createRepository.
>>
>> "branch if you want to perform the migration on separated place (you can
>> later do a PR)"
>> repo createBranch: 'migrate-sources-to-tonel'.
>>
>> commit := repo branch lastCommit.
>> repo savedPackages do: [ :each | | filetreePackage |
>>      TonelWriter fileOut: (commit versionFor: each) on: sourceDir.
>>      filetreePackage := IceLibgitFiletreeWriter directoryNameFor: each.
>>      (sourceDir / filetreePackage) ensureDeleteAll.
>>       repo addFilesToIndex: {
>>              subDirWithDelim, (IceLibgitTonelWriter directoryNameFor: each).
>>              subDirWithDelim, (IceLibgitFiletreeWriter directoryNameFor: 
>> each). } ].
>>
>> repo addProperties: (IceRepositoryProperties fromDictionary: { #format ->
>> #tonel } asDictionary).
>>
>> repo
>>      commitIndexWithMessage: 'sources migrated'
>>      andParents: { commit }.
>>      
>> repo push.
>>
>>
>>
>>
>> but beware, to use 0.6 on Pharo7, better wait until integration (next
>> week): update is not trivial because pharo project comes with some
>> IceMCVersionInfo inside that will become obsolete, etc., etc., etc.
>>
>> Esteban
>>
>>
>>
>> Stef
>>
>> On Fri, Oct 6, 2017 at 7:18 PM, Esteban Lorenzano <[email protected]>
>> wrote:
>>
>> Hi all,
>>
>> I released Iceberg version 0.6. It includes a lot of small tweaks and
>> fixes,
>> but the most important inclusion is tonel file format which aims to
>> replace
>> file tree.
>>
>> What is Tonel? (https://github.com/pharo-vcs/tonel)
>> Tonel is a file-per-class file format for monticello repositories. It’s
>> purpose is to reduce the amount of files touched each operation, make the
>> IO
>> faster an compact the repositories database.
>> It has also as an objective to offer an “easy-to-read” format, so people
>> wanting to understand a chunk of code will recognise it easily.
>> For testing, I migrated several of my projects to Tonel and I’ve been
>> using
>> it, you can see some as examples:
>>
>> https://github.com/estebanlm/MUDClient
>> https://github.com/estebanlm/pharo-tonel (this was just an example and it
>> has some minimal errors already fixed)
>>
>> We plan to migrate Pharo development to tonel to address some problems we
>> have:
>>
>> - since it has to read/write a lot of files, IO operations are slow
>> - and even much more slow in Windows
>> - Windows also has a problem with longpaths.
>>
>> Iceberg 0.6 will be integrated to Pharo7 soon :)
>> To update Pharo 6.1, there are instructions in the readme:
>> https://github.com/pharo-vcs/iceberg/blob/master/README.md
>> now, if you wan to migrate your projects to Tonel (from FileTree), here is
>> a
>> script you can use:
>> https://github.com/pharo-vcs/tonel/blob/master/MigrateFromFileTree.md
>>
>> btw, tonel is independent of Iceberg and can be used with plain Monticello
>> (but it is a metadaless format, history will reside on git, not on
>> monticello).
>>
>> cheers,
>> Esteban
>>
>>
>>
>>
>

Reply via email to