Editing Short projects

Jump to navigation Jump to search
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 14: Line 14:
== Implement missing Matlab functions ==
== Implement missing Matlab functions ==


* Use the [https://savannah.gnu.org/patch/?func=additem&group=octave Savannah patch tracker] for submissions unrelated to an existing bug.
Use the [https://savannah.gnu.org/patch/?func=additem&group=octave Savannah patch tracker] for submissions unrelated to an existing bug.
 
== Test Octave functions for proper input handling ==
 
* Many functions either do insufficient input checking or the input requirements have changed over time.
* Contributors can try to break Octave function behavior with different types of input, and document the results.
* Users can check <em>expected behavior</em> according to the Octave help and, if applicable, expected compatible behavior according to [https://www.mathworks.com/help/matlab/ public facing Matlab documentation].
* Inputs to test can be:
** different numeric types - double, single, integer.
** non-numeric types - logical, string, cell, struct
** different input shapes - scalar, row/column vectors, 2D, 3D, & nD arrays, zero size arrays ([], 1x0, and 1x3x0 are all empty but may require different handling).
** char/string parameters: different case handling, partial matching behavior, invalid/nonsense parameters.
* For the input items above, does function behave acceptably? Are numerical or graphical outputs as expected? Is output consistent? Is any error message intelligible/meaningful to the user? 
* Optionally the behavior above can be tested against Matlab function output if it is available. If needed but not available, tests can be submitted to other developers for output checking.
** Note 1: There is much undocumented Matlab behavior.  Because this has the possibility of changing with little notice, fixing incompatibilities related to such undocumented behavior is considered on a case-by-case basis by the developer team. Documentation of such cases is always beneficial, however.
** Note 2: Only Matlab public documentation and function output may be compared.  <em>Internal Matlab code, even if available, should never even be looked at by a contributor. Contributions will be discarded if it is determined such action occurred.</em>
* Contributors can submit bug reports to the [https://savannah.gnu.org/bugs/?group=octave Octave Bug Tracker] documenting their findings.
* An example can be see in bug {{bug|64078}} comment #10 of looking through the /plot/draw functions for how they handle integer and logical inputs to numeric fields.
 


== Write Built-In Self Tests (BISTs) ==
== Write Built-In Self Tests (BISTs) ==
Line 46: Line 28:


== Easy Closes ==
== Easy Closes ==
Below is a non exhaustive list of bugs which should be looked at and appear to be easy. Completed scrub using 6.1 as non expert. Status column provides notes from last review to facilitate addressing each bug.  (Reviewing and updating status of items in this list as well as adding new ones are themselves good beginner tasks.)
Below is a non exhaustive list of bugs which should be looked at and appear to be easy  
Completed scrub using 6.1 as non expert.


Notes:  
Notes:  
Line 59: Line 42:
! bug !! bug title !! status
! bug !! bug title !! status
|-
|-
| {{bug|36954}} || datenum / datevec convert date-time string incorrectly during hour lost to DST || siko1056 suggests closing as won't fix. nrjank reverted from Postponed to Confirmed / removed Assigned To tag after dormant for 2 years.
| {{bug|36954}} || datenum / datevec convert date-time string incorrectly during hour lost to DST || siko1056 suggests closing as won't fix. philipnienhuis changed to Postponed and expresses interest in revisiting.
|-
| {{bug|40357}} ||OOM when converting from sparse double to sparse logical|| hardy thinks this might be a DUPLICATE, nrjank changed to Need Info, needs better test to determine if the OOM comes from known sparse indexing issue or something else.
|-
| {{bug|43717}} || rats LEN Matlab incompatibility|| riks states wouldn't bother to fix this as Octave's solution seems better, but points out that default length has changed and Octave should perhaps follow that change.  
|-
|-
| {{bug|40357}} || OOM when converting from sparse double to sparse logical|| hardy thinks this might be a DUPLICATE, nrjank changed to Need Info, needs better test to determine if the OOM comes from known sparse indexing issue or something else.
| {{bug|45404}} || Breakpoints cannot be set in classdef methods or +package function files|| package part fixed. classdef part remains. jwe suggest closing either this or {{bug|46451}} and tracking classdef on the one that remains, or close both and make a new report. changed to Need Info for someone familiar to decide what would be best for tracking the issue after 2 yrs of dormancy.
|-
|-
| {{bug|48088}} || document that issquare, iscolumn, isempty, etc operate on cell arrays|| documentation patch candidate submitted and needs review.
| {{bug|48088}} || document that issquare, iscolumn, isempty, etc operate on cell arrays|| documentation patch candidate submitted and needs review.
|-
|-
| {{bug|49886}} || ezplot: octave does not warn when function not vectorized || Rik states This would be easy to fix if {{bug|42691}} was first solved. That bug was closed as fixed in August 2021, so supposedly this one should now be easier manageable. nrjank marked as Needs Info to determine if desired output is just adding a warning, or also matching matlab output.
| {{bug|49886}} ||ezplot: octave does not warn when function not vectorized || Rik states This would be easy to fix if {{bug|42691}} was first solved. This bug was closed August 2021
|-
| {{bug|49360}} ||odeset lacks documentation for solver options || Needs someone to review and make a to-do list.
|-
| {{bug|51560}} ||[octave forge] (communications) Wrong dimension in pskmod.m output || nrjank had a solution for the bug (not attached), but stopped for more improvements.
|-
| {{bug|53214}} ||area.m needs update to implement ShowBaseline and other properties || nrjank states the main bug has been fixed. Suggests closing or retitle
|-
| {{bug|53670}} ||subplot handle changes after window resizing || nrjank suggests this was fixed in fixed between 6.1 and 6.3
|-
| {{bug|54437}} ||optimset missing documentation for 5 options || rik states AutoScaling, ComplexEqn, and Updating can be copied from fsolve.m so this would be an improvement.
|-
|-
| {{bug|49360}} || odeset lacks documentation for solver options || Needs someone to review and make a to-do list.
| {{bug|54679}} || datenum accepts a matrix, which is undocumented || apjanke provided a patch.  patch updated to current default tip and nrjank suggests ready to push.
|-
|-
| {{bug|53214}} || area.m needs update to implement ShowBaseline and other properties || nrjank states last remaining task is adjusting the axis limits to fit the data. This has been pushed for area.m. Left remaining is whether to do the same for plot.m which would require checking on/fixing failing tests in other functions.
| {{bug|55065}} || Implement uiopen and uisave || rik states they would be easy to implement
|-
|-
| {{bug|54437}} || optimset missing documentation for 5 options || Documentation task.  rik states AutoScaling, ComplexEqn, and Updating can be copied from fsolve.m so this would be an improvement.
| {{bug|56208}} || GUI Editor autocomplete list could show variables from current workspace || appears to be fixed
|-
|-
| {{bug|55065}} || Implement uiopen and uisave || both a patch and m-file versions of the two functions have been separately submitted. they both need to be evaluated for fitness. 
| {{bug|57352}} || text height for blank line should approximate that of ordinary character || rik thinks this will be quick
|-
|-
| {{bug|56208}} || GUI Editor autocomplete list could show variables from current workspace || suggested it might be fixed, but appears to still not be meeting summary requst. marked as Needs Info
| {{bug|58530}} || missing functions: xline() and yline() || rik states I can dust them off and add them to Octave - updated unimplemented_functions list but has postponed attention until after v7.1.
|-
|-
| {{bug|57352}} || text height for blank line should approximate that of ordinary character || initial patch suggestion provided but still needs some trial and error to get good height behavior
| {{bug|59004}} || [octave forge] (communications) Error when trying to build (constness of cat op args)|| ready to close nir_krakauer added the patch and the newest communications package  v 1.2.3
|-
|-
| {{bug|58530}} || missing functions: xline() and yline() || initial patch submitted in 2022, needs rework according to rik's comments
| {{bug|59466}} || [octave forge] (communications) de2bi improper input handling || ready to close nir_krakauer added the patch and the newest communications package  v 1.2.3
|}
|}


Please note that all contributions to Octave may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Octave:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)

Templates used on this page: