From 6b0ea8494b6170d5d6923b75c35a6a46f493b746 Mon Sep 17 00:00:00 2001 From: Bastien Chanot Date: Mon, 6 Jul 2026 01:12:53 +0200 Subject: [PATCH] =?UTF-8?q?chore(release):=201.0.0=20=E2=80=94=20version.t?= =?UTF-8?q?xt=20+=20CHANGELOG=20(lineage=20starts)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 41 +++++++++++++++++++++++++++++++++++++++++ version.txt | 1 + 2 files changed, 42 insertions(+) create mode 100644 CHANGELOG.md create mode 100644 version.txt diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..9610143 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,41 @@ +# Changelog + +All notable changes to this project are documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +## [1.0.0] — 2026-07-06 + +First tagged release. Landing page + CV live at https://bchanot.fr, served by +a hardened nginx container behind the host reverse proxy. + +### Security +- Container runs unprivileged: `nginxinc/nginx-unprivileged` digest-pinned, + uid 101, internal port 8080; base at 1.30-alpine (nginx/1.30.3) covering + CVE-2026-42945. Compose hardening: `read_only`, `cap_drop: ALL`, + `no-new-privileges`, loopback-bound port. +- Security headers (CSP, X-Content-Type-Options, X-Frame-Options, + Referrer-Policy, Permissions-Policy) re-included in every nginx location + (add_header inheritance trap closed); `server_tokens off`; CSP `script-src` + pinned to the inline script's sha256 hash; dotfile requests 404 ahead of + the caching locations. + +### Changed +- Palette strictly tokenized: 6 brand hexes + documented functional neutrals + + white-on-dark family; off-palette colors mapped to tokens. +- CSS deduplicated via grouped selectors (landing cards, CV headers / date + chips / roles / tags); dead rules and no-op declarations removed. +- Unused Google Fonts faces trimmed from both pages (CV proven + render-identical; landing verified at 375 px and 1440 px). +- CV date chips in French with en-dashes; language/interest tags as true + pills; profile geography aligned landing ↔ CV (Nantes relocation). +- `prefers-reduced-motion` disables transitions as well as animations; + decorative CTA arrows removed from the accessibility tree. +- PDF served uncompressed (already flate-compressed); single container + healthcheck (image `HEALTHCHECK`, inherited by compose). + +### Added +- `version.txt` and this CHANGELOG — the release lineage starts here. diff --git a/version.txt b/version.txt new file mode 100644 index 0000000..3eefcb9 --- /dev/null +++ b/version.txt @@ -0,0 +1 @@ +1.0.0