upend/CHANGELOG.md

26 KiB

Changelog

All notable changes to this project will be documented in this file.

[0.0.76] - 2024-02-06

Bug Fixes

  • [JSLIB]: Fix types for putBlob(), returns a single address

Features

  • [WEBUI,JSLIB]: Upload progress
  • WEBUI: Files can be added or removed from the upload dialog
  • WEBUI: Select all uploaded files when done
  • WEBUI: Start upload on Enter press

Operations & Development

  • Enable CACHE
  • --force pnpm install, DRY Earthfile slightly
  • Cache all rust earthly targets
  • Get rid of AppImage upload to S3
  • Update Earthly image version
  • Remove parallelization
  • WEBUI: Force rebundling of dependencies for dev script
  • Intellij dev config builds jslib before webui launch
  • Git ignore uploaded files in example_vault

Styling

  • WEBUI: Upload progress bar spacing, hide add button

Build

  • [WEBEXT]: Update shared paths with webui, fix build
  • Further refactor Earthfile & build process
  • Fix upend-bin target

[0.0.75] - 2024-02-02

Bug Fixes

  • WEBUI: Fix upload, re-add forgotten components (Footer, AddModal, DropPasteHandler)

Operations & Development

  • Update Earthly image version

Refactor

  • WEBUI: Fix typo, rename ProgessBar -> ProgressBar

Styling

  • WEBUI: Fix uneven heights of roots

[0.0.74] - 2024-01-28

Bug Fixes

  • [CLI]: Serve new SPA version
  • WEBUI: Selector race conditions / wonkiness
  • [CLI]: Serving web ui in Docker/AppImage
  • WEBUI: Ordering of attributes in Selector
  • [JSLIB]: Correct types for UpObject.attr()

Features

  • [JSLIB]: Add timeouts / aborts to all api calls
  • WEBUI: Required & optional attributes

Miscellaneous

  • WEBUI: Put /dist into .eslintignore

Operations & Development

  • WEBUI: Fix HMR
  • Make dev intellij config not run --release version

Refactor

  • WEBUI: Switch to SvelteKit | touchdown
  • WEBUI: Switch to SvelteKit | great lint fixing
  • WEBUI: Switch to SvelteKit | prettier everything
  • WEBUI: Switch to SvelteKit | fix image annotation
  • WEBUI: Switch to SvelteKit | fix nested blob preview
  • WEBUI: Switch to SvelteKit | properly handle BrowseColumn error
  • WEBUI: Misc fixes in ImageViewer

Styling

  • WEBUI: Blob preview labels

Build

  • WEBUI: Finish webui SPA build config
  • Optimize Earthly target dependencies

[0.0.73] - 2024-01-27

Bug Fixes

  • WEBUI: Version display
  • WEBUI: Don't require confirmation for set remove in combine
  • WEBUI: "Required" without "Included" also now works in Combine
  • WEBUI: "Groups" label in Inspect column
  • WEBUI: Allow selection with cmd for macos
  • WEBUI: Various app sizing fixes
  • WEBUI: Fix sizing / overflows on <=1080 screens?
  • WEBUI: Upobject label overflow
  • WEBUI: Fix editing through inspect attribute list
  • WEBUI: Surface allows rudimentary rescaling
  • WEBUI: UpLink label overflows
  • WEBUI: Overflow of "Used" section in Attribute Inspect
  • WEBUI: Remove surface story, fix lint
  • WEBUI: Z-index on surface
  • WEBUI: Surface: point position matches axes
  • WEBUI: Surface starts at center
  • WEBUI: Error on search confirm
  • WEBUI: SurfaceColumn with new Selectors
  • WEBUI: Error in SurfaceColumn due to missing y
  • WEBUI: "initial" Selector values are no longer uneditable
  • WEBUI: Multiple Surface columns
  • WEBUI: Position of selector on surface
  • WEBUI: Surface centering on resize
  • WEBUI: Fix duplicate Selector options (?)
  • [DB]: Handling (again) existing files + tests
  • Prevent crashes while formatting unexpected value types
  • Selectors keep focus while adding entries
  • WEBUI: Url type display in UpObject
  • WEBUI: Attribute columns being squashed to unreadability
  • WEBUI: Editable overflow
  • Uploads via API are assigned paths like via FS
  • [CLI]: Image previews work for paths without extensions
  • [CLI]: Add ID3_PICTURE attribute description
  • WEBUI: Sort & optimize Keyed section
  • WEBUI: Selection in EntryList

Features

  • WEBUI: Proper set operations
  • WEBUI: Add group view, duplicate group view
  • WEBUI: Quick & dirty reverse path resolution for duplicate group distinction
  • WEBUI: Turn groups view into a column, allow selection
  • [DB]: Add new vault scan modes (flat, depthfirst)
  • [DB]: Add an "INCOMING" rescan mode
  • [DB]: Add an "INCOMING" rescan mode
  • [DB]: Duplicate blob paths on initial scan
  • [JSLIB]: Add vault options functions
  • WEBUI: Show current vault mode in setup
  • [JSLIB]: Add variables to jslib query builder
  • WEBUI: Distinguish between correctly & incorrectly typed members in Inspect
  • WEBUI: Surface: add "display as point"
  • WEBUI: Surface view as Column in Browse
  • [CLI]: Add --rescan_mode CLI option, fix storybook cmd
  • WEBUI: "Last searched" options in header
  • WEBUI: SurfaceColumn's axes are fully reflected in URL
  • [JSLIB]: Or/and/not/join query builder support
  • WEBUI: SurfaceColumn automatically finds PERPENDICULAR attributes, if set
  • WEBUI: Press shift and click close to reload a column
  • WEBUI: Proper autofit of SurfaceColumn
  • [CLI,WEBUI]: Check file presence via HEAD, disable download button if necessary
  • WEBUI: Stable type sort in Inspect: by amount of attributes, address
  • [JSLIB]: Implement toString for UpObject
  • Add spinner to Selector
  • [CLI]: Add ID3 image extraction
  • WEBUI: Allow search / selection of entries via their attributes
  • WEBUI: Display KEYs in UpObject banner
  • WEBUI: Vault name in title on home
  • WEBUI: Add Keyed display to Home
  • WEBUI: Add section links from Home

Miscellaneous

  • Specify crate resolver
  • [JSLIB]: Add eslint ava
  • [JSLIB]: Rebuild before running tests
  • [JSLIB]: Version bump
  • [JSLIB]: Fix eslint
  • WEBUI: Update storybook
  • WEBUI: Update entity addresses for storybook
  • [JSLIB]: Bump version
  • Add intellij run configurations
  • Fix types

Operations & Development

  • Add appimages & changelogs to gitea releases
  • Test before lint
  • Use detached signature for appimages
  • Add mail pipeline step
  • Fix mail?
  • Remove mail (for the time being)
  • Fix prerelease step

Performance

  • WEBUI: Only check for file existence for UpObjct banners
  • WEBUI: Use addressToComponents to get attribute addresses without querying backend
  • [JSLIB]: Add attr cache
  • Cancel unfinished updates in Selector
  • WEBUI: Early set for static Selector options

Refactor

  • WEBUI: Use EntitySetEditor in Inspect & MultiGroup
  • [DB]: Better impls for UNode/UHierPath
  • WEBUI: Upobject label into own component
  • [DB]: Use parse instead of from_str
  • [DB]: Refactor tests in fs store
  • Tree mode -> (new) blob mode
  • [DB]: Use jwalk instead of walkdir
  • [DB]: Refactor rescan process
  • [JSLIB]: Specific constant for any instead of undefined
  • WEBUI: Use new query api
  • [CLI]: Use cargo manifest dir for resources in dev mode
  • WEBUI: Selector refactor, non-destructive search
  • WEBUI: Button labels on columns are i18n'd
  • WEBUI: Get rid of any in Surface
  • WEBUI: I18n in UpObject
  • [JSLIB]: Remove url and attribute from getAddress, fix build
  • [CLI]: Remove forgotten println
  • [CLI]: Refix log level for vault rescans
  • Chores in Selector.svelte
  • Dbg calls in Selector.svelte identify element
  • Remove unnecessary scoped leftovers from Vue
  • Formatting
  • [DB]: Remove deprecation notice until there's actually a better way
  • Clippy fixes
  • WEBUI: Use constants

Styling

  • WEBUI: Non-inspect columns are lighter
  • WEBUI: Padding on groups in inspect
  • WEBUI: Notes in properties, enlarge scrollable area
  • WEBUI: Roots on home are in a column
  • WEBUI: Embolden 0 axes in Surface, text shadow
  • WEBUI: Reorder options in selector
  • WEBUI: Fix partially hidden Home footer; spacing
  • WEBUI: Column/inspect sizing, avoid scrollbar overlap
  • WEBUI: 2 columns at home
  • Show multiple roots as banners instead of full cards
  • WEBUI: # -> ⌘
  • WEBUI: Key display in non-banners also
  • WEBUI: Monospace & diminished key display
  • WEBUI: Hide type keys

[0.0.72] - 2023-10-22

Bug Fixes

  • WEBUI: Inner group preview sizing
  • WEBUI: Various mobile improvements (#23)
  • WEBUI: Ultrawide detail mode
  • Double ^C actually stops
  • [WEBEXT]: External instances, link opens stored instance
  • Fix mime detection on mac os
  • Web ui flag
  • Api fetch store info
  • WEBUI: Resolve upobjects with empty labels, explicitly disable resolving
  • Gallery empty state
  • Upgrade shadow-rs, fix libgit build
  • Disable libgit2 shadow-rs functionality, actually fix build
  • Local js dependencies
  • Build wasmlib before frontend
  • Upend js lib build (files)
  • Minor entity not yet loaded bug
  • Backlinks, untyped links don't include OFs
  • Unclickable items in detail mode, fixes #57
  • Concurrent image loading
  • Impl display for upmultihash, fix preview debug log
  • Docker improvements
  • (loading) image overflow
  • Appimage webui path
  • Docker-minimal missing libssl3
  • Upgrade vite, get rid of vite build voodoo
  • Audiopreview overflow
  • Never cache index.html, prevent stale assets
  • Don't hide jobs
  • Footer only showable when jobs present
  • Duplicate wasm initialization
  • Don't show type editor for nontypes
  • Entrylist scroll hijack
  • Wasm lint
  • Make componentsToAddress usable from JS
  • Webui layout & sizing fixes
  • Add url attributes to url type address
  • Webui, detail doesn't take up the whole screen
  • 3d model preview overflow
  • Don't duplicate columns unless shift is pressed
  • Hide browse add column after blur
  • Accessibility & lints
  • Audio annotations not being saved properly
  • Entitylist entry add
  • Selector overflow in entitylist
  • [JSLIB]: allow initialization of wasm via wasm modules
  • [JSLIB]: 🔧 moved wasm from dependencies to dev dependencies
  • WEBUI: 🐛 add placeholder to indicate url pasting in entitylist
  • [JSLIB]: 🚨 fix lint fail due to missing type-only imports
  • [DB]: 🐛 fix join behavior
  • [JSLIB]: 🧑‍💻 better error messages for api/query
  • [DB]: 🐛 actually fix join behavior, improve performance as well
  • WEBUI: 🚑 fix upend wasm import
  • [JSLIB]: 🔧 fix gitignore
  • WEBUI: Properly center banner select highlight
  • WEBUI: Make non-inspect columns play nice with index context
  • [CLI]: Proper version in vault info

Features

  • [WEBEXT]: Add link to instance
  • Add get cli command, cli commands don't panic
  • [CLI]: Request the whole obj listing for get
  • Limit concurrent image loading
  • Upend.js attr includes backlinks
  • Provenance, vault stats
  • Add endpoint to aid with db migration
  • Extractors append types
  • Add link to typed entry views
  • Rudimentary type editor
  • Add download button to UpObject
  • Concurrent image loading indication
  • Add debug logging for external command extractors
  • Use audiowaveform for audio preview generation
  • Allow specifying vault name as env
  • Add basic group section to home
  • Add group count
  • Property adding in entrylist
  • Modeless group operations
  • Modeless entrylist editing
  • Always show members in inspect
  • Show URL types in non-banner upobjects
  • 📦 upend jslib + wasm can be used from node
  • [JSLIB]: add basic query builder
  • [JSLIB]: ♻️ eav helper getters for uplisting
  • [JSLIB]: getRaw() just returns URL, fetchRaw() fetches the actual content
  • WEBUI: 🚧 selection via ctrl+drag
  • WEBUI: 🚧 generic BrowseColumn, EntryView accepts entities
  • WEBUI: 🚧 base of select all
  • WEBUI: 🚧 allow selection removal
  • WEBUI: batch adding/removing groups
  • Add selection & batch operations
  • WEBUI: rudimentary combine column
  • WEBUI: All "combined" can now be selected

Miscellaneous

  • [WEBEXT]: More descriptive message for visiting upend
  • [WEBEXT]: Version bump
  • Add debug
  • Don't print header if result is empty in cli
  • [CLI]: Gracefull failback if API format changes
  • [WEBEXT]: Version bump
  • [CI]: Include web-ext artifacts in (pre)releases
  • Remove unused dependencies
  • Fix tests on mac
  • EntryList default columns
  • Include versions of all packages in /info
  • Deprecate get_all_attributes (#38)
  • Migrate from yarn to pnpm
  • Fix taskfile (pnpm --frozen-lockfile)
  • Lock update
  • Rename photo extractor to EXIF extractor
  • Remove unnecessary std::, reformat
  • Reformat webui w/ prettier
  • Add VS Code recommended extensions
  • Add .editorconfig
  • Rename build dockerfiles
  • Add prettier for webui
  • Add deploy:docker task
  • Change db/store traces to trace level
  • Log level to trace
  • Dev:frontend relies on build:jslib
  • Pnpm lock update
  • Reformat?
  • Remove prod tasks from Taskfile
  • Update cargo & webui deps
  • Rename Gallery to EntityList
  • Logging for swr fetch
  • Update upend logo
  • Fix stories errors
  • Update git cliff config
  • Change wording on "Create object", i18n
  • [JSLIB]: ♻️ tidy up tsconfig.json
  • 🧑‍💻 add earthly to recommended extensions
  • [JSLIB]: 🔧 tidy up gitignore
  • [JSLIB]: ♻️ use wasmlib from npm
  • [JSLIB]: 🔖 version bump to 0.0.5

Operations & Development

  • Fix publish api key (?)
  • Fix woodpecker path check
  • Prerelease every push to main
  • Verbose build of upend.js
  • Move from using global rust image to local rust-upend
  • Also use local node docker image
  • Also cache target for incremental builds
  • Only upload nightlies from main
  • Upload packages to minio
  • Fix docker tasks
  • Add gpg-agent to upend-deploy docker
  • Also build a minimal docker image
  • Only publish dockers from main
  • Add an audit target
  • Add logging to Inspect
  • Add earthly target to update changelog
  • Add --push to deploy target
  • [JSLIB]: 🚀 publish jslib on tag
  • [JSLIB]: test jslib in CI
  • [JSLIB]: publish jslib whenever version is bumped
  • [JSLIB]: 🚀 publish wasmlib to repo
  • [JSLIB]: 🐛 fix earthly publish target
  • 👷 sequential js publish
  • [JSLIB]: 🚑 do not attempt to publish jslib unless we're on main

Refactor

  • Move actix app creation into separate module
  • [breaking] Unify groups, tags, types (on the backend)
  • Split inspect groups into its own widget
  • InspectGroups more self-sufficient
  • Get_resource_path, looks in /usr/share
  • Add DEBUG:IMAGEHALT localstorage variable that halts concurrent image loading
  • Add global mock/debug switches
  • Generic magic for addressable/asmultihash
  • Unify debug logs in webui
  • Provenance api log
  • EntryList uses CSS grid instead of tables
  • [JSLIB]: Reexport UpEndApi in index
  • 🚚 rename jslib to use @upnd scope
  • [JSLIB]: ♻️ config obj instead of positional args in api

Styling

  • Smaller iconbutton text
  • Don't use detail layout under 1600px width
  • Referred to after members
  • No more labelborder, more conventional table view
  • WEBUI: Transition select state in EntityList
  • WEBUI: Slightly reduce empty space in selectedcolumn

Testing

  • Rudimentary route test
  • Add /api/hier test
  • [SERVER]: Add test for /api/obj/ entity info
  • Improve db open tests
  • [BASE]: 🐛 in actually tested

Release

  • V0.0.72

[0.0.71] - 2023-06-03

Bug Fixes

  • "database is locked" errors on init (?)
  • UpLink not updating
  • Text overflow
  • Prevent bonkers behavior on PUT (deny_unknown_fields)
  • Useful attribute mouseover
  • (group) previews getting hung up on a spinner
  • Overflow & spacing issues
  • Audio preview sizing issue
  • Image group overflow
  • Sort attributes by label too
  • Update upend_js to include entry provenance and timestamp
  • Don't use "Link" under the button
  • Unresolved audio annotations labels
  • Invariant entries have 0 timestamp
  • Pdf viewer
  • Tests
  • Taskfile
  • Put types
  • Commands
  • Don't show tags if empty
  • Image fragment viewing
  • Selector unlabeled attr handling
  • Suggest attributes on empty selector
  • Empty selector attr option
  • Selector hanging open
  • Incorrect max_size in /api/address
  • Proper error message when web ui not enabled
  • Increase multihash size to 256 bytes
  • Panics due to async black magic
  • Proper external fetch error handling
  • Don't needlessly insert hashy filename
  • Content-type for cors
  • Url labels on client, not backend
  • Await upend visit, contentType isn't array

Documentation

  • Add conceptual tutorial

Features

  • Attribute label display in Selector, create attribute feature
  • [breaking] Add provenance & timestamp to Entry
  • Add "as entries" inspect option
  • Display entity type in banner
  • Also show timestamp & provenance in EntryList
  • Add optional provenance query parameter to API calls
  • Only suggest type's attributes in attributeview editing
  • [CLI]: Insert entities for files with =, urls
  • Guess entryvalue in cli
  • Add @= support in cli queries
  • [CLI]: Implement tsv format for queries
  • Add addressing/hashing of remote urls
  • Proof of concept v0.1 web extension companion
  • Add external blobs via url at /api/blob
  • Add PUT /api/hier handler (for creation)
  • Extension supports adding
  • Webext display added time
  • Web extractor adds LBLs

Media

  • Add more buttony upend icon

Miscellaneous

  • Clippy lints
  • WEBUI: Fix eslint errors
  • Add text examples
  • Gitattributes fix
  • Add 2 levels of directories to example
  • [breaking] Separate server functionality into a crate
  • Fix missing vendor files in dev
  • Rename to entries
  • Remove duplicate sort
  • Add clean:vault task
  • Don't necessarily build jslib
  • Update webpage
  • cargo update, fix clippy lints
  • [breaking] Separate PUT /api/obj and PUT /api/blob endpoint
  • Server -> cli
  • Update repository in Cargo.toml
  • Fix clippy
  • Silence storybook errors
  • Open browser on task dev
  • Get rid of MTIME
  • Allow 127.0.0.1 origin by default
  • Cli docstrings
  • Use url instead of string in address
  • Add user agent to reqwests
  • Remove jsconfig.json
  • Lint webext
  • Fix rust lints
  • Update actix deps, get rid of one future incompat warning
  • Use api client from upend.js in webui
  • Forgotten placeholder var
  • Update yarn.lock for webui
  • [WEBEXT]: Fix url desync, types
  • Prevent double browser opening
  • Rename uploadFile to putBlob, enable remote url
  • Send a header with version
  • Safeguard in webext against running in upend
  • Version bump webext
  • Stuff for mozilla webext packaging
  • Bump webext version
  • Fancify readme
  • Links in readme
  • Switch to using git cliff for changelogs
  • Release

Operations & Development

  • Update clean task
  • Fix deps
  • Switch from Gitlab CI to Woodpecker, Taskfile fixes
  • Conditions on lints

Refactor

  • Unify put input handling
  • Move tools/upend_cli functionality to the cli crate
  • Various
  • Move entitylisting to upend.js, dry, formatting
  • Add api client to upend.js
  • Use global reqwest client

Styling

  • !is_release instead of is_debug
  • Smaller add icon
  • Improve browse icons
  • Add text to iconbuttons
  • Also show attr in type

[0.0.70] - 2023-03-08

Bug Fixes

  • Always resolve UpObject when banner (check for blobbiness)
  • Unnecessary underline on UpObject banner
  • Endless loading on group preview
  • Selector mouse behavior, focus event
  • Inflight queryonce cache never revalidated
  • Rotate models right side up in (pre)view
  • Audio regions editable state
  • Blobpreview endless loading state
  • Image overflow in inspect detail
  • Various audioviewer bugs & improvements
  • Only record annotation color if not default
  • Blob viewer jumping
  • Resize AudioViewer
  • Detail mode

Features

  • Add arrow key support to Selector
  • Double click on surface to add a point
  • Update surface URL when changing axes
  • Shift+click to add on right
  • Resizable columns

Miscellaneous

  • Rename /media to /assets
  • Add example vault with 1 video
  • Add blobpreview, blobviewer video stories
  • Add vertical video + stories
  • Add example images
  • Add image stories for blobs
  • Add upobjectcard story, routerdecorator, link upobject story
  • Add Gallery story
  • Stories
  • Add Selector stories
  • Add Surface story
  • Add --reinitialize to sb command
  • Fix Surface story, add prefilled story
  • Add example files (2 photos, 2 stls)
  • Add 3d model stories
  • Warn when reinitializing
  • Add audio example, update ATTRIBUTION
  • Run release version of upend for storybook
  • Add RouterDecorator to BlobViewer story
  • Add yarn interactive tools
  • Release upend version 0.0.70

Refactor

  • Gallery thumbnail is now UpObjectCard

Styling

  • No min-height for blob preview (?)

Build

  • Storybook init

[0.0.69] - 2023-01-15

Bug Fixes

  • [UI]: Don't update last/num visited if object is nonexistent
  • [UI]: Simplify BlobPreview markup, improve loading state
  • [UI]: Jobs update after reload triggered
  • [API]: Malformed entries aren't parsed as invariants during PUT
  • [ERROR]: Address deserialize errors include origin
  • [UI]: Footer space, markup
  • [UI]: Selector initial attribute value
  • [UI]: Surface inaccuracies, zoom reacts everywhere, points are centered

Features

  • [UI]: Footer is persistent and can be hidden
  • [CLI]: Initial upend cli
  • Add cli addressing from sha256sum output
  • Add attribute view
  • Add rudimentary surface view
  • [UI]: Reverse surface Y scale, add loading state
  • Add current position display to Surface view

Miscellaneous

  • [UI]: Adjust OFT features on videoviewer timecode
  • [UI]: Footer is hidden by default
  • Ignore rel-noreferrer
  • [UI]: Remove unnecessary imports

Performance

  • [UI]: Supply labels from sort keys
  • Load d3 asynchronously

Styling

  • [UI]: Switch Inter for IBM Plex
  • [UI]: Switched root font size from 15px to 16px

[0.0.68] - 2022-12-22

Bug Fixes

  • Add custom logging handler (elucidate db locked errors?)
  • .wavs also detected as audio
  • Add proper targets to db logging, panic in debug mode
  • Format duration, also change formatting to xhxmxs
  • Duration attribute label
  • Target
  • Tracing target has to be static
  • Properly set WAL, eliminate (?) intermittent database locked errors
  • Box-sizing: border-box
  • Centered spinner on image previews
  • Placeholder width/height for spinner in blobpreview
  • .identified on UpObject
  • Border on play icon
  • Spinner centering
  • Update vite, fix dynamic imports
  • Unsupported display in detail mode
  • Gallery without sort

Features

  • Add --allow-hosts CLI option
  • Add i18next, move attribute labels
  • Supported format detection in videoviewer
  • Loading state in videoviewer preview

Miscellaneous

  • Log instrumenting
  • Don't package by default
  • Log -> tracing
  • Update web deps
  • Css fix

Operations & Development

  • Make makefile more command-y

Performance

  • Only resort once initial query has finished
  • Only show items in gallery once sorted
  • Enable lazy loading of images (?)

Ui

  • Replace spinner

[0.0.67] - 2022-10-23

Bug Fixes

  • Icons when ui served from server
  • Continue with other extractors when one fails
  • Audio detection of .oggs
  • Also loading peaks
  • Add .mp3 override to type detection
  • .mp3 override in media extractor

Features

  • Download blob with identified filename
  • Add media (duration) extractor
  • Add duration display for audio preview

Miscellaneous

  • Unused css rule
  • Shut up svelte check
  • Enable tracing span for extractors
  • Change extractor error level to debug, add extractor markers

Refactor

  • Unify media type detection

[0.0.66] - 2022-10-22

Bug Fixes

  • Confirm before generating audio peaks in browser, avoid lock-ups in Chrome
  • Remove BlobViewer duplicity in Inspect

Miscellaneous

  • --ui-enabled actually does something
  • 32 max port retries
  • Disallow console.log

[0.0.65] - 2022-10-21

Bug Fixes

  • Skip empty files on vault update
  • Update tests to handle Skipped paths
  • Use cargo clean in Makefile/CI
  • Markdown display
  • Forgot to denote TYPE as denoting to types
  • Blobpreview sizing
  • Blobpreview hashbadge more in line with handled
  • Minor css fixes

Features

  • Add cli option to open executable files
  • Group preview
  • Recurse up to 3 levels resolving group previews
  • On group preview, prefer objects with previews

Miscellaneous

  • Put config into its own struct
  • Update address constants (fix file detection, group adding)
  • Separate clean commands in Makefile
  • Switch from built to shadow_rs

[0.0.64] - 2022-10-16

Bug Fixes

  • Update project url, fix tests
  • Add global locks to db, fix sqlite errors (?)
  • Do not needlessly trigger drop handler UI
  • Use Gallery in Search, order by match order
  • Remember atttributeview state in search
  • Only get() connection in UpEndConnection when necessary
  • Video loading state in VideoViewer
  • HashBadge display in Chrome*
  • .avi previews as video
  • VIdeoViewer play after click
  • VIdeoViewer size in detail
  • Limit thumbnail generation to 1 thread per image
  • Lint due to NodeJS types
  • Consistent font sizing of timecode
  • VideoViewer vertical thumbnails
  • Reenable locks
  • Reenable initial quick vault scan
  • Restore store stats functionality somewhat
  • Limit previews to NUM_CPU/2 at a time, avoid brown lock-ups
  • Previews are cached re: mimetype as well
  • Create store dir if not exists
  • Don't run an initial full-hash update every start
  • Image thumbnails of audio (size query arg collision)
  • Actually remove objects on rescan
  • Svg (pre)views
  • No spurious "Database locked" on startup

Features

  • Levenshtein sort entries in Selector
  • Use match-sorter instead of just levenshtein distance
  • Add timecode display to VideoViewer during previewing
  • [breaking] Switch from k12 to sha256, use proper multihash /base impl
  • [breaking] Multiple vaults
  • Add options to previews
  • If audiowaveform is present, generate & cache peaks on backend

Miscellaneous

  • Add logging to fs tests
  • Fix frontend lint
  • Missing types, fix (some) Svelte check warnings
  • Switch from log to tracing
  • Log failed path updates immediately
  • Note to self about detail animations
  • Refactor widgets + gallery
  • VideoViewer preview optimization
  • Fix svelte warnings
  • Extract all API URLs into a global variable
  • Allow CORS from localhost
  • No default debug output in tests
  • Fix vault/db path semantics, previews in db path, --clean param
  • Lower default size&quality of image previews
  • Add logging
  • Fix typo

Operations & Development

  • Update Makefile for new webui build also

Performance

  • First check for files in /raw/
  • Lower seek time for thumbnails
  • Correct ffmpeg params for efficient video previews
  • Implement speed-ups for vault db
  • Remove valid index on files
  • SQLite NORMAL mode on fs vault connections
  • Add checks to avoid duplicate metadata extraction

Refactor

  • Use trait objects instead of FsStore directly

Build

  • Switch from Rollup to Vite, upgrade Svelte

Hotfix

  • Disable transactions for now

[0.0.6] - 2021-06-19

Line-break

  • Anywhere for attr tables

[0.0.3] - 2021-06-19

Refactor

  • Remove query_entries(), from_sexp into TryFrom, query_to_sqlite is a method

Models

  • :File uses Hash instead of plain Vec