* 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
* Disable Labeler
* Auto format and lint
* Comment out regen labels context menu entry
* Comment out some more labels references
---------
Co-authored-by: Vítor Vasconcellos <vasconcellos.dev@gmail.com>
* Revert "Revert "remove fixed filters" (#2261)"
This reverts commit 5b40cefe37.
* search sources
* only set default filters if no filters
* key saved search page on id and use raw search as searchbar default
* fix crate versions
* put media view filters in a dedicated hook
* remove ts-reset
* add comment about <Inner>
* generics!
* cleanup
* search paths/objects switch (#2278)
* feature flag target switcher
* use useZodParams in saved search route
* feat: Right Click -> New File
Creates an empty file called `Untitled` and adds `(1) -> (n)` for n number of files with the same `Untitled` name.
* feat: Seperate into Text File and Empty File
* chore: `cargo fmt`
* fix: Forgot to type convert to String
* feat: Working creation
* fix: i18n changes
* More i18n
* All added tags now translated
* With proper types checking now!
* Fix types
* chore: formatting
* base
* calculate line height on demand
* fix max update
* fix max update on resize
* read types directly
* sizing
* better size handling
* also handle text box padding on demand
* 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
* run sim before everything
* move passwordmeter
* annoying maestro
* remove bad extension from recom
* move explorer query logic to @sd/client
* update mobile packages
* working explorer
* search with the new query
* tag explorer
* revert maestro version bump
* wip for iDevices
* Working HardwareModel Info for iOS
* wip
* Merge 'main' into 'mob-hw-info-overview'
* Half-Working `get_volume()`
* Objective c bridge to talk to FS
* Working objc bridge
The bridge works now, and we can now access the iOS file system using the native objective-c APIs instead for proper values, including on the simulator.
* Isolate `icrate` for `ios` deployments only
* Working Stats for Android
* Clean Up + `pnpm format`
* Fix to FSInfoResult Type
Due to the RNFS fork change, I had to change the types to make it so it doesn't fail building and CI.
* iOS Device Name Fix
* 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
Fix eslint warning
- Fix some subdependencies requiring an older @typescript-eslint/parser version that is incompatible with the current version of typescript
- Add react-router and react-router-dom version lock to ensure pnpm doesn't download a version incompatible with our patched @remix/router
- Add version lock to @remix-run/router to avoid incompatibilities with our patched version
* Fix websockets over P2P + multi-node cache
* cleanup features
* Explorer over P2P demo
* wip
* wip
* working for ephemeral stuff
* Button to get out of remote viewer
* remove
* Cleanup
* more cleanup
* Fix cross-node library queries
* Files over P2P
* Drop `Header::File`
* Fix Clippy
* Don't let noobs get hacked
* Fix onboarding sometimes not redirecting to Explorer on prod builds
- Fix failure trying to compile landing prod builds outside Vercel
- Fix Server docker failing to restart due to some incorrecting logic for creating the unprivileged users erroring out
- Fix Storybook failing to build due to updates to Vite
- Update Storybook dependencies
- Remove unused Inter font dependency
- Fix some incorrect references to NodeJS types inside web code
- Fix $libraryId index using the incorrect redirect function
- Improve error handling for the $libraryId index route
- Fix Prism not being correctly loaded, and failing to register its plugins
- Improve Prism loading error handling
- Small improvement to the text highlight logic
- Fix SCSS deprecation for untyped hsl values
- Fix library query cache incorrectly saving empty values, which lead to the onboarding redirect bug
- Patch contentLayer to fix an error during the final part of it's build process
- Update most dev dependencies
- Update publish-artifact to be compatible with new @actions/artifact
- Fix issue with new vite-plugin-solid failing to build our .ts files due to the removal of the typescript plugin
- Fix pnpm overrides not applying due to incorrect placement in package.json
- Replace deprecated react-tsparticles and updated three used by the Bubbles background in the landing page
- Rework Bubbles background to be compatible with new @tsparticles/react
- Update @sd/config dependencies
- Update @sd/scripts dependencies
* Implement suggestions
- Replace mobile JS node setup with custom setup-pnpm action
- Handle GITHUB_SECRET default value in code and throw a warning when it is not set
- Fix pnpm now resolving the correct node version when building Spacedrive server docker
- Add missing getent command to spacedrive server docker
- Fix typo in entrypoint.sh
- Implement a more robust check if the user is already in a group
- Fix adduser failing due to missing default group
- Disconnect IntersectionObserver on component unmount
- Improve prism import comment
* Implement more suggestions
- Pin genent version to latest stable release of UClibc
- Add checksum checks for all ADD clauses in Spacedrive server Dockerfile
* Increase Maestro timeout to reduce CI failures due to slow simulator startup
* Dowgrade maestro to workaround CI timeout
* Improvements to the script that run maestro mobile tests
- Increase the amount of retries for a maestro test run to 6
- Increase Maestro driver startup timeout to 2 minutes
* Let run-maestro-tests.sh decide how to run itself
* ¯\_(ツ)_/¯
* version & microphonePermission text & eslint
* remove polyfill as hermes supports intl now
* why do we have solid on mobile?
* cleanup
* add solid back =_=
* pnpm lock
* we hate relative paths here
* android config
* open file logic
* visual tweaks
---------
Co-authored-by: ameer2468 <33054370+ameer2468@users.noreply.github.com>
* P2P Debug route
* Remove legacy peer to peer pairing process
* Fix error typo
* Sync instances with cloud
* Upgrade deps + extended instance data
* Create instance with extended metadata
* Auto sync instances
* Actually `.await`
* bruh
* sync library info
* this isn't gonna work
* only sleep cloud receiver when no more messages (#1985)
* [ENG-1567] Fix renaming (#1986)
fix rename
* only sleep cloud receiver when no more messages
* use in memory instances during cloud receive (#1995)
* use in memory instances during cloud receive
* is_empty
---------
Co-authored-by: nikec <43032218+niikeec@users.noreply.github.com>
* fix type error
* wip
* make mdns mdns better
* rebuild state
* Add hooks + listeners + discovered state
* Split into crates
* wip fixing core + wip merging Spacetime into `sd-p2p2`
* `SmartLockGuard` + `Listener`
* Make `sd-core` compile
* Reenable all operation receivers
* Fix all broken code within `sd-core`
* minor fixes found in review
* Bring in `libp2p` + restructure `sd-p2p` for the gazillion-th time
* whoops
* Compile no matter the (runtime) cost
* fixing merge issues
* wip
* a
* b
* C
* Handle port betterer
* c
* Migrate node config
* a
* no crash on startup
* wip
* a
* jdfhskjfsg
* a
* fix discovery
* a bunch of fixes
* getting Spacedrop working
* I don't get why it no worky
* debug example
* a
* wip
* wip
* removing logging from stream impl
* wip: shit is fucked
* Redo quic integration + Spacedrop working
* Fix shutdown - deadlocks + shutdown peers
* Add Prisma migrations
* Fix shutdown
* a
* fix
* cleanup
* The lord clippy hath spoken
* disable P2P settings for now
---------
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
Co-authored-by: nikec <43032218+niikeec@users.noreply.github.com>
* all tags screen, visual improvements, and bug fix
* More sync support for file paths + saved searches (#2067)
more sync support for file paths + saved searches
* mobile overview screen
* cleanup
* Update BrowseLocations.tsx
* Update StatCard.tsx
* only show new card when locations empty
* disable pods cache for now
* eslint
* fix cocoapods version
* cleanup
* Update Categories.tsx
* ScreenContainer component instead of repeating code
---------
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
* Fix Linux release
- Pin appimage-builder to latest master
- Add required cmp option to AppImageBuilder.yml
- Disable intro video on Linux (it breaks onboarding for some reason)
* Auto format
* Fix typecheck
* updates
* keep common errors
* fix selector being empty for english
* sort by label
* update contributing
* update ndk and docs
* Update CONTRIBUTING.md
* more sync support for file paths + saved searches
* sync support for labels
* update sync prisma generator to support more than tags
* workey
* don't do illegal db migration
* use name as label id in explorer
* video animation for onboarding on mobile and desktop
run assets gen
cleanup
declare mp4 type
* update metro config to transform video files from sd assets
* test ci without native video exclude
* casing?
* remove to add back again due to github
* add videos back
* versions
* no need to transform
---------
Co-authored-by: Utku Bakir <74243531+utkubakir@users.noreply.github.com>
* P2P Debug route
* Remove legacy peer to peer pairing process
* Fix error typo
* Sync instances with cloud
* Upgrade deps + extended instance data
* Create instance with extended metadata
* Auto sync instances
* Actually `.await`
* bruh
* sync library info
* this isn't gonna work
* only sleep cloud receiver when no more messages (#1985)
* [ENG-1567] Fix renaming (#1986)
fix rename
* only sleep cloud receiver when no more messages
* use in memory instances during cloud receive (#1995)
* use in memory instances during cloud receive
* is_empty
---------
Co-authored-by: nikec <43032218+niikeec@users.noreply.github.com>
* fix type error
* wip
* make mdns mdns better
* response
* remove renames
---------
Co-authored-by: Brendan Allan <brendonovich@outlook.com>
Co-authored-by: nikec <43032218+niikeec@users.noreply.github.com>