Releases: symengine/symengine
Releases · symengine/symengine
v0.14.0
What's Changed
Breaking Changes
- CMake will link to LLVM dylib by default if LLVM_LINK_LLVM_DYLIB is set. Use WITH_LLVM_DYLIB to override. By @mgorny in #2075
Bug Fixes
- Fix latex printing for abs and variables with _ by @isuruf in #2060
- Use nifty counter idiom for SIOF by @isuruf in #2059
- Throw exceptions on incorrect serialization inputs by @isuruf in #2064
- Avoid using mpz_init_set_si to support gmp on windows by @isuruf in #2067
- Fix serialization for shared pointers by @isuruf in #2071
- Remove pessimizing/redundant moves by @isuruf in #2061
- Fix boost-cpp version in build script by @rikardn in #2077
- Support all standard values of CMAKE_BUILD_TYPE by @mgorny in #2073
- CMake: Bump minimum version by @jschueller in #2082
- CMake: Set INSTALL_CMAKE_DIR as STRING by @jschueller in #2083
- Bump version to 0.14.0 by @isuruf in #2087
New Features
Contributors
- Isuru Fernando
- Björn Dahlgren
- Michał Górny
- Rikard Nordgren
- Julien Schueller
Full Changelog: v0.13.0...v0.14.0
SymEngine v0.13.0
- Bump SOVERSION - #2042
- Add Parser support for sign - #2045
- Make double parsing locale independent (and faster) - #1993
- Fix bug in transpose of ImmutableDenseMatrix - #2036
- Fix as_numer_denom test - #2041
- Fix unicode printer segfault - #2031
People who contributed to the release:
- Liam Keegan
- Rubén Rincón Blanco
- Björn Dahlgren
- Pavel Novichkov
- Isuru Fernando
- Einav Schwartz
v0.12.0
What's Changed
- Fix (negative_integer)**rational by @isuruf in #1998
- Use
unique_ptr
forllvm::LLVMContext
andllvm::ExecutionEngine
by @lkeegan in #1995 - Fix Markdown error in README.md by @siefkenj in #2001
- Update llvm_double to work with llvm 18 by @lkeegan in #2007
- Update test_lambda_double.cpp by @bjodah in #2010
- Fix deserializing MPFR by @isuruf in #2013
- CI: Use the old Intel based macOS runners by @certik in #2019
- Added support for sign function in the cwrapper by @anutosh491 in #2016
- Adding support for basic_as_two_terms by @anutosh491 in #2024
New Contributors
Full Changelog: v0.11.2...v0.12.0
SymEngine v0.11.2
What's Changed
Bug Fixes
- Support Flint3 by @isuruf in #1985, #1988
- Minor fix for SBML printing of piecewise function by @lkeegan in #1991
- Fix deprecated function declarations by @thilinarmtb in #1977
- Fix doc rendering by @HaoZeke in #1968
- Fix README.md: Change from Travis-CI to GitHub Actions by @cclauss in #1986
Contributors
- Rohit Goswami
- Thilina Bandara Rathnayake
- Ondřej Čertík
- Isuru Fernando
- Christian Clauss
- Liam Keegan
Full Changelog: v0.11.1...v0.11.2
v0.11.1
v0.11.0
What's Changed
- In subs, check if coeff is a number and use a faster code path by @isuruf in #1962
- use new llvm pass manager instead of legacy pass manager by @lkeegan in #1963
- Check that INTEGER_CLASS=boostmp is not used with FLINT, ARB or MPFR by @autoantwort in #1971
- Exposing the
has_symbol
function through cwrapper.h by @anutosh491 in #1978
New Contributors
- @autoantwort made their first contribution in #1971
- @anutosh491 made their first contribution in #1978
Full Changelog: v0.10.1...v0.11.0
SymEngine v0.10.1
This release fixes some compilation failures due to build system issues.
No new features or bug fixes in the release.
SymEngine v0.10.0
Build system changes
- cmake: fix pthread detection - #1911
New Features:
- Add support for LLVM 16 - #1954
- Add support for Matrix expressions - #1918
- Add Intersection class - #1893
- Add functions to convert to and from hex strings - #1936
- Add is_real to CSRMatrix - #1917
- Add sympy names for Eq, Lt, etc in parsing - #1930
- Support Mul and Pow in is_real - #1923
- Refine for min and max - #1814
- Refine interval from -inf to +inf to Reals - #1894
- Support NaN in LLVM- and Lambda visitors - #1888
- Canonicalize Piecewise to remove redundant conditions - #1890
Bug Fixes
- Handle Piecewise in TransformVisitor (for e.g. cse) - #1953
- Fix run-time warnings when using llvm 15 - #1945
- Handle denominator of zero explicitly for boost - #1942
- Use the correct free function when printing GMP numbers - #1940
- Fix (-x)**I - #1915
- Fix complex double serialization - #1913
- Fix substituting I - #1916
- Fix Mul canonical to match that of Pow canonical - #1900
People who contributed to the release:
- Rikard Nordgren
- Björn Dahlgren
- Isuru Fernando
- Brandon Bocklund
- Jialin Ma
- Sam James
- Gabriel Baraldi
- Liam Keegan
- Christian Gould
SymEngine v0.9.0
Build system changes
- Cereal is a hard dependency now. By default, the vendored copy
is used, but cmake option WITH_SYSTEM_CEREAL can be turned on
to use an external installation.
New Features
- Serialization using cereal - #1704, #1867, #1871
- Support Piecewise in parser - #1882
- Add sets Naturals and Naturals0 - #1874
- Add Tuple class - #1873
- Product of n terms in cwrapper - #1880
- Refine
x**n**k => x**(n*k)
in certain cases - #1863 - Support set of complex numbers by assumptions - #1841
- Refine log of integers which are perfect powers - #1864
- Add function to decompose perfect powers - #1862
- Add logarithm power rule to refine - #1861
- Add sets to cwrapper - #1845
- Add is_algebraic and is_transcendental - #1819
- First version of simplify - #1831
- Add ceiling and floor to cwrapper - #1851
- Add polygonal numbers and polygonal roots functions - #1688
- sbml parser: add support for zero arg function symbols - #1844
- Add boundary, closure and interior of Set - #1834
Bug Fixes
- Fix building docs - #1856
- Fix unicode printer for windows - #1872
- Return NaN when subs results in 0/0 - #1853
- Fixes for "static initialization order fiasco" - #1849
People who contributed to the release:
- Isuru Fernando
- Björn Dahlgren
- Rikard Nordgren
- Alec Edgington
- Liam Keegan
- Pieter Eendebak
- Rohit Goswami
- Zgoda Iu.N
SymEngine v0.8.1
Bug Fixes
- Fixes a compilation failure on MSVC2017