-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathCHANGELOG
117 lines (101 loc) · 6.16 KB
/
CHANGELOG
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
Unreleased
- Added VSCode `.devcontainer` settings for containerised developer environment for debugging tests. See `.devcontainer/README.md` for instructions (@alexallmont #148)
Version 0.1.2
- Documentation is now in sync with the main branch (@philipparubin PR #85)
- Fixed a fault when constructing with larger than expected array (Issue #70, @inakleinbottle PR #72)
- Updated README to remove old information, users should now read roughpy.org (Issue #74, @inakleinbottle PR #71, #78)
- Fixed degree argument on basis size function (Issue #75, @inakleinbottle PR #79)
- Fixed unknown keyword arguments not flagged (Issue #77, @inakleinbottle PR #81)
- Fixed partition intermediates unchecked by Python constructor (Issue #80, @inakleinbottle PR #82)
- Fixed path constructors now accept Lies (Issue #83, @inakleinbottle PR #87)
Version 0.1.1:
- Fixed type promotions in scalar arithmetic - left hand types are now promoted when appropriate.
- Added "tensor_functions" module for implementing additional functions on tensors. Currently only Log is implemented.
- Fixed a few bugs in the build system
Version 0.1.0:
- Added framework for integrating device support and redesigned scalars module to accommodate the changes.
- Made changes to type deduction in constructors to avoid exceptions when providing lists of python ints/floats.
- Changed the implementation of __array__ for algebra types. A copy is always made, and the size of the array is always
equal to the dimension of the chosen width/depth composition.
- Changed the behaviour when no resolution is given. RoughPy now uses a heuristic to compute a suitable resolution for computing signatures if none is given.
Version 0.0.8:
- Disabled linking to BLAS/LAPACK to reduce compile times whilst under development.
- Greatly expanded the serialization support internally.
- Many classes can now be pickled/unpickled for transport across process boundaries.
(Note that this is not yet a safe means of storing and transmitting stream data.)
- Overlay triplets are now forced for all builds. This should improve reproducibility.
- Restructured the algebra module to improve build times.
- Added CMake detection of headers to help builds with non-compliant compilers.
- Fixed an error in the construction of `PyLieKey` in `PyLieKeyIterator`. [#40](https://github.com/datasig-ac-uk/RoughPy/issues/40)
Version 0.0.7:
- Overhaul the (internal) ScalarType API:
. the overloads of convert_copy have been removed in favour of the variant that takes two ScalarPointers;
. the single versions of add(_inplace) and friends have been replaced with more flexible add_into;
batch compute methods and friends;
. replaced single value uminus with uminus into with similar signature to to add_into and friends;
. removed single value copy method;
- Added constructor for ScalarPointer from type_id and pointer.
- Implementations of ScalarType methods that are essentially the same for all types are implemented
in a common implementation layer.
- Added threading support in platform
- add_into and friends have threading support if available and enabled.
- Added default implementation of type_id_of so that non-specialized types
look for a ScalarType object.
- Greatly simplified the design of ScalarMatrix - it now only supports full,
dense matrices.
- Redesigned the interface between the Scalar linear algebra and
MKL/BLAS+LAPACK.
- Added function to query ring characteristics of a ScalarType - currently
unused.
- Added KeyScalarStream for constructing streams from array-like data more easily.
- Implemented the `from_type_details` function for scalar types. This fixes a bug when constructing objects using the dlpack protocol.
- Overhaul constructor for `LieIncrementStream`s from increment data to reduce
number of copies (if possible) and to handle non-contiguous or oddly shaped
data correctly.
- Change implementation of `LieIncrementStream` to allow adding the parameter
channel during construction.
- Change implementation of `TickStream` to allow adding parameter channel
during construction.
Version 0.0.6:
- Externally sourced streams (sound-file streams) now support setting channel
types/schema in factory function.
- Added option for customising file name macro in exception throws.
- Made some improvements to the internal interface of ScalarType to allow more
efficient implementations of vectorised operations.
- Added fast "is_zero" method to Python algebra objects.
Version 0.0.5:
- Added free functions for performing free-tensor, shuffle, half-shuffle
multiplication between pairs of tensors (of either kind).
- Added free function for applying the adjoint of left free tensor
multiplication to arbitrary tensors.
- Improved exception usage, messages now include filename, lineno, and
function name to help locate c++ exceptions passed through to Python.
- Basis objects in Python are now iterable.
- Added `split_n` and `to_index` methods to Tensor key.
Version 0.0.4:
- Overhauled the RPY_CHECK macro so it now gives much better contextual
information.
- Readme updated to reflect PyPI installation with wheels.
- Antipode is now implemented in libalgebra_lite, and exposed to Python for
Free tensors.
- Streams now carry a support interval, outside of which the signature will be
return trivial.
- Build requirements fixed for non x86 platforms.
- Expanded coverage of pytype stub file.
Version 0.0.3:
- Added datetime interval support.
- Integrated schema reparametrisation into stream signature methods.
- Fixed bug in names of scalar types, names now display correctly.
- Fixed bfloat16 given wrong scalar type code.
- Added half precision float and bfloat16 to py module
- Added real partition class and Python interface.
- Implemented simplify method on Streams.
- Added polynomial coefficients
- started an examples folder
Version 0.0.2-alpha:
- Added datetime and timedelta object support to tick data parsing.
- Expanded build system to include more versions of Python.
- Stabilised compilation on all three platforms.
- Fixed numerous bugs in the build system.
Version 0.0.1-alpha:
- First alpha release.