Difference between revisions of "Online Developer Meeting (2022-01-25)"

From Octave
Jump to navigation Jump to search
(→‎Todays topics: Add C++17)
(→‎Todays topics: Add some points for release process of Octave 7.1)
Line 5: Line 5:
* Meet and greet 5 minutes before meeting (audio testing).
* Meet and greet 5 minutes before meeting (audio testing).
=== Release process of Octave 7.1 ===
* Blocking issues: 9 bugs targeting 7.0.90 (see [https://octave.space/savannah/# Savannah overview on octave.space])
* Most important ones (in no particular order):
** [https://savannah.gnu.org/bugs/index.php?61788 bug #61788: arrays of type int16 contain wrong numbers]
** [https://savannah.gnu.org/bugs/index.php?61813 bug #61813: memory management bug when calling MEX that returns an output]
** [https://savannah.gnu.org/bugs/index.php?61821 bug #61821: segfault using tree_parameter_list in oct file]
** [https://savannah.gnu.org/bugs/index.php?61898 bug #61898: subsref: Error when field syntax is used on non-scalar @class object]
** maybe also: <code>malloc</code>-<code>delete[]</code> combination in the .mex interface
=== C++17 features in Octave API? ===
=== C++17 features in Octave API? ===

Revision as of 08:01, 24 January 2022

Todays topics

  • Meet and greet 5 minutes before meeting (audio testing).

Release process of Octave 7.1

C++17 features in Octave API?

Previous topics

The following items were not discussed. Just some links to progress on those items are displayed.

Release process of Octave 7.1

  • No blocking issues at the moment.
    • Visibility flags are disabled (on the stable branch).
    • Polymorphic allocators are disabled by default, but can be enabled with a configure switch.
  • Translations are still ongoing.
  • Update year in copyright notes.
  • Do a first release candidate during the next few days (independent on current status of translations).

Projects for Octave 8

  • Array<T> template class:
    • Allow implicit instantiations
    • Less explicit instantiations (where possible)
      • Background: Current design of requiring explicit instantiations was probably "just" for optimization of compile time.
    • Make sorting a part of the Array<T> template (instead of a separate template).
      • Background: At the time, this was first implemented, there was (probably?) no good sorting method in the STL.
      • Maybe move to C++ sorting methods now if possible.
    • provide STL compatible iterators (might be a requirement for STL sorting)
    • generally try to take better advantage of templating and specializations.
  • Make it explicit in the docstring if functions have a return argument.
  • Allow @seealso links to point to old class functions - like @ftp/open. (Doesn't work currently in doc cache.)
  • Lookup classdef methods for help and debugger.
  • Check reason for "disappearing" classdef constructor for MException class: bug #40828
  • Is it possible to simplify the implementation of classdef in Octave core?
  • General note on changes: Don't over-complicate code for micro-optimizations. Use STL where possible and where it makes sense.

Update strategy for MXE Octave

  • default branch was merged to release a couple of weeks ago. That was meant to get the CI working after the merge from default to stable in the main Octave repository. It was not meant to freeze the branch...
  • When should the "actual" merge happen? For the (first?) release candidate? For the final release?
    • Merge some time during the next few days. Before the first release candidate.
    • After that, fix bugs as necessary.

Status of plotting in Octave

See also