bugGNU Octave - Bugs: bug #61211, xmlread reported as not yet...

 
 

bug #61211: xmlread reported as not yet implemented rather than part of unloaded io pkg

Submitter:  Nicholas Jankowski <nrjank>
Submitted:  Thu 23 Sep 2021 08:33:23 PM UTC
   
 
Category:  Octave Package Severity:  2 - Minor
Priority:  5 - Normal Item Group:  Unexpected Error or Warning
Status:  Patch Submitted Assigned to:  None
Originator Name:  Nicholas Jankowski Open/Closed:  * Open
Release:  * 6.3.0 Operating System:  * Any
Fixed Release:  None Planned Release:  None
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Tue 12 Oct 2021 05:00:05 PM UTC, comment #8: 

Would it make sense to remove the link from the printed text and instead add a new line followed by whatever `check_package (fcn, "io")` would return?
That way a user would get notified if they already have the io package installed but not loaded.

That could read something like:

Functions for XML I/O are provided in the io package.
The 'xmlread' function belongs to the io package from Octave Forge
which you have installed but not loaded.  To load the package, run 'pkg
load io' from the Octave prompt.


That is not entirely correct because `xmlread` should belong to Octave core. But it still contains useful information...

Maybe, we could use "is part of" instead of "belongs to" in that sentence. Is that valid English? And would it be "more correct" in all cases?

In that case, we could probably also omit the introductory sentence.
What do you think?

Markus Mützel <mmuetzel>
Group administrator
Sat 25 Sep 2021 04:11:15 PM UTC, comment #7: 

whoops.  forgot that Preview clears the upload field. 

patch attached.

(file #51963)

Nicholas Jankowski <nrjank>
Group Member
Sat 25 Sep 2021 03:39:28 PM UTC, comment #6: 

@Nick: It seems that the attached file is missing

Avinoam Kalma <avinoam>
Group Member
Fri 24 Sep 2021 01:10:49 PM UTC, comment #5: 

patch attached that creates a special handling case for xml functions and takes them off the unimplemented list.

Stops short of going in and adding the full io package function list which would then call check_package and produce the 'installed but not loaded' message.

Nicholas Jankowski <nrjank>
Group Member
Fri 24 Sep 2021 12:47:27 PM UTC, comment #4: 

yes I had seen that and had actually saved it from previous versions when I was curious about what 'old' matlab functions might still be unimplemented, but never got as far as writing a comparison script and wasn't sure where to pull an octave manifest from for comparison, and then similarly a manifest for packages (forge hosted packages can probably be pulled from the octave forge site pages, now that I believe that's being updated again when packages are released.)

Nicholas Jankowski <nrjank>
Group Member
Fri 24 Sep 2021 07:58:14 AM UTC, comment #3: 

Matlab has this alphabetical list of functions:

https://nl.mathworks.com/help/matlab/referencelist.html?type=function&listtype=alpha&category=index&blocktype=&capability=

(watch out for Savannah's incomplete formatting)
Could that be useful?

Philip Nienhuis <philipnienhuis>
Group Member
Fri 24 Sep 2021 03:02:05 AM UTC, comment #2: 

Yes, I think it makes sense to add special case entries for any function in core Matlab that is in some Octave package but not yet in core Octave that point users to the package.

It would be great if we could automate the job of updating the lists of unimplemented functions but I don't know how we could always do it reliably.  It depends on what functions are in Matlab and its toolboxes as well as the functions in Octave and its packages.  As far as I know, that has always been edited by hand.

John W. Eaton <jwe>
Group administrator
Fri 24 Sep 2021 02:08:19 AM UTC, comment #1: 

ok, I see that all sits in _unimplemented_.m, but the io package is not of the packages in the list for checking fcns against. Should it be? or would it be worth adding a 'smarter case' for xml files pointing to io? 

back to the first question, if that were to be done for more packages is there an easy way to script that list everytime, say, a new pkg release happens?

Nicholas Jankowski <nrjank>
Group Member
Thu 23 Sep 2021 08:33:23 PM UTC, original submission:  

just noticed:


>> help xmlread
error: help: The 'xmlread' function is not yet implemented in Octav
e.

Please read <https://www.octave.org/missing.html> to learn how you
can
contribute missing functionality.

>> pkg load io

>> help xmlread
'xmlread' is a function from the file C:\Programs\Octave\octave-6.3
.0-w64\mingw64\share\octave\packages\io-2.6.3\xmlread.m
...
 -- Function File: NODE = xmlread (FNAME)


i know there were some recent crash related bugs that forced temporary removal of xmlread from io, but with it back now i'm assuming the 'missing function' should be changed to a 'part of package that is installed but not loaded' message.  i'm not familiar with where those things reside to throw a patch together to do that.

Nicholas Jankowski <nrjank>
Group Member

 

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

Attach Files:
   
   
Comment:
   

Attached Files
file #51963:  bug61211-xmlfunctions.patch added by nrjank (1KiB - application/octet-stream)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by mmuetzel (Posted a comment)
  • -email is unavailable- added by avinoam (Posted a comment)
  • -email is unavailable- added by jwe (Posted a comment)
  • -email is unavailable- added by nrjank (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only group members can vote.

     

    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2021-09-25 nrjank Attached File- Added bug61211-xmlfunctions.patch, #51963
    2021-09-24 nrjank StatusNone Patch Submitted

    Back to the top

    Powered by Savane 3.13-4448.
    Corresponding source code