docs: add CHANGELOG.md and documentation overview
- CHANGELOG.md (Keep a Changelog, German) for 0.1.0, 0.1.1 and unreleased documentation work, incl. "Beim Update zu tun" - README: documentation table (manual, how it works, changelog, license) - manual: release steps now include updating CHANGELOG/FUNKTIONSWEISE Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
d9e495d36a
commit
aec824d8be
3 changed files with 64 additions and 4 deletions
|
|
@ -840,9 +840,11 @@ src/mdgrep/
|
|||
Neue Version veröffentlichen:
|
||||
|
||||
1. Version in `pyproject.toml` **und** `src/mdgrep/__init__.py` erhöhen (bei Widget-Änderungen auch im Kopf von `mdgrep-widget.js`)
|
||||
2. Tests laufen lassen: `.venv/bin/pytest`
|
||||
3. Commit, Tag und Push: `git tag -a v0.1.2 -m "mdgrep 0.1.2" && git push origin main --tags`
|
||||
4. In den nutzenden Projekten den Tag in `requirements.txt` anpassen und `pip install -r requirements.txt`
|
||||
2. `CHANGELOG.md`: Abschnitt `[Unreleased]` in die neue Version umbenennen (mit Datum), „Beim Update zu tun"
|
||||
ergänzen; bei Änderungen am inneren Aufbau auch `FUNKTIONSWEISE.md` aktualisieren
|
||||
3. Tests laufen lassen: `.venv/bin/pytest`
|
||||
4. Commit, Tag und Push: `git tag -a v0.1.2 -m "mdgrep 0.1.2" && git push origin main --tags`
|
||||
5. In den nutzenden Projekten den Tag in `requirements.txt` anpassen und `pip install -r requirements.txt`
|
||||
ausführen; laufende Dienste neu starten.
|
||||
|
||||
Versionsregel: Änderungen an öffentlichen Funktionen, am JSON-Format oder an Widget-Optionen, die
|
||||
|
|
|
|||
51
CHANGELOG.md
Normal file
51
CHANGELOG.md
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
# Änderungsprotokoll
|
||||
|
||||
Alle nennenswerten Änderungen an mdgrep. Format nach [Keep a Changelog](https://keepachangelog.com/de/1.1.0/),
|
||||
Versionen nach [Semantic Versioning](https://semver.org/lang/de/) (vor 1.0: Nebenversion = möglicher Bruch).
|
||||
|
||||
Jede Version ist als Git-Tag verfügbar:
|
||||
`pip install "mdgrep[web] @ git+https://kitux.de/forgejo/dschlueter/mdgrep.git@vX.Y.Z"`
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
### Dokumentation
|
||||
- `BEDIENUNGSANLEITUNG.md` (deutsch): Installation, Suchsyntax, Kommandozeile, Python-API, Web-API, Widget,
|
||||
Serverbetrieb, Voraussetzungen an die Dokumente, Rezepte, Fehlercodes, Fehlersuche, Release-Ablauf.
|
||||
- `FUNKTIONSWEISE.md`: interner Aufbau, Datenfluss und Designentscheidungen.
|
||||
- `CHANGELOG.md` (diese Datei).
|
||||
|
||||
## [0.1.1] – 2026-10-12
|
||||
|
||||
### Neu
|
||||
- `split_markdown()` / `load_markdown()`: Parameter `dialect="commonmark" | "python-markdown"`, damit Listen-Blöcke
|
||||
zur HTML-Struktur des verwendeten Renderers passen (Python-Markdown: Liste braucht Leerzeile davor,
|
||||
Verschachtelung erst ab 4 Leerzeichen).
|
||||
|
||||
### Geändert
|
||||
- Deutlich schneller: der durchsuchte Text (Titel + Text) wird beim Laden einmal vorberechnet; das
|
||||
Regex-Zeitlimit gilt nur noch für `/regex/`-Terme (Wörter und Phrasen laufen linear). Typische Suchen über
|
||||
26 000 Blöcke: ca. 30–140 ms statt 250–700 ms.
|
||||
|
||||
### Beim Update zu tun
|
||||
- Nichts; voll kompatibel zu 0.1.0. Widget-Dateien unverändert (Kopfzeile meldet weiterhin v0.1.0).
|
||||
|
||||
## [0.1.0] – 2026-10-12
|
||||
|
||||
Erstveröffentlichung.
|
||||
|
||||
### Neu
|
||||
- Suchsprache: Wortbestandteile, `"Phrasen"`, `/reguläre Ausdrücke/`, `AND`/`OR`/`NOT` (auch `UND`/`ODER`/
|
||||
`NICHT`, `&`, `|`, `-`, `!`) mit Klammern; Groß-/Kleinschreibung egal; Fehler mit festem Code und Position;
|
||||
Schutz vor katastrophalen regulären Ausdrücken durch Zeitlimits.
|
||||
- `SearchEngine` über Blöcke im Speicher: Filter, eigene Prädikate, Gruppierung, Sortierung, Seiten,
|
||||
Zeitbudget, automatisches Neuladen, Ausschnitte mit Hervorhebung.
|
||||
- Markdown-Zerleger mit den Modi `file`, `heading`, `list`, `paragraph`; Markdown → Text.
|
||||
- Kommandozeile `mdgrep` (grep-artig, JSON-Ausgabe, grep-Rückgabewerte).
|
||||
- Flask-Blueprint/-App mit JSON-API und Auslieferung der Widget-Dateien; Entwicklungsserver
|
||||
`python -m mdgrep.web`.
|
||||
- JavaScript-Such-Widget ohne Framework: Live-Suche, URL-Zustand, Filter, „Mehr laden", Syntaxhilfe,
|
||||
deutsch/englisch, Gestaltung über CSS-Variablen; `export_static()` für statische Seiten.
|
||||
|
||||
[Unreleased]: https://kitux.de/forgejo/dschlueter/mdgrep/compare/v0.1.1...main
|
||||
[0.1.1]: https://kitux.de/forgejo/dschlueter/mdgrep/compare/v0.1.0...v0.1.1
|
||||
[0.1.0]: https://kitux.de/forgejo/dschlueter/mdgrep/src/tag/v0.1.0
|
||||
|
|
@ -9,7 +9,14 @@ Boolean full-text search over Markdown (and any other text) – as a **Python li
|
|||
- protection against catastrophic regular expressions (time limit per search)
|
||||
- no search index: blocks live in memory, a few MB of text are searched in milliseconds
|
||||
|
||||
Ausführliche deutsche Anleitung: [BEDIENUNGSANLEITUNG.md](BEDIENUNGSANLEITUNG.md)
|
||||
## Documentation
|
||||
|
||||
| Document | Content |
|
||||
|---|---|
|
||||
| [BEDIENUNGSANLEITUNG.md](BEDIENUNGSANLEITUNG.md) | User manual (German): installation, syntax, CLI, API, widget, operation, troubleshooting |
|
||||
| [FUNKTIONSWEISE.md](FUNKTIONSWEISE.md) | How it works (German): architecture, data flow, design decisions, limits |
|
||||
| [CHANGELOG.md](CHANGELOG.md) | Changes per version and what to do when updating |
|
||||
| [LICENSE](LICENSE) | MIT |
|
||||
|
||||
## Installation
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue