Skip to content

@rkaminsk rkaminsk released this Dec 6, 2020 · 132 commits to master since this release

This minor release fixes a small build issues with Python 3.8 and later.

Existing clingo 5.4.0 binaries can be reused and packages that already apply this patch do not have to be updated.

Assets 2

@rkaminsk rkaminsk released this Aug 25, 2019 · 132 commits to master since this release



  • add extension to implement custom heuristics
  • add const modifiers to C API
  • add flags to external and const statements to match API functions
  • fix python memleaks
  • make compatible with msvc 15
  • C ABI changes
    • extended propagators
  • C++ API changes
    • unify usage of ProgramBuilder and Backend
  • python API changes
    • TruthValue.{_True,_False} becomes TruthValue.{True_,False_}
    • HeuristicType.{True,False} becomes TruthValue.{True_,False_}
    • async and yield becomes async_ and yield_
  • improve python API documentation
  • use cmakes find_python module
  • update to clasp version 3.3.5
Assets 5

@rkaminsk rkaminsk released this Jun 27, 2018 · 223 commits to master since this release



  • 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
Assets 5

@rkaminsk rkaminsk released this Jun 27, 2018 · 408 commits to master since this release



  • update to clasp version 3.3.4
  • really fix --pre option
  • fix link to potassco guide (#74)
  • fix location printing (#78)
  • fix linking problems (#79)
  • fix modulo zero (#100)
  • fix web builds (#103)
  • fix addding clauses after a model has been found (#104)
  • fix python program observer bindings (#105)
  • expose exponentiation operator in APIs
  • improve python docstrings (#101, #102)
  • add option to build python and lua modules against an existing libclingo
Assets 5
Jun 27, 2018
update changelog and bump clasp

@rkaminsk rkaminsk released this Nov 6, 2017 · 433 commits to master since this release



  • update to clasp version 3.3.3
  • use GNUInstallDirs in cmake files to simplify packaging
  • fix --pre option
  • fix swapped clingo_assignment_size and clingo_assignment_max_size
  • fix docstrings
  • fix incremental mode
  • fix sup and inf in python/lua bindings
  • fix reified format term tuples
  • fix wrong use of python API (causing trouble with python 3.6)
  • fix compilation problems on 32bit linux (missing libatomic)
Assets 5

@rkaminsk rkaminsk released this Aug 4, 2017 · 457 commits to master since this release

  • update to clasp version 3.3.2
  • fix handling of istop in incmode programs
  • fix handling of undefined ** operations
  • fix preprocessing of disjunctions with undefined operations
    (regression in clingo-5)
  • fix segfault during preprocessing
    (regression in clingo-5)
Assets 5

@rkaminsk rkaminsk released this May 3, 2017 · 495 commits to master since this release

  • switch to MIT license
  • improve compatibility with abstract gringo
  • switch build system from scons to cmake
  • improve windows compatibility
  • make tests and examples python 3 compatible
  • bison and re2c are no longer required to build source releases
  • update to clasp 3.3.0
  • the CLINGOPATH environment variable can be set
    to control from where to include files in logic programs
  • propagators can add variables while solving now
  • refactor interfaces (breaking backward compatibility)
    • there is just one solve function now
    • in the C API do not pass structs by value to callbacks
      because FFIs of some languages do not support this
  • fix cleanup function
  • numerous other bugfixes not listed here
Assets 5

@rkaminsk rkaminsk released this Oct 14, 2016

  • update to clasp 3.2.1
  • add interface to add variables during propagation
  • add interface to inspect ground rules (C/C++ only)
  • add experimental interface to access clasp facade (C/C++ only)
  • fixed smodels output (--output=smodels)
Assets 6

@rkaminsk rkaminsk released this Sep 30, 2016 · 974 commits to master since this release

  • gringo is no longer released separately, instead it is part of this and upcoming clingo releases
  • cleanup of python and lua API (breaks backwards compatibility)
  • added new aspif output format replacing the old smodels format
  • added input language support for clasp features
    • #edge directives to add acyclicity constraints
    • #project directives for enumeration of projected models
    • #heuristic directives to steer clasp's search
  • added theory atoms to write aggregate like constructs
  • added stable C API documented with doxygen
  • added experimental C++ API based on C API
  • added theory propagator interface to clingo APIs
  • added support for compilation with Visual Studio 2015
  • improved data structures to reduce memory consumption on typical input
  • updated to clasp version 3.2.0 + patches
Assets 6