From a30dba403691084910e552dbe93d6c8fd341dc1f Mon Sep 17 00:00:00 2001 From: Martin Carlsson Date: Sun, 4 Jan 2026 21:26:02 +0100 Subject: [PATCH 1/3] Omstrukturera output-kataloger till output/ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Samlar all genererad output under output/ med tydlig struktur: - output/md/ - Markdown-filer (tidigare SFS/) - output/html/ - HTML-filer ## Ändringar ### Konfiguration - .gitignore: Ta bort oanvänd sfs-output/, output/ täcker allt - pyproject.toml: Lägg till sfs_docs/* och output/* i coverage omit ### Dokumentation - README.md: Uppdatera exempel från --output SFS → --output output/md ### GitHub Workflows (4 filer) - fetch-sfs-workflow.yml: SFS → output/md, git add ändrat - html-export-workflow.yml: SFS → output/html, aws s3 sync uppdaterat - testdocs-workflow.yml: SFS → output/md - upcoming-changes-workflow.yml: SFS/ → output/md/ i temporal scripts ## Fördelar - Tydligare separation mellan input (sfs_docs/) och output (output/) - All genererad data under samma root-katalog - Enklare att rensa: rm -rf output/ - output/ redan ignorerad i .gitignore - undviker oavsiktliga commits 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- .github/workflows/fetch-sfs-workflow.yml | 4 ++-- .github/workflows/html-export-workflow.yml | 8 ++++---- .github/workflows/testdocs-workflow.yml | 2 +- .github/workflows/upcoming-changes-workflow.yml | 4 ++-- .gitignore | 1 - README.md | 6 +++--- pyproject.toml | 2 ++ 7 files changed, 14 insertions(+), 13 deletions(-) diff --git a/.github/workflows/fetch-sfs-workflow.yml b/.github/workflows/fetch-sfs-workflow.yml index db882730..63cfefd4 100644 --- a/.github/workflows/fetch-sfs-workflow.yml +++ b/.github/workflows/fetch-sfs-workflow.yml @@ -44,7 +44,7 @@ jobs: - name: Process JSON files to Markdown files with Selex tags run: | - python sfs_processor.py --input sfs_json --output SFS --formats md-markers + python sfs_processor.py --input sfs_json --output output/md --formats md-markers env: PYTHONPATH: ${{ github.workspace }} @@ -60,7 +60,7 @@ jobs: CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD) # Create a new branch for commits if we have changes - git add SFS/ sfs_json/ + git add output/md/ sfs_json/ if git diff --staged --quiet; then echo "Inga nya filer att committa" echo "has_changes=false" >> $GITHUB_OUTPUT diff --git a/.github/workflows/html-export-workflow.yml b/.github/workflows/html-export-workflow.yml index 041cbd68..4629cfb3 100644 --- a/.github/workflows/html-export-workflow.yml +++ b/.github/workflows/html-export-workflow.yml @@ -48,9 +48,9 @@ jobs: - name: Generate HTML export run: | if [ -n "${{ inputs.filter }}" ]; then - python sfs_processor.py --input sfs_json --output SFS --formats html --filter "${{ inputs.filter }}" + python sfs_processor.py --input sfs_json --output output/html --formats html --filter "${{ inputs.filter }}" else - python sfs_processor.py --input sfs_json --output SFS --formats html + python sfs_processor.py --input sfs_json --output output/html --formats html fi env: PYTHONPATH: ${{ github.workspace }} @@ -89,9 +89,9 @@ jobs: aws configure set region us-east-1 aws configure set output json - - name: Upload SFS folder to Cloudflare R2 + - name: Upload HTML folder to Cloudflare R2 run: | - aws s3 sync SFS/ s3://${{ secrets.CLOUDFLARE_R2_BUCKET_NAME }}/sfs/ \ + aws s3 sync output/html/ s3://${{ secrets.CLOUDFLARE_R2_BUCKET_NAME }}/sfs/ \ --endpoint-url https://${{ secrets.CLOUDFLARE_R2_ACCOUNT_ID }}.r2.cloudflarestorage.com \ --delete \ --cache-control "public, max-age=3600" \ diff --git a/.github/workflows/testdocs-workflow.yml b/.github/workflows/testdocs-workflow.yml index 07d00988..af971f37 100644 --- a/.github/workflows/testdocs-workflow.yml +++ b/.github/workflows/testdocs-workflow.yml @@ -39,6 +39,6 @@ jobs: - name: Process test JSON files to Markdown files run: | - python sfs_processor.py --input data/testdocs/rkrattsbaser --output SFS --formats md,md-markers,git + python sfs_processor.py --input data/testdocs/rkrattsbaser --output output/md --formats md,md-markers,git env: PYTHONPATH: ${{ github.workspace }} \ No newline at end of file diff --git a/.github/workflows/upcoming-changes-workflow.yml b/.github/workflows/upcoming-changes-workflow.yml index 8a2dead8..1cdbb130 100644 --- a/.github/workflows/upcoming-changes-workflow.yml +++ b/.github/workflows/upcoming-changes-workflow.yml @@ -32,7 +32,7 @@ jobs: - name: Run upcoming changes script run: | # Kör scriptet på markdown-katalogen för att uppdatera kommande.yaml - python temporal/upcoming_changes.py SFS/ + python temporal/upcoming_changes.py output/md/ env: PYTHONPATH: ${{ github.workspace }} @@ -42,7 +42,7 @@ jobs: # Detta gör att vi kan hämta ikapp missade dagar om jobbet misslyckats eval $(python temporal/get_temporal_date_range.py) echo "Bearbetar temporal commits från $FROM_DATE till $TO_DATE" - python scripts/temporal_commits_batch.py SFS/ --from-date "$FROM_DATE" --to-date "$TO_DATE" --verbose + python scripts/temporal_commits_batch.py output/md/ --from-date "$FROM_DATE" --to-date "$TO_DATE" --verbose env: PYTHONPATH: ${{ github.workspace }} GIT_GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} diff --git a/.gitignore b/.gitignore index dba3668a..df34425b 100644 --- a/.gitignore +++ b/.gitignore @@ -14,5 +14,4 @@ htmlcov/ # Ignore output files logs/ output/ -sfs-output/ data/kommande.yaml \ No newline at end of file diff --git a/README.md b/README.md index 688323c0..76cad7ef 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ pip install -r requirements.txt Konvertera JSON-filer med författningar till Markdown: ```bash -python sfs_processor.py --input sfs_json --output SFS --formats md-markers +python sfs_processor.py --input sfs_json --output output/md --formats md-markers ``` ## Output-format @@ -73,7 +73,7 @@ Nedladdade filer sparas som standard i katalogen `sfs_docs`. Du kan ange annan k Konvertera alla JSON-filer i en katalog till Markdown: ```bash -python sfs_processor.py --input sfs_json --output SFS --formats md-markers +python sfs_processor.py --input sfs_json --output output/md --formats md-markers ``` ### Struktur av genererade Markdown-filer @@ -175,7 +175,7 @@ För att se hur en lag såg ut vid ett specifikt datum: ```bash # Se hur lagen såg ut 2023-01-01 -python sfs_processor.py --input sfs_json --output SFS --formats md --target-date 2023-01-01 +python sfs_processor.py --input sfs_json --output output/md --formats md --target-date 2023-01-01 ``` Detta är användbart för att skapa historiska versioner eller för att förstå hur lagen såg ut vid en viss tidpunkt. diff --git a/pyproject.toml b/pyproject.toml index 204a93f5..bc3a68bd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -60,6 +60,8 @@ omit = [ "*/site-packages/*", ".venv/*", "venv/*", + "sfs_docs/*", + "output/*", ] [tool.coverage.report] From 454d472abf22edd1cc24dc293f7e3c47c92bffbb Mon Sep 17 00:00:00 2001 From: Martin Carlsson Date: Sun, 4 Jan 2026 21:31:29 +0100 Subject: [PATCH 2/3] =?UTF-8?q?Flytta=20kommande.yaml=20fr=C3=A5n=20data/?= =?UTF-8?q?=20till=20output/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit data/ ska innehålla källdata och konfiguration, inte genererad output. kommande.yaml genereras från markdown-filer och är därför output. Ändringar: - temporal/upcoming_changes.py: UPCOMING_CHANGES_FILE_PATH → output/kommande.yaml - .gitignore: Ta bort data/kommande.yaml (täcks av output/) - upcoming-changes-workflow.yml: git add output/kommande.yaml --- .github/workflows/upcoming-changes-workflow.yml | 2 +- .gitignore | 3 +-- temporal/upcoming_changes.py | 4 ++-- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/upcoming-changes-workflow.yml b/.github/workflows/upcoming-changes-workflow.yml index 1cdbb130..530a8e1c 100644 --- a/.github/workflows/upcoming-changes-workflow.yml +++ b/.github/workflows/upcoming-changes-workflow.yml @@ -55,7 +55,7 @@ jobs: - name: Commit and push kommande.yaml updates run: | # Lägg till den uppdaterade kommande.yaml filen - git add data/kommande.yaml + git add output/kommande.yaml if git diff --staged --quiet; then echo "Inga ändringar i kommande.yaml" diff --git a/.gitignore b/.gitignore index df34425b..a477a5d8 100644 --- a/.gitignore +++ b/.gitignore @@ -13,5 +13,4 @@ htmlcov/ # Ignore output files logs/ -output/ -data/kommande.yaml \ No newline at end of file +output/ \ No newline at end of file diff --git a/temporal/upcoming_changes.py b/temporal/upcoming_changes.py index b1bdd3d3..b58bbfcb 100644 --- a/temporal/upcoming_changes.py +++ b/temporal/upcoming_changes.py @@ -20,7 +20,7 @@ ## Output Format -The module generates a YAML file at `data/kommande.yaml` with the following structure: +The module generates a YAML file at `output/kommande.yaml` with the following structure: ```yaml '2025-01-15': @@ -60,7 +60,7 @@ from typing import List, Dict, Optional from pathlib import Path -UPCOMING_CHANGES_FILE_PATH = "data/kommande.yaml" +UPCOMING_CHANGES_FILE_PATH = "output/kommande.yaml" From d188293e84fd4698475bf12609ec13048c986028 Mon Sep 17 00:00:00 2001 From: Martin Carlsson Date: Sun, 4 Jan 2026 21:34:52 +0100 Subject: [PATCH 3/3] Improve coverage configuration Add improvements from feature/improved-pyproject: - Enable branch coverage (branch = true) - Add abstractmethod to exclude_lines for better coverage reporting - Keep output/* omit (covers output/md, output/html, etc.) --- pyproject.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index bc3a68bd..1f1c3bd8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -52,6 +52,7 @@ markers = [ # Coverage settings [tool.coverage.run] +branch = true source = ["."] omit = [ "test/*", @@ -72,4 +73,5 @@ exclude_lines = [ "raise NotImplementedError", "if __name__ == .__main__.:", "if TYPE_CHECKING:", + "@(abc\\.)?abstractmethod", ]