<pre style='margin:0'>
Marius Schamschula (Schamschula) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/cb16e65f73067480e893c4d6766959e6fc11e51f">https://github.com/macports/macports-ports/commit/cb16e65f73067480e893c4d6766959e6fc11e51f</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new cb16e65f730 octave-symbolic: fix incompatitibility with py-sympy > 1.5.1
</span>cb16e65f730 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit cb16e65f73067480e893c4d6766959e6fc11e51f
</span>Author: Marius Schamschula <mps@macports.org>
AuthorDate: Sun Jan 30 06:43:11 2022 -0600

<span style='display:block; white-space:pre;color:#404040;'>    octave-symbolic: fix incompatitibility with py-sympy > 1.5.1
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    update Python variants
</span>---
 math/octave-symbolic/Portfile        | 41 +++++++++++++++-----
 math/octave-symbolic/files/1051.diff | 73 ++++++++++++++++++++++++++++++++++++
 2 files changed, 105 insertions(+), 9 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/octave-symbolic/Portfile b/math/octave-symbolic/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 91b44c15897..5a8e8124a7e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/math/octave-symbolic/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/octave-symbolic/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,7 +4,7 @@ PortSystem          1.0
</span> PortGroup           octave 1.0
 
 octave.setup        symbolic 2.9.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            3
</span> platforms           darwin
 license             GPL-3
 maintainers         {mps @Schamschula} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,17 +18,21 @@ checksums           rmd160  c2f03a1e09bc0e8f05d98b0f522b8d20e422be73 \
</span> 
 supported_archs     noarch
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python36 conflicts python37 python38 python39 description {Use Python 3.6 SymPy} {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python37 conflicts python36 python38 python39 description {Use Python 3.7 SymPy} {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python38 conflicts python36 python37 python39 description {Use Python 3.8 SymPy} {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant python39 conflicts python37 python36 python38 description {Use Python 3.9 SymPy} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python37 conflicts python38 python39 python310 description {Use Python 3.7 SymPy} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python38 conflicts python37 python39 python310 description {Use Python 3.8 SymPy} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python39 conflicts python37 python38 python310 description {Use Python 3.9 SymPy} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant python310 conflicts python37 python38 python39 description {Use Python 3.6 SymPy} {}
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {![variant_isset python36] &&![variant_isset python37] && ![variant_isset python39]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set python.branch   3.9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {![variant_isset python36] &&![variant_isset python37] && ![variant_isset python310]} {
</span>     default_variants +python39
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach pv {39 38 37 36} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach pv {310 39 38 37} {
</span>     if {[variant_isset python${pv}]} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        set python.branch [string index ${pv} 0].[string range ${pv} 1 end]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>         depends_lib-append  \
                     port:python${pv} \
                     port:py${pv}-sympy
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,10 +40,29 @@ foreach pv {39 38 37 36} {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# enable sympy > 1.5.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# see https://octave.discourse.group/t/symbolic-package-in-macos/1178
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# and https://github.com/cbm755/octsympy/pull/1051
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   1051.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # see https://trac.macports.org/ticket/55361
<span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append patch-inst-private-defaultpython.m.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-inst-private-defaultpython.m.diff
</span> post-patch {
     reinplace \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        "s|__MACPORTS_PYTHON__|${configure.python}|g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        "s|__MACPORTS_PYTHON__|${prefix}/bin/python${python.branch}           |g" \
</span>         ${worksrcpath}/inst/private/defaultpython.m
 }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Once you have loaded the symbolic package
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pkg load symbolic
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+in octave, you need to set the python executable:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+setenv PYTHON python${python.branch}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+You can double check your installation by running
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+sympref diagnose
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/octave-symbolic/files/1051.diff b/math/octave-symbolic/files/1051.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..885bc52709c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/octave-symbolic/files/1051.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,73 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/inst/private/check_and_convert.m b/inst/private/check_and_convert.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 928cde14..9d951a8e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- inst/private/check_and_convert.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ inst/private/check_and_convert.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -30,8 +30,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     sp = py.sympy;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     _sym = py.tuple({sp.Basic, sp.MatrixBase});
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    string_types = sp.compatibility.string_types;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    integer_types = sp.compatibility.integer_types;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    string_types = py.str;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    integer_types = py.int;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/inst/private/python_header.py b/inst/private/python_header.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2027f978..f2be7600 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- inst/private/python_header.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ inst/private/python_header.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,6 +9,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ from __future__ import division
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import sys
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++from sympy.core.compatibility import unicode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sys.ps1 = ""; sys.ps2 = ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -50,7 +53,8 @@ def echo_exception_stdout(mystr):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     import collections
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     from re import split
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # patch pretty printer, issue #952
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    _mypp = pretty.__globals__["PrettyPrinter"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    from sympy.printing.pretty.pretty import PrettyPrinter
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    _mypp = PrettyPrinter
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def _my_rev_print(cls, f, **kwargs):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         g = f.func(*reversed(f.args), evaluate=False)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return cls._print_Function(g, **kwargs)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -184,7 +188,8 @@ def octoutput(x, et):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             c = ET.SubElement(et, "list")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             for y in x:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 octoutput(y, c)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        elif isinstance(x, sp.compatibility.integer_types):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        elif isinstance(x, int) or \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++             (sys.version_info[0] <= 2 and isinstance(x, long)):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             a = ET.SubElement(et, "item")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             f = ET.SubElement(a, "f")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             f.text = str(OCTCODE_INT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -205,7 +210,8 @@ def octoutput(x, et):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             f.text = d2hex(x.real)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             f = ET.SubElement(a, "f")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             f.text = d2hex(x.imag)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        elif isinstance(x, sp.compatibility.string_types):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        elif isinstance(x, str) or \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++             (sys.version_info[0] <= 2 and isinstance(x, unicode)):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             a = ET.SubElement(et, "item")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             f = ET.SubElement(a, "f")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             f.text = str(OCTCODE_STR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/inst/private/python_ipc_native.m b/inst/private/python_ipc_native.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9da92f07..f1ba52cb 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- inst/private/python_ipc_native.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ inst/private/python_ipc_native.m
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -82,7 +82,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     'import collections'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     'from re import split'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     '# patch pretty printer, issue #952'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                    '_mypp = pretty.__globals__["PrettyPrinter"]'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    'from sympy.printing.pretty.pretty import PrettyPrinter'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                    '_mypp = PrettyPrinter'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     'def _my_rev_print(cls, f, **kwargs):'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     '    g = f.func(*reversed(f.args), evaluate=False)'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                     '    return cls._print_Function(g, **kwargs)'
</span></pre><pre style='margin:0'>

</pre>