The Z3 source code is effectively compiled into two completely separate
objects: the z3 binary file, and the libz3.so library -- but the binary is not
linked against the shared library, it simply incorporates all of the object
files. The Z3 code base results in an ~25MB object on x86_64-linux. As a
result, splitting bin/ and lib/ results in a 50% reduction in closure size.
(The include/ directory is also surprisingly large at .5MB...)
This also splits the python API into a completely separate .python attribute,
as well.
Signed-off-by: Austin Seipp <aseipp@pobox.com>
These have been submitted upstream,
but seconds before writing this message
so naturally no upstream response "yet" :).
Regardless of response, fetch patches
from the corresponding PR's for context
and of course hopefully they'll
be included in next version.
Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools.
This update was made based on information from https://repology.org/metapackage/clingo/versions.
Version release notes (from GitHub):
# Packages
- The easiest way to obtain Python enabled clingo packages is using [Anaconda][ana]. Packages are available in the [Potassco channel][pch]. First [install either Anaconda or Miniconda][ins] and then run: `conda install -c potassco clingo`.
- Packages for clingo are available in the Linux distributions [Debian][deb], [Ubuntu][ubu], and [Arch Linux (AUR)][aur].
- For Mac OS X, clingo packages are available in [homebrew][hbr] and [macports][mac].
# Changes
* change C API to use numeric instead of symbolic literals
* affects assumptions and assigning/releasing externals (breaks backward compatibility)
* added overloads to C++, python and lua API to support both numeric and symbolic version (preserves backward compatibility for most code)
* the python, C and C++ APIs now allow for customizing clingo by implementing a custom main function but reusing the rest of the application including the standard output
* add API function to detect conflicting programs
* add message logger to python and lua interface
* add support for primes in the beginning of identifiers and variable names
* add per solver registration of watches during propagator initialization
* add a directive to selectivel suppress undefined atom warnings
* add support for user defined statistics
* add _to_c functions for python API to be able to call C functions from python
* only create ground representations for requested program parts when grounding (#71)
* improve program observer (#19)
* support for binary, octal, and hexadecimal numbers (#65)
* the backend has to be opened/closed now
* release python's GIL while grounding (#82)
* TruthValue.{True,False} becomes TruthValue.{\_True,\_False} in python API
* improve API and it's documentation
[deb]: https://www.debian.org/
[ubu]: https://www.ubuntu.com/
[aur]: https://aur.archlinux.org/
[hbr]: https://brew.sh/
[mac]: https://www.macports.org/
[ana]: https://conda.io
[pch]: https://anaconda.org/potassco/clingo
[ins]: https://conda.io/docs/user-guide/install/index.html
These checks were done:
- built on NixOS
- /nix/store/484fg7w1fr5xh2avc4g7811mxq3v3p9x-clingo-5.3.0/bin/lpconvert passed the binary check.
- /nix/store/484fg7w1fr5xh2avc4g7811mxq3v3p9x-clingo-5.3.0/bin/clasp passed the binary check.
- /nix/store/484fg7w1fr5xh2avc4g7811mxq3v3p9x-clingo-5.3.0/bin/reify passed the binary check.
- /nix/store/484fg7w1fr5xh2avc4g7811mxq3v3p9x-clingo-5.3.0/bin/gringo passed the binary check.
- /nix/store/484fg7w1fr5xh2avc4g7811mxq3v3p9x-clingo-5.3.0/bin/clingo passed the binary check.
- 5 of 5 passed binary check by having a zero exit code.
- 0 of 5 passed binary check by having the new version present in output.
- found 5.3.0 with grep in /nix/store/484fg7w1fr5xh2avc4g7811mxq3v3p9x-clingo-5.3.0
- directory tree listing: https://gist.github.com/bba2eaf1d132fbdd88a2710a6030c419
- du listing: https://gist.github.com/230340bfa02557290a60cfc6d2e7e977
* treewide: http -> https sources
This updates the source urls of all top-level packages from http to
https where possible.
* buildtorrent: fix url and tab -> spaces