mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-09 09:21:46 +00:00
Drop Python 3.9 support as it reached EOL
This commit is contained in:
@@ -14,7 +14,7 @@ jobs:
|
||||
- name: Action - install python
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: "3.9"
|
||||
python-version: "3.10"
|
||||
|
||||
- name: Action - install python
|
||||
uses: actions/setup-python@v6
|
||||
@@ -33,7 +33,7 @@ jobs:
|
||||
id: syntax-errors
|
||||
run: |
|
||||
ERROR=0
|
||||
python3.9 -W error -m compileall -q src/ifcopenshell-python || ERROR=1
|
||||
python3.10 -W error -m compileall -q src/ifcopenshell-python || ERROR=1
|
||||
python3.11 -W error -m compileall -q src/bonsai || ERROR=1
|
||||
exit $ERROR
|
||||
continue-on-error: true
|
||||
|
||||
+1
-1
@@ -139,7 +139,7 @@ PROJECT_NAME = "IfcOpenShell"
|
||||
USE_CURRENT_PYTHON_VERSION = os.getenv("USE_CURRENT_PYTHON_VERSION")
|
||||
ADD_COMMIT_SHA = os.getenv("ADD_COMMIT_SHA")
|
||||
|
||||
PYTHON_VERSIONS = ["3.9.11", "3.10.3", "3.11.8", "3.12.1", "3.13.6", "3.14.0"]
|
||||
PYTHON_VERSIONS = ["3.10.3", "3.11.8", "3.12.1", "3.13.6", "3.14.0"]
|
||||
JSON_VERSION = "3.11.3"
|
||||
OCE_VERSION = "0.18.3"
|
||||
OCCT_VERSION = "7.8.1"
|
||||
|
||||
@@ -10,15 +10,16 @@ authors = [
|
||||
]
|
||||
description = "Library to interact with the buildingSMART Data Dictionary"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.9"
|
||||
requires-python = ">=3.10"
|
||||
keywords = ["IFC", "bSDD", "BIM"]
|
||||
classifiers = [
|
||||
"Development Status :: 4 - Beta",
|
||||
"Programming Language :: Python",
|
||||
"Programming Language :: Python :: 3.9",
|
||||
"Programming Language :: Python :: 3.10",
|
||||
"Programming Language :: Python :: 3.11",
|
||||
"Programming Language :: Python :: 3.12",
|
||||
"Programming Language :: Python :: 3.13",
|
||||
"Programming Language :: Python :: 3.14",
|
||||
"Programming Language :: Python :: Implementation :: CPython",
|
||||
"Programming Language :: Python :: Implementation :: PyPy",
|
||||
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
|
||||
|
||||
@@ -34,8 +34,6 @@ ZIP packages
|
||||
+-------------+---------------------------------+-------------------------------+---------------------------------+-----------------------------------+
|
||||
| | Linux 64bit | Windows 64bit | MacOS Intel 64bit | MacOS Silicon 64bit |
|
||||
+=============+=================================+===============================+=================================+===================================+
|
||||
| Python 3.9 | :ios_python_url:`py39-linux64` | :ios_python_url:`py39-win64` | :ios_python_url:`py39-macos64` | :ios_python_url:`py39-macosm164` |
|
||||
+-------------+---------------------------------+-------------------------------+---------------------------------+-----------------------------------+
|
||||
| Python 3.10 | :ios_python_url:`py310-linux64` | :ios_python_url:`py310-win64` | :ios_python_url:`py310-macos64` | :ios_python_url:`py310-macosm164` |
|
||||
+-------------+---------------------------------+-------------------------------+---------------------------------+-----------------------------------+
|
||||
| Python 3.11 | :ios_python_url:`py311-linux64` | :ios_python_url:`py311-win64` | :ios_python_url:`py311-macos64` | :ios_python_url:`py311-macosm164` |
|
||||
|
||||
@@ -43,7 +43,8 @@ import numpy
|
||||
import inspect
|
||||
import importlib
|
||||
import ifcopenshell
|
||||
from typing import Callable, Any, Optional, TYPE_CHECKING
|
||||
from collections.abc import Callable
|
||||
from typing import Any, Optional, TYPE_CHECKING
|
||||
from functools import partial
|
||||
|
||||
if TYPE_CHECKING:
|
||||
|
||||
@@ -20,11 +20,7 @@ import sys
|
||||
import ifcopenshell.api.owner
|
||||
import ifcopenshell.util.element
|
||||
from typing import Any, Union
|
||||
|
||||
if sys.version_info >= (3, 10):
|
||||
from types import EllipsisType
|
||||
else:
|
||||
EllipsisType = type(...)
|
||||
from types import EllipsisType
|
||||
|
||||
|
||||
def edit_attributes(file: ifcopenshell.file, product: ifcopenshell.entity_instance, attributes: dict[str, Any]) -> None:
|
||||
|
||||
@@ -27,7 +27,8 @@ import ifcopenshell.util.element
|
||||
import ifcopenshell.util.geolocation
|
||||
import ifcopenshell.util.placement
|
||||
import ifcopenshell.util.unit
|
||||
from typing import Optional, Any, Union, Literal, get_args, Callable
|
||||
from typing import Optional, Any, Union, Literal, get_args
|
||||
from collections.abc import Callable
|
||||
from functools import partial
|
||||
|
||||
|
||||
|
||||
@@ -20,8 +20,8 @@ import ifcopenshell
|
||||
import ifcopenshell.guid
|
||||
import ifcopenshell.util.element
|
||||
import ifcopenshell.util.representation
|
||||
from typing import Any, Callable, Optional, Union, Literal, overload
|
||||
from collections.abc import Generator, Sequence
|
||||
from typing import Any, Optional, Union, Literal, overload
|
||||
from collections.abc import Callable, Generator, Sequence
|
||||
from collections import namedtuple
|
||||
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ try:
|
||||
except ImportError:
|
||||
LARK_AVAILABLE = False
|
||||
|
||||
from typing import Callable, Union
|
||||
from typing import Union
|
||||
import re
|
||||
|
||||
if LARK_AVAILABLE:
|
||||
@@ -51,9 +51,9 @@ if LARK_AVAILABLE:
|
||||
|
||||
value: /[A-Za-z0-9 _\.-]+/
|
||||
|
||||
other_keyword: /[^\[\]]+/
|
||||
|
||||
dynamic_option_word: /[^\[\]]+/
|
||||
other_keyword: /[^\[\]]+/
|
||||
|
||||
dynamic_option_word: /[^\[\]]+/
|
||||
|
||||
%import common.WS
|
||||
%ignore WS
|
||||
|
||||
@@ -37,11 +37,7 @@ import ifcopenshell.util.unit
|
||||
from decimal import Decimal
|
||||
from typing import Optional, Any, Union
|
||||
from collections.abc import Iterable
|
||||
|
||||
if sys.version_info >= (3, 10):
|
||||
from types import EllipsisType
|
||||
else:
|
||||
EllipsisType = type(...)
|
||||
from types import EllipsisType
|
||||
|
||||
|
||||
filter_elements_grammar = lark.Lark(
|
||||
|
||||
@@ -55,11 +55,7 @@ from collections import namedtuple
|
||||
from typing import Union, Any, Optional, TYPE_CHECKING
|
||||
from collections.abc import Iterator
|
||||
from logging import Logger, Handler
|
||||
|
||||
if sys.version_info >= (3, 10):
|
||||
from types import EllipsisType
|
||||
else:
|
||||
EllipsisType = type(...)
|
||||
from types import EllipsisType
|
||||
|
||||
import ifcopenshell
|
||||
import ifcopenshell.ifcopenshell_wrapper
|
||||
|
||||
@@ -10,7 +10,7 @@ authors = [
|
||||
]
|
||||
description = "Python bindings, utility functions, and high-level API for IfcOpenShell"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.9,<3.15"
|
||||
requires-python = ">=3.10,<3.15"
|
||||
classifiers = [
|
||||
"Programming Language :: Python :: 3",
|
||||
"License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)",
|
||||
|
||||
@@ -11,7 +11,7 @@ from zipfile import ZipFile
|
||||
|
||||
assert Path.cwd() == Path(__file__).parent, "Run this script from the 'win' directory."
|
||||
|
||||
PYTHON_VERSIONS = ["3.9.13", "3.10.3", "3.11.8", "3.12.1", "3.13.0", "3.14.0"]
|
||||
PYTHON_VERSIONS = ["3.10.3", "3.11.8", "3.12.1", "3.13.0", "3.14.0"]
|
||||
REPO_PATH = Path(__file__).parent.parent
|
||||
REPO_WIN = REPO_PATH / "win"
|
||||
VERSION = (REPO_PATH / "VERSION").read_text().strip()
|
||||
|
||||
Reference in New Issue
Block a user