Minizinc

Latest version: v0.9.0

Safety actively analyzes 613777 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.9.0

-------------------

Added
^^^^^

- Add support for MiniZinc tuple and record types.

Changed
^^^^^^^

- Minimum supported version of MiniZinc has increased from 2.5.0 to 2.5.4.

Fixed
^^^^^

- Ensure time events send using the JSON stream are parsed as ``timedelta``
objects.
- Pass JSON definitions in using JSON instead of generated DZN files..

0.8.0

-------------------

Removed
^^^^^^^

- **BREAKING:** The project no longer supports Python 3.6. This change will make
it easier to manage MiniZinc Python's build system.

Fixed
^^^^^

- Fix the conversion when using a Python enumerated type in MiniZinc that uses
non-ascii identifiers.

0.7.0

-------------------

Added
^^^^^

- Add additional ``Driver.executable`` property to safely access the location
of the executable used by the ``Driver`` object.
- Support for input and output of complex MiniZinc enumerated types, such as
anonymous enumerated types or enumerated types using constructor functions.

Removed
^^^^^^^

- **BREAKING:** The project no longer contains the (uncompleted) direct library
connection to libminizinc. With this change come some simplications in methods of
relocated from ``CLIDriver`` and ``CLIInstance``, and the move of ``find_driver`` to
``Driver.find``.

Fixed
^^^^^

- Store statistics as a string when incorrectly reported by the solver.
- Fix the conversion of statistics when using MiniZinc 2.6+

0.6.0

-------------------

Added
^^^^^

- Add support for the usage of JSON Stream output when using MiniZinc 2.6+

Fixed
^^^^^

- Do not raise error about unsupported solver flags when MiniZinc driver would
not raise an error.
- Fix warnings caused by unterminated coroutines when using the asynchronous
iterators

0.5.0

-------------------

Added
^^^^^

- Add (generated) ``__version__`` field to the package to abide by the PEP
recommendations.
- Add support for using NumPy types to instantiate Models. (``np.array`` and
any type that falls under ``np.generic``).
- Add ``available_solvers`` method to the ``Driver`` objects to explicitly
report the available solvers according to the current environment.
- Add support for Python 3.10.

Changed
^^^^^^^

- **BREAKING:** Update minimal supported MiniZinc version to 2.5.0 to ensure
full functionality.
- Remove the (additional) hard time-out in from the CLI driver. MiniZinc should
correctly enforce set time limit.
- ``Solver.lookup`` now has an extra ``refresh`` argument to signal whether
the driver should refresh the found solver configurations.

Fixed
^^^^^

- Always close temporary files before removing them, so that if an exception is
raised while a file is still open, it gets removed correctly on Windows.
- Set the required process creation flags on Windows to allow MiniZinc to
terminate its subprocesses correctly.
- Pass ``--intermediate-solutions`` flag when ``-i`` or ``-a`` is supported by
the solver.
- Pygments parser generated by Iro did not contain the correct ``pop`` rules.
The parser was manually edited to work correctly, but we can no longer
generate is automatically unless the bug in upstream Iro is resolved.
- Resolve a syntax error (a missing semicolon) in the meta-heuristics example in
the documentation.
- Correctly pass the ``-O0`` flag to the CLI when ``optimisation_level`` is set
to zero.
- Set type of MiniZinc annotation output type `ann` to `str` in Python in
accordance with the JSON output format.

0.4.2

-------------------

Fixed
^^^^^

- Terminate the MiniZinc process when stopping early (instead of killing it).
This allows MiniZinc to correctly stop any solver processes.

Changed
^^^^^^^

- Revert change from 0.4.1 where enumerated types unknown to Python would be
made stored as anonymous enumerations. Interoperability between the MiniZinc
driver and the MiniZinc Python has instead changed to allow JSON strings as
valid input for enumerated types. (required MiniZinc 2.5.3)

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.