Adds GitHub Actions workflow to auto-publish @sd/ui and @sd/assets to GitHub Packages when changes are detected. Updates package configs with repository info and build setup.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed the `prisma-client-rust` and `prisma-client-rust-sdk` dependencies from `Cargo.toml` to streamline the project.
- Deleted the `spacedrive-jobs-derive` crate, consolidating job registration functionality into the main job system.
- Updated the `.gitattributes` file to reflect changes in generated code tracking.
- Adjusted the `package.json` scripts for improved build processes and removed unnecessary commands.
- Enhanced the `combine.sh` script to correctly reference documentation paths.
These changes aim to simplify the project structure and improve maintainability.
* Update rspc, prisma-client-rust, axum and tanstack-query
- Deleted some unused examples and fully commented out frontend code
- Implement many changes required due to the updates
- Update most rust dependencies
* Re-enable p2p
* Fix server
* Auto format
* Fix injected script format
- Update some github actions
- Update pnpm lock file
* Fix devtools showing up when app opens
- Fix million complaining about Sparkles component
* Fix sd-server
* Fix and improve thumbnails rendering
- Fix core always saying a new thumbnail was generated even for files that it skiped thumbnail generation
- Rewrite FileThumb and improve related components
* Ignore tmp files when running prettier
* Improve FileThumb component performance
- Rework useExplorerDraggable and useExplorerItemData hooks due to reduce unecessary re-renders
* More fixes for thumb component
- A couple of minor performance improvements to frontend code
* auto format
* Fix Thumbnail and QuickPreview
* Fix logic for when to show 'fail to load original' error message in QuickPreview
- Updated prisma-client-rust, libp2p, tauri, tauri-specta, rspc and hyper
* Fix type checking
- Format scripts
* Add script prettier config
* Fix serde missing feature
- Use rust-libp2p spacedrive fork again
- Update rspc
* Autoformat + fix pnpm lock
* Fix thumbnail first load again
* Autoformat
* autoformat
* Fix rust-libp2p fork url again?
* Remove usePathsInfiniteQuery hook
* Update tauri 2.0.6
* Fix frontend bundle upload
- Update pnpm
* Revert incorrect removal of fontenf packaging job
* Fix tauri not building updater bundles
* Ensure release action is executed when PRs modify the publish-artifacts action
* Fix unused argument for patchTauri function
* Couple for format fixes
* tauri requires building the app bundle to build the updater
* Copy ephemeral files by chunks
* Improving buffered writer
* Report progress
* Copy and emit progress as two separated tasks
* Simplify for-if-return with `Iterator::any`
* Docs and use structured tracing
* Simplify code using paths
* wip
* wip
* wip
* wip
* Add report of messages while copying files
* Add info field to job report
* Group paths from OldFileCopierJobStep into a single struct
* Improve progress information
* Remove the need for synchronization
* Error handling for copy
* Clean up frontend
* Make watcher only consider new files
* Fix concurrent renaming of multiple files that have the same name
* Add documentation for file strategist
* Remove editions to ephemeral file copies
* Remove experimental/nightly features from Cargo.toml
* Fix no-case-declarations
* Remove dead comments
* Format code
* Use "Duplicate" instead of "Copy" in the frontend messages
* Remove inline always to make clippy happy
* icons for deleter and copier
* Fix JobManager for copy jobs
- Fix some types definitions
* Fix Job icon choosing logic
- Fix Copier job showing two progress bars
* Log which files are not formatted in the Type and style check CI
* fmt
* Forgot an import
* autoformat
---------
Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
* Ensure prisma generation works before continuing CI
- Add script that list all dependencies with multiple version in Cargo.lock
* Ensure CI runs when custom actions are modified
* Rever windows change in hopes that it fixes prisma generation
* Fix prisma generation check in CI
* Update deps
* Replace prisma-client-rust-cli with oficial prisma cli to fix windows model generation
- Revert back to windows-rs implementation of get_inode in file-path-helper
- Adjust Github CI to use oficial prisma cli
- Update scripts dependencies
- Fix some new rust warnings due to it trying to compile OS specific code on all plataforms
* Fix windows-rs impl for get_inode_windows in file-path-helper
* More fixes to windows-rs impl for get_inode_windows in file-path-helper
* More fixes to windows-rs impl for get_inode_windows in file-path-helper
* More fixes to windows-rs impl for get_inode_windows in file-path-helper
* More fixes to windows-rs impl for get_inode_windows in file-path-helper
* More fixes to windows-rs impl for get_inode_windows in file-path-helper
* Import windows constant intead of hardcoding its value
* Fix check for prisma files in setup-rust
* Autoformat
* Fix iOS and Android targets in watcher
---------
Co-authored-by: Arnab Chakraborty <11457760+Rocky43007@users.noreply.github.com>
* Remove explicit ref in checkout for type and style check CI job
This was breaking checkouts for PRs from forks
* add tailwindcss-animate patch to remove duplicate utility class
* use new `animate-duration` for animations
* Run fixed `pnpm autoformat`
* Update bug report template
* increase spacing between lines on platform info description
* Remove bug report platform example because it looks bad
* Add space around "Development tool versions" in bug report template
* Autoformat script
* Executable + package.json
* Fix pnpm format not exiting
* Fix exit handling
* Allow to only run fontend autoformat
* Rename script to autoformat.sh
- Fix exit handling
* Add style check to CI
- Replace deprecated actions-rs-plus/clippy-check@v2 with giraffate/clippy-action@v1
* Use HEAD as ancestor when running in CI
* Improve uncommmited erro message
* Increate timeout for Type and style check action
* Run Clippy when ci.yml file changes
* increase cypress timeout
* Adjust server Dockerfile
- Simpify remix-run_router patch
* Update crun and podman required for new buildah version
- Build arm64 version of server
* Disable arm64 build for now, build is too slow with qemu
* Config dev profile for faster debug builds
* Remove redundant changes to Cargo.toml in CI
* Forgot Windows
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
* initial ffprobe commit
* Working slim down version ffprobe
* Auto format ffprobe and deps source
* Remove show_pixel_formats logic
- Fix do_bitexact incorrect check in main after last changes
- Fix some clangd warning
* Remove show_* and print_format options and their respective logic
* Rework ffprobe into simple_ffprobe
- Simplify ffprobe logic into a simple program that gather and print a media file metadata
* Reduce the amount of ffmpeg log messages while generating thumbnails
* Fix completly wrong comments
* mend
* Start modeling ffmpeg extracted metadata on schema
- Start porting ffprobe code to rust
- Rename some references to media_data to exif_data
* Finish modeling media info data
- Add MediaProgram, MediaStream, MediaCodec, MediaVideoProps, MediaAudioProps, MediaSubtitleProps to Schema
- Fix simple_ffproble to use its custom print_codec, instead of ffmpeg's impl
* Add relation between MediaInfo and FilePath
- Remove shared properties from MediaInfo and related structs
- Implement Iterator for FFmpegDict
* Fix and update schema
* Data models and start populating MediaInfo in rust
* Finish populating media info, chapters and program
* Improve FFmpegFormatContext data raw pointer access
- Implement stream data gathering
* Impl FFmpegCodecContext, retrieve codec information
- Improve some unsafe pointer uses
- Impl from FFmpegFormatContext to MediaInfo conversion
* Fix FFmpegDict Drop
* Fix some crago warnings
* Impl retrieval of video props
- Fix C char* to Rust String convertion
* Impl retrieval of audio and subtitle props
- Fill props for MediaCodec
* Remove simple_ffprobe now that the Rust impl is done
* Fix schema to match actually retrieved media info
- Fix import some FFmpeg constants instead of directly using values
* Rework movie_decoder
- Re-implement create_scale_string and add support anamorphic video
- Improve C pointer access for FFmpegFormatContext and FFmpegCodecContext
- Use newer FFmpeg abstractions in movie_decoder
* Fix incorrect props when initializing MovieDecoder
* Remove unecessary lifetimes
* Added more native wrappers for some FFmpeg native objects used in movie_decoder
* Remove FFmpegPacket
- Some more improvements to movie_decoder
* WIP
* Some small fixes
* More fixes
Rename movie_decoder to frame_decoder
Remove more references to film_strips
* fmt
* Fix duplicate migration for job error changes
* fix rebase
* Solving segfaults, fuck C lang
Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
* Update rust to version 1.77
- Pin rust version with rust-toolchain.toml
- Change from dtolnay/rust-toolchain to IronCoreLabs/rust-toolchain for rust-toolchain support
- Remove unused function and imports
- Replace most CString uses with new c literal string
* More segfault solving and other minor fixes
Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
* Fix ffmpeg rotation filter breaking portrait video thumbnails #2150
- Plus some other misc fixes
* Auto format
* Retrieve video/audio metadata on frontend
* Auto format
* First draft on ffmpeg data save on db
Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
* Fix some incorrect changes to prisma schema
* Some fixes for the FFmpegData schema
- Expand logic to save FFmpegData to db
* A ton of things
Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
* Integrating ffmpeg media data in jobs and API
* Rspc can't BigInt
* 🙄
* Add initial ffmpeg metadata entries to Inspector
- Fix ephemeral metadata api to match the files metadata api call
* Fix Inspector not showing ffmpeg metadata
* Add bitrate, start time and chapters video metadata to Inspector
- Fix backend BigInt conversion incorrectly using i32 instead of u32
- Change FFmpegFormatContext/FFmpegMetaData bit_rate to i64
- Rename byteSize to humanizeSize
- Expand humanizeSize logic to allow handling bits and Binary units
- Move capitalize to @sd/client utils
* Solving some issues
* Fix ffmpeg probe getting incorrect stream id and breaking database unique constraint
- Fix humanizeSize breaking when receiving floating numbers
- Fix incorrect equality in StatCard
- Fix unhandled error in Dialog when trying to remove an unknown dialog
* fmt
* small improvements
- Remove some unecessary recursion_limit directive
- Remove unused app_image releated functions
- Fix metadata query enabled flag
* Add migration for ffmpeg media data
* Fix cypress test
* Requested changes
* Implement feedback
- Update locale keys for all languages
- Add pnpm command to update all language keys
* Fix thumb reactivity in non indexed locations
---------
Co-authored-by: Ericson Soares <ericson.ds999@gmail.com>
Co-authored-by: Vítor Vasconcellos <HeavenVolkoff@users.noreply.github.com>
* Most of it
* Cleanup menu
* fixes
* Fixed linux compilation, still not working though, as the app panic on start
* Add dialog permissions
* fix search keybind
* Fix linux
∙ - Disable linux-ipc-protocol feature, as that is causing panics due to trying to access some WebKit internal structures outside the main thread
* Update to Ubuntu 22.04, new tauri doesn't support ubuntu 20.04
> - Add note to download page about deb's distro support
* Remove gen/schemas
* Update linux dependencies in setup.sh
* Fix linux deps again
- Enable rt-tokio-crypto-rust feature in secret-service so clippy stops complaining
* Clippy + auto fmt
* Fix cache-factory
- Create a devtools feature for desktop app, which is enabled by default on dev builds
* Fix minor error in patchTauri.mjs
* Fix some envvars that have been renamed on tauri v2
* Dont change the secrets
* Add missing linux dependency
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>