[Laszlo-dev] Simplifying our 'point release' process
Rami Ojares / AMG Oy
rami.ojares at archon.fi
Wed Sep 23 10:42:01 PDT 2009
major = not forward or backward compatible i.e. api was changed
minor = backward compatible but not forward compatible i.e. stuff was
added to api
micro = forward and backward compatible i.e. no changes to api, only bug
fixes, additions to docs etc.
Rami Ojares / AMG Oy wrote:
> I have seen in version control systems the convention
> major.minor.micro
> but that terminology seems very technical.
>
> "version" is neutral.
> "release" has a slight taste of marketing hype in it.
> "build" is used sometimes to denote micro version and gives the
> impression that nothing much has changed. The project has just been
> built.
>
> - rami
>
> P T Withington wrote:
>> It seems that one of the most important things we could do is to come
>> up with less ambiguous terms than 'version' and 'release', which seem
>> to be used interchangeably.
>>
>> 'the next version of'
>>
>> 'the next release of'
>>
>> Are there better terms?
>>
>> On 2009-09-23, at 11:58, P T Withington wrote:
>>
>>> I'd like to simplify our process for creating (what we call) 'point
>>> release's, releases where we are incrementing the 3rd component of
>>> the release ID, which typically only include a very small number of
>>> targeted fixes in response to customer or maintenance contracts.
>>> Since these point releases are typically only targeted to a single
>>> customer, I don't feel we should have to go through the full
>>> [Release Process](http://wiki.openlaszlo.org/Release_Process).
>>>
>>> What I'd like to propose is that we separate out the concept of a
>>> "version" and a "release". Taking the current 4.6.2 branch as an
>>> example, I propose that it would be known as Version 4.6, Release
>>> 2. I propose that we would implement this new procedure in trunk
>>> and put it into effect in Version 4.7. Basically, rather than
>>> build.properties having version.id and release.id which are
>>> redundant, we would have version.id be the first two components of
>>> the current version (e.g., 4.7) and release.id would be 0, and
>>> incremented for each point release (should there be any) out of that
>>> branch.
>>>
>>> A goal of this simplification is to reduce the overhead of a point
>>> release, so that there is no need to update release notes or web
>>> content to create the point release. The point release can simply
>>> replace the previous point release on the download server.
>>>
>>> The major work that would be needed to do this:
>>>
>>> . Adjust the build system to know the difference between version and
>>> release, using the appropriate combination in each place. In
>>> particular, this should remove the requirement that the
>>> nightly-build script has to be updated for each point release, and
>>> remove the point designation from the download paths and images (so
>>> the download page will not need to be updated).
>>>
>>> . Adjust any parameterized documentation to know the difference
>>> between @VERSIONID@ and @RELEASEID@, using the appropriate
>>> combination in each place. This should remove the need to update
>>> the release notes for point releases.
>>>
>>> . Adjust the LFC and debugger to know the difference between version
>>> and release, using the appropriate combination in each place. This
>>> should simply be a reorganization of the canvas attributes and the
>>> way the debugger prints version and release info for bug reports, etc.
>>>
>>>
>>
>
More information about the Laszlo-dev
mailing list