From 0a0fb81837154651d00073b9bdd378425e356763 Mon Sep 17 00:00:00 2001 From: "Percy I. Marzoratti Hill" Date: Sun, 6 Sep 2026 15:41:19 -0300 Subject: [PATCH] Document Windows long-path checkout --- DOCS/technical_documentation.md | 2 ++ README.md | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/DOCS/technical_documentation.md b/DOCS/technical_documentation.md index 1d9fd82..61d1663 100644 --- a/DOCS/technical_documentation.md +++ b/DOCS/technical_documentation.md @@ -15,6 +15,8 @@ Stable exit codes: I configure UTF-8 explicitly for files and console output, including Windows terminals that previously failed on emoji output. +The versioned pbi-tools extraction contains generated visual-directory names that can exceed the legacy Windows path limit. A Windows checkout must use `core.longpaths=true`; the root README provides a one-shot clone command and the repository-local setting. `.gitattributes` also fixes LF for CSV inputs and byte-compared generated artifacts so checksums and generator validation remain stable across Windows and Linux. + ## 2. Contract-driven ETL `src/nba_pipeline/contracts.py` defines the exact header, order, type, nullability, domain, range, primary key and output name for all six inputs. `contracts/schema_v1.0.0.json` is generated from that source and committed for review. diff --git a/README.md b/README.md index 46f0175..51a1af5 100644 --- a/README.md +++ b/README.md @@ -50,6 +50,16 @@ The pipeline does not delete valid fact rows to force foreign keys. It preserves You need Python **3.12**. SQL Server and Power BI Desktop are only required for the BI layer. +The extracted Power BI source contains generated paths longer than the legacy Windows limit. If you use Git for Windows, enable long paths during the first checkout and keep the setting in this clone: + +```powershell +git -c core.longpaths=true clone https://github.com/HeKoXCode/nba-analytics-platform.git +Set-Location nba-analytics-platform +git config core.longpaths true +``` + +GitHub Desktop users can run `git config core.longpaths true` from **Repository → Open in Command Prompt/PowerShell** after cloning. If the initial checkout already failed, delete only that incomplete clone and repeat the command above in a shorter parent directory. + ```powershell py -3.12 -m venv .venv .\.venv\Scripts\Activate.ps1