Polymake.jl 0.4 has been released
27 Apr 2020Polymake.jl 0.4 has been
released!
Since we’re upgrading to support CxxWrap.jl 0.10.1, we decided to bump the major
version to force compilation of libpolymake against libcxxwrap-julia.
The release has been somewhat hastened by the need for
Oscar.jl jointly working with
the newest CxxWrap.jl, so expect 0.4.1 and later minor versions rather heavy
in added features :).
Note:
We’re tracking the version of libcxxwrap-julia used, so that we can warn you
whenever executing import Pkg; Pkg.build("Polymake") is necessary, but some of the cases
might have slipped us. If you experience crashes while using Polymake try:
import Pkg; Pkg.free("CxxWrap"),import Pkg; Pkg.build("Polymake"),- filing a bug report!
Below you can find a summary of the major changes and design decision we have
taken in the development of Polymake.jl.
Happy coding,
on behalf of the polymake Team,
Marek
Changes between Polymake.jl 0.3 and 0.4
Library updates
Polymake.jlcan now be used withCxxWrap0.10.1 or laterPolymake.jlusesLoadFlint.jland latestSingularBuilder
New features
- documentation strings of all
polymakefunctions and methods was made available in julia - handling of polynomials should be much smoother
- polymake banner is suppressed when imported in
Oscar.jl
Fixed notable bugs
libpolymakeno longer requires GLIBCXX_3.4.26, i.e.Polymake.jlis compatible with libstdc++ shipped by julia, even when using very modern Linux systems (big thanks to Max Horn for investigating!)polymakedoesn’t grab all interrupts, so afterusing Polymakeone can still Ctrl^C to interrupt julia. However…
Known Bugs:
- a Ctrl^C interrupt issued during computations in
polymakemay render involved objects into incomplete state which is leads to segfault atexit(). We can not exclude silent data corruption in the process, so please DO NOT DO IT. We will be looking into a proper solution in the near future.