-
Notifications
You must be signed in to change notification settings - Fork 138
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Expected Behavior
The library should function under Python3.12
Actual Behavior
The library attempts to load the distutils module, which was removed in Python3.12. See https://docs.python.org/3.10/library/distutils.html for background on the deprecation and removal of distutils.
Steps to Reproduce the Problem
- Install mitreattack-python with
python3 -m pip install mitreattack-python
- Run python3 and attempt to load library:
% python3 --version
Python 3.12.4
% python3
Python 3.12.4 (main, Jun 6 2024, 18:26:44) [Clang 15.0.0 (clang-1500.3.9.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from mitreattack.navlayers.core import Layer
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/jessek/tmp/lib/python3.12/site-packages/mitreattack/__init__.py", line 3, in <module>
from .collections import *
File "/Users/jessek/tmp/lib/python3.12/site-packages/mitreattack/collections/__init__.py", line 3, in <module>
from .stix_to_collection import *
File "/Users/jessek/tmp/lib/python3.12/site-packages/mitreattack/collections/stix_to_collection.py", line 9, in <module>
from stix2elevator.stix_stepper import step_bundle
File "/Users/jessek/tmp/lib/python3.12/site-packages/stix2elevator/__init__.py", line 12, in <module>
from stix.core import STIXPackage
File "/Users/jessek/tmp/lib/python3.12/site-packages/stix/__init__.py", line 5, in <module>
from .base import (Entity, EntityList, TypedCollection, TypedList, # noqa
File "/Users/jessek/tmp/lib/python3.12/site-packages/stix/base.py", line 20, in <module>
from . import utils
File "/Users/jessek/tmp/lib/python3.12/site-packages/stix/utils/__init__.py", line 382, in <module>
from .parser import * # noqa
^^^^^^^^^^^^^^^^^^^^^
File "/Users/jessek/tmp/lib/python3.12/site-packages/stix/utils/parser.py", line 7, in <module>
import mixbox.parser
File "/Users/jessek/tmp/lib/python3.12/site-packages/mixbox/parser.py", line 5, in <module>
from distutils.version import StrictVersion
ModuleNotFoundError: No module named 'distutils'
>>>
Possible Solution
This may be related to #163, and removing support for STIX1 will remove the dependency.
omyej
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working