Online Developer Meeting (2021-07-27): Difference between revisions
Jump to navigation
Jump to search
(→Octave 6.3 released: Add notes of Kai) |
|||
(7 intermediate revisions by 2 users not shown) | |||
Line 9: | Line 9: | ||
* No "official" announcement happened. Maybe reuse abandoned mailing-lists to announce important events, such as releases. | * No "official" announcement happened. Maybe reuse abandoned mailing-lists to announce important events, such as releases. | ||
* How do distribution maintainers get to know about Octave releases? | * How do distribution maintainers get to know about Octave releases? | ||
** Contact Debian maintainers of the Octave package to maybe improve our communication | ** Contact Debian maintainers of the Octave package to maybe improve our communication. | ||
*** Done, already answered: https://lists.gnu.org/archive/html/octave-maintainers/2021-07/msg00001.html | |||
=== | === Octave 6.4 / 7 / 8 === | ||
* Discussion how to continue with the development. | |||
** jwe wants to introduce breaking changes (see below). | |||
* Octave should stick with the ~yearly major release cycle | |||
** Probably no Octave 6.4 (only if severe bugs occur). | |||
** Octave 7 (default branch) | |||
*** Should no longer receive "very" breaking changes (e.g. String-class for Octave 8) | |||
*** Has about 305 bugs fixed (not 100% reliable figure) and should not wait another year until many bigger outstanding changes happen (will be deferred to Octave 8) | |||
*** Tentative plan: | |||
**** November 2021 merge default to stable. | |||
**** End of 2021 release of Octave 7 | |||
** Octave 8 (new default branch) | |||
*** No clear decision how to handle very breaking changes until November 2021 merge default to stable. Depends on future needs. | |||
=== Octave 7 / 8 === | |||
* [https://www.mathworks.com/help/matlab/ref/arguments.html Function argument parsing] (introduced in Matlab R2019b, rather new) | |||
** jwe will continue to work on this feature on Octave 7 (default branch) | |||
** If feature cannot be completed by the end of the year, it will be disabled on parser-level (error), and introduced in Octave 8 one year later. | |||
* [https://octave.discourse.group/t/new-command-window-widget/501? New GUI command widget] | |||
** Possible to introduce it as user opt-in in Octave 7 | |||
** Pending issues: | |||
*** Command-widget does not look like the previous one (textbox for command input) | |||
*** jwe needs better looking widget (avoid developing a new one) | |||
*** No possibility to run external applications (like emacs, pager), which is already partially broken now. Need to implement own paging strategy (scroll bars, etc.) | |||
* Deprecation of Octave operators | |||
** Improve Matlab compatibility | |||
** Some extensions make it painful to implement Matlab compatible command-style function calls? See also the [https://octave.discourse.group/t/parsing-command-style-function-call-syntax/1414/7 discussion] about this topic. | |||
*** Remove rarely used extensions like "**" power. | |||
*** Discussion about removal of "+=", "++", etc. No final decision made. | |||
*** Often used extensions must probably stay (like "!" or "!=" used in place of "~" or "~="). | |||
=== C++ shared pointer / liboctave === | |||
* jwe had a look at Octave own reference counting | |||
* Wish to replace it with C++ shared pointers | |||
* Expert knowledge wanted! jwe opened a [https://octave.discourse.group/t/using-std-shared-ptr-t-to-implement-copy-on-write-objects-in-octave/1436 discussion thread] | |||
* jwe identified "copy expensive" inefficiency about mxArray to octave_value conversion? Root of the trouble lies in historical handling of complex data? See this [https://octave.discourse.group/t/improving-performance-of-data-transfer-to-and-from-mex-functions/1437 discussion]. | |||
== Previous topics == | == Previous topics == | ||
Line 50: | Line 85: | ||
* <strike>jwe will probably post something on discourse.</strike> | * <strike>jwe will probably post something on discourse.</strike> | ||
* See: [https://octave.discourse.group/t/irc-channel-for-octave/1348 IRC channel for Octave] (on Discourse). | * See: [https://octave.discourse.group/t/irc-channel-for-octave/1348 IRC channel for Octave] (on Discourse). | ||
== See also == | == See also == |
Latest revision as of 08:19, 29 July 2021
- Date: Tuesday, July 27, 2021 @ 18:00 UTC
- Location: https://meet.jit.si/octave-dev-2021-07-27
Todays topics[edit]
- Meet and greet 5 minutes before meeting (audio testing).
Octave 6.3 released[edit]
- No "official" announcement happened. Maybe reuse abandoned mailing-lists to announce important events, such as releases.
- How do distribution maintainers get to know about Octave releases?
- Contact Debian maintainers of the Octave package to maybe improve our communication.
- Done, already answered: https://lists.gnu.org/archive/html/octave-maintainers/2021-07/msg00001.html
- Contact Debian maintainers of the Octave package to maybe improve our communication.
Octave 6.4 / 7 / 8[edit]
- Discussion how to continue with the development.
- jwe wants to introduce breaking changes (see below).
- Octave should stick with the ~yearly major release cycle
- Probably no Octave 6.4 (only if severe bugs occur).
- Octave 7 (default branch)
- Should no longer receive "very" breaking changes (e.g. String-class for Octave 8)
- Has about 305 bugs fixed (not 100% reliable figure) and should not wait another year until many bigger outstanding changes happen (will be deferred to Octave 8)
- Tentative plan:
- November 2021 merge default to stable.
- End of 2021 release of Octave 7
- Octave 8 (new default branch)
- No clear decision how to handle very breaking changes until November 2021 merge default to stable. Depends on future needs.
Octave 7 / 8[edit]
- Function argument parsing (introduced in Matlab R2019b, rather new)
- jwe will continue to work on this feature on Octave 7 (default branch)
- If feature cannot be completed by the end of the year, it will be disabled on parser-level (error), and introduced in Octave 8 one year later.
- New GUI command widget
- Possible to introduce it as user opt-in in Octave 7
- Pending issues:
- Command-widget does not look like the previous one (textbox for command input)
- jwe needs better looking widget (avoid developing a new one)
- No possibility to run external applications (like emacs, pager), which is already partially broken now. Need to implement own paging strategy (scroll bars, etc.)
- Deprecation of Octave operators
- Improve Matlab compatibility
- Some extensions make it painful to implement Matlab compatible command-style function calls? See also the discussion about this topic.
- Remove rarely used extensions like "**" power.
- Discussion about removal of "+=", "++", etc. No final decision made.
- Often used extensions must probably stay (like "!" or "!=" used in place of "~" or "~=").
[edit]
- jwe had a look at Octave own reference counting
- Wish to replace it with C++ shared pointers
- Expert knowledge wanted! jwe opened a discussion thread
- jwe identified "copy expensive" inefficiency about mxArray to octave_value conversion? Root of the trouble lies in historical handling of complex data? See this discussion.
Previous topics[edit]
- The following items were not discussed. Just some links to progress on those items are displayed.
Octave 6.3.0[edit]
- 6.3 Release Checklist
- jwe prepared a second release candidate.
- If nothing big shows up, go ahead with the release in about 10 days (early July).
OctConf?[edit]
- Instead of an in-person conference, meet up virtually.
- Ideas for code-sprint?
- Improve test coverage
- That could include automated tests for GUI features ("expect", Qt test classes, set
OCTAVE_SHOW_GUI_MESSAGES
to 1 to display signals with missing connections, ...). Does anyone have experience with this?
GUI[edit]
- Make widgets more modular
- remove connections to parents (or parents of parents,...)
- Only pass settings objects (instead of base qwidget) to widgets?
- Add widgets for:
- displaying call stack. Select function in stack for appropriate
dbup
ordbdown
command. - displaying result to an expression. Similar to debugger (watcher, ...)
- displaying call stack. Select function in stack for appropriate
- User expectations for evaluation code from the editor ("Evaluate selection") or the variable editor ("plot") while there is still pending input on the command line?
Breakpoints[edit]
- Add feature to temporarily disable breakpoints
- Check syntax for breakpoints in subfunctions, local functions, private functions, methods, ... (
dbstatus
). See: Identifiers for breakpoints
gsvd
[edit]
- Current version is not Matlab-compatible nor correct in some circumstances.
- Rik is currently implementing a replacement.
IRC channel on Freenode is down?[edit]
- Replacement on libera?
jwe will probably post something on discourse.- See: IRC channel for Octave (on Discourse).
See also[edit]
- Next meeting: Online Developer Meeting (2021-08-24)
- Last meeting: Online Developer Meeting (2021-06-22)