Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 14 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,24 @@ Human-readable summary of user-facing changes. **Detailed release notes:** [docs

## Unreleased (`main`)

Empty while the working tree carries **`1.8.0-beta`** (see section below).
Empty while the working tree carries **`1.8.0-rc`** (see section below).

---

## 1.8.0-beta (working line on `main` — git-only)
## 1.8.0-rc (working line on `main` — git-only)

> Opens the **`1.8.0`** public line. **`[project] version = 1.8.0-beta`** (ADR-0073 PEP 440 hyphen form). **`[tool.databoar] maturity_build = 69`** — octet **resets** into beta band **1–126** at cut (`604c1b5c`, 2026-08-02); **reconciled 2026-08-18** after **68** `fix`/`feat` commits on `main` were not reflected in `pyproject.toml` during a heavy sprint (**process lapse, not a policy regression**). Does **not** continue from **`1.7.4.post12` / `.263`**. **Not** on PyPI or Docker Hub **`latest`** (distribution policy: pre-release = git-only). Notes: [docs/releases/1.8.0-beta.md](docs/releases/1.8.0-beta.md).
> Release candidate for **`1.8.0`**. **`[project] version = 1.8.0-rc`** (ADR-0073 PEP 440 hyphen form). **`[tool.databoar] maturity_build = 127`** — **rc band entry** on promotion from **`1.8.0-beta`** (last beta reconciliation **`.116`**, 2026-08-22). **Not** on PyPI or Docker Hub **`latest`**. Notes: [docs/releases/1.8.0-rc.md](docs/releases/1.8.0-rc.md).

### Promotion from `1.8.0-beta` (2026-09-22)

- **Cut:** `chore(release): cut 1.8.0-rc` — suffix **`1.8.0-beta` → `1.8.0-rc`**; `maturity_build` **116 → 127** (rc band floor; ADR-0073 same-line beta→rc decision).
- **Highlights:** feature and fix bullets accumulated during the beta line remain under **§ 1.8.0-beta** below (not duplicated here).

---

## 1.8.0-beta (frozen at RC promotion — git-only history)

> Opened the **`1.8.0`** public line (superseded on `main` by **`1.8.0-rc`** — see § above). **`[project] version` was `1.8.0-beta`**; **`maturity_build`** reached **`.116`** at last beta reconciliation (**2026-08-22**). Notes: [docs/releases/1.8.0-beta.md](docs/releases/1.8.0-beta.md).

### Maturity octet reconciliation (2026-08-18)

Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Thank you for considering contributing. This document covers local setup, workfl
uvx data-boar --demo
```

Pre-release lines on **`main`** (for example **`1.8.0-beta`**) stay **git-only** — they are not the PyPI wheel. For contributors, or to run that working tree, use a **git clone** with **`uv sync`** or **`pip install -e .`**. The tree still contains the historical **`lgpd_crawler`** Python package for imports and continuity — that is implementation layout, not the product name. Rename context: **[ADR 0014](docs/adr/ADR-0014-rename-repo-and-package-python3-lgpd-crawler-to-data-boar.md)**.
Pre-release lines on **`main`** (for example **`1.8.0-rc`**) stay **git-only** — they are not the PyPI wheel. For contributors, or to run that working tree, use a **git clone** with **`uv sync`** or **`pip install -e .`**. The tree still contains the historical **`lgpd_crawler`** Python package for imports and continuity — that is implementation layout, not the product name. Rename context: **[ADR 0014](docs/adr/ADR-0014-rename-repo-and-package-python3-lgpd-crawler-to-data-boar.md)**.

**SQL connectors (optional extras):** Core **`pip install data-boar`** includes **filesystem + SQLite** scanning only — no PostgreSQL/MySQL/MariaDB/MSSQL/Oracle C-extension wheels. Install per engine:

Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.pt_BR.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Obrigado por considerar contribuir. Este documento cobre a configuração local,
uvx data-boar --demo
```

Linhas pré-release no **`main`** (por exemplo **`1.8.0-beta`**) continuam **só git** — não são a wheel do PyPI. Para colaboradores, ou para rodar essa árvore de trabalho, use **clone git** + **`uv sync`** ou **`pip install -e .`**. O repositório ainda contém o pacote Python histórico **`lgpd_crawler`** (imports) — é detalhe de implementação, não o nome do produto. Contexto da renomeação: **[ADR 0014](docs/adr/ADR-0014-rename-repo-and-package-python3-lgpd-crawler-to-data-boar.md)**.
Linhas pré-release no **`main`** (por exemplo **`1.8.0-rc`**) continuam **só git** — não são a wheel do PyPI. Para colaboradores, ou para rodar essa árvore de trabalho, use **clone git** + **`uv sync`** ou **`pip install -e .`**. O repositório ainda contém o pacote Python histórico **`lgpd_crawler`** (imports) — é detalhe de implementação, não o nome do produto. Contexto da renomeação: **[ADR 0014](docs/adr/ADR-0014-rename-repo-and-package-python3-lgpd-crawler-to-data-boar.md)**.

**Conectores SQL (extras opcionais):** o **`pip install data-boar`** *core* cobre **arquivos + SQLite** — sem wheels C-extension de PostgreSQL/MySQL/MariaDB/MSSQL/Oracle. Instale por motor:

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ Data Boar runs as a **one-shot CLI** audit or as a **REST API** (default port 80
| Sensitivity detection (ML/DL terms) | [SENSITIVITY_DETECTION.md](docs/SENSITIVITY_DETECTION.md) · [SENSITIVITY_DETECTION.pt_BR.md](docs/SENSITIVITY_DETECTION.pt_BR.md) |
| Minor / child-related data (thresholds, optional full scan, cross-ref, samples) | [MINOR_DETECTION.md](docs/MINOR_DETECTION.md) · [MINOR_DETECTION.pt_BR.md](docs/MINOR_DETECTION.pt_BR.md) |
| Testing, security, contributing | [docs/TESTING.md](docs/TESTING.md) · [SECURITY.md](SECURITY.md) · [CONTRIBUTING.md](CONTRIBUTING.md) |
| **`pip` / `uvx` from PyPI** | The package **is on** [PyPI](https://pypi.org/project/data-boar/). Install with **`pip install data-boar`** or **`pipx install data-boar`**. Zero-clone CLI: **`uvx data-boar --config config.yaml`**. Lowest-friction demo: **`uvx data-boar --demo`**. The last **stable** wheel can lag **`main`** (pre-release lines such as **`1.8.0-beta`** are git-only). Contributor clone: **git clone** + **`uv sync`** — see [CONTRIBUTING.md — Repository and install identity](CONTRIBUTING.md#repository-and-install-identity-data-boar). On Debian/Ubuntu and Fedora with Python >=3.12, `pip`/`pipx` is usually frictionless; RHEL9-family and Alpine/musl currently need one extra onboarding step — see [TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md). |
| **`pip` / `uvx` from PyPI** | The package **is on** [PyPI](https://pypi.org/project/data-boar/). Install with **`pip install data-boar`** or **`pipx install data-boar`**. Zero-clone CLI: **`uvx data-boar --config config.yaml`**. Lowest-friction demo: **`uvx data-boar --demo`**. The last **stable** wheel can lag **`main`** (pre-release lines such as **`1.8.0-rc`** are git-only). Contributor clone: **git clone** + **`uv sync`** — see [CONTRIBUTING.md — Repository and install identity](CONTRIBUTING.md#repository-and-install-identity-data-boar). On Debian/Ubuntu and Fedora with Python >=3.12, `pip`/`pipx` is usually frictionless; RHEL9-family and Alpine/musl currently need one extra onboarding step — see [TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md). |

**Quick start:** the [5-min QuickStart](QUICKSTART.md) walks through both paths (Docker or local `uv`, copy-paste); the full flag and configuration reference is in [USAGE.md](docs/USAGE.md). For Linux distro caveats (including current RHEL9-family and Alpine/musl `pipx` onboarding pre-steps), see [TROUBLESHOOTING.md](docs/TROUBLESHOOTING.md) and the [OS compatibility matrix](docs/ops/OS_COMPATIBILITY_TESTING_MATRIX.md). On **Linux (native, not Docker)**, install system libraries **before** `uv sync` — see [Technical guide — Requirements and environment preparation](docs/TECH_GUIDE.md#requirements-and-environment-preparation). **Do not commit** root `config.yaml` (`.gitignore`); it may contain LAN paths and secrets — see [CONTRIBUTING.md](CONTRIBUTING.md#public-repo-hygiene-lan-credentials).

Expand Down
2 changes: 1 addition & 1 deletion README.pt_BR.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ Se você precisa de:
- **Detecção de sensibilidade (termos ML/DL):** [SENSITIVITY_DETECTION.pt_BR.md](docs/SENSITIVITY_DETECTION.pt_BR.md) · [SENSITIVITY_DETECTION.md](docs/SENSITIVITY_DETECTION.md)
- **Dados de menores / crianças (limiar, varredura opcional ampliada, cruzamento, amostras):** [MINOR_DETECTION.pt_BR.md](docs/MINOR_DETECTION.pt_BR.md) · [MINOR_DETECTION.md](docs/MINOR_DETECTION.md)
- **Testes, segurança, contribuição:** [docs/TESTING.pt_BR.md](docs/TESTING.pt_BR.md) · [SECURITY.pt_BR.md](SECURITY.pt_BR.md) · [CONTRIBUTING.pt_BR.md](CONTRIBUTING.pt_BR.md)
- **pip / `uvx` via PyPI:** o pacote **já está no** [PyPI](https://pypi.org/project/data-boar/). Instale com **`pip install data-boar`** ou **`pipx install data-boar`**. CLI sem clone: **`uvx data-boar --config config.yaml`**. Demo de menor atrito: **`uvx data-boar --demo`**. A última wheel **estável** pode ficar atrás do **`main`** (linhas pré-release como **`1.8.0-beta`** são só git). Clone de colaborador: **git clone** + **`uv sync`** — veja [CONTRIBUTING.pt_BR.md — Repositório e identidade](CONTRIBUTING.pt_BR.md#repositório-e-identidade-de-instalação-data-boar). Em Debian/Ubuntu e Fedora com Python >=3.12, `pip`/`pipx` costuma ser sem atrito; em RHEL9-family e Alpine/musl há 1 passo extra de onboarding — veja [TROUBLESHOOTING.pt_BR.md](docs/TROUBLESHOOTING.pt_BR.md).
- **pip / `uvx` via PyPI:** o pacote **já está no** [PyPI](https://pypi.org/project/data-boar/). Instale com **`pip install data-boar`** ou **`pipx install data-boar`**. CLI sem clone: **`uvx data-boar --config config.yaml`**. Demo de menor atrito: **`uvx data-boar --demo`**. A última wheel **estável** pode ficar atrás do **`main`** (linhas pré-release como **`1.8.0-rc`** são só git). Clone de colaborador: **git clone** + **`uv sync`** — veja [CONTRIBUTING.pt_BR.md — Repositório e identidade](CONTRIBUTING.pt_BR.md#repositório-e-identidade-de-instalação-data-boar). Em Debian/Ubuntu e Fedora com Python >=3.12, `pip`/`pipx` costuma ser sem atrito; em RHEL9-family e Alpine/musl há 1 passo extra de onboarding — veja [TROUBLESHOOTING.pt_BR.md](docs/TROUBLESHOOTING.pt_BR.md).

**Início rápido:** o [QuickStart de 5 min](QUICKSTART.pt_BR.md) cobre os dois caminhos (Docker ou `uv` local, copia-e-cola); a referência completa de flags e configuração está em [USAGE.pt_BR.md](docs/USAGE.pt_BR.md). Para ressalvas por distro Linux (incluindo os pré-passos atuais de onboarding `pipx` em RHEL9-family e Alpine/musl), veja [TROUBLESHOOTING.pt_BR.md](docs/TROUBLESHOOTING.pt_BR.md) e a [matriz de compatibilidade de SO](docs/ops/OS_COMPATIBILITY_TESTING_MATRIX.pt_BR.md). Em **Linux nativo (sem Docker)**, instale as bibliotecas de sistema **antes** de `uv sync` — veja [Guia técnico — Requisitos e preparação do ambiente](docs/TECH_GUIDE.pt_BR.md#requisitos-e-preparação-do-ambiente). **Não commite** o `config.yaml` da raiz (`.gitignore`); pode conter caminhos da LAN e segredos — veja a seção **Higiene do repositório público** em [CONTRIBUTING.pt_BR.md](CONTRIBUTING.pt_BR.md).

Expand Down
2 changes: 1 addition & 1 deletion SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ OpenSSF Scorecard for this repository (badge after publish; JSON API): [Scorecar
| Line | Status |
| ----- | ------ |
| **1.7.4.x** (stable **1.7.4**, including PyPI **1.7.4.postN**; Docker Hub `fabioleitao/data_boar` **1.7.4** / `latest` when those tags are published) | **Supported** — security fixes for this stable line |
| **`main`** (working tree; currently **1.8.0-beta**, git-only) | **Supported** — fixes land here first, then stable as appropriate |
| **`main`** (working tree; currently **1.8.0-rc**, git-only) | **Supported** — fixes land here first, then stable as appropriate |

**Not supported:** tags and images **older than 1.7.4**; unofficial forks or rebuilt images; unofficial mirrors; any fourth-segment “1.7.4.N” public version (this project does not publish that scheme — see [docs/VERSIONING.md](docs/VERSIONING.md)).

Expand Down
2 changes: 1 addition & 1 deletion SECURITY.pt_BR.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ OpenSSF Scorecard deste repositório (badge depois do publish; API JSON): [visua
| Linha | Estado |
| ----- | ------ |
| **1.7.4.x** (estável **1.7.4**, incluindo PyPI **1.7.4.postN**; Docker Hub `fabioleitao/data_boar` **1.7.4** / `latest` quando essas tags estão publicadas) | **Suportada** — correções de segurança nesta linha estável |
| **`main`** (árvore de trabalho; atualmente **1.8.0-beta**, só git) | **Suportada** — correções entram aqui primeiro, depois no estável quando couber |
| **`main`** (árvore de trabalho; atualmente **1.8.0-rc**, só git) | **Suportada** — correções entram aqui primeiro, depois no estável quando couber |

**Não suportado:** tags e imagens **anteriores a 1.7.4**; forks ou imagens reconstruídas não oficiais; espelhos não oficiais; qualquer versão pública com quarto segmento “1.7.4.N” (este projeto não publica esse esquema — veja [docs/VERSIONING.pt_BR.md](docs/VERSIONING.pt_BR.md)).

Expand Down
2 changes: 1 addition & 1 deletion core/about.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
from pathlib import Path

# docs/VERSIONING.md checklist §2 — keep identical to pyproject.toml ``[project].version``.
_FALLBACK_VERSION = "1.8.0-beta"
_FALLBACK_VERSION = "1.8.0-rc"


def _package_version() -> str:
Expand Down
4 changes: 2 additions & 2 deletions docs/VERSIONING.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,11 @@ When the project opens a **new semver line** (e.g. **`1.8.0`** after **`1.7.4`**

Suffixes (`-beta`, `-rc`, `-rc-N`) are required on `main` while a **release gate** issue (e.g. GitHub #406) is **open**. A green **commit gate** (`check-all`) never authorizes removing them — see ADR-0072. Gate **#406** closed with **1.7.4** stable (PR **#1024**).

### Current lines (`1.7.4` published · `1.8.0-beta` working)
### Current lines (`1.7.4` published · `1.8.0-rc` working)

| Label | Status |
| --- | --- |
| **`main` working tree** | **`1.8.0-beta`** in `pyproject.toml` (`maturity_build = 116` — beta band; reconciled 2026-08-22). Git-only for consumers. |
| **`main` working tree** | **`1.8.0-rc`** in `pyproject.toml` (`maturity_build = 127` — rc band entry; promoted 2026-09-22). Git-only for consumers. |
| **Published customer channels** | **`1.7.4.post12`** / **`v1.7.4.post12`** on PyPI + Hub (+ historical GA **`1.7.4`**) until a later **`1.8.0`** release-ritual |
| **#970** | Premature stable bump/tag without release gate — corrected by **ADR-0072** + gate **#406**; **`1.7.4` is not VOID** |
| **Post-GA public fix numbering** | **Resolved** (#977) — **`1.7.4`** fix-line used **`.postN`** + octet; **`.postN` does not carry** onto **`1.8.0-beta`** |
Expand Down
4 changes: 2 additions & 2 deletions docs/VERSIONING.pt_BR.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,11 +64,11 @@ Ao abrir uma **nova linha semver** (ex.: **`1.8.0`** após **`1.7.4`**), **`matu

Sufixos (`-beta`, `-rc`, `-rc-N`) são obrigatórios em `main` enquanto um issue de **release gate** (ex.: GitHub #406) estiver **aberto**. **Commit gate** verde (`check-all`) **não** autoriza removê-los — ver ADR-0072. Gate **#406** fechado com **1.7.4** stable (PR **#1024**).

### Linhas atuais (`1.7.4` publicado · `1.8.0-beta` working)
### Linhas atuais (`1.7.4` publicado · `1.8.0-rc` working)

| Rótulo | Status |
| --- | --- |
| **Working tree `main`** | **`1.8.0-beta`** no `pyproject.toml` (`maturity_build = 116` — faixa beta; reconciliado 2026-08-18). Só git para consumidores. |
| **Working tree `main`** | **`1.8.0-rc`** no `pyproject.toml` (`maturity_build = 127` — entrada na faixa rc; promovido 2026-09-22). Só git para consumidores. |
| **Canais publicados** | **`1.7.4.post12`** / **`v1.7.4.post12`** no PyPI + Hub (+ GA histórico **`1.7.4`**) até ritual futuro de **`1.8.0`** |
| **#970** | Bump/tag stable prematuro sem release gate — corrigido por **ADR-0072** + gate **#406**; **`1.7.4` não é VOID** |
| **Numeração pública pós-GA** | **Resolvido** (#977) — fix-line **`1.7.4`** usou **`.postN`** + octeto; **`.postN` não carrega** para **`1.8.0-beta`** |
Expand Down
2 changes: 1 addition & 1 deletion docs/data_boar.1
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.\" data_boar.1 - man page for Data Boar (application; PyPI distribution: data-boar)
.\" View as: man data-boar (primary), man data_boar or man lgpd_crawler (symlink aliases)
.TH DATA-BOAR 1 "August 2026" "Data Boar 1.8.0-beta" "User Commands"
.TH DATA-BOAR 1 "September 2026" "Data Boar 1.8.0-rc" "User Commands"
.SH NAME
data-boar, data_boar, lgpd_crawler \- enterprise data discovery and risk governance (Data Boar)
.
Expand Down
2 changes: 1 addition & 1 deletion docs/data_boar.5
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
.\" data_boar.5 - file formats and configuration for Data Boar (PyPI distribution: data-boar)
.\" View as: man 5 data-boar (primary), man 5 data_boar or man 5 lgpd_crawler (symlink aliases)
.TH DATA-BOAR 5 "August 2026" "Data Boar 1.8.0-beta" "File Formats"
.TH DATA-BOAR 5 "September 2026" "Data Boar 1.8.0-rc" "File Formats"
.SH NAME
data-boar config, data_boar config, lgpd_crawler config \- configuration and pattern file formats for Data Boar (compliance-aware discovery and mapping)
.
Expand Down
2 changes: 1 addition & 1 deletion docs/ops/HOMEBREW_TAP.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Automation:

Sync to the public tap repo needs repository secret **`HOMEBREW_TAP_TOKEN`** (contents:write on `DataBoar/homebrew-databoar`). Without it, the formula still bumps in this product repo via PR; the tap clone is skipped.

Pre-release git-only versions (`1.8.0-beta`) are **not** formula targets — Homebrew users get the latest **PyPI** release.
Pre-release git-only versions (`1.8.0-rc`) are **not** formula targets — Homebrew users get the latest **PyPI** release.

## Troubleshooting

Expand Down
2 changes: 1 addition & 1 deletion docs/ops/HOMEBREW_TAP.pt_BR.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Automação:

Sincronizar o repositório público do tap exige o secret **`HOMEBREW_TAP_TOKEN`** (contents:write em `DataBoar/homebrew-databoar`). Sem o secret, a fórmula ainda sobe PR neste repo; o clone do tap é ignorado.

Versões git-only de pré-release (`1.8.0-beta`) **não** são alvo da fórmula — quem usa Homebrew recebe o último release **PyPI**.
Versões git-only de pré-release (`1.8.0-rc`) **não** são alvo da fórmula — quem usa Homebrew recebe o último release **PyPI**.

## Resolução de problemas

Expand Down
4 changes: 2 additions & 2 deletions docs/ops/today-mode/PUBLISHED_SYNC.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@
| Field | Value |
| ----- | ----- |
| **Verified** | **2026-08-18** |
| **`pyproject.toml` on `main`** | **`1.8.0-beta`** (`maturity_build=116`) — `1.8.0` beta line; octet reconciled after sprint (ADR-0073). Git-only for consumers; **not** on PyPI/Hub. |
| **`pyproject.toml` on `main`** | **`1.8.0-rc`** (`maturity_build=127`) — `1.8.0` release-candidate line (ADR-0073). Git-only for consumers; **not** on PyPI/Hub. |
| **PyPI** (published) | [**data-boar `1.7.4.post12`**](https://pypi.org/project/data-boar/1.7.4.post12/) — `pip install data-boar` (published **2026-07-30 00:42:09 UTC**, Trusted Publishing via **`publish-pypi.yml`**) |
| **GitHub Release Latest** (published) | [**v1.7.4.post12**](https://github.com/DataBoar/data-boar/releases/tag/v1.7.4.post12) (notes: **`docs/releases/1.7.4.post12.md`**, **`CHANGELOG.md`**; annotated tag SSH-signed). Optional pre-release tag **`v1.8.0-beta`** when operator cuts it — see [1.8.0-beta.md](../../releases/1.8.0-beta.md). |
| **Docker Hub** (published) | **`fabioleitao/data_boar:1.7.4.post12`** + **`latest`** = `sha256:ab8f5dad3e336…` (published **2026-07-30**; base **`python:3.14-slim`**, distroless nonroot, **`popcnt=0`**). Historical June GA tag **`1.7.4`** left untouched. **No** Hub marketing refresh for **`-beta`**. |
| **Wheelhouse** | [**`wheelhouse-x86-64-v1-2026-07-29`**](https://github.com/DataBoar/data-boar-site/releases/tag/wheelhouse-x86-64-v1-2026-07-29) — **58** `.whl` (incl. **14× `cp314t`**: 10 ML + 4 SQL extras `linux_x86_64`) |
| **Next publishable** | Promote toward **`1.8.0-rc`** / stable **`1.8.0`** per [VERSIONING.md](../VERSIONING.md) + ADR-0072/0073 (release gate + release-ritual) |
| **Next publishable** | Stable **`1.8.0`** per [VERSIONING.md](../VERSIONING.md) + ADR-0072/0073 (release-ritual) |

---

Expand Down
Loading
Loading