From: Sam S. <sd...@gn...> - 2018-01-22 20:37:48
|
> * Bruno Haible <oe...@py...t> [2018-01-22 18:52:45 +0100]: > > Sam Steingold wrote: >> This is a relatively recent regression, "hg bisect" should be able to >> pinpoint the commit that broke it. > > How do you use 'hg bisect' in practice? I've never used it. When a build > takes betwen 15 min and 2 h, I'd like to be sure I use the right commands > before starting a multi-hour build sequence. 1. mark tip as bad: $ hg bisect -b 2. checkout an old version and test it $ hg checkout 16250 $ cd build-g-nodynmod/ && make clean base && ./clisp -q -norc -x '(regexp:regexp-compile "abc")' && cd .. ... #<FOREIGN-POINTER #x00007F8BBDE00000> ;; <--- success!! $ hg bisect -g Testing changeset 16394:f359be5a1874 (120 changesets remaining, ~6 tests) 138 files updated, 0 files merged, 5 files removed, 0 files unresolved 3. repeat this: $ cd build-g-nodynmod/ && rm -rf syscalls && time make clean base && ./clisp -q -norc -x '(regexp:regexp-compile "abc")' && cd .. && hg bisect -g and do $ cd .. ; hg bisect -b on failure (*** - FINALIZE: #<ADDRESS #x0000000101EFC918> is not a function) 4. get this after 6 iterations: The first bad revision is: changeset: 16442:a3806e5f96d1 user: Bruno Haible <br...@cl...> date: Mon Jan 15 00:24:23 2018 +0100 summary: Enable most optimizations on Mac OS X/x86_64. This could be automated more but it was not worth the effort. Lesson learned: one cannot be really sure about an optimization without testing modules too. I will enable the modules tests in configure. Thanks. -- Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1561 http://steingoldpsychology.com http://www.childpsy.net https://jihadwatch.org http://honestreporting.com http://www.dhimmitude.org http://think-israel.org Time would have been the best Teacher, if it did not kill all its students. |