Repository: OpenMDAO/dymos (language: python)

Issue:
packaging is required by setup.py and may not be available
### Description

Installing Dymos currently requires the `packaging` package to be pre-installed, as it is used to check for Python 3.12:
```
# playwright dependencies are currently incompatible with python 3.12
if Version(python_version()) < Version('3.12.0'):
    optional_dependencies['test'].extend(['playwright>=1.20', 'aiounittest'])
```
This is no longer necessary, as `playwright` has since been updated to be compatible with Python 3.12

### Example

```
Processing ./dev/dymos/dist/dymos-1.10.0.tar.gz
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-req-build-p1x2ha8z/setup.py", line 1, in <module>
          from packaging.version import Version
      ModuleNotFoundError: No module named 'packaging'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
```


### Dymos Version

1.10.0

### Relevant environment information

_No response_


Discussion / hints:

Fix patch:
diff --git a/setup.py b/setup.py
index 68a3e353e..3b2049130 100644
--- a/setup.py
+++ b/setup.py
@@ -1,5 +1,3 @@
-from packaging.version import Version
-from platform import python_version
 from setuptools import find_packages, setup
 
 # Setup optional dependencies
@@ -29,13 +27,11 @@
         'testflo>=1.3.6',
         'matplotlib',
         'numpydoc>=1.1',
+        'playwright>=1.20',
+        'aiounittest'
     ]
 }
 
-# playwright dependencies are currently incompatible with python 3.12
-if Version(python_version()) < Version('3.12.0'):
-    optional_dependencies['test'].extend(['playwright>=1.20', 'aiounittest'])
-
 # Add an optional dependency that concatenates all others
 optional_dependencies['all'] = sorted([
     dependency


Test patch:
diff --git a/.github/workflows/dymos_tests_workflow.yml b/.github/workflows/dymos_tests_workflow.yml
index 733db0d57..4b031946b 100644
--- a/.github/workflows/dymos_tests_workflow.yml
+++ b/.github/workflows/dymos_tests_workflow.yml
@@ -166,15 +166,6 @@ jobs:
             python -m pip install jaxlib==${{ matrix.JAX }} jax==${{ matrix.JAX }}
           fi
 
-      - name: Install greenlet
-        if: env.NAME == 'latest'
-        shell: bash -l {0}
-        run: |
-          echo "============================================================="
-          echo "Install greenlet from wheels"
-          echo "============================================================="
-          pip install --only-binary :all: greenlet
-
       - name: Install PETSc
         if: env.RUN_BUILD && matrix.PETSc
         shell: bash -l {0}
@@ -256,7 +247,7 @@ jobs:
           if [[ "${{ matrix.OPENMDAO }}" == "dev" ]]; then
             pip install git+https://github.com/OpenMDAO/OpenMDAO
           elif [[ "${{ matrix.OPENMDAO }}" == "latest" ]]; then
-            pip install openmdao
+            echo "The latest version OpenMDAO will be installed from pypi per the Dymos dependency"
           else
             pip install openmdao==${{ matrix.OPENMDAO }}
           fi