diff --git a/README.md b/README.md
index 3c0f2c13..1885fcf2 100644
--- a/README.md
+++ b/README.md
@@ -8,7 +8,7 @@
---
-Required: Python 3.9+
+Required: Python 3.10+
From PyPI:
diff --git a/docs/_sources/intro.rst.txt b/docs/_sources/intro.rst.txt
index 21df1d58..979a0d6b 100644
--- a/docs/_sources/intro.rst.txt
+++ b/docs/_sources/intro.rst.txt
@@ -4,7 +4,7 @@ Getting Started
Installation
============
-Requires Python 3.6, 3.7 or 3.8.
+Requires Python 3.10 or newer.
To install the Python Client Library::
diff --git a/docs/intro.html b/docs/intro.html
index 41889a65..bf13b063 100644
--- a/docs/intro.html
+++ b/docs/intro.html
@@ -358,7 +358,7 @@
Requires Python 3.6, 3.7 or 3.8.
+ Requires Python 3.10 or newer.
diff --git a/indico/queries/datasets.py b/indico/queries/datasets.py
index 9bd9d565..7cc8ca91 100644
--- a/indico/queries/datasets.py
+++ b/indico/queries/datasets.py
@@ -206,7 +206,7 @@ class CreateDataset(RequestChain["Dataset"]):
from_local_images (bool, optional): Flag whether files are local images or not. Defaults to False.
image_filename_col (str, optional): Image filename column. Defaults to 'filename'.
batch_size (int, optional): Size of file batch to upload at a time. Defaults to 20.
- ocr_engine (OcrEngine, optional): Specify an OCR engine [OMNIPAGE, READAPI, READAPI_V2, READAPI_TABLES_V1]. Defaults to None.
+ ocr_engine (OcrEngine, optional): Specify an OCR engine [OMNIPAGE, READAPI, READAPI_V2, READAPI_TABLES_V1, READAPI_TABLES_V2]. Defaults to None.
omnipage_ocr_options (OmnipageOcrOptionsInput, optional): If using Omnipage, specify Omnipage OCR options. Defaults to None.
read_api_ocr_options: (ReadApiOcrOptionsInput, optional): If using ReadAPI, specify ReadAPI OCR options. Defaults to None.
request_interval (int or float, optional): The maximum time in between retry calls when waiting. Defaults to 5 seconds.
diff --git a/indico/types/dataset.py b/indico/types/dataset.py
index da155fec..aa03a4c6 100644
--- a/indico/types/dataset.py
+++ b/indico/types/dataset.py
@@ -84,6 +84,7 @@ class OcrEngine(Enum):
READAPI = 1
READAPI_V2 = 2
READAPI_TABLES_V1 = 3
+ READAPI_TABLES_V2 = 4
class OmnipageOcrOptionsInput(BaseType):
@@ -155,6 +156,11 @@ class EmailOptions(BaseType):
include_sections: Optional[IncludeSections]
unpack: Optional[bool]
preserve_body_whitespace: Optional[bool]
+ embed_inline_images: Optional[bool]
+ html_renderer_version: Optional[int]
+ msg_converter_version: Optional[int]
+ header_version: Optional[int]
+ sanitize_css: Optional[bool]
class OcrOptionsInput:
diff --git a/tests/integration/queries/test_dataset.py b/tests/integration/queries/test_dataset.py
index aff3c6cc..a9edfbb7 100644
--- a/tests/integration/queries/test_dataset.py
+++ b/tests/integration/queries/test_dataset.py
@@ -439,6 +439,11 @@ def test_create_with_email_options_readapi(indico):
email_config = {
"include_sections": {"header": True, "body": True, "attachments": True},
"unpack": True,
+ "embed_inline_images": True,
+ "html_renderer_version": 1,
+ "msg_converter_version": 1,
+ "header_version": 1,
+ "sanitize_css": False,
}
dataset = client.call(
CreateEmptyDataset(
diff --git a/tox.Dockerfile b/tox.Dockerfile
index 728c9f32..dc831cde 100644
--- a/tox.Dockerfile
+++ b/tox.Dockerfile
@@ -1,24 +1,23 @@
-FROM ubuntu:20.04
+FROM ubuntu:24.04
ENV DEBIAN_FRONTEND=noninteractive
-RUN apt-get update && apt-get install -yqq apt-transport-https
+RUN apt-get update && apt-get install -yqq --no-install-recommends \
+ apt-transport-https \
+ software-properties-common && \
+ rm -rf /var/lib/apt/lists/*
-#deadsnakes holds old versions of python for ubuntu
-RUN apt-get install -yqq software-properties-common && \
- add-apt-repository ppa:deadsnakes/ppa
-
-RUN apt-get update && \
- apt-get -yqq install \
- python3.8 \
- python3.9 \
+# deadsnakes holds additional Python versions for Ubuntu
+RUN add-apt-repository -y 'ppa:deadsnakes/ppa' && \
+ apt-get update && \
+ apt-get -yqq install --no-install-recommends \
python3.10 \
python3.11 \
python3.12 \
python3.13 \
- python3-pip
-
-RUN pip3 install tox==4.11.3
+ python3-pip \
+ tox && \
+ rm -rf /var/lib/apt/lists/*
COPY . /indico-client
WORKDIR /indico-client
diff --git a/tox.ini b/tox.ini
index 139d77df..c410e749 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
# content of: tox.ini , put in same dir as setup.py
[tox]
-envlist = py38,py39,py310,py311,py312,py313
+envlist = py310,py311,py312,py313
[testenv]
extras = all