diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 461a7432f4e212099e1f8428887587f6dc434882..61d37c99aa91a89f8c195261fd647924c051007e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -12,7 +12,7 @@ run-tox-pipeline:
   stage: tox
   tags:
     - docker-executor
-  image: python:3.10
+  image: python:3.11
 
   services:
     - postgres:15.4
diff --git a/docs/source/quickstart.rst b/docs/source/quickstart.rst
index bc9d7e0fb5d15dcabc903fde0f2b05ed99601f04..a7cc2d9058a220cfd6db4e43bb3a1cb2a4ad9181 100644
--- a/docs/source/quickstart.rst
+++ b/docs/source/quickstart.rst
@@ -4,15 +4,15 @@ Quickstart
 Development environment and dependencies
 ----------------------------------------
 
-- Install python 3.10 if you do not have it already:
+- Install python 3.11 if you do not have it already:
     - ``add-apt-repository ppa:deadsnakes/ppa``
-    - ``apt install python3.10 python3.10-distutils``
+    - ``apt install python3.11 python3.11-distutils``
 - Follow Steps 1 and 2 from here to install dependencies and setup DB:
   `<https://workfloworchestrator.org/orchestrator-core/workshops/beginner/debian/>`_
 - To install the orchestrator GUI, you can follow the steps 5 and 6 from the previous link.
 - Create a virtual environment:
     - ``source /usr/share/virtualenvwrapper/virtualenvwrapper.sh``
-    - ``mkvirtualenv --python python3.10 gso``
+    - ``mkvirtualenv --python python3.11 gso``
 - To use the virtual environment:
     - ``source /usr/share/virtualenvwrapper/virtualenvwrapper.sh``
     - ``workon gso``
@@ -25,7 +25,7 @@ Do all this inside the virtual environment.
 - Clone this repository
 - ``pip install -r requirements.txt``
     - If you get an error because you pip version is too old, run this:
-      ``curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10``
+      ``curl -sS https://bootstrap.pypa.io/get-pip.py | python3.11``
 - ``pip install -e .``
 - Create an ``oss-params.json`` based on the ``oss-params-example.json`` file inside ``/gso``.
 - Export the oss-params file: ``export OSS_PARAMS_FILENAME="/path/to/oss-params.json"``
diff --git a/pyproject.toml b/pyproject.toml
index 19d2278563cff9f3b1bec5aad1fef0e57e4d18ae..19b4ae559111f4748c8e3388b79c5d2c9cbb9817 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -7,7 +7,7 @@ known_first_party = ["test", "docs"]
 
 [tool.black]
 line-length = 120
-target-version = ["py310"]
+target-version = ["py311"]
 exclude = '''
 (
   /(
@@ -100,7 +100,7 @@ select = [
     "T",
     "W",
 ]
-target-version = "py310"
+target-version = "py311"
 
 [tool.ruff.flake8-tidy-imports]
 ban-relative-imports = "all"
diff --git a/requirements.txt b/requirements.txt
index c6c697960aceb8f0709302dd737716ad328a7be5..e6c26aa944a2d8c1f44600ba5d8c87b978fc8974 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -10,11 +10,11 @@ celery==5.3.4
 pytest==7.4.3
 faker==19.13.0
 responses==0.24.0
-black==23.10.1
+black==23.11.0
 isort==5.12.0
 flake8==6.1.0
 mypy==1.6.1
-ruff==0.1.4
+ruff==0.1.5
 sphinx==7.2.6
 sphinx-rtd-theme==1.3.0
 urllib3_mock==0.3.3
\ No newline at end of file
diff --git a/tox.ini b/tox.ini
index 791bcd09d2aa1cbda369babbeeeb142945ba7fb1..964fcad5950a7538a41f2140939eeb8438ba0925 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
 [tox]
-envlist = py310
+envlist = py311
 
 [flake8]
 ; Allow >> on newline (W503), and allow cls as first argument for pydantic validators (B902)