… and of course I agree 100% with you :) the real problem is how do we get there, and I’m thinking not just the tools, but the “cultural change”.
Esteban > On 12 Jun 2015, at 19:41, Dale Henrichs <[email protected]> > wrote: > > > > On 06/12/2015 01:24 AM, Esteban Lorenzano wrote: >> it was just an example of why using #stable in project dependences is a bad >> idea :) >> you made #releaseN.N to fix precisely my point. >> but since this is a convention of Seaside and not a regular practice… who >> knows it? (not saying that is wrong, is in fact very good, but there should >> exist something like I say “3.*”) >> >> btw… IMO other frequent misunderstanding is the use of metacello as >> description for nightly builds. >> metacello (and any dependency manager) should be use *just* for releases. >> think other dependecy managers around: maven, npm or whatever… they are used >> to describe and publish projects people actually can download and use. >> Any version: >> >> 3.0 >> 3.0.1 >> 3.1 >> … >> etc. >> >> is a loadable and usable version. >> the concept of stable/release/etc. is just incorrect: all published versions >> should be stable and released. >> >> we need to separate the concept of “artifact released” and “development >> branch”, and we need to stop using versions as commits. >> In my opinion development cycle should be: >> >> we release version 1.0 >> then we develop in bleeding edge lets say for doing a version 1.1 >> we want a bug fix for 1.0 while developing 1.1? then we install 1.0, make a >> fix, and publish 1.0.1 >> we continue in #bleedingEdge until we are ready to: >> 1.1-alpha >> 1.1-beta >> 1.1-rc1 >> 1.1 >> we repeat the cycle for next version >> etc. >> >> I’m sorry for being obvious here, I know this is known… problem is that I’ve >> seen far too much the use of metacello not for doing releases but to handle >> commits. >> > > Esteban, this point is exactly the reason that I am a proponent of using git. > > Branches are first class objects in git and provide exactly the type of > functionality that is needed for doing development where problems are being > solved on multiple fronts. > > I've added features to the Metacello Scripting API over the last couple of > years to make it possible to switch between github-based repos and local git > clones which is critical for development and > > So I don't think that "Metacello shouldn't be used for nightly builds", but > that "ConfigurationOf shouldn't be used for nightly builds":) > > I've recently posted an article on the Metacello news group[1] where I talk > in more detail about using Metacello and git for development. > > Dale > > [1] http://forum.world.st/GitHub-Configs-tp4830432p4830673.html > <http://forum.world.st/GitHub-Configs-tp4830432p4830673.html>
