Skip to content

Releases: lun-4/awtfdb

0.4.0

30 Dec 16:33
Compare
Choose a tag to compare

many things since 0.3.0

my stats:

  • db is 1.3G
  • 220736 files
  • 76629 tag names
  • 4373168 file<->tag relationships

What's Changed

  • janitor reports by @lun-4 in #63
    • this lets you do a janitor run and then reuse the automatically-generated "report file" to let janitor verify manual fixes without having to check the entire database/all files
  • update to zig 0.12 and use zig package manager by @lun-4 in #65
  • update to zig 0.13 which is the minimum supported version for 0.4.0 b7f91c6

other stuff

  • amv: add support for folder targets
  • arm: autogc (no need to run janitor anymore) 28f2da5
  • szurubooru: various optimizations
    • separate connection pools for performance reasons 13dbe45
    • faster tag usage calculation 2e6fa1c
  • remove hydrus api f6bb1bc
    • szurubooru api does everything better
  • add indexes for queries 0b6bec6

0.3.0

12 Oct 21:09
Compare
Choose a tag to compare

many things since 0.2.0

all needed binaries in tar file hooray

my db stats at time of release:

  • db is 375MB
  • 162547 files indexed
  • 67140 tag names
  • 3411755 file<->tag relationships

What's Changed

  • add fuse frontend by @lun-4 in #45
    • python3 ./extra/awtfdb-fuse.py -s -f /a, then /a/@<file id> or /a/!<pool id> (added in 30b41e3) and the folder will contain a symlink to the real file
  • the ULID migration by @lun-4 in #47
    • more compact db schema, though old files stay in db
    • it also uses mtime of files to determine their timestamps, fa72746
  • tag name regex by @lun-4 in #50
    • example awtfdb-manage config set tag_name_regex '[[:word:]\-_:\(\)@\'/!\.<>+&\?,#\|$\^;\[\]’=\~\\\p{L}–\p{P}]+'
  • Exif in regex tag inferrer by @lun-4 in #53
    • ainclude --dry-run --infer-tags regex --regex-tag-on-match 'mytag' --regex-use-exif --regex 'myregex'
  • update to zig 0.11.0 by @lun-4 in #56

other things

  • ainclude --use-file-timestamp for importing old files and make them not look like new files, 44bc15b
  • als --id to show file id, 845f816
  • als --show-sources, 81f6c29
  • atags search --exact for exact match instead of sql LIKE behavior, b1da48a
  • extra/find_unindexed.py to help on existing libraries, e7b4845
  • make szurubooru frontend next/previous buttons work inside pools (the order will be the one dictated by the pool), f12c0af
  • extra/find_duplicates.py can be fed to extra/delete_duplicates.py to reclaim space, the deletion script double checks md5 hashes to ensure awtfdb hashes didn't drift, 264e9d5
  • add amv utility (not the best one, folder support is missing), 85c1cdc
  • szurubooru remuxes from mkv to webm on request for proper browser playback, 8f3d9cb
  • optimize awtfdb-metrics --full from hours on my db to 1 minute, 467b9c0

Full Changelog: 0.2.0...0.3.0

0.2.0

04 Nov 03:48
Compare
Choose a tag to compare

IMPORTANT TO READ BEFORE DOWNLOADING

for 0.2, awtfdb is built as a single binary, akin to busybox, to install it, download the awtfdb-manage-x86_64-linux binary and copy or link into the following executable names in your $PATH. future work to split the binaries back (#43)

afind
ainclude
als
arm
atags
awtfdb-manage
awtfdb-metrics
awtfdb-watcher

release notes

i have been working on this since April 2022, and also been using it on a daily
basis. the base is relatively solid enough, but there are unanswered design
questions, see issues tab.

a fuckton of things have been made since 0.1, i can't condense it all here.

here are my awtfdb statistics for the past 7 months (November 2022):

  • i have indexed 18240 files.
  • i have created 18338 tags.
  • i have 367258 file<->tag mappings in the database.
  • my database is 34MB.

there is no specification yet that would enable others to contribute to the
system by writing their own tools on top, but that is planned.

this indexing system is very CLI based and there is a szurubooru frontend
for better viewing. see extra/ for that respective tooling.

as this is v0.x, it is NOT PRODUCTION READY. THERE IS NO WARRANTY PROVIDED
BY ME. I WORK ON THIS PART TIME. BEWARE OF BUGS.

v0.1

02 Apr 21:45
Compare
Choose a tag to compare
v0.1 Pre-release
Pre-release

DO NOT USE THIS. DATABASES ARE INCOMPATIBLE

this should be just enough for me to run off with my library.

no binaries, that goes in future releases

there are some unfinished functionality (als does not support file paths), good luck