Bug and pipeline fixes.
- CHANGED:
- Update CircleCI to use pip instead of poetry.
- FIXED:
- Polynomial alignment for more than 10 variables.
- ADDED:
- ndpoly.flat
Reduce the number of alignments.
- ADDED:
- Reduce the number memory copies, increasing speed for large arrays.
- ADDED:
- Removed redundant calculations from multiplications, drastically improving computational cost in some cases.
- FIXED:
- removed redundant and six imports
- ADDED:
- Annotations everywhere!
- User provided type PolyLike: polynmial analog to ArrayLike.
- CI: mypy checks.
- CHANGED:
- CI: Replaced workspace attaching in favor of independent runs.
- CI: Linting, pydocstyle, Sphinx, mypy in py39, and pytest and coverage in py37.
- REMOVED:
- Support for python versions 2 and < 3.7.
- FIXED:
- truncate function affected by rounding error.
- ADDED:
- Numpy function addition: det (from np.linalg).
- ADDED:
- Numpy function addition: roots.
- ADDED:
- Functions remove_redundant_coefficients and remove_redundant_names to explicitly remove junk information.
- Global flags retain_coefficients and retain_names to set global defaults.
- CHANGED:
- Post-process with postprocess_attribute mandatory for all calls to clean_attributes, but because of the new flags, keeping polynomial unchanged is still possible.
- REMOVED:
- Flag clean arg replaced with more explicit retain_coefficients and retain_names.
- CHANGED:
- The call signature of numpoly.call changed to make its usage different from __call__.
- the call signature of numpoly.monomial change to make it more aligned with its parent numpoly.glexindex.
- ADDED:
- Numpy function additions: one_like, zeros_like.
- CHANGED:
- Enforce 100 percent coverage in CI.
- ADDED:
- Numpy function additions: ediff1d, full, full_like, copyto.
- ADDED:
- Polynomial constructor: polynomial_from_roots.
- ADDED:
- Tests for numpoly.equal.
- Numpy function additions: result_type, diff.
- CHANGED:
First iteration for deprecating align_shape: * Added common assert_equal function to test contiguous-ness, shape,
dtype etc. in a more automated way.
- Small patches here and there to assert contiguous-ness.
Rename single variable differentiation: diff -> derivative (as the former is reserved in numpy).
- ADDED:
- Pickle support.
- Polynomial function: lead_coefficient.
- (Unwrapped) numpy functions: load, loadtxt.
- Numpy function additions: save, savetxt, savez, savez_compressed.
- CHANGED:
- Rename function largest_exponent -> lead_exponent.
- FIXED:
- Bugfix: Poly-division with large relative error caused infinity-loops.
- ADDED:
- Numpy function additions: diag, diagonal, ones
- Added changelog (the file you currently are reading).
- FIXED:
- Bugfix in set_dimensions (1.0.2 solution didn't work).
- FIXED:
- Bugfix in set_dimensions.
- ADDED:
- Polynomial function addition: variable, set_dimensions.
- CHANGED:
- Enforce all polynomials on the format "qd+" aligning the defaults with chaospy.
- Lots and lots of doctests updated.
- ADDED:
- Comparison operator support!
- Polynomial functions: poly_divide, poly_divmod, poly_reminder, sortable_proxy.
- Numpy functions: amax, amin, argmin. argmax, greater, greater_equal, less, less_equal, max, maximum, min, minimum.
- Lots of extra tests.
- CHANGED
- String representation changed from insertion order to Graded-reverse lexicographically.
- New comparison and poly-division and derivative chapter in Sphinx, instead of poly-functions.
- Move global options into common file with interfaces: get_options, set_options and global_options (context manager).
- CHANGED:
- More aggressive cross-truncation approach to keep memory low under bindex.
- CHANGED:
- More documentation updates.
- Cleanup to bindex for better handle of implicit dimensions.
- CHANGED:
- Documentation updates.
- ADDED:
- Polynomial division support! * Polynomial functions: poly_divide, poly_divmod, poly_reminder. * Numpy functions: true_divide, divmod, remainder. where, zeros.
- ADDED:
- Numpy function additions: apply_along_axis, apply_over_axes, expand_dims.
- FIXED:
- Bugfix to bindex in handle of indices around 0.
- ADDED:
- Support for enforced naming convention (for use in Chaospy).
- CHANGED:
- Refactor of monomial again to deal with speed issue.
- ADDED:
- Allow for debugging messages through $NUMPOLY_DEBUG environmental variable.
- Numpy functions: count_nonzero, nonzero (thanks Fredrik Meyer)
- Package version number added to numpoly.__version__.
- CHANGED:
- Better py2 support.
- REMOVED:
- Remove CircleCI cache for py2 (as it is really light).
- FIXED:
- Bugfix for edge case in prod.
- ADDED:
- Support for the "empty set" polynomial: polynomial([]).
- CHANGED:
- Refactor monomial, cleaning it out and catching some subtle bugs.
- CHANGED:
- Documentation cleanup.
- FIXED:
- Small bugfix in monomial in how it implicitly handles multiple dimensions.
- ADDED:
- Numpy function additions: matmul.
- ADDED:
- Numpy function additions: broadcast_arrays.
- FIXED:
- Small bugfix in experimental code.
- ADDED:
- Numpy functions: array_split, dsplit, hsplit, split, vsplit.
- CHANGED:
- Documentation update.
- FIXED:
- Move key index offset from 48 (the visually appealing 0, 1, 2, ...) to 59 (skipping the problematic 58 ':').
- FIXED:
- Numpy function: tile (sourced not added in 0.1.3).
- ADDED:
- More documentation.
- Numpy functions: transpose, tile.
- CHANGED:
- Rename function arg {indeterminants -> names} (all over the place).
- ADDED:
- CI tests for the root readme.
- New Numpoly logo.
- Introduction chapter added to Sphinx.
- Numpy functions: choose, reshape.
- CHANGED:
- Collection of global constant moved into common dictionary.
- CHANGED:
- Small documentation update.
- ADDED:
- Support for alpha, beta, rc, dev, post releases.
- Validate tags against install version.
- Polynomial function: decompose.
- CHANGED:
- Change string representation to display polynomial by insertion order (affecting a lot of examples).
- ADDED:
- Global constants added for manipulating string representation.
- CHANGED:
- monomial: reorder args such that indeterminants argument is at the end.
- ADDED:
- Include Sphinx docs in CircleCI testing.
- Add Construct chapter to Sphinx.
- Numpy function additions: repeat.
- CHANGED:
- Rename toarray -> tonumpy, as_ndarray -> values (function -> property).
- ADDED:
- Documentation update: * Introduction to ndpoly baseclass added. * Polynomial function collection. * Enforce complete function list through sphinx_automodapi. * Read-the-docs deployment configuration.
- ndpoly method: as_ndarray.
- Numpy function: stack.
- CHANGED:
- Remove functions mappings between exponents and keys in favor of in-line solution.
- FIXED:
- Bugfixes and code cleanups for concatenate, *stack and multiplications.
- ADDED:
- First iteration Sphinx docs.
- Increased testing coverage.
- Numpy function additions: atleast_1d, atleast_2d, atleast_3d, ceil, floor, dstack, hstack, vstack.
- CHANGED:
- CircleCI cleanup: limited py27 and full py37 testing only.
- ADDED:
- Add align_dtype to alignment process.
- CHANGED:
- Recast dtype support in ndpoly.__call__ when input is other format than internal one.
- ADDED:
- Numpy functions: prod, moveaxis.
- CHANGED:
- Move testing dispatching to conftest.py.
- Testing polish.
- ADDED:
- Testing of alignment.
- Numpy function additions: allclose, isclose, isfinite, mean.
- CHANGED:
- Split testing suite into py2 and py3 (as py3 supports full dispatching, and py2 does not).
- FIXED:
- Variable name typo fixes.
- ADDED:
- Linting to CircleCI checks.
- simple_dispatch function to unify the backend for the most simplest numpy functions.
- Support for numpy reduce and accumulate mappings.
- ndpoly methods: from_attributes, round (likely needed because of numpy bug).
- Numpy functions: logical_and, rind, square.
- CHANGED:
- Some code clean-up of alignment.
- Refactor constructions functions.
- Renamings: ndpoly.{_exponents -> keys}, ndpoly.{_indeterminants -> names}, numpy.{clean_polynomial_attributes -> clean_attributes}
- ADDED:
- Polynomial functions: aspolynomial.
- Numpy functions: around, common_type, inner, logical_or.
- CHANGED:
- Functions for mapping between Tuple[int, ...] and str for dealing with exponents, instead of using exposed maps.
- Split array functions into one-file-per-function.
- ADDED:
- README with example usage, pypi-version badge, Q&A.
- ndpoly methods: isconstant, toarray.
- ADDED:
- Rudimentary alignment of shape, indeterminants and exponents.
- Numpoly baseclass ndpoly with basic call functionality and interface for dealing with numpy interoperability.
- Numpy functions: absolute, add, any, all, array_repr, array_str, concatenate, cumsum, divide, equal, floor_divide, multiply, negative, not_equal, outer, positive, power, subtract, sum.
- Polynomial functions: diff, gradient, hessian, to_array, to_sympy, to_string, monomial, symbols.