Menu

#4752 Add ly:one-page-breaking

Verified
Enhancement
2016-12-09
2016-01-24
Paul Morris
No

Add ly:one-page-breaking

includes regtest, doc entry, changes entry

http://codereview.appspot.com/288910043

Discussion

  • Anonymous

    Anonymous - 2016-01-24
    • Description has changed:

    Diff:

    
    
    • Needs: -->
    • Patch: new --> review
    • Type: --> Enhancement
     
  • Anonymous

    Anonymous - 2016-01-24

    Passes make, make check and a full make doc.

     
  • Paul Morris

    Paul Morris - 2016-01-27

    update docs with ly:one-line-auto-height-breaking

    http://codereview.appspot.com/288910043

     
  • Anonymous

    Anonymous - 2016-01-28
    • Needs: -->
    • Patch: new --> review
    • Type: --> Enhancement
     
  • Anonymous

    Anonymous - 2016-01-28

    Passes make, make check and a full make doc

     
  • Anonymous

    Anonymous - 2016-01-30
    • Patch: review --> countdown
     
  • Anonymous

    Anonymous - 2016-01-30

    Patch on countdown for Feb 2nd.

     
  • Anonymous

    Anonymous - 2016-02-02
    • Patch: countdown --> push
     
  • Anonymous

    Anonymous - 2016-02-02

    Patch counted down - please push.

     
  • Anonymous

    Anonymous - 2016-02-04

    This patch unfortunately broke staging.

    See thread:

    http://lists.gnu.org/archive/html/lilypond-devel/2016-02/msg00005.html

    For now this has been set back to 'needs work'.

     
  • Anonymous

    Anonymous - 2016-02-04

    I deleted the commit ID entries above in the thread so as to not cause any confusion to bug squad (this patch was removed from staging after it had been found to not merge).

     
  • Paul Morris

    Paul Morris - 2016-02-04

    I tried testing again, once with configure --disable-optimising and once with configure --enable-checking. Both times the builds were successful and the resulting binary worked without errors. I am using LilyDev with gcc version 4.9.2 (and g++ version 4.9.2).

    Looking at the code I don't see anything wrong, but I may be missing something (as a C++ novice).

    On the dev list James posted part of the log[1] from when he ran make on staging, with warnings about type conversions. But David Kastrup noted:

    However, those warnings are produced after (one run of) GCC has
    already aborted (on lily/page-breaking-scheme.cc rather than
    lily/page-breaking.cc), when the remaining jobs are finishing. The
    error messages triggering that should occur before that.

    So unless there's a way to get or reproduce those error messages I'm not sure how to proceed. Two ideas:

    1. Setting the page-height to such a large value (in one-page-breaking.cc) might cause trouble?

    2. There's a private method read_spacing_alist in one-page-breaking.cc and maybe that's not set up right? (Seems like it wouldn't build at all if that were the case...) The other page breaking routines don't have any private methods.

    Attaching the patches in question and a test .ly file.

    Incidentally, about the type warnings in the log[1] -- the code in one-page-breaking.cc that calls Page_breaking::make_pages() is the same as the code in minimal-page-breaking.cc, so either minimal-page-breaking.cc also causes those type warnings, or maybe they are a result of whatever else is going wrong.

    [1]

    The log shows this:

    --snip--

    make[1]: *** [out/page-breaking-scheme.o] Error 1
    make[1]: *** Waiting for unfinished jobs....
    /tmp/lilypond-autobuild/lily/page-breaking.cc: In member function
    'scm_unused_struct* Page_breaking::make_pages(std::
    vector<long unsigned="" int="">, SCM)':
    /tmp/lilypond-autobuild/lily/page-breaking.cc:614:24: warning:
    conversion to 'int' from 'vsize {aka long unsigned int
    }' may alter its value [-Wconversion]
    int page_num = i + first_page_number;
    ^
    /tmp/lilypond-autobuild/lily/page-breaking.cc:617:55: warning:
    conversion to 'scm_t_int32 {aka int}' from 'long unsig
    ned int' may alter its value [-Wconversion]
    SCM line_count = scm_from_int (lines_per_page[i]);</long>

    etc.

     

    Last edit: Paul Morris 2016-02-04
  • Anonymous

    Anonymous - 2016-02-06

    Would it be possible that because I use two different Operating Systems (one at work and one at home) and the GCC versions are different that this might be at the root of the issue?

    I leave Patchy staging running on my work machine (as it is always on) but can test on either machines depending on the availability of my time.

    At home (where I am sat now) I am currently using Fedora latest and greatest - gcc 5.3.1 20151207

    At work I use Linux Mint 17.3 - I dwill not have access to that machine until Monday - but I think it could be GCC 4.8 or 4.9 (Maybe Phil, who I think uses also uses Mint might be able to confirm).

    Is that likely to be a possible cause?

     
  • Paul Morris

    Paul Morris - 2016-11-14

    Update patches to apply to current master

    http://codereview.appspot.com/288910043

     
  • Anonymous

    Anonymous - 2016-11-15
    • Needs: -->
    • Patch: new --> review
    • Type: --> Enhancement
     
  • Anonymous

    Anonymous - 2016-11-15

    Passes make, make check and a full make doc.

    Note:

    [james@fedorahome ~]$ gcc --version
    gcc (GCC) 6.2.1 20160916 (Red Hat 6.2.1-2)
    
    [james@fedorahome ~]$ g++ --version
    g++ (GCC) 6.2.1 20160916 (Red Hat 6.2.1-2)
    
     
  • Anonymous

    Anonymous - 2016-11-18
    • Patch: review --> countdown
     
  • Anonymous

    Anonymous - 2016-11-18

    Patch on countdown for November 21st

     
  • Anonymous

    Anonymous - 2016-11-21
    • Patch: countdown --> push
     
  • Anonymous

    Anonymous - 2016-11-21

    Patch counted down - please push.

     
  • Anonymous

    Anonymous - 2016-11-22
    • labels: --> Fixed_2_19_52
    • status: Started --> Fixed
    • Patch: push -->
     
  • Anonymous

    Anonymous - 2016-11-22

    author Paul Morris paulwmorris@gmail.com
    Mon, 14 Nov 2016 17:22:17 +0000 (12:22 -0500)
    committer Paul Morris paulwmorris@gmail.com
    Mon, 21 Nov 2016 14:48:42 +0000 (09:48 -0500)
    commit b787af94e0ec9e9bcfaed40cd73730c0e1e3ffd9

    and

    author Paul Morris paulwmorris@gmail.com
    Mon, 14 Nov 2016 18:20:56 +0000 (13:20 -0500)
    committer Paul Morris paulwmorris@gmail.com
    Mon, 21 Nov 2016 14:48:43 +0000 (09:48 -0500)
    commit 4934b315013ccdda3ab42271fa8bed6e45587844

     
  • Federico Bruni

    Federico Bruni - 2016-12-09
    • status: Fixed --> Verified
     
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.