<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/c0c9c2d5df52ccbdac6be4836c3a0947aebcb076">https://github.com/macports/macports-ports/commit/c0c9c2d5df52ccbdac6be4836c3a0947aebcb076</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit c0c9c2d5df52ccbdac6be4836c3a0947aebcb076
</span>Author: Kirill A. Korinsky <kirill@korins.ky>
AuthorDate: Sat Dec 16 16:13:17 2023 +0100
<span style='display:block; white-space:pre;color:#404040;'> py-pathtools: add py312
</span>---
python/py-pathtools/Portfile | 7 +++++-
python/py-pathtools/files/fix-support-py312.diff | 31 ++++++++++++++++++++++++
2 files changed, 37 insertions(+), 1 deletion(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pathtools/Portfile b/python/py-pathtools/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 355df03b9f1..d42a3446feb 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pathtools/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pathtools/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -21,9 +21,14 @@ checksums rmd160 cdc2001f64f953bcff70e1dd85d2527665a12272 \
</span> sha256 7c35c5421a39bb82e58018febd90e3b6e5db34c5443aaaf742b3f33d4655f1c0 \
size 11006
<span style='display:block; white-space:pre;background:#ffe0e0;'>-python.versions 27 35 36 37 38 39 310 311
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+python.versions 27 35 36 37 38 39 310 311 312
</span>
if { ${name} ne ${subport} } {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${python.version} >= 312} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fix-support-py312.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> depends_build-append \
port:py${python.version}-setuptools
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pathtools/files/fix-support-py312.diff b/python/py-pathtools/files/fix-support-py312.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..8157fa47024
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pathtools/files/fix-support-py312.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,31 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- setup.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ setup.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -22,12 +22,25 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # THE SOFTWARE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ import os
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-import imp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++import importlib.util
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++import importlib.machinery
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ from setuptools import setup
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ PKG_DIR = 'pathtools'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-version = imp.load_source('version',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- os.path.join(PKG_DIR, 'version.py'))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# From: https://docs.python.org/3.12/whatsnew/3.12.html#removed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def load_source(modname, filename):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ loader = importlib.machinery.SourceFileLoader(modname, filename)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ spec = importlib.util.spec_from_file_location(modname, filename, loader=loader)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ module = importlib.util.module_from_spec(spec)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # The module is always executed and not cached in sys.modules.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # Uncomment the following line to cache the module.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # sys.modules[module.__name__] = module
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ loader.exec_module(module)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return module
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++version = load_source('version',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ os.path.join(PKG_DIR, 'version.py'))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ def read_file(filename):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ """
</span></pre><pre style='margin:0'>
</pre>