Confusion over builds.
Peter TB Brett
peter.brett at livecode.com
Tue May 24 11:00:59 EDT 2016
On 24/05/2016 15:24, James Hale wrote:
> Now that 8 is out,things on GitHub should be simpler, right? No, not
> really. We still have 8.01rc1 sitting there. We have 802rc1 sitting
> there. 8.10dp1 AND 8.10dp2 AND 8.10 future?
It's just because I didn't close the milestones yet. Consider the
milestones on GitHub to be informative, rather than normative.
At the moment, the next release in the stable branch of LiveCode (i.e.
8.0.x) will be 8.0.1. Then, after that, the next stable release will be
8.0.2-rc-1.
There is no 8.0.1 milestone in GitHub because no-one has found any
regressions in 8.0.1-rc-1 relative to the previous stable release
(8.0.0) so there have been no pull requests to it.
> While I really like the action happening I wish we could collapse
> things a bit and get the different branches consistent. For instance
> let's start with removing those builds that are actually released.
You mean milestones. I now have. Thank you for pointing it out.
> That would leave us with 8.02rc1, 8.1dp2 and 8.10 future (whatever
> this is supposed to mean).
The 8.1.0-future milestone in the livecode-ide repository is used only
for GitHub issues (which we're probably not going to continue to use).
It is a milestone used for grouping issues which are probably not urgent
to fix, but maybe could be addressed at a future point in the LiveCode
8.1 development cycle.
> Then could be get some guidance as to whether 8.1 contains the fixes
> in 8.02 or not. In other words, if 8.02 fixes something we wanted
> fixed but we also want to test against 8.1, can we count on not
> having worry about a missing fix?
We (i.e. usually Ali, Panos or I) periodically merge the develop-8.0
branch (which will be used to release 8.0.2-rc-1) into the develop
branch (which will be used to release 8.1.0-dp-2). If a fix released
in, say, 8.0.2-rc-1, then the fix will be guaranteed to appear in all
subsequent 8.0.x and 8.1.x releases.
Because of the stable branch stabilisation cycle, there will
occasionally be times when a fix destined for stable is released in an
unstable branch DP first.
> Which gets me to my main hope. Could we perhaps release the rc' a bit
> more frequently? I mean there was only one rc for 8.01 and now we are
> already almost up to 8.02rc1 but before it was released we get an
> 8.1dp1. Can't you move the unfinished bits of 8.02rc1 into a future
> 8.02rc2 and get 8.02rc1 out? Will there be an 8.02rc2 or will you
> jump to 8.03rc1? Sort makes the 'rc' labels superfluous.
In the stable branch, the dev team always makes at least one RC release
to make sure that the subsequent final release is regression-free. When
there are no regressions found, it's okay to make the final release
immediately. Otherwise, it's necessary to fix the regressions (and
_only_ the regressions) and make additional RC releases.
This helps to make sure that the stable releases really are stable.
When bugs are fixed correctly, there aren't any regressions, so there
will be exactly one RC release. This is optimum.
It's incorrect to release anything that's "unfinished" in an RC1 because
a release candidate is supposed to be a release candidate. Bug fixes
that don't make it into a stable RC1 release will wait until the next RC1.
At the moment I expect that 8.0.1 GM will be released this afternoon,
and 8.0.2 RC 1 will be released in the next 7-10 days, depending on the
development team schedule. At the moment I am aiming for a minimum
release rate of one stable and one unstable release per two weeks.
There is a cost to making releases, and the dev team needs to balance
spending time on making releases with the many other tasks we're
expected to do.
If you need builds outside the normal release process then there are two
options:
- you can compile your own Community engines
- you can contact <business at livecode.com> for access to our internal
staging server with candidate builds of Community, Indy and Business
editions (some of our Business subscribers find this service useful, but
note that these builds are "use at your own risk")
For more detailed information on how branches in GitHub relate to the
release cycle, see
https://github.com/livecode/livecode/blob/develop/docs/release_branching_policy.md
Peter
--
Dr Peter Brett <peter.brett at livecode.com>
LiveCode Open Source Team
LiveCode 2016 Conference: https://livecode.com/edinburgh-2016/
More information about the use-livecode
mailing list