* 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
* 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>
* Fix gha smells:
- Avoid executing scheduled workflows on forks
- Use names for run steps
- Define permissions for workflows with external actions
- Steps should only perform a single command
- Use commit hash instead of tags for action versions
* Fix commit hashes for actions and typo in name
* feat: check that `Cargo.lock` is up-to-date
* test: malform `Cargo.lock` to test PR
* revert: "test: malform `Cargo.lock` to test PR"
This reverts commit 2cdfbe5ae3.
* New test: Add location
- Add script to download some test files to allows tests to have a stable path for creating locations
- Improve onboarding test
- Add custom Cypress commands for fastOnboarding and deleteLibrary
- Add some documentation related to tests to CONTRIBUTING.md
- Update some deps
* Download small test-data for Cypress CI
* Replace globstar with find to make it compatible with bash 3.x
* Fix react too many re-renders
- add-location test should now pass successfully
* Make job model task text match less flaky
* Check if we were redirected to onboarding after Library was deleted
- Check if sidebar entry was created after adding a location
- Put route regex's into a separate file
- Make onboarding test ensure that no Library exists before running
* Enable test retries
- Log cypress default config during test run
* Run tests under webkit
- Pass CI envvar to tests to ensure correct cypress config
* Attempt fix CI config again
* Remove single use checkUrlIsLibrary function
* Basic cypress test
* Add e2e test command
* Add full e2e test for creating and deleting a library
* Add cypress to CI
* Fix cypress CI
- Use arm macos for running cypress
- Setup rust on cypress job
- Increase cypress CI timeout
* Remove unused APPLE_SIGNING_IDENTITY envvar
* Update deps again + Try to fix Cypress CI setup
* Update deps again
* Only test default location if it exists
* Use latest v18 NodeJS in CI
* Increase minimum node version due to updated dependency
- @typescript-eslint/eslint-plugin now requires node >=18.18
* Fix testing failing for optional default locations
* Enable video recording
- Fix screenshot and video artifact uploading
* Fix location test
- Use correct location name, instead of trying to derive it from the internal id
* Update github actions due to nodejs 16 deprecation
- Replace archived actions-rs/clippy-check with maintained fork actions-rs-plus/clippy-check
- Replace redhat-actions/push-to-registry with updated fork Eusebiotrigo/push-to-registry
- Point redhat-actions/buildah-build and softprops/action-gh-release to current master to fix nodejs deprecation
* Build the correct ios core rust arch for CI runs
* Build ios app for the same arch as the host in Mobile CI
* Some changes to try and make cache-factory faster and avoid failing so much
* Add trigger to run cache-factory on pull requests when there are changes to itself
* Attempt to fix sed usage on macOS
* Don't treat warning as errors
* Fix windows
* Fix windows 2
* Use target ad cache key for rust to differentiate between macOS x86_64 and arm64
* Use faster/better linkers to compile for macOS, Linux and Windows
* Fix missing shell in action
* Fix typo
* Fix missing shell in action 2
* Fix mold download
- Replace bsdtar with plain tar
* Fix permission denied when extracting mold
* Remove zld
* Don't restore cache for rustfmt
- Remove target symlink to C:/ in an attempt to speed-up windows CI
* Fix typo
* Restore target symlink on windows
- Removing it didn't make CI faster
* Run Mobile on macos-14
* Change release workflow to use apple silicon runner
* Use apple silicon runner for clippy and cache factory
* Update release and cache-factory to macos-14 and part of CI to ubuntu-latest
* Revert to ubuntu-latest for creating a release
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
* Add Nasm to setup.ps1
- Nasm is now required to compile the `openssl-sys` crate
* Run Clippy CI when setup or prep scripts change
* Ensure nasm is also installed in Windows CI
- Add nasm to setup.sh
- Remove openssl-dev from setup.sh
* Ensure nasm is installed in macOS too
* Dumb ctrl+c/ctrl+v mistake
* 's/==/=/'
* Move postinstall script to a preprep script
- Fix libheif crate failing to build with our libheif
- Rework CI due to postinstall to preprep changes
* Linux heif build script + Update webp
* Fix ctrl+c/ctrl+v bug
* Improve libheif linux script
- Add support for linux aarch64
- Add CI workflow to build libheif for linux
- Some other misc fixes
* Fix libheif CI requires sudo
* Fix wrong path for libheif build.rs override in Windows
* Fix wrong path manipulations in libheif build script
* 🤦
* Use ubuntu-latest in libheif action
- Specify glib version in target triple to support old distros
- Fix libheif artifact publishing
* Fix artifact upload path again
* Add musl support for libheif
- Remove unused files from libheif artifact
- Add setup logic for libheif in postinstall script
* Build libheif for linux as a shared lib
* Fix meson not building the correct arch
- Add logic to get git branch from githubs CI env vars
* libheif finnaly works on linux
- Make spacedrive binary rpath point to where appimage and deb expects our libs to be
- Add some logic to tauri.js to convince tauri to bundle our shared libs
- Work-around appimage bundling step breaking sometimes
- Add logic to handle sigint in tauri.js to ensure we clean up after ourselves
- Rename postinstall.mjs to setup.mjs
- Add logic to setup.mjs to point our dev build to our shared libs in linux
* Fix windows dekstop dev
- Rename setup.mjs to preprep.mjs
* test cache-factory
* Fix preprep script not parsing the cross compilation target triple and always using the host info to download dependencies
- Fix action env vars not being correctly passed
- Remove possibility to pass multiple targests to rust action
* Don't compile mobile crates on desktop targets
* Remove cache-factory pull_request trigger
* remove patched tauri cli
* Use git plumbing command to get remote branch name
- Fallback to reading .git/HEAD if remote name was not retrieved
* fix type
---------
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
* Setup script revamp
* Move toml to dev dep + CI runs the postinstall in debug mode
* Fix windows CI
* chmod +x scripts/setup.sh
* Fix eslint and ts CI
* Remove binstall + Fix trying to read input in CI
* Doesn't need to check pnpm and rust in CI
* Run postinstall script for Clippy CI
* Attempt to fix windows CI not running postinstall
- Ignore cache when running postinstall on CI
* commited generated config.toml by mistake
* Pass GITHUB_TOKEN to `pnpm i`
* Update archive-wasm + Increase minimum node version to 18.17
* CI: Move rust setup after post-install script
* Revert: CI: Move rust setup after post-install script
* Fix CI, generate dummy cargo config.toml to fix prisma generation
* Fix windows CI
* CI: Fix wrong command
---------
Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
* Attmept to workaround Linux and Windows CI runners out-of-space problems
* Don't mix cmd and powershell
* bruh
* Attempt to fix prisma cache
* No need to cd, as the step is already in the correct cwd
* Leave enough room in root to install the necessary system packages
* Attempt to fix macOS cache being ovewritten
* Fix dumb mistake
* Up linux root free size to 6GB because
- The cache action compress the data to root and it need more free space
* Remove pull_request trigger from cache_factory
---------
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
Co-authored-by: Utku <74243531+utkubakir@users.noreply.github.com>
* Fixing bad handling of dots in directory name
* fix ci not running on rust
---------
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
* add xcode fix info
* ci test
* apply the same filter to rustfmt
* i love yaml
* pls work
* fix
* move filter higher
* add if statements
* works?
* works x2
* fix
---------
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
* bump copyright up in onboarding
* update team
* revert changes
* revert this too
* update ci to run required stuff on every pr
* simplify codeowners
* type
* add landing
---------
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
* make it work
* use functions instead of jobs for shallow stuff
* use generalised AbortOnDrop
* simplify naming
* error stuff + alphabetical rspc types
* log errors
* don't run CI on push
* remove ephemeral
* private Worker::new
* remove comments
* Attempt at building our own ffmpeg dylibs for macOS
- Create dockerfile to setup osxcross and required host dependencies for cross-compiling ffmpeg for macOS
- Create script to setup required macOS dependencies and build ffmpeg for both x86_64 and aarch64
* Improve dockerfile to better use docker's cache
- Attempt at fixing arm64 build (still not there yet)
* ARM64 sucessfully compiles \o/
- Use clang for everything (e.g. linker, assembler, ...)
- Remove -lc++ because it is now handled internally thanks to a patch
- Apply 3 open PRs to osxcross as external patches to solve some of our problems
- PR 180 reduces the macports dependencies size by prefering non universal libs for x88
- PR 314 adds the -lc++ flag for macOS SDKs >= 11.1
- PR 379 fix macports pulling incorrects deps for SDK11 and adds support for SDK13 (future proofing, as it does nothing for us rigth now)
* Fix relink and copy logic in ffmpeg build script
- Ensure ffmpeg and dependencies dylibs are correctly relinked and copied over to the output directory
- Copy includes from ffmpeg and dependencies to allow for dev building against these dylibs
- Set up symlinks for all dylibs to the common `lib` directory
- Remove superfluous linker and compiler options
- Add `-headerpad_max_install_names` linker option to accommodate the required relink changes
- Remove `--disable-fft` for the arm64 build, as it doesn't seem to be required nowadays
- Allow `swresample` and `avdevices` to be compiled as they seem to be expected to exist by `ffmpeg-sys-next`
- Disable ffmpeg program compilation
- Fix dylibs id to match their new expected location
- Fix ffmpeg dylibs inter-linkage not being updated
- Add custom patch for osxcross macports to load already downloaded files from cache
- Remove the requirement for specifying the darwin version in the Dockerfile
- Enable docker cache for macports
- Move arm min macOS version ARG to the top
* Attempt at building ffmpeg with github actions
- Split osxcross setup into it's own Dockerfile to allow exporting it as a image to Dockerhub
- Create a github action to build ffmpeg
- Add osxcross patch for PR 372 for future proofing (Add support for macOS SDK 13.1)
* Remove incompatible step name
* Change FFMPEG_VERSION to string to avoid yaml weird type casting
* Start to use our ffmpeg build in the macOS
- Adjust the macOS setup script to download our ffmpeg build, also replace installing protobuf compiler from brew with grabbing it from it's own repository
- Some misc improvement to the *nix setup script
- Fix ffmpeg build script not copying static libs (for when we may want to statically link ffmpeg)
- Fix ffmpeg build script not taking into acount possible libraries that are multiple paths deep in /lib
- Update CI to actions/checkout@v3, v2 is deprecated
- Update ffmpeg build CI to not xz the artifacts, as github already zips it anyway
* Fix macOS setup not finding the ffmpeg artifact due to a jq script mistake
- Comment out embeeding static libs in ffmpeg artifact for now, as they take too much space
- Remove incorrect dockerfile settings from editorconfig
* Fix protobuf download in macOS
- Fix Framework directory creation not following script's dir but cwd
- Improve download logic to avoid being rate limited on failures
- Return to using xz for ffmpeg build, as it saves quite a bit of space
* Replace `OSTYPE` with `$(uname)` for a more standardized way to check which os is running
- Fix mobile check using `==` instead of `=` in test command
* Fix syntax error in bash 3.x (which is the default in macOS)
- Fix jq not downloading all deps and being placed in the incorrect directory
* Fix incorrect install_name_tool arguments
- Remove leading './' when referencing ffmpeg libs during build
* Fix protoc not being executable
- Fix some error messages
* jq throw input when it is invalid
- Enable debug log in setup script when running in CI
* Add a dev.js build script for desktop app
- Remove dll copy from setup-system.ps1, now done by dev.js
- Minor rework to build.js to improve signals and stdio handling
* Configure cargo to use FFMPEG_DIR and PROTOC envvars on macOS
* Pass GITHUB_TOKEN to macOS setup script in CI
* Replace simple curl with gh_curl in github request
* Fix some ctrl+c/ctrl+v typos
* Add missing ffmpeg deps
- Fix missing symlinks for ffmpeg libs in the output_dir/libs
- Change arm64 minimum macOS target to 11.2 due to libbrotli only being available precompiled to this version
- Add more options to ffmpeg configure in an attempt to reduce its size + improve performance
* Rework ffmpeg build script to create a FFMpeg.framework instead of loose dylibs
- Disable unused postproc and enabled missing required protocols in ffmpeg configuration
- Adjust Dockerfile and setup-script to handle the new FFMpeg.framework
* Fix setup script incorrect linking logic for FFMpeg.framework
* Forgot to remote the leading path in the lib/header linking logic for FFMpeg.framework
* Enable size optimization for ffmpeg
- Remove Frameworks directory before setting it up in setup-system.sh
* Revert lib id to use `@executable_path/../Frameworks/` instead of `@rpath`
- `@rpath` breaks dev builds
- Add logic to create less versioned versions of dylibs in setup-system script, due to it being required for compiling ffmpeg-sys-next (not required during runtime, just for compilation)
- Add scripts/deps to gitignore
* Fix ffmpeg build script not copying unversioned symlinks to FFMpeg.framework
- Remove unecessary unversioned symlink logic from setup-system
- Add new build scripts for dev and prod that setup the environment and tauri to correctly point to FFMpeg.framework
- Rework windows setup-system script to follow the same logic as in macOS setup-system
* Attempt at fixing windows setup script
- Add powershell editorconfig
* Attempt to fix Windows CI
* Fix some mistakes in the build scripts
- Replace toml lib with something more used and maybe better?
- Attempt to fix Windows CI
* Fix some more problems with the build script
* Another attempt at fixing windows CI
* Some more fixes for the windows setup script
* Add build.js step to release CI
- Implement patch only mode for build.js when running under CI
- Implement appeding extra env in cargo config in env.js
- Only run windows dlls copy in dev in env.js
- Another attempt at fixing windows CI
* Maybe this will make the windows CI happy?
* Windows CI why dont you work, whyyy?
* Try to apease the Windows CI Gods
- Disable updater build in macOS, due to tauri-apps/tauri#3933
* Fix build.js extra env vars
- Uncomment parts of setup-system.ps1 to check if it keeps working
* Uncomment another section and see if windows CI will complain
* uncomment some more of setup-system.ps1
* Use Start-Process for robocopy instead of executing it directly
- Only raise an error if robocopy exists with a status code >=8
- Revert build.js macOS specific bundles change
- Disable updater for now
* Remove updater from cargo.toml
* Add -PassThru to Start-Process to ensure we get and Process obj back
* Comment out more of updater
* Improve documentation for both of the docker containers
- Fix a harcoded install_name_tool call in the ffmpeg-build-macos.sh script
* Configure tauri to copy ffmpeg dlls to windows prod version
- Fix windows dlls copy on dev
- Stop replacing tauri.conf.json, except on CI, for prod builds and use a tauri.conf.patch.json for any required changes
- Don't unset macOSPrivateApi on prod build, we need it for the transparent background
- Fix dev.js not exiting when the spawned command was over
* Fix windows not find protoc
- Fix missing import in env.js
* Fix Windows Dlls copy logic for prod build
- Fix dev script failing due to missing env
- Implement error handler to spawned process
* Format + Fix pnpm-lock
* Fix video thumb generation failing on Windows due to bad path to CString conversion logic
* Fix mobile build
- Greatly improve windows setup-script error handling
- Install LLVM with winget instead of downloading exe from github
* Improve CI a bit
- Fix mobile CI not using github token to avoid being rate limited
* Fix pnpm not accesible to actions/setup-node
* Skip pnpm check on CI
* Fix pnpm skip not working
- Fix pnpm cache check missing a step
* Only lock action to major versions
* CI really doesn't like running robocopy directly
* Attempt to build our own patched tauri bundler
* Trigger new workflow
* Fix attempt for patched tauri action tests
- Disable cache for patched tauri action
- Enable package publishing for patched tauri action
* Attempt fix patched tauri publish
* Remove commented code from patched tauri workflow
- Replace deprecated `actions-rs/toolchain` with `dtolnay/rust-toolchain`
* Fix url patching logic for publishing step of patched tauri package
* Fix prepublishOnly command for patched tauri package
* Adjust patched tauri package package.json
* Also patch the specific os/arch sub packages
* Instruct napi to stop doing github releases
* Patch package.json befor build
* Re-enable updater
- Patch tauri cli to workaround a tauri bug that prevented use from bundling frameworks in the updater
- Update tauri/api to 1.3 and tauri/cli 1.3.1
- Add target triple in the release artifacts name
- Use ubuntu-20.04 instead of ubuntu-latest
- Configure release workflow to build to all supported platforms
- Replace `tauri-apps/tauri-action` with simply calling `pnpm desktop build`
- Simplify tauri-patched-cli-js to only build the required macOS binaries
- Unify build.js and dev.js in a tauri.js build script, which now acts as an all around wrapper for the tauri/cli
* Restore incorrectly removed step from `tauri-patched-cli-js`
* Disable auto-run of tauri-patched-cli-js
- Update setup-system.sh with the latest tauri-patched-cli-js artifacts
* Forgot to mkdir bin
* Fix pnpm-lock.yaml not being up to date
- Remove pnpm deps caching
* Fix variable name conflict
* Enable the updater build conditionally
- Enable release workflow to test it
* Fix artifacts not being published
- Change macOS on arm64 minimumSystemVersion to 11.2
- Commented out rust cache to check if this is the culprit to the low memory problem on windows runner
- Add some debug log to tauri.js
* Fix release workflow artifact uploading
* Specify which bundles to build on each platform
- Attempt fix apple arm build
- Don't include internal deb archives in linux updater artifact
* Attempt to fix apple arm build
- Fix dmg background not applying
* Fix incorrect semver usage
* Patch swift-rs to see if that fix apple arm64 release build
* Update swift-rs submodule
- Remove unused deps lodash.merge
* Configure so only release workflow runs without cache
- Improve tauri.js logs
* Ignore `crates/swift-rs`
* Revert "Ignore `crates/swift-rs`"
- Remove `crates/swift-rs` before running `cargo fmt`
This reverts commit 851bd84373.
* Github CI input/output are always string
- Attempt to fix Windows Clippy
* Fix CI syntax error
* Fix mobile CI
- Disable pnpm deps caching
- Disable rust targets caching on Windows
- Configure cache factory to run for all targets
* Remove `crates/swift-rs`
* Attempt fix Mobile CI
- Enable cache factory run in pull_request to test it
- Specific more path for the CI run to ignore
- Specify path that will trigger the cache factory run
- Some cleanup in the setup-pnpm action
* Remove restore-cache options
- Add prefix key to cache-factory
- Fix LLVM cache-hit check
- Add libheif to FFMpeg.framework
* Remove submodule clone from actions
* Add fake deps to ffmpeg build dockerfile
- Fake install deps that aren't really necessary to build ffmpeg
- Fail ffmpeg build script if it can't find a macports deps
- Copy libheif headers to Framework
* Remove automatic trigger for relase and pull request trigger for cache-factory actions
* Remove pnpm setup from Cache factory
- Cache factory is exclusivly for rust deps caching, no need to setup Node and pnpm with it
* Re-enabled fail-fast in Github CI
* bump pnpm
* bump ci pnpm version
* almost forgot a pnpm ci lol
* Update pnpm version installed during windows setup-script
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
* Attempt to fix Windows CI:
- Ensure version 15 of LLVM is installed in Windows CI (due to` ffmpeg-sys-next`)
- Use `GITHUB_TOKEN` in setup-system.ps1 to avoid rate-limiting by github api in Windows CI
- Add `yaml` settings to `.editorconfig`
- Create a symbolic link from `.prettierignore` to `.eslintignore`
- Move `eslint` root to package root config
- Enable `fileNesting` to reduce dotfile clutter in vscode
- Pass `--strict` to apps/releases `lint` command to avoid making interactive queries and hanging `pnpm lint`
- Format with `prettier` and `eslint`
- Remove empty interface/hooks/useMediaQuery.ts
* Replace unmaintained `actions-rs/toolchain` with `dtolnay/rust-toolchain`
- Change setup-system.ps1 to avoid installing pnpm in CI
- Change `pnpm/action-setup` to lock only o major versions of the action
* stuff
* stuff (but for android)
* test mobile ci
* move pnpm up
* install ndk
* add ios & cleanup
* onboarding flow test
* test ci
* fixes, cleanup, caches
* why you do this cargo
* fix pnpm-lock
* add path to build rust script?
* ci is fun
* yolo
* fix broken flow..
* fix pnpm
* probably not gonna work
* test x2
* use real branch of pcr
* android emulator and try ios x2
* Use react native architectures, instead of all.
* override architecture to speed up android build
* protoc & build android on macos too
* fix java ndk
* android gradle
* disable ios for now
* use simulator sdk & debug configuration on ios build
* cleanup
* avd test
* fix avd settings.
* only build for x86_64 on ci
* Fix ios build
* Add IOS testing
* maestro script
* ios release build & wait for library creation
* clean up and disable android for now
* fix pnpm-lock
* Add concurrency to cancel previous runs
* fix pnpm-lock
---------
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
* introduce cache factory
run cache factory on all branches
add names
use single quotes
add setup and prisma generation
add pnpm install
don't install cargo-watch in ci
make composite setup script
use env var for windows ci
undo all powershell stuff
* better windows ci
* don't install cargo-watch in ci
* only run cache factory on main
* i'm silly
* debug only ci
* check runner instead of matrix in setup action
* don't save cache output most of the time
* no more os-specific features
* cache entire workspace
* only cache on main again
* test instead of buidl in cache factory
* smaller ci + testing
* don't individually test each crate
* remove unnecessary needs
* smaller formatting and more clippy
* undo rustfmt changes
* disable tests
* Introducing location online/offline checks and location relink
* Some initial drafts for location watchers
* Location metadata relink and add library
* Many improvements at job system
Now using prisma batching at identifier job
Removing blocking I/O from extension subcrate
Implementing lazy generation of thumbnails
New current directory identifier job to be used on light rescans
* Some optimizations on identifier and object validator jobs
* merge jamie's identifier PR
* fully repaired identifier job
* properly hooked up object kind
* inspector fix
* fix video badge
* small improvements to libraries settings
* identifier and inspector improvements
* fix feature flags and hook up context menu location utilities
* BETTER CONTEXT MENU x100
* test-files
* style tweaks
* new icon designs
* manifest
* fix thumbnails on web
* media data
* New Location Watcher and some minor fixes
* disable broken media_data extractor, wip
* wip
* function name fix
* Fixing pnpm prep and some warnings
* Solving a race condition beetween indexer job and FS event handlerSome other minor warnings
* Generating thumbnails on watcher
* Remove event handler on watcher
* Some initial works on modify events and other small fixes
* File update event
* Trying to be more generic with used events and some tests to validate our assumptions
* Turning on location metadata file
* Introducing core unit tests on CI pipeline
* Submiting new unit test assumptions to validate on windows CI
* Fixing unit tests
* Fixing unit tests again
* Fixing unit tests
* Fixing unit tests for macos
* Fixing unit tests for macos again
* New structure for platform dependent event handling
Implementing event handlers for Linux and MacOS
* minor fixes + rustfmt + clippy
* Windows event handling
* Introducing a feature gate to only use location watching on desktop app for now
* Putting more stuff behind feature gates to avoid warnings
* Adding feature to cargo test on CI
* Changing some debug logs to trace logs and removing Jamie specific stuff
* Make location removal from manager less async
* fix build when "location-watcher" feature disabled
* fix types + clippy
* make location manager non-static
* remove uses of `to_string_lossy`
* more invalidate_query calls
* Expose `library_ctx` directly to avoid needless clones
* New materialized_path handling for directories
* Removing cascade delete between file_path and object
- Some other minor stuff
* remove unused `CurrentDirFileIdentifierJob`
Co-authored-by: Jamie Pine <ijamespine@me.com>
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
* Sync tailwind configs
* Switch to new colors part 1
* new colors part 2
* switched to new colors
* settings screens template
* settings progress
* Setting header titles
* Refactor settings icon
* Fix tsconfig relative path issue
* Move mobile eslint config to @sd/config
* Add no-restricted-imports rule to eslint
* rename TextInput to Input & tailwind font sizing
* General Settings screen + Card component
* Library settings screen & delete lib dialog
* autoform hook
* Mini tweaks and new packages
* Exclude android & ios from search
* Add Switch (Input)
* Library General settings screen
* Refactor settings + Switch and Switch Container
* Locations screen & delete and rescan locations
* Rename folder + small tweaks
* Make things Swipeable
* Create Tag Dialog with color picker
* Upgrade to Expo 47
* More tag stuff
* fix pnpm lock
* regen pnpm-lock
* Change CI node version to 16
* Move `isVideo` into shared package
Co-authored-by: Oscar Beaumont <oscar@otbeaumont.me>
* use different cache
* cache prisma client in rustfmt
* cleanup prettier config
* build server image in sub-action
* server image + prisma client custom actions
* remove lefthoook checks that are in ci
* fix build-server-image
* rename Clippy job
* rename build core job
* use custom rust caching action
* fix rust cache shared key
* cleanup custom action job names
* remove platform check in clippy ci
* setup pnpm in clippy ci
* update mobile package name
* make ios compiling conditional
* use pnpm cache
* run clippy in release
* force use release for all jobs
* use pcr migrations branch
* use 0.6.2 branch with migrations
* use latest prisma stuff
* allow force reset of db in dev
* remove .spacedrive file
* update rspc in apps/server
* use rspc 0.0.5 in all crates
* add os to prisma client cache key
* add runner os to clippy prisma cache