[m-dev.] promoted ROTDs
Julien Fischer
jfischer at opturion.com
Tue Jul 24 12:54:13 AEST 2018
Hi Peter,
On Tue, 24 Jul 2018, Peter Wang wrote:
> Continuing on from
> https://github.com/Mercury-Language/mercury/issues/38#issuecomment-405848166
>
> The master branch seems to be in a good state right now (as it usually
> is), and the start of a month is as good a time as any, so:
No objection from me.
> Next week, can we start promoting a recent ROTD as a version of choice
> for users who can't or don't want to use the "Stable" release, but are
> wary of simply picking the latest ROTD in case they happen to hit a
> recently-introduced bug (however rare they may be)?
>
> A "preferred ROTD" should also be a useful target for packagers who need
> some guidance as to the version to package.
>
> Is there anything known to be wrong with rotd-2018-07-23?
The C# and Java backends don't bootcheck at the moment because they
generate code that goes into a loop (or goes really slowly).
(I think the minimum criterion for stable should be that all the
non-Erlang backends bootcheck.)
I started looking at this the other week, but haven't really had time
to continue; according to jdb the problem is occurring in
lexer.string_get_quoted_name; the last working rotd was 2018-05-29,
so presumably it was broken by one of the commits between that
and rotd-2018-06-03.
> I can do some more testing with that snapshot this week.
> I did some testing with a similar version on MinGW-w64 for the snprintf
> change. The only test that fails on Linux/x86_64 currently is
> tabled_typeclass in debug grades, but AFAIK it should not be blocking.
The failure of tabled_typeclass is not a block.
FWIW, I looked into this a bit and there are a few things going on with
that test case:
1. the number of tabled I/O actions exceeds the default limit for
printing them out. (The declarative debugger has a way of changing this
limit, I couldn't find one for the procedural debugger, is there?) [We
can workaround this by telling it to print out a known range of tabled
I/O actions but that's not very resiliant to future library changes.]
2. Various I/O primitives now contain memory addresses that need to be
filtered.
3. In debug grades, the final bit of of the output (after the last retry
command) is no longer printed; in decldebug grades (according to the
second expected output) it was never printed?
Julien.
More information about the developers
mailing list