* Error handling for sd-core-sync crate
Also a bunch of tweaks and fixes
* Update core.ts
* Auto format
* Comment out background_processing_percentage on frontend too
- Update rust version in contributing
* Trying to avoid data loss on actor stop
* Stronger linter on sync generator
* Stronger lint on sync subcrate
* Clean back tasks.json file
* TS typechecking
* Autoformat
* Add more verbose errors for Cloud REST API
* Removing some comments
Copilot is fun sometimes lol
* Properly stopping actors
* Fix ingest stop
* Racing on stop for actors
* Error conversion from merge with main
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
Co-authored-by: Arnab Chakraborty <11457760+Rocky43007@users.noreply.github.com>
* Catching panics
* Re-enable unwind on release profile
* Reverting deps due to bad assertion
* Comment why the deps where reverted
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
* First draft on task system usage, still missing job system
* Scan location roughly working, a ton of stuff to fix yet
* Updating some deps due to crashes and bugs
* Exposing non critical errors to frontend
* Getting active job reports from job system
* Using boxed opaque type to avoid a downcast issue with generics
* Task system issues discovered on race conditions
* Enable debug
* Fix job report in the job manager
* Fix race condition on steal tasks
* Fixed race condition on task suspend
* Some fixes on job progress reporting and save
* Fixed many race conditions and a hard deadlock
Also some progress report polishing
* Ignore .ts and .mts video files for now
* Some better logs
* bruh
* Internal deadlocks and excess of communication in the task system
- Also better logs
* Bunch of fixes and optimizations
* WIP at fixing file identifier
* Fixed file identifier job
- still need to work on its progress report frontend
* A bunch of polishing
* Fixed some bugs and did more polishing
* Cleanup
* Bridging old and new job systems
* A ton of fixes
* A bunch of bugs related to shutdown and resume
* Indexer and watcher bugs
* Log normalizing
* Fixing CI
* Change error! to warn! on non critical errors log
* Fix redirect to new location
* Type annotation
* Bogus merge resolution on cargo lock
* Moving stuff around
* Media data extraction task
* New thumbnailer task
* Taking more metrics on thumbnailer
* First drafts on media processor job
* Better interruption latency on thumbnailer task
* Also solve the latency on interrupt at media data extraction
* Media processor job
* Shallow media processor
* Better prioritize files identification
* Integrate ffmpeg media data extraction
- Thumbnail quality improvements parameters
* Introduce deep vs shallow for indexer tasks with different priorities
* Make job wait to dispatch if it's paused
* Extract file metadata task on file identifier job
* Some initial drafts on object processor task
* Object processor task for file identifier
* File Identifier job and shallow
* Moving file-path-helper to a sub-crate on core
* Parallel walker tested and working
* Change inner core crate names to sd-core-* naming scheme
* Moving stuff around
* Save and Update tasks for the new indexer job
* Some initial drafts on the new job system
* More drafts on job system
* Changing walker task to a more explicit state machine
Also drafting more of job system
* More drafting on job resume
* Completed the draft on job system inner workings
* New job context abstraction to decouple library stuff from job system
* Properly use composition on task dispatcher
* First draft on indexer job
* Job serialization
* Handling ancestors in the distributed walker for indexer
* Saving computed directories sizes on a location to db
* Enable a way to check if jobs are running in a location
* Progress reporting on indexer job
* Reorganizing modules
* Shallow indexer
* Rust fmt
* Attempting windows CI fix
* Attempting windows CI fix again
* Attempting windows CI fix again
* Bunch of new warns due to a stronger clippy config
* Moving old processing stuff to a new namespace
Also fixing a bunch of typos through the entire codebase.
* Rustfmt
* First draft on new task system
* Removing save to disk from task system
* Bunch of concurrency issues
* Solving Future impl issue when pausing tasks
* Fix cancel and abort
* Bunch of fixes on pause, suspend, resume, cancel and abort
Also better error handling on task completion for the user
* New capabilities to return an output on a task
* Introducing a simple way to linear backoff on failed steal
* Sample actor where tasks can dispatch more tasks
* Rustfmt
* Steal test to make sure
* Stale deps cleanup
* Removing unused utils
* Initial lib docs
* Docs ok
* Memory cleanup on idle
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>