-
Notifications
You must be signed in to change notification settings - Fork 11
/
CHANGES.txt
165 lines (121 loc) · 6.23 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
Tablicious Changelog
====================
0.4.5 (unreleased)
------------------
(nothing here yet)
0.4.4 (2024-10-23)
------------------
* Improvements (hopefully) to duration-related arithmetic and datatype interaction.
* Fix hi-bound and striding bugs in `datetime.colon` (`:` operator).
* Add missing `calendarDuration.mtimes` method.
0.4.3 (2024-07-06)
-------------------
* Fix "[foo (...)]" syntax-ish errors in some functions.
* Affected datetime, calendarDuration, localdate, splitapply, mustBeCellstr, and some display functions using tblish.internal.mycombvec.
* table
* Correctly handle nested tables in some cases ()- and {}-indexed assignments, when indexing in to those nested tables.
* Fix assignment to some `table.Properties.<X>` pseudo-properties.
* Apply object validation after more mutation operations.
* Fix variable number display in table.summary.
* Fix duration ctor bug that returned NaNs in cellstr row vectors. ([#134](https://github.com/apjanke/octave-tablicious/issues/134))
0.4.2 (2024-02-07)
------------------
* Add `end` override methods to string, datetime, etc. so `x(end)` indexing works correctly.
* table
* table: summary: omit NaNs from mean(), include NaN counts.
* table: Fix rownames, broken by bad internal `.Properties` reference.
* categorical.summary: include frequencies in output
### Documentation
* Alphabetize methods under classes in alphabetical index.
0.4.1 (2024-02-07)
------------------
### Bug Fixes
* string:
* string: Fix missing trailing newline in string display in `string.disp`.
* string: Add `+` operator overload that does string concatenation.
Version 0.4.0 (2024-02-07)
--------------------------
### Breaking Changes
* Remove `(fill,rm,standardize)missing` functions, deferring to the Statistics package.
* `table` arrays:
* `table`: Have `fieldnames (obj)` expose variable and dimension names and Properties, instead of the internal implementation properties.
* `table`: Remove `grpstats` method and replace with `tblish.table.grpstats()` function, to avoid overriding or interacting with Statistics' `grpstats()` function.
* `table`: Deprecate `rows`, `columns` methods.
* `datetime:
* Deprecate `.dnums` property access.
* This was only public for debugging purposes during initial development, and not intended to be part of the public API. The `datenum` method is the supported way to get datenums here.
* Fix `string.missing()` to actually return a missing value, instead of "".
* Make internal-use properties on the main classes Access = private, now that the code is a little more mature.
### Changed
* Require Octave 7.x or later.
* Fix Octave 7.x and 8.x compatibility in installation and package loading.
* `table` arrays:
* `table`: Fix "preallocation" constructor to use 0s and ""s for fill values, unless missings are requested using an alternate pseudotype. (For compatibility with Matlab.)
* `table`: Fix some advanced ()- and {}-indexing cases, including some related to multi-variable subscripting, multi-column table variables, multi-column RHS inputs, and the combination of the three.
* `table`: Remove `reshape`, `resize`, `vec`, `hasrownames`, and `size_equal` methods.
* `table`: Make `congruentize` a private function.
* Add `istable`, `istimetable`, and `istabular` functions.
* Fix `x(ix) = []` element deletion for string, datetime, table, and other classes.
* Add idempotent one-arg constructor forms for string, datetime, categorical. (But not table.)
* Add `NaS`, `NaC`, and `todatetime` functions.
* Make `head` and `tail` functions instead of methods on `table`.
* Add `string.ne` method.
* Fix concatenation of `@missing` arrays.
* Rename `+tablicious` package to `+tblish`; merge `+octave` package into `+tblish`.
* Move `+table_examples` package to `+tblish/+examples`.
* Move the `sizeof()` override methods to a `tblish.sizeof()` function to avoid shadowing core Octave's `sizeof`, until I understand if it's intended to support extension by classdefs.
* Fix the doco generation, including publishing to GitHub Pages.
### Internal
* Convert code style to GNU Octave code style, mostly.
* Move `mustBe*` functions to a `validators/` subdirectory, just for tidiness.
* Revamp doc-generation tools.
* Add experimental MP-Test based unit tests to supplement BISTs, for detailed testing of `table` behavior.
Version 0.3.7 (2023-01-06)
--------------------------
* Fix installation under Octave 7.x. (#91)
* Fix orphaned sections in documentation.
* Add table.size_equal method. (#81)
* Add string.empty static method.
Internal refactoring:
* Rearrange doco files so the main source file is named `*.texi` and its extension is recognized by editors.
Version 0.3.6 (2021-07-05)
--------------------------
* Fix multi-argout calling form of table.size. (Thanks, @rdzman!)
* Fix table dot-indexing assignment by having table.numel always return 1.
* Support arbitrary strings as variable names (#82).
Version 0.3.5 (2020-01-30)
--------------------------
* Fix compiler warnings on systems with 32-bit `octave_idx_type`
Version 0.3.4 (2020-01-28)
--------------------------
* Octave 6.x compatibility: move some mustBe* validators into compatibility shims
Version 0.3.3 (2020-01-28)
--------------------------
* Fix version metadata in the distribution
Version 0.3.2 (2020-01-28)
--------------------------
* sprintf and fprintf support for datetime, categorical, and other classes
* Added this ChangeLog
* Octave 6.x compatibility fix: use different function for registering QHelp doco
Version 0.3.1 (2020-01-27)
--------------------------
* Fix a dumb bug that broke string
* Fix "shadowed function" warning in Octave 5.x
Version 0.3.0 (2020-01-18)
--------------------------
* Various bugfixes
* Added some examples
This is the release that I think is ready for general consumption by the user community.
Version 0.2.0 (2019-05-05)
--------------------------
* More basic table stuff
* Now with datetime and duration, since I’ve merged the Chrono package into this project
* Documentation
* @string and @categorical
* The start of some example data sets
* Bug fixes, of course
Version 0.1.0 (2019-04-30)
--------------------------
Initial release!
This library is about 2/3 feature complete. Most basic table, string, categorical, and
Missing Data stuff is working, and there's documentation.