Python-graphblas

Latest version: v2024.2.0

Safety actively analyzes 681881 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 18 of 21

1.3.11

Lots of big changes and new additions this release!

- Expressions can be used as values
- `expr.new()` is no longer necessary (but is still recommended)
- Methods like `expr.apply(op)` also work
- Indexing `expr[indices]` does not yet work, nor do methods that mutate values
- For example, `A.ewise_mult(A.mxm(A.T).new()).new().reduce_scalar().new()` can now be written as `A.ewise_mult(A.mxm(A.T)).reduce_scalar()`
- Add aggregators to `grblas.agg` that can be used in reductions!
- For example, `matrix.reduce_rows(agg.argmin)`
- Current aggregators: `L0norm, L1norm, L2norm, Linfnorm, all, any, any_value, argmax, argmin, bitwise_all, bitwise_any, count, count_nonzero, count_zero, exists, first, first_index, geometric_mean, harmonic_mean, hypot, last, last_index, logaddexp, logaddexp2, max, mean, min, peak_to_peak, prod, root_mean_square, stdp, stds, sum, sum_of_inverses, sum_of_squares, varp, vars`
- Add prefix scan (such as cumsum and cumprod) that works with any monoid
- `vector.scan(monoid)`
- `matrix.scan_rows(monoid)`
- `matrix.scan_columns(monoid)`
- Add `operator.get_semiring(monoid, binaryop)` convenience function
- Add `x.ss.build_scalar(...)` for Vector and Matrix objects
- Add "coo" as import/export option
- Updated/fixed `to_pygraphblas` and `from_pygraphblas`

1.3.10

- Add Vector inner and outer products
- `v.inner(v, plus_times)`
- `plus_times(v v)`
- Fix computing `A.ss.head()` on iso-valued objects

1.3.9

- Update to SuiteSparse:GraphBLAS 5.1.3
- Add `x.ss.is_iso` to Vector and Matrix objects to indicate whether they are iso-valued

1.3.8

- Update to SuiteSparse:GraphBLAS 5.1.2.
- Add `x.ss.pack` and `x.ss.unpack_*` methods to Vector and Matrix objects that mirror import/export.
- Add `x.ss.nbytes` to get the number of bytes used by Vector and Matrix objects.

1.3.7

- Update to SuiteSparse:GraphBLAS 5.0.3
- Add new SuiteSparse GxB functions:
- `Matrix.ss.diag`, `Vector.ss.diag`, and `grblas.ss.diag`
- `Matrix.ss.split`
- `Matrix.ss.concat` and `grblas.ss.concat`
- Add sane coercions to operators such as using `exp` on integer dtypes.
- Allow Scalars to be used in indexing
- Allow Scalars to be used when constructing numpy arrays
- Fix dtypes.unity for complex numbers (all pairs now match numpy behavior)
- Remove `"pygraphblas"` backend, as both libraries will use `python-suitesparse-graphblas` and be compatible

1.3.6

- Update `grblas` to be a pure Python package by depending on `suitesparse-graphblas`!
- Rename `div` to `cdiv` in semirings and add `truediv` and `floordiv` in semirings.
- Fix monoid attribute of semirings with `land`, `lor`, and `lxor` to coerce properly.
- Don't allow expressions like `v[w]`, which previously iterated over the values of Vector `w`.
- Don't allow vectors or matrices to be directly cast to numpy arrays such as `np.array(v)`.
- Direct the users to e.g. `v.to_values()` instead.
- Support `dup_op=` keyword argument when converting from scipy.sparse and MatrixMarket formats.
- Improve recording by using `name=""` for scalars created during operations.
- Fix the recorder in Jupyter notebooks (again)

Page 18 of 21

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.