bugGNU Octave - Bugs: bug #51764, [octave forge] (interval) building...

 
 

bug #51764: [octave forge] (interval) building from hg requires the interval package installed

Submitted by:  Mike Miller <mtmiller>
Submitted on:  Wed 16 Aug 2017 02:54:13 AM UTC  
 
Category: Octave Forge PackageSeverity: 3 - Normal
Priority: 5 - NormalItem Group: Build Failure
Status: FixedAssigned to: None
Originator Name: Open/Closed: Closed
Release: otherOperating System: GNU/Linux

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Wed 16 Aug 2017 10:09:15 PM UTC, comment #4:

Confirmed, thank you, this all works perfectly now.

I had noticed the other before, when I tried to run 'make dist' from a completely clean state. I had to execute 'make run' first to build the oct files, followed by 'make dist'. Now I can run 'make dist' from a clean checkout with no problems.

Mike Miller <mtmiller>
Project Administrator
Wed 16 Aug 2017 10:01:25 PM UTC, comment #3:

This should fix it: “pkg load” won't be used if the @infsup class is available in the load path. This way it is possible to use the .tst files in either way (with the package installed or with load paths set by the Makefile).

https://github.com/oheim/ITF1788/commit/7b379e9f7f72182953ce8f897eeb790f9a45f3c4

In addition, I had to extend build dependencies: Compilation of oct-files is required to make the constructors work and be able to run the target.

https://sourceforge.net/p/octave/interval/ci/bc7b401f0de2eb555043252e23760a13bc4ecf95/

Oliver Heimlich <oheim>
Wed 16 Aug 2017 05:32:41 PM UTC, comment #2:

Confirmed, the following patch to the ITF1788 subrepo works for me:

Mike Miller <mtmiller>
Project Administrator
Wed 16 Aug 2017 05:21:21 AM UTC, comment #1:

Thanks for spotting this. The problematic pkg load statement can easily be removed from this file:
https://github.com/oheim/ITF1788/blob/master/itf1788/plugins/octave/arith/interval-dictionary/arith.yaml

Anonymous
Wed 16 Aug 2017 02:54:13 AM UTC, original submission:

Building the interval package using the maintainer's makefile from the hg repository suffers from a bootstrapping problem.

Building the package runs a bunch of test scripts under build/octave/dictionary/interval-dictionary, all of which call "pkg load interval" at the start. This requires the interval package to be installed in the active version of Octave, which may not be the case if someone is attempting to build the package from scratch.

Not only does it require the interval package to be installed, which shouldn't be a requirement, but the installed package also overrides the functions in the interval repo. So if any important changes are made to the package, the test data will not be generated with the latest functions.

Commenting out the "pkg load interval" lines in each of the generated test scripts works around these problems, since the top-level maintainer makefile already sets Octave's path appropriately to use the interval functions in the repository.

Is there a way to bypass the "pkg load interval" when running these scripts? Or to somehow override the generator to avoid inserting that line into the scripts when they are built?

Mike Miller <mtmiller>
Project Administrator

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by oheim (Posted a comment)
  • -unavailable- added by mtmiller (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 2 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Wed 16 Aug 2017 10:09:15 PM UTCmtmillerStatusNone=>Fixed
      Open/ClosedOpen=>Closed

    Back to the top


    Powered by Savane 3.1-cleanup1