Online Developer Meeting (2024-02-27)

From Octave
Revision as of 19:34, 27 February 2024 by Cbm (talk | contribs)
Jump to navigation Jump to search

Today's topics

  • Status of 9.1 Release
    • Are there remaining blocker bugs?
    • Do we issue a second release candidate (RC2)?
  • How to handle pull requests for the mirror on GitHub?
  • Common id tag for developer of Octave packages in AppStream Metainfo files?
    • Should they use a different tag from the identifier of core Octave? See core patch and package change/discussion
    • Conclusions: no strong feelings. Each package should generally decide what they want: if they feel that `id="org.octave"` and `<name>Octave Community</name>` describes their community, that's probably fine. If in doubt, just ask.

Previous topics

  • Enable polymorphic-allocators by default? In Octave 9? In Octave 10? Later? See Enable polymorphic allocator by default (if available)? Leave it disabled by default on Octave 9. Enable it by default for Octave 10. Test in the next year, notify in NEWS that it will require a C++17 compiler so that packages can update their flags.
  • Disable visibility flags by default for Octave 9? Yes, disable visibility flags for Octave 9, meaning export all symbols by default. Make necessary refactoring on default branch for Octave 10. Maybe examine whether templates and classes should be refactored as well.
  • Release candidate for Octave 9? Any pending changes still missing for the RC? With no changes to previous two items, this is good to go. Pending activities: update README for Windows, merge MXE with all new package updates, then good to go.
    • Discussion about making edits to Statistics package so it can make it into MXE for Octave 9. Related to recent changes with isargout.
    • Discussion about "nargout <=" vs "nargout ==", making a policy of "nargout <=" and "nargout >=" going forward, no equality.
    • Discussion about iterators and range-based loops and auto types.
    • jwe will post about coding standard updates on the above topics.
  • Blocking tasks before moving any classdef-based class (e.g., string, table, datetime, ...) into Octave core?
    • There is already classdef in Octave core, like inputParser. The difference is that typically there is only one object of inputParser, but Octave core doesn't currently have arrays of classdefs, which would be necessary for arrays of strings etc. See [1] for example
    • The second major shortcoming is that classdefs cannot currently be saved in files.
  • Discuss a road map to port @table class from Tablicious package into Octave core, while making it a dependency for Statistics until @table gets into core (possibly by Octave 10).

See also