diff --git a/.github/workflows/ci-python-version-test.yml b/.github/workflows/ci-python-version-test.yml new file mode 100644 index 0000000000..5d6b60469e --- /dev/null +++ b/.github/workflows/ci-python-version-test.yml @@ -0,0 +1,32 @@ +name: SMARTS CI Python Version Tests + +# on: +# push: +# branches: +# - master +on: [push, pull_request] + + +env: + venv_dir: .venv + +jobs: + install_python: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: ['3.8', '3.9', '3.10-dev', '3.11-dev'] + steps: + - uses: actions/checkout@v4 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + - name: Update requirements + run: | + cd $GITHUB_WORKSPACE + python${{ matrix.python-version }} -m venv ${{env.venv_dir}} + . ${{env.venv_dir}}/bin/activate + pip install --upgrade pip + pip install wheel==0.38.4 + pip install .[camera_obs,rllib,test,torch,train] \ No newline at end of file diff --git a/setup.cfg b/setup.cfg index 3096f96acf..edc2c3d9d3 100644 --- a/setup.cfg +++ b/setup.cfg @@ -26,8 +26,7 @@ install_requires = setuptools>=41.0.0,!=50.0 click>=7.1.2 # used in scl # numpy>=1.19.5 required for tf 2.4 - # numpy<1.24 required for ray (see https://github.com/ray-project/ray/issues/31258) - numpy>=1.19.5,<1.24.0 + numpy>=1.19.5 psutil>=5.4.8 shapely>=2.0.0 tableprint>=0.9.1 @@ -36,7 +35,7 @@ install_requires = PyYAML>=3.13 twisted>=21.7.0 # for scenario requirements.txt files - pybullet>=3,<4.0 # planned to be made optional + pybullet>=3,<4.0 # planned to be made optional (For >3.9 this requires python3.-dev) cloudpickle>=1.3.0 # planned for removal [options.packages.find] @@ -87,8 +86,8 @@ opendrive = opendrive2lanelet>=1.2.1 Rtree>=0.9.7 rllib = - opencv-python==4.1.2.30 - opencv-python-headless==4.1.2.30 + opencv-python>=4.1.2.30,<5.0 + opencv-python-headless>=4.1.2.30,<5.0 ray[rllib]~=2.5.0 tensorflow-probability ray = @@ -110,8 +109,8 @@ test_notebook = jupyter-client>=7.1.2 pytest-notebook>=0.7.0 torch = - torch==1.4.0 - torchvision==0.5.0 + torch>=1.4.0 + torchvision>=0.5.0 train = tensorflow>=2.4.0 visdom =