Commit Graph

125 Commits

Author SHA1 Message Date
Utku
173fb421e6 bump pnpm (#798)
* 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>
2023-05-05 22:14:49 +00:00
Vítor Vasconcellos
164fcc34d3 Fix Windows CI + format (#767)
* 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
2023-04-27 07:32:15 +00:00
Utku
fa0b6587ed [ENG-527] - Bundle gstreamer (#759)
* bundle gstreamer stuff

* added a note to release workflow
2023-04-26 02:50:52 +00:00
Brendan Allan
0ac2ebf7ce cleanup release workflow 2023-04-22 15:57:31 +08:00
Brendan Allan
a7f41f5b02 Releases with signatures (#752)
* package releases with signatures

* only include necessary stuff in generated artifacts

* Publish updater binaries

* proper glob for updater binaries

* use separate paths for unix and windows updaters

* make .app executable

* brendan dumb
2023-04-22 00:56:59 -07:00
Brendan Allan
18ef5e19db brendan is silly 2023-04-22 02:57:35 +08:00
Brendan Allan
512e2f5421 Fix cache workflow (#746)
* use proper comparison

* Revert "use proper comparison"

This reverts commit 0271ea3d5c.

* bruh
2023-04-21 11:57:17 -07:00
Brendan Allan
bafd52a37e use release for... releases 2023-04-22 02:46:23 +08:00
Brendan Allan
0a605e621d maybe? 2023-04-22 02:42:10 +08:00
Brendan Allan
6c7083cfb1 Update server (#744)
* release workflow

* tauriScript

* pnpm deps

* unify rust cache keys

* bruh

* basic manual updater stuff

* move updater override

* use existing publishing action

* use debug builds for desktop

* cache release builds too

* use release builds instead

* add workflow dispatch trigger

* remove branch from release workflow trigger
2023-04-21 10:02:31 -07:00
Utku
e83d26372e Roadmap (#692)
* update roadmap

* add android & ios to footer

* Limit CI to run only when needed

* fix paths-ignore syntax

* update key manager description
2023-04-12 02:36:16 +00:00
Utku
abeebcfd88 Mobile CI with Tests (#631)
* 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>
2023-04-03 08:12:28 +00:00
Vítor Vasconcellos
d4f3fdc186 Fix pnpm format command failing with some files (#622)
* Fix `pnpm format` command failure
 - Update prettier and plugins dependencies
 - Add auto-install-peers to .npmrc
 - Fix formating of previously failing files
 - Some basic security mitigations (`pnpm audit --fix`)

* setup-system.sh: Don't do a full system update on ArchLinux

* Revert "Some basic security mitigations (`pnpm audit --fix`)"
2023-03-19 16:47:10 +00:00
Brendan Allan
828ea8c498 CI Cache Factory (#593)
* 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
2023-03-06 06:10:55 -08:00
jake
c21743f44e [ENG-361] Crypto crate docs and tests (#572)
* add hashing tests

* add encryption/decryption tests

* remove `reason`

* add file header tests (preview media deserialization is broken)

* fix keyslot reading bug

* add sd-crypto testing to ci

* add tests/constants for all hashing algorthms and param levels

* add blake3-kdf tests

* use `const` arrays for storing expected output

* test for `5MiB` `encrypt_streams` and `decrypt_streams`

* add invalid/mismatched nonce tests

* update `primitives` docs

* remove erroneous `,`

* grammar tweaks

* add errors to `#[should_panic]`

* cleanup `stream` tests

* cleanup hashing tests a little

* function docs
2023-02-16 11:42:30 +00:00
Brendan Allan
842ea113e7 update name of eslint job 2023-01-22 16:14:59 +08:00
Brendan Allan
3e4ca13766 simplify eslint configs + add CI job 2023-01-22 16:01:15 +08:00
Ericson "Fogo" Soares
3b142c6180 ENG 223 Location Awareness (#468)
* 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>
2022-12-31 00:53:24 +08:00
Utku Bakir
fcbc92203b Bump node to lts (v18) 2022-12-14 12:43:02 +03:00
Utku
17865a6c96 Mobile - Settings & Tags (#479)
* 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>
2022-12-13 15:18:03 +08:00
Brendan Allan
008b0eb72b separate fetch & check 2022-10-05 17:20:40 +08:00
Brendan Allan
49d4dbb0dd Improve CI Speed (#398)
* 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
2022-10-04 18:45:54 -07:00
Brendan Allan
74b42bf45c [ENG-84] Sync library (#394)
* new sql lib stuff

* add sync stuff + rename all crates

* build sd-core

* add sync/example/dist to source

* fix sync example in monorepop

* appease clippy

* update lockfile

* update commit hooks

* fix typescript

* fix typescript build

* please rustfmt
2022-10-04 05:25:12 -07:00
Brendan Allan
aafba4a7bf run rustfmt in ci 2022-10-04 20:03:49 +08:00
Brendan Allan
8a7cf83f46 use proper workflow syntax 2022-09-28 11:42:05 +08:00
Brendan Allan
0f8d6b75e9 expand prisma client cache key 2022-09-28 11:39:04 +08:00
Brendan Allan
69a6de65d5 remove needs: typescript from rust ci 2022-09-23 13:53:56 +08:00
Brendan Allan
18079ba378 Use PCR for migrations (#385)
* 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
2022-09-22 00:50:21 -07:00
Oscar Beaumont
395ee85fbd remove readme copier workflow 2022-09-09 07:39:00 +08:00
Brendan Allan
96e26c8d81 fix clippy ci 2022-08-19 09:57:52 +08:00
Brendan Allan
a7b3d05acd Update org-readme.yml 2022-08-04 07:41:42 -07:00
Oscar Beaumont
3804f034f1 Move Rust backend to rspc (#345)
* move Rust backend to rspc

* move server to Axum + remove parts of old bridge

* move frontend over to @rspc/client

* move core to rspc + update deps

* fix Typescript errors + upgrade deps

* document invalidate_query! macro

* general cleanup + upgrade to PCR 0.6.0

* prisma error handling

* upgrade to rspc 0.0.4

* update vite-plugin-ssr

* fix typescript

* fix builds

* put landing page app name back

* hardcode ffmpeg version on Windows

* rename 'command' to 'mutation' to line up with react-query terminology

* upgrade rspc to v0.0.5 + fix types

* use shared ffmpeg binaries

* general Typescript cleanup

* fix clippy workflow failing due to tauri proc-macro

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2022-08-03 08:36:03 -07:00
Oscar Beaumont
8c9521060d Remove frozen flag from clippy workflow 2022-07-19 09:59:13 +08:00
voletro
afd33b2d4c Remove Action for LLVM, use action that is already built in. Set GH env variables. 2022-07-06 12:28:28 +10:00
Oscar Beaumont
6ee4974068 remove Cargo frozen flag 2022-07-05 23:55:44 +08:00
voletro
b783c32a04 Added headless mode, added LLVM installer to ci. 2022-07-05 11:21:42 +10:00
Oscar Beaumont
825fd8ecf5 fix clippy workflow (hopefully) 2022-06-20 11:27:37 +08:00
Oscar Beaumont
0c370f5373 remove frozen flag from cargo fetch 2022-06-19 01:52:03 +08:00
Oscar Beaumont
461c7b20d8 Fix CI (#242) 2022-06-14 22:27:03 +08:00
Lars Gyrup Brink Nielsen
a1209df3b8 ci: update actions/checkout to v3 2022-06-03 10:38:51 +02:00
Lars Gyrup Brink Nielsen
1b95aec97e ci: update actions/checkout to v3 2022-06-03 10:38:51 +02:00
Lars Gyrup Brink Nielsen
8c33edf903 ci: update pnpm/action-setup to v2.2.2 2022-06-03 10:38:42 +02:00
Lars Gyrup Brink Nielsen
380de162ea ci: update actions/setup-node to v3 2022-06-03 10:20:34 +02:00
Lars Gyrup Brink Nielsen
bf0b48a08e ci: update to actions/checkout v3 2022-06-03 10:19:59 +02:00
Jamie Pine
4d7829cc60 visualizer 2022-05-23 11:56:38 -07:00
Harry Hopkinson
f08e30d509 Change pnpm -r exec tsc to pnpm typecheck 2022-05-15 10:35:12 +01:00
maxichrome
690b2154e9 update all other instances of .app 2022-05-10 02:34:19 -05:00
Oscar Beaumont
8a2e9efdd6 add workflow_dispatch to CI flow 2022-05-04 20:59:20 +08:00
Brendan Allan
88e9428f3e ci: fix 2022-05-01 18:36:59 +08:00
Brendan Allan
84a91f1cce ci: use sharedKey 2022-05-01 17:46:44 +08:00