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.jl
can now be used withCxxWrap
0.10.1 or laterPolymake.jl
usesLoadFlint.jl
and latestSingularBuilder
New features
- documentation strings of all
polymake
functions 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
libpolymake
no longer requires GLIBCXX_3.4.26, i.e.Polymake.jl
is compatible with libstdc++ shipped by julia, even when using very modern Linux systems (big thanks to Max Horn for investigating!)polymake
doesn’t grab all interrupts, so afterusing Polymake
one can still Ctrl^C to interrupt julia. However…
Known Bugs:
- a Ctrl^C interrupt issued during computations in
polymake
may 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.