Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,11 @@ jobs:
strategy:
fail-fast: true
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]
os: [ubuntu-latest, windows-latest, macos-13, macos-latest]
include:
# Only run slow tests on the latest version of Python
- python-version: "3.13"
- python-version: "3.14"
slow: true
runs-on: ${{ matrix.os }}

Expand All @@ -63,6 +63,7 @@ jobs:
uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38
with:
python-version: ${{ matrix.python-version }}
allow-prereleases: true
cache: 'pip'

- name: Update pip
Expand Down
4 changes: 2 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ repos:
rev: 25.1.0
hooks:
- id: black
language_version: python3.13
language_version: python3.14

- repo: https://github.com/pycqa/isort
rev: 5.12.0
hooks:
- id: isort
language_version: python3.13
language_version: python3.14
6 changes: 4 additions & 2 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -605,7 +605,9 @@ def add_directive_header(self, sig):
orig_object_description = sphinx.util.inspect.object_description


def object_description(obj):
def object_description(obj, **kwargs):
# Accept **kwargs to support Sphinx ≥7.2, which passes the `_seen` argument
# to object_description. This ensures compatibility across Sphinx versions.
if obj is scenic.core.regions.nowhere or obj is scenic.core.regions.everywhere:
return str(obj)
elif isinstance(
Expand All @@ -622,7 +624,7 @@ def object_description(obj):
elif obj is sys.stderr:
return "sys.stderr"
else:
return orig_object_description(obj)
return orig_object_description(obj, **kwargs)


sphinx.util.inspect.object_description = object_description
Expand Down
4 changes: 4 additions & 0 deletions docs/simulators.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ On this page we list interfaces that we and others have developed; if you have a
Note that not every interface supports all Scenic features: in particular, some interfaces do not support dynamic scenarios.
See the individual entries for details on each interface's capabilities and how to set it up.

.. note::
While Scenic aims to support multiple Python versions, some simulators may have more limited compatibility.
Be sure to check the documentation of each simulator to confirm which Python versions are supported.

.. contents:: List of Simulators
:local:

Expand Down
5 changes: 3 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -67,16 +67,17 @@ test = [ # minimum dependencies for running tests (used for tox virtualenvs)
test-full = [ # like 'test' but adds dependencies for optional features
"scenic[test]", # all dependencies from 'test' extra above
"scenic[guideways]", # for running guideways modules
'scenic[metadrive]; python_version <= "3.11"', # MetaDrive only supports Python ≤ 3.11; excluded for newer versions
"astor >= 0.8.1",
'carla >= 0.9.12; python_version <= "3.10" and (platform_system == "Linux" or platform_system == "Windows")',
"dill",
"exceptiongroup",
"inflect ~= 5.5",
'metadrive-simulator >= 0.4.3; python_version <= "3.11"', # listed directly (not scenic[metadrive]) to work around tox issue that ignored the python_version<=3.11 guard
"pygments ~= 2.11",
"sphinx >= 6.2.0, <7.2.0",
"sphinx >= 6.2.0, <8",
"sphinx_rtd_theme >= 0.5.2",
"sphinx-tabs ~= 3.4.1",
'sumolib >= 1.21.0; python_version <= "3.11"', # required for MetaDrive
"verifai >= 2.1.0b1",
]
dev = [
Expand Down
4 changes: 2 additions & 2 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[tox]
envlist = py{38,39,310,311,312,313}{,-extras}
envlist = py{38,39,310,311,312,313,314}{,-extras}
labels =
basic = py{38,39,310,311,312,313}
basic = py{38,39,310,311,312,313,314}

[testenv]
extras =
Expand Down
Loading