diff --git a/README.md b/README.md index f40f80f4..124cb610 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# libsemigroups_pybind11 - Version 0.10.0 +# libsemigroups_pybind11 - Version 0.10.1 ## python bindings for the C++ library libsemigroups @@ -82,10 +82,10 @@ Assuming that you have `libsemigroups` installed you can install To build `libsemigroups_pybind11` from a release archive: - curl -L -O https://github.com/libsemigroups/libsemigroups_pybind11/releases/latest/download/libsemigroups_pybind11-0.10.0.tar.gz - tar -xf libsemigroups_pybind11-0.10.0.tar.gz - rm -f libsemigroups_pybind11-0.10.0.tar.gz - cd libsemigroups_pybind11-0.10.0 + curl -L -O https://github.com/libsemigroups/libsemigroups_pybind11/releases/latest/download/libsemigroups_pybind11-0.10.1.tar.gz + tar -xf libsemigroups_pybind11-0.10.1.tar.gz + rm -f libsemigroups_pybind11-0.10.1.tar.gz + cd libsemigroups_pybind11-0.10.1 pip install . ## Building the documentation diff --git a/docs/source/api/fpsemi.rst b/docs/source/api/fpsemi.rst index 2b94ed33..b7c4a77b 100644 --- a/docs/source/api/fpsemi.rst +++ b/docs/source/api/fpsemi.rst @@ -27,7 +27,7 @@ algorithms, such as :class:`.ToddCoxeter` and :class:`.KnuthBendix`. >>> S.set_alphabet(3) >>> S.set_identity(0) >>> S.add_rule([1, 2], [0]) - >>> S.is_obviously_infinite() + >>> S.is_obviously_infinite() True .. autoclass:: FpSemigroup diff --git a/docs/source/api/kambites.rst b/docs/source/api/kambites.rst index 3310a931..90f5dcef 100644 --- a/docs/source/api/kambites.rst +++ b/docs/source/api/kambites.rst @@ -21,7 +21,7 @@ overlap monoids by Kambites_ and the authors of ``libsemigroups``. >>> k.set_alphabet("abcd") >>> k.add_rule("abcd", "accca"); >>> k.number_of_pieces(0) == POSITIVE_INFINITY - True + True >>> k.number_of_pieces(1) 4 >>> k.small_overlap_class() diff --git a/docs/source/api/toddcoxeter.rst b/docs/source/api/toddcoxeter.rst index ef69b66b..7ec2cefc 100644 --- a/docs/source/api/toddcoxeter.rst +++ b/docs/source/api/toddcoxeter.rst @@ -54,7 +54,7 @@ of (any version of) the Todd-Coxeter algorithm. >>> tc.add_pair([2, 3], [0]) >>> tc.add_pair([2, 2, 2], [0]) >>> tc.add_pair([1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2], [0]) - >>> tc.add_pair([1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, + >>> tc.add_pair([1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, ... 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3, 1, 2, 1, 3], [0]) >>> tc.strategy(ToddCoxeter.strategy_options.hlt).standardize(False) diff --git a/docs/source/changelog.rst b/docs/source/changelog.rst index 4944e5af..b861196b 100644 --- a/docs/source/changelog.rst +++ b/docs/source/changelog.rst @@ -7,6 +7,12 @@ Changelog ========= +v0.10.1 (released 29/03/2023) +----------------------------- + +This release increases the required version of ``libsemigroups`` to v2.7.1, +which contains some bug fixes. + v0.10.0 (released 23/03/2023) ----------------------------- @@ -14,7 +20,7 @@ This is a minor release adding some new functionality from ``libsemigroups``: * ukkonen: add support for ``Ukkonen`` + helpers by @james-d-mitchell in https://github.com/libsemigroups/libsemigroups_pybind11/pull/132 -* present: add further manip. funcs by @james-d-mitchell in +* present: add further manip. funcs by @james-d-mitchell in https://github.com/libsemigroups/libsemigroups_pybind11/pull/136 v0.9.2 (released 22/03/2023) diff --git a/docs/source/conf.py b/docs/source/conf.py index b9290acb..02582ab0 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -27,8 +27,8 @@ project = u"libsemigroups_pybind11" copyright = u"2021-2023, J. D. Mitchell + Maria Tsalakou" author = u"J. D. Mitchell + Maria Tsalakou" -version = u"0.10.0" -release = u"0.10.0" +version = u"0.10.1" +release = u"0.10.1" language = "python" exclude_patterns = ["_build"] pygments_style = "sphinx" diff --git a/docs/source/index.rst b/docs/source/index.rst index 245eedd2..91c19d04 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -1,4 +1,4 @@ -libsemigroups_pybind11 - Version 0.10.0 +libsemigroups_pybind11 - Version 0.10.1 ======================================= python bindings for the C++ library libsemigroups diff --git a/docs/source/install.rst b/docs/source/install.rst index b84c74eb..b376ffea 100644 --- a/docs/source/install.rst +++ b/docs/source/install.rst @@ -4,7 +4,7 @@ The full license is in the file LICENSE, distributed with this software. -.. |libsemigroups-pybind11-version| replace:: 0.10.0 +.. |libsemigroups-pybind11-version| replace:: 0.10.1 Installation ============ diff --git a/docs/templates/api/matrix.rst b/docs/templates/api/matrix.rst index 4ee1d25f..f38e6039 100644 --- a/docs/templates/api/matrix.rst +++ b/docs/templates/api/matrix.rst @@ -14,7 +14,7 @@ This page contains the documentation for functionality in ``libsemigroups_pybind11`` for :py:class:`{{Mat}}`. -.. autosummary:: +.. autosummary:: :nosignatures: ~{{Mat}} diff --git a/docs/templates/api/transf.rst b/docs/templates/api/transf.rst index ea47015e..dd27ff06 100644 --- a/docs/templates/api/transf.rst +++ b/docs/templates/api/transf.rst @@ -3,7 +3,7 @@ Distributed under the terms of the GPL license version 3. The full license is in the file LICENSE, distributed with this software. - + This file was auto-generated from the template in docs/templates/api/transf.rst DO NOT EDIT this file directly @@ -21,11 +21,11 @@ internal classes. These internal types are optimised for the number of points in the image of the specified {{LongNameNoCap}} with fewer points requiring less space per point. If ``libsemigroups`` has been compiled with ``HPCombi`` enabled, then the objects returned by :py:class:`{{Type}}` use the SSE and AVX -instruction sets are used for very fast manipulation. +instruction sets are used for very fast manipulation. While :py:class:`{{Type}}` is not a class the objects returned by :py:class:`{{Type}}` have identical methods, and so we document -:py:class:`{{Type}}` as if it was a class. +:py:class:`{{Type}}` as if it was a class. .. py:class:: {{Type}} @@ -37,7 +37,7 @@ While :py:class:`{{Type}}` is not a class the objects returned by as an array of the images :math:`\{(0)f,(1)f,\ldots,(n−1)f\}`. .. py:method:: __eq__(self: {{Type}}, that: {{Type}}) -> bool - + Equality comparison. Returns ``True`` if ``self`` equals ``that`` by comparing their @@ -47,16 +47,16 @@ While :py:class:`{{Type}}` is not a class the objects returned by :type that: {{Type}} :returns: A ``bool``. - + .. py:method:: __getitem__(self: {{Type}}, i: int) -> int - + Returns the image of ``i``. :param i: the value whose image is sought. :type i: int :return: An ``int``. - + .. py:method:: __lt__(self: {{Type}}, that: {{Type}}) -> bool Less than comparison. @@ -68,8 +68,8 @@ While :py:class:`{{Type}}` is not a class the objects returned by :type that: {{Type}} :returns: A ``bool``. - - .. py:method:: __mul__(self: {{Type}}, that: {{Type}}) -> {{Type}} + + .. py:method:: __mul__(self: {{Type}}, that: {{Type}}) -> {{Type}} Right multiply ``self`` by ``that``. @@ -77,7 +77,7 @@ While :py:class:`{{Type}}` is not a class the objects returned by :type that: {{Type}} :returns: A :py:class:`{{Type}}`. - + .. py:method:: degree(self: {{Type}}) -> int Returns the degree. @@ -87,7 +87,7 @@ While :py:class:`{{Type}}` is not a class the objects returned by :Parameters: ``None`` :return: An ``int``. - + .. py:method:: identity(self: {{Type}}) -> int Returns the identity {{LongNameNoCap}} on :py:meth:`degree` points. @@ -111,7 +111,7 @@ While :py:class:`{{Type}}` is not a class the objects returned by :rtype: {{Type}} :raises RuntimeError: if any value in ``l`` exceeds ``len(l)``. - + .. py:staticmethod:: make_identity(M: int) -> {{Type}} Returns the identity {{LongNameNoCap}} on the given number of @@ -120,9 +120,9 @@ While :py:class:`{{Type}}` is not a class the objects returned by :Parameters: **M** (int) - the degree. :Returns: A value of type :py:class:`{{Type}}`. - + .. py:method:: product_inplace(self: {{Type}}, x: {{Type}}, y: {{Type}}) -> None - + Multiply two {{LongNameNoCap}}s and store the product in ``self``. :param x: a {{LongNameNoCap}}. @@ -131,7 +131,7 @@ While :py:class:`{{Type}}` is not a class the objects returned by :type y: {{Type}} :return: (None) - + .. py:method:: rank(self: {{Type}}) -> int Returns the number of distinct image values. @@ -141,14 +141,13 @@ While :py:class:`{{Type}}` is not a class the objects returned by :Parameters: None :return: An ``int``. - + .. py:method:: images(self: {{Type}}) -> Iterator Returns an iterator pointing at the first image value. :Parameters: None :return: An iterator. - {% if Type == "PPerm" or Type == "Perm" -%} .. py:method:: inverse(self: {{Type}}) -> {{Type}} @@ -157,9 +156,7 @@ While :py:class:`{{Type}}` is not a class the objects returned by :Parameters: None :Returns: A :py:class:`{{Type}}`. {% endif %} - {% if Type == "PPerm" -%} - .. py:staticmethod:: make(dom: List[int], ran: List[int], M: int) -> {{Type}} :noindex: @@ -186,14 +183,14 @@ While :py:class:`{{Type}}` is not a class the objects returned by :Parameters: None. :return: A ``{{Type}}``. - + .. py:method:: right_one(self: {{Type}}) -> {{Type}} Returns the right one of this. :Parameters: None. :return: A ``{{Type}}``. - + .. py:method:: undef(self: {{Type}}) -> int Returns the integer value used to represent undefined. @@ -201,5 +198,4 @@ While :py:class:`{{Type}}` is not a class the objects returned by :Parameters: None. :Returns: An ``int``. - {% endif %} diff --git a/etc/make-doc.sh b/etc/make-doc.sh index ba33503c..510e69dd 100755 --- a/etc/make-doc.sh +++ b/etc/make-doc.sh @@ -8,7 +8,7 @@ else fi $PYTHON - <