Version 0.8.0: gefaltete Indizes markiert, Review abgeschlossen

index -x schreibt Offset-x in den Kopf der .i-Datei, search bisektiert in
der Ordnung des Index. Beim Umstieg .h- und mit -x gebaute .i-Indizes neu
bauen.
This commit is contained in:
wkh
2026-10-30 10:13:59 +01:00
parent d6733e737e
commit 5020d7e982
7 changed files with 82 additions and 17 deletions
+4 -3
View File
@@ -13,7 +13,7 @@ sind nach dem Handbuch neu geschrieben.
mise trust # einmal nach dem Clone: mise.toml freigeben
mise install # Ruby 3.4
mise run install # legt die Symlinks row, column, total ... in bin/ an
mise run test # 132 Tests und die Beispiele aus dem Handbuch
mise run test # 136 Tests und die Beispiele aus dem Handbuch
```
Ohne `mise trust` brechen in einem frisch geklonten Ordner alle `mise`-Befehle ab.
@@ -244,8 +244,9 @@ er nicht mehr passt (außer mit `-a`). Beide halten die Indizes aktuell.
dem Lehrbuch in `demo/handbuch/` (`test/handbuch_test.rb`).
- Die Indexdateien sind dem Original nachgebaut, aber nicht gleich (Handbuch S. 103–108):
die Hashtabelle `.h` hat 2n statt 2n+1 Plätze (Hashfunktion FNV-1a), und in `.i` steht der
Schlüssel vor dem Offset statt dahinter. Alte /rdb-Indizes und `.h`-Dateien früherer
Versionen dieses Nachbaus muss man neu bauen.
Schlüssel vor dem Offset statt dahinter. Ein mit `index -x` gebauter `.i`
heißt in der zweiten Spalte `Offset-x`. Alte /rdb-Indizes sowie `.h`- und mit `-x` gebaute
`.i`-Dateien von Versionen vor 0.8.0 muss man neu bauen.
- Summen, Mittelwerte und /act-Beträge sind Dezimalzahlen (`Rational`), gerundet wird halb auf.
- Dateien, die kein UTF-8 sind, liest `rdb` als Latin-1 und schreibt sie als UTF-8. Fehler
erscheinen als eine Zeile; mit `RDB_DEBUG=1` kommt der Ruby-Backtrace. Werte mit Tab oder