Online Developer Meeting (2021-04-27)

From Octave
Revision as of 06:18, 28 April 2021 by Mmuetzel (talk | contribs) (→‎MXE Octave branches)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Todays topics[edit]

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

MXE Octave branches[edit]

  • Which changes should go on which branch?
    • "default": everything new
    • "release": conservative updates
      • new Octave packages + dependent libraries (if necessary and applicable)
      • MXE libraries which have severe bugs / security issues.
  • Which branch should the buildbots use?
    • http://buildbot.octave.org:8010/ (jwe)
      • Probably add builders to jwe's buildbot that build the current Octave stable branch with MXE Octave's release branch.
      • Is there a way to trigger daily builds of the mxe builders only if there have been changes in Octave or MXE Octave.
    • https://buildbot.octave.space/ (Kai)
      • General move to "release" branch (probably May)
      • One additional build of "w64" with "default" branch

Buildbots[edit]

GitHub[edit]

  • Markus wants to try out using GitHub runners
  • Therefore a folder ".github" will be added to the Octave main repo
    • Can be removed anytime if it proves as not useful.
  • If other services (despite GitHub) are going to be tested, respective files might be added too.

String class strategy[edit]

Classdef[edit]

  • Wish to define classdef classes from C++ "nicely" (currently only from m-files comfortable usable).
  • This would also help implementing the string class.

C++17[edit]

General consensus was to stay with C++11 until a "killer application" shows up that rectifies changing to a newer standard.

Short introduction: SavannahAPI[edit]

Bug Maintenance/Clean Up[edit]

The author of this topic did not attend the meeting. There was a short discussion about GSoC and the Short projects page.

There are already ~1600 open bugs at 1 min/bug this is over 1 day. This is not manageable. Many of these could be closed:

  • Are complete because a new version is released #53576
  • Can be implemented since there is a new version #50820 notice comments 24 & 25
  • Maintainers have the function but have not submitted it #58530

For preparing for GSoC it states to fix bugs, missing functions, etc. The ideal scenario would mean being inundated with fixes, and new functions. A maintained Short projects page would be necessary to avoid comments as in #32088.

What is the best approach to resolving this?

  • A new wiki page so one with permission can see all the "easy closes".
    • Please reuse the Short projects page for this purpose, which is currently unmaintained.
  • Pinging bugs/patches for a status update.
    • Yes, always a good idea and this is basically what happens very slowly. It would be great to see more volunteers triaging the bug and patch trackers.

Previous topics[edit]

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

Octave 7[edit]

Improve graphics[edit]
  • Consult professional OpenGL developer to review code Any news here?
    • General agreement to spend Octave project money on this
Implement Matlabs new input validation[edit]
  • jwe can create dummy tree-elements
    • Problem if values are evaluated, the "right" action must be done
  • Can those validation statements come at arbitrary positions or only at the beginning of the file?
Command Window Widget[edit]
Backend code improvements[edit]
  • "Ditch" old UNIX system functions (e.g. popen)
  • performance of symbol lookup
    • use std::unordered_map, rather than std::map to increase performance (e.g. of interpreter lookups)
    • Potentially implement "import" keyword? That would probably slow down symbol lookup some more.
  • Replace custom reference counters with implementation using std::shared_ptr
    • Some instances are more difficult to replace. jwe will post something about this on the discourse forum.
  • improve HDF5 integration

Documentation[edit]

Ideas for next meeting[edit]

See also[edit]