From: Michael R. Crusoe <crusoe@debian.org>
Subject: Replace "distutils" with "packaging"

As distutils is deprecated and not even part of Python3.12

--- pycorrfit.orig/pycorrfit/gui/frontend.py
+++ pycorrfit/pycorrfit/gui/frontend.py
@@ -3,7 +3,7 @@
 The frontend displays the GUI (Graphic User Interface). All necessary
 functions and modules are called from here.
 """
-from distutils.version import LooseVersion  # For version checking
+from packaging.version import Version
 import os
 import pathlib
 import platform
@@ -1313,8 +1313,8 @@
 
         # Check for correct version
         try:
-            arcv = LooseVersion(Infodict["Version"])
-            thisv = LooseVersion(self.version.strip())
+            arcv = Version(Infodict["Version"])
+            thisv = Version(self.version.strip())
             if arcv > thisv:
                 errstring = "Your version of Pycorrfit ("+str(thisv) +\
                     ") is too old to open this session (" +\
--- pycorrfit.orig/pycorrfit/gui/main.py
+++ pycorrfit/pycorrfit/gui/main.py
@@ -1,8 +1,9 @@
 """Main execution script"""
-from distutils.version import LooseVersion
+
 import sys
 import warnings
 
+from packaging.version import Version
 import yaml
 import numpy as np
 import scipy
@@ -56,8 +57,8 @@
     the module str *name* the required verion is met or not.
     """
     try:
-        req = LooseVersion(required)
-        giv = LooseVersion(given)
+        req = Version(required)
+        giv = Version(given)
     except:
         print(" WARNING: Could not verify version of "+name+".")
         return
--- pycorrfit.orig/pycorrfit/gui/update.py
+++ pycorrfit/pycorrfit/gui/update.py
@@ -1,11 +1,11 @@
 """PyCorrFit - update checking"""
-from distutils.version import LooseVersion  # For version checking
 import os
 import tempfile
 import traceback
 import urllib.request
 import webbrowser
 
+from packaging.version import Version
 import simplejson
 import wx.html
 import wx.lib.delayedresult as delayedresult
@@ -80,7 +80,7 @@
             pass
     else:
         j = simplejson.loads(data)
-        newversion = LooseVersion(j["tag_name"])
+        newversion = Version(j["tag_name"])
 
     return newversion
 
@@ -112,9 +112,9 @@
 
     ghrepo = "FCS-analysis/PyCorrFit"
     if hasattr(pcf_version, "repo_tag"):
-        old = LooseVersion(pcf_version.repo_tag)
+        old = Version(pcf_version.repo_tag)
     else:
-        old = LooseVersion(pcf_version.version)
+        old = Version(pcf_version.version)
 
     new = get_gh_version(ghrepo)
 
--- pycorrfit.orig/setup.py
+++ pycorrfit/setup.py
@@ -2,13 +2,6 @@
 from setuptools import setup, Extension, find_packages
 import sys
 
-# The next three lines are necessary for setup.py install to include
-# ChangeLog and Documentation of PyCorrFit
-from distutils.command.install import INSTALL_SCHEMES
-for scheme in INSTALL_SCHEMES.values():
-    scheme['data'] = scheme['purelib']
-
-
 # We don't need to cythonize if a .whl package is available.
 try:
     import numpy as np
