From 854ef075ae9cb50a0bb7d5acfa7fad9bf5d46e70 Mon Sep 17 00:00:00 2001 From: veit Date: Tue, 18 Nov 2025 23:33:58 +0100 Subject: [PATCH 1/5] :pencil2: Wording and beautifying --- docs/clean-prep/tdda.ipynb | 6 +- docs/clean-prep/voluptuous.ipynb | 174 +++++++++++++++++++++++++++---- 2 files changed, 154 insertions(+), 26 deletions(-) diff --git a/docs/clean-prep/tdda.ipynb b/docs/clean-prep/tdda.ipynb index 4b629d0e..b437f50e 100644 --- a/docs/clean-prep/tdda.ipynb +++ b/docs/clean-prep/tdda.ipynb @@ -337,7 +337,7 @@ "metadata": {}, "outputs": [], "source": [ - "with open(\"ignore-iot_constraints.tdda\", \"w\") as f:\n", + "with open(\"iot_example.json\", \"w\") as f:\n", " f.write(constraints.to_json())" ] }, @@ -428,7 +428,7 @@ } ], "source": [ - "cat ignore-iot_constraints.tdda" + "cat iot_example.json" ] }, { @@ -630,7 +630,7 @@ "metadata": {}, "outputs": [], "source": [ - "v = verify_df(new_df, \"ignore-iot_constraints.tdda\")" + "v = verify_df(new_df, \"iot_example.json\")" ] }, { diff --git a/docs/clean-prep/voluptuous.ipynb b/docs/clean-prep/voluptuous.ipynb index c405541c..37b3ea37 100644 --- a/docs/clean-prep/voluptuous.ipynb +++ b/docs/clean-prep/voluptuous.ipynb @@ -27,7 +27,15 @@ { "cell_type": "code", "execution_count": 1, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:17.573145Z", + "iopub.status.busy": "2025-11-18T22:31:17.572855Z", + "iopub.status.idle": "2025-11-18T22:31:18.092601Z", + "shell.execute_reply": "2025-11-18T22:31:18.092331Z", + "shell.execute_reply.started": "2025-11-18T22:31:17.573125Z" + } + }, "outputs": [], "source": [ "import logging\n", @@ -62,7 +70,15 @@ { "cell_type": "code", "execution_count": 2, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.093348Z", + "iopub.status.busy": "2025-11-18T22:31:18.093184Z", + "iopub.status.idle": "2025-11-18T22:31:18.095343Z", + "shell.execute_reply": "2025-11-18T22:31:18.094962Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.093338Z" + } + }, "outputs": [], "source": [ "logger = logging.getLogger(0)\n", @@ -80,7 +96,15 @@ { "cell_type": "code", "execution_count": 3, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.095921Z", + "iopub.status.busy": "2025-11-18T22:31:18.095827Z", + "iopub.status.idle": "2025-11-18T22:31:18.425513Z", + "shell.execute_reply": "2025-11-18T22:31:18.424671Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.095914Z" + } + }, "outputs": [], "source": [ "sales = pd.read_csv('https://raw.githubusercontent.com/kjam/data-cleaning-101/master/data/sales_data.csv')" @@ -96,7 +120,15 @@ { "cell_type": "code", "execution_count": 4, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.426847Z", + "iopub.status.busy": "2025-11-18T22:31:18.426587Z", + "iopub.status.idle": "2025-11-18T22:31:18.442451Z", + "shell.execute_reply": "2025-11-18T22:31:18.441991Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.426831Z" + } + }, "outputs": [ { "data": { @@ -211,7 +243,15 @@ { "cell_type": "code", "execution_count": 5, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.443750Z", + "iopub.status.busy": "2025-11-18T22:31:18.443370Z", + "iopub.status.idle": "2025-11-18T22:31:18.448128Z", + "shell.execute_reply": "2025-11-18T22:31:18.447641Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.443732Z" + } + }, "outputs": [ { "data": { @@ -247,7 +287,15 @@ { "cell_type": "code", "execution_count": 6, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.450998Z", + "iopub.status.busy": "2025-11-18T22:31:18.450836Z", + "iopub.status.idle": "2025-11-18T22:31:18.453121Z", + "shell.execute_reply": "2025-11-18T22:31:18.452782Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.450982Z" + } + }, "outputs": [], "source": [ "schema = Schema(\n", @@ -261,7 +309,15 @@ { "cell_type": "code", "execution_count": 7, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.453628Z", + "iopub.status.busy": "2025-11-18T22:31:18.453552Z", + "iopub.status.idle": "2025-11-18T22:31:18.478857Z", + "shell.execute_reply": "2025-11-18T22:31:18.478488Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.453621Z" + } + }, "outputs": [ { "name": "stderr", @@ -361,7 +417,15 @@ { "cell_type": "code", "execution_count": 8, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.479687Z", + "iopub.status.busy": "2025-11-18T22:31:18.479594Z", + "iopub.status.idle": "2025-11-18T22:31:18.482224Z", + "shell.execute_reply": "2025-11-18T22:31:18.481893Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.479678Z" + } + }, "outputs": [ { "data": { @@ -399,31 +463,55 @@ { "cell_type": "code", "execution_count": 9, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.482964Z", + "iopub.status.busy": "2025-11-18T22:31:18.482903Z", + "iopub.status.idle": "2025-11-18T22:31:18.484745Z", + "shell.execute_reply": "2025-11-18T22:31:18.484447Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.482958Z" + } + }, "outputs": [], "source": [ - "def ValidDate(fmt=\"%Y-%m-%d %H:%M:%S\"):\n", + "def valid_date(fmt=\"%Y-%m-%d %H:%M:%S\"):\n", " return lambda v: datetime.strptime(v, fmt)" ] }, { "cell_type": "code", "execution_count": 10, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.485394Z", + "iopub.status.busy": "2025-11-18T22:31:18.485245Z", + "iopub.status.idle": "2025-11-18T22:31:18.487196Z", + "shell.execute_reply": "2025-11-18T22:31:18.486926Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.485388Z" + } + }, "outputs": [], "source": [ "schema = Schema(\n", " {\n", - " Required(\"timestamp\"): All(ValidDate()),\n", + " Required(\"timestamp\"): All(valid_date()),\n", " },\n", - " extra=ALLOW_EXTRA,\n", + " extra = ALLOW_EXTRA,\n", ")" ] }, { "cell_type": "code", "execution_count": 11, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.487668Z", + "iopub.status.busy": "2025-11-18T22:31:18.487587Z", + "iopub.status.idle": "2025-11-18T22:31:18.494464Z", + "shell.execute_reply": "2025-11-18T22:31:18.494239Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.487661Z" + } + }, "outputs": [], "source": [ "error_count = 0\n", @@ -440,7 +528,15 @@ { "cell_type": "code", "execution_count": 12, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.495261Z", + "iopub.status.busy": "2025-11-18T22:31:18.495136Z", + "iopub.status.idle": "2025-11-18T22:31:18.497949Z", + "shell.execute_reply": "2025-11-18T22:31:18.497655Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.495250Z" + } + }, "outputs": [ { "data": { @@ -467,10 +563,18 @@ { "cell_type": "code", "execution_count": 13, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.498347Z", + "iopub.status.busy": "2025-11-18T22:31:18.498271Z", + "iopub.status.idle": "2025-11-18T22:31:18.500405Z", + "shell.execute_reply": "2025-11-18T22:31:18.500183Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.498341Z" + } + }, "outputs": [], "source": [ - "def ValidDate(fmt=\"%Y-%m-%d %H:%M:%S\"):\n", + "def valid_date(fmt=\"%Y-%m-%d %H:%M:%S\"):\n", " def validation_func(v):\n", " try:\n", " assert datetime.strptime(v, fmt) <= datetime.now()\n", @@ -483,21 +587,37 @@ { "cell_type": "code", "execution_count": 14, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.500793Z", + "iopub.status.busy": "2025-11-18T22:31:18.500676Z", + "iopub.status.idle": "2025-11-18T22:31:18.502440Z", + "shell.execute_reply": "2025-11-18T22:31:18.502172Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.500787Z" + } + }, "outputs": [], "source": [ "schema = Schema(\n", " {\n", - " Required(\"timestamp\"): All(ValidDate()),\n", + " Required(\"timestamp\"): All(valid_date()),\n", " },\n", - " extra=ALLOW_EXTRA,\n", + " extra = ALLOW_EXTRA,\n", ")" ] }, { "cell_type": "code", "execution_count": 15, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.502983Z", + "iopub.status.busy": "2025-11-18T22:31:18.502885Z", + "iopub.status.idle": "2025-11-18T22:31:18.509278Z", + "shell.execute_reply": "2025-11-18T22:31:18.508890Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.502974Z" + } + }, "outputs": [], "source": [ "error_count = 0\n", @@ -514,7 +634,15 @@ { "cell_type": "code", "execution_count": 16, - "metadata": {}, + "metadata": { + "execution": { + "iopub.execute_input": "2025-11-18T22:31:18.509964Z", + "iopub.status.busy": "2025-11-18T22:31:18.509861Z", + "iopub.status.idle": "2025-11-18T22:31:18.512235Z", + "shell.execute_reply": "2025-11-18T22:31:18.511993Z", + "shell.execute_reply.started": "2025-11-18T22:31:18.509949Z" + } + }, "outputs": [ { "data": { @@ -548,7 +676,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.4" + "version": "3.11.13" }, "latex_envs": { "LaTeX_envs_menu_present": true, From a9eb1df9a316e3c4f4ac3192c59a34fc73521bf1 Mon Sep 17 00:00:00 2001 From: veit Date: Sun, 23 Nov 2025 17:48:49 +0100 Subject: [PATCH 2/5] :wrench: Group dependabot updates --- .github/dependabot.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 3a626c3a..8f2ceaca 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,3 +4,7 @@ updates: directory: / schedule: interval: monthly + groups: + github-actions: + patterns: + - "*" From 0abf082305fcf3cf82d380c817eef41f7c51d4e6 Mon Sep 17 00:00:00 2001 From: veit Date: Sun, 23 Nov 2025 17:49:22 +0100 Subject: [PATCH 3/5] :wrench: Add dependabot cooldown --- .github/dependabot.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 8f2ceaca..fa963381 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -4,6 +4,8 @@ updates: directory: / schedule: interval: monthly + cooldown: + default-days: 10 groups: github-actions: patterns: From d047e3c5c1465ab1870960dbfcaae08a42dd7d90 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 1 Dec 2025 20:58:12 +0000 Subject: [PATCH 4/5] [pre-commit.ci] pre-commit autoupdate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/sphinx-contrib/sphinx-lint: v1.0.1 → v1.0.2](https://github.com/sphinx-contrib/sphinx-lint/compare/v1.0.1...v1.0.2) - https://github.com/psf/black → https://github.com/psf/black-pre-commit-mirror --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 6803d787..2c161b5a 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -32,7 +32,7 @@ repos: hooks: - id: validate-pyproject - repo: https://github.com/sphinx-contrib/sphinx-lint - rev: v1.0.1 + rev: v1.0.2 hooks: - id: sphinx-lint types: [rst] @@ -43,7 +43,7 @@ repos: additional_dependencies: ["toml"] entry: isort --profile=black name: isort (python) - - repo: https://github.com/psf/black + - repo: https://github.com/psf/black-pre-commit-mirror rev: 25.11.0 hooks: - id: black From 1a4a6a1a905a55bc4c9aa85126b287bfb6046c50 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 1 Dec 2025 20:58:34 +0000 Subject: [PATCH 5/5] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- .../serialisation-formats/pyproject.toml | 20 +++++++++---------- .../serialisation-formats/toml/pyproject.toml | 20 +++++++++---------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/docs/data-processing/serialisation-formats/pyproject.toml b/docs/data-processing/serialisation-formats/pyproject.toml index 7f1f96fc..2d6e0964 100644 --- a/docs/data-processing/serialisation-formats/pyproject.toml +++ b/docs/data-processing/serialisation-formats/pyproject.toml @@ -6,14 +6,14 @@ line-length = 79 [tool.isort] -atomic=true -force_grid_wrap=0 -include_trailing_comma=true -lines_after_imports=2 -lines_between_types=1 -multi_line_output=3 -not_skip="__init__.py" -use_parentheses=true +atomic = true +force_grid_wrap = 0 +include_trailing_comma = true +lines_after_imports = 2 +lines_between_types = 1 +multi_line_output = 3 +not_skip = "__init__.py" +use_parentheses = true -known_first_party="jupyter-tutorial" -known_third_party=["mpi4py", "numpy", "requests"] +known_first_party = "jupyter-tutorial" +known_third_party = [ "mpi4py", "numpy", "requests" ] diff --git a/docs/data-processing/serialisation-formats/toml/pyproject.toml b/docs/data-processing/serialisation-formats/toml/pyproject.toml index 260bbd2e..732e8efc 100644 --- a/docs/data-processing/serialisation-formats/toml/pyproject.toml +++ b/docs/data-processing/serialisation-formats/toml/pyproject.toml @@ -6,14 +6,14 @@ line-length = 79 [tool.isort] -atomic=true -force_grid_wrap=0 -include_trailing_comma=true -lines_after_imports=2 -lines_between_types=1 -multi_line_output=3 -not_skip="__init__.py" -use_parentheses=true +atomic = true +force_grid_wrap = 0 +include_trailing_comma = true +lines_after_imports = 2 +lines_between_types = 1 +multi_line_output = 3 +not_skip = "__init__.py" +use_parentheses = true -known_first_party=["MY_FIRST_MODULE", "MY_SECOND_MODULE"] -known_third_party=["mpi4py", "numpy", "requests"] +known_first_party = [ "MY_FIRST_MODULE", "MY_SECOND_MODULE" ] +known_third_party = [ "mpi4py", "numpy", "requests" ]