Commit graph

264 commits

Author SHA1 Message Date
Manav Rathi b061b618e7
Tweaks 2024-04-12 16:16:02 +05:30
Manav Rathi 55632fff64
Use new method 2024-04-12 16:11:34 +05:30
Manav Rathi 401f879424
Consolidate 2024-04-12 16:08:36 +05:30
Manav Rathi 158186290c
Inline 2024-04-12 15:03:53 +05:30
Manav Rathi 15b601b0ff
Inline and prune 2024-04-12 14:53:11 +05:30
Manav Rathi 495ff99874
Replace enum with TS type 2024-04-12 14:41:33 +05:30
Manav Rathi 3e9bbacd2f
[docs] Add a FAQ for album sharing on self hosted instances 2024-04-12 11:30:35 +05:30
Manav Rathi 7fa9e924eb
Consolidate 2024-04-11 20:57:54 +05:30
Manav Rathi 61143c9c62
Cleanup 2024-04-11 16:36:56 +05:30
Manav Rathi 33c84f7a08
Prevent undefined errors 2024-04-11 16:27:27 +05:30
Manav Rathi 320db9f8b7
Fix the putEmbeddings API calls for now 2024-04-11 16:22:38 +05:30
Manav Rathi e58e96091f
Ignore (expected) errors when trying to cache face crops 2024-04-11 16:15:08 +05:30
Manav Rathi ef4462553c
Fix incorrect typecheck that fails on undefined 2024-04-11 15:35:25 +05:30
Manav Rathi ff66a2f44c
The ML code runs in workers 2024-04-11 15:27:02 +05:30
Manav Rathi 33e3265db6
Migration for existing configs 2024-04-11 15:21:21 +05:30
Manav Rathi 52727f2255
Also move the embedding 2024-04-11 15:04:18 +05:30
Manav Rathi 9ff4989d81
Cleanup 2024-04-11 14:44:00 +05:30
Manav Rathi a1d6ef43b4
Roundtrip 2024-04-11 14:37:44 +05:30
Manav Rathi a88f551b6a
WIP IPC API 2024-04-11 13:58:52 +05:30
Manav Rathi 2bb9e77e34
Remove unused code 2024-04-11 13:46:34 +05:30
Manav Rathi 6d769773cc
tsc 2024-04-11 12:42:18 +05:30
Manav Rathi d0ffb83d90
Restore 2024-04-11 12:40:49 +05:30
Manav Rathi 6091ad9cfd
Remove search UI integration 2024-04-11 12:36:37 +05:30
Manav Rathi 4fff855070
lint-fix 2024-04-11 12:31:42 +05:30
Manav Rathi e52d17dcfc
Last tf 2024-04-11 12:30:07 +05:30
Manav Rathi 485a1e0be4
Remove unused code that required tensorflow 2024-04-11 12:29:06 +05:30
Manav Rathi da5edc610f
Remove more tf 2024-04-11 12:24:03 +05:30
Manav Rathi 1f8ebc0bca
Inline 2024-04-11 12:22:09 +05:30
Manav Rathi e57e44c139
Inline 2024-04-11 12:14:59 +05:30
Manav Rathi 6ba5852876
Prune 2024-04-11 12:10:02 +05:30
Manav Rathi 38e9e901f6
Inline 2024-04-11 12:06:50 +05:30
Manav Rathi 79a975a281
Remove various unused util methods 2024-04-11 12:05:09 +05:30
Manav Rathi ce566f522d
Prune 2024-04-11 11:59:36 +05:30
Manav Rathi d2e7925c63
Prune 2024-04-11 11:47:07 +05:30
Manav Rathi 006ea085fe
Prune 2024-04-11 11:43:05 +05:30
Manav Rathi 03df858dcc
Remove ssdMobileNetV2 2024-04-11 11:23:23 +05:30
Manav Rathi da3b58661a
Remove blazeface 2024-04-11 11:21:19 +05:30
Manav Rathi e6905577c6
Remove blazeface-back 2024-04-11 11:17:15 +05:30
Manav Rathi e7902c5d83
Remove more tf 2024-04-11 11:15:15 +05:30
Manav Rathi 3182d67ca1
Remove tf utils 2024-04-11 11:13:52 +05:30
Manav Rathi 1ad5cb83f9
Remove object detection related code 2024-04-11 11:09:32 +05:30
Manav Rathi b6e1c4d3da
Inline 2024-04-10 21:36:43 +05:30
Manav Rathi 0ee416c91b
git rm -r apps/photos/public/js/{tesseract,tfjs,tflite} 2024-04-10 21:32:22 +05:30
Manav Rathi 3e8d88caf2
git rm -r apps/photos/public/models 2024-04-10 21:31:06 +05:30
Manav Rathi 52342a23cb
Remove tensorflow packages
yarn workspace photos remove "@tensorflow-models/coco-ssd" "@tensorflow/tfjs-backend-cpu" "@tensorflow/tfjs-backend-webgl" "@tensorflow/tfjs-converter" "@tensorflow/tfjs-core" "@tensorflow/tfjs-tflite"
2024-04-10 21:29:23 +05:30
Manav Rathi 18937581a5
Lint fixes 2024-04-10 16:41:26 +05:30
Neeraj Gupta eefac7fd01
[web] Import the scaffolding to sync face embeddings from web_face_v2
This PR cherry picks Neeraj's ML related changes from the web_face_v2 branch.

Similar to https://github.com/ente-io/ente/pull/1399, this gets us one step
closer to integrating ONNX-YOLO with our desktop app. But it is not currently in
a usable state (The web app's functionality remains untouched).
2024-04-10 16:38:12 +05:30
Manav Rathi 6fc82ff062
[web] Import ONNX-YOLO face changes from the web_face branch (#1399)
Laurens has made the relevant changes to get ONNX-YOLO face detection
working in a manner where the generated embeddings are the same as what
get generated by the corresponding ML stack in the mobile client.

This PR cherry picks his ML related changes from the branch he was
working in, but leaves out the surrounding scaffolding (We cannot merge
that branch directly because it relies on wasm that we don't need and
don't want to commit to main).

At this point this functionality is correct but not usable - the next
step will be to tie this to the ONNX runtime that we already have on the
Node.js layer of our desktop app.

**Tests**

- yarn dev + smoke test
- yarn build + smoke test
- yarn lint
2024-04-10 15:36:03 +05:30
Manav Rathi 45d22d5863
Undo concurrency change 2024-04-10 15:34:21 +05:30
Manav Rathi 71e839e9c4
Remove unused minFaceSize 2024-04-10 14:52:23 +05:30
laurenspriem 3eb95bd822
Import ONNX-YOLO face changes from the web_face branch
Laurens has made the relevant changes to get ONNX-YOLO face detection working in
a manner where the generated embeddings are the same as what get generated by
the corresponding ML stack in the mobile client.

This commit cherry picks his ML related changes from the branch he was working
in, but leaves out the surrounding scaffolding (We cannot merge that branch
directly because it relies on wasm that we don't need and don't want to commit
to main).

At this point this functionality is correct but not usable - the next step will
be to tie this to the ONNX runtime that we already have on the Node.js layer of
our desktop app.
2024-04-10 14:41:59 +05:30
Manav Rathi 5eda8fd464
Log in other apps too 2024-04-10 13:09:14 +05:30
Manav Rathi e0fe018f34
Log on unhandled errors and promise rejections
Test code:

    useEffect(() => {
        setTimeout(() => testFunctionSync(), 5000);
    }, []);

    useEffect(() => {
        testFunction();
    }, []);

    const testFunctionSync = () => {
        console.log("sleeping not");
        // sleep(2000);
        console.log("woke up not");
        throw new Error("Handle me");
    };

    const testFunction = async () => {
        console.log("sleeping");
        sleep(2000);
        console.log("woke up");
        throw new Error("Handle me");
    };

Refs:
- https://developer.mozilla.org/en-US/docs/Web/API/Window/unhandledrejection_event
- https://github.com/megahertz/electron-log/blob/master/src/renderer/lib/RendererErrorHandler.js
2024-04-10 13:05:00 +05:30
Manav Rathi af79f4f0c9
Audit app update functions 2024-04-10 12:32:43 +05:30
Manav Rathi 3c7277a0b1
onMainWindowFocus 2024-04-10 11:16:21 +05:30
Manav Rathi 8bcf77b7f7
IPC keys 2024-04-10 11:03:36 +05:30
Manav Rathi d828bcb071
[web] Fix SSR build
Fixes the following error on the nightly build

    Error: Attempting to assert globalThis.electron in a non-electron context
        at r (/home/runner/work/ente/ente/web/apps/photos/.next/server/chunks/676.js:1:25418)
        ...

    > Build error occurred
    Error: Failed to collect page data for /gallery
        at /home/runner/work/ente/ente/web/node_modules/next/dist/build/utils.js:1258:15 {
      type: 'Error'
    }
2024-04-10 09:53:30 +05:30
Manav Rathi 1214b4ddc3
Web enum cleanup 2024-04-09 21:12:00 +05:30
Manav Rathi a813de5617
Only ONNX, web 2024-04-09 20:53:08 +05:30
Manav Rathi b76b57d07e
Bye GGML web 2024-04-09 20:07:11 +05:30
Manav Rathi 67e39daff5
Cleanup 2024-04-09 19:59:31 +05:30
Manav Rathi b02600cb42
Rename 2024-04-09 19:26:20 +05:30
Manav Rathi b937102cda
A more apropos link 2024-04-09 16:22:02 +05:30
Manav Rathi 544e6be3fd
Document 2024-04-09 15:38:59 +05:30
Manav Rathi b0fbd68d27
Fix errors 2024-04-09 13:13:37 +05:30
Manav Rathi 5edca461f7
Final touches 2024-04-09 12:39:37 +05:30
Manav Rathi 4aa3d68e36
Wrap the assertion 2024-04-09 12:36:25 +05:30
Manav Rathi c729516faf
Final stretch 2024-04-09 12:21:32 +05:30
Manav Rathi 56ce5c0b0e
More transition 2024-04-09 12:17:33 +05:30
Manav Rathi d441418b5b
Remove deprecated loggers 2024-04-09 12:06:46 +05:30
Manav Rathi 0d0e20f7c4
More manual tweaks 2024-04-09 11:58:44 +05:30
Manav Rathi 1dc8f4617e
log.error regex replacement
- logError\(e, (".+")\);
- log.error($1, e);

+ a whole bunch of manual tweakings
2024-04-09 11:32:34 +05:30
Manav Rathi 2b7aa372bd
Switch 2024-04-09 10:33:54 +05:30
Manav Rathi f92a4c2a6e
Fix errors 2024-04-08 20:57:13 +05:30
Manav Rathi 92a3650696
Dedup comlink 2024-04-08 20:53:27 +05:30
Manav Rathi a1c9ceae6b
Add temporary gateways 2024-04-08 20:47:47 +05:30
Manav Rathi 3e3712efb3
Transition 2024-04-08 20:43:42 +05:30
Manav Rathi 5339b1aa89
Merge 2024-04-08 20:39:53 +05:30
Manav Rathi 0be549c91b
Transition 2024-04-08 20:21:49 +05:30
Manav Rathi 90a770c619
WIP 2024-04-08 18:09:08 +05:30
Manav Rathi f4f041552f
Move electron API types to lower layer 2024-04-08 16:51:48 +05:30
Manav Rathi 18e47b3d4e
Synchronize startup banners 2024-04-08 14:09:59 +05:30
Manav Rathi 84d21984e0
Test complete
Tested logging from both worker (in web app) and when running in Electron.

Refs:
- https://github.com/GoogleChromeLabs/comlink/issues/506
- https://github.com/GoogleChromeLabs/comlink/issues/568
2024-04-08 13:16:50 +05:30
Manav Rathi da9a704094
fixing logging in workers WIP 2 2024-04-08 12:52:10 +05:30
Manav Rathi a96ad6dfa2
WIP 2024-04-08 12:40:03 +05:30
Manav Rathi 7913d5ec2e
lint 2024-04-08 09:37:08 +05:30
Manav Rathi 99579fbf51
Inline 2024-04-07 10:56:15 +05:30
Manav Rathi 75d041dd9c
Inline 2024-04-07 10:53:34 +05:30
Manav Rathi d992085dbd
Inline 2024-04-07 10:49:31 +05:30
Manav Rathi cb6cfee9a3
Inline 2024-04-07 10:49:04 +05:30
Manav Rathi 60321111c2
Remove isCanvasBlocked checker
We don't really support running without canvas access, we need it for image
manipulation. The firefox feature seems poorly implemented -
https://bugzilla.mozilla.org/show_bug.cgi?id=1429865 - and if someone _really_
wishes to not add an exclusion for our open source web app, then they can
download our desktop app.
2024-04-07 10:45:30 +05:30
Manav Rathi 49b5bff042
Inline 2024-04-07 10:29:00 +05:30
Manav Rathi 7c0ab6dd8a
Remove l11n unsafe direct string manipulation 2024-04-07 10:23:20 +05:30
Manav Rathi 01e6e79819
Cannot be a compile time constant 2024-04-07 10:18:30 +05:30
Manav Rathi e5b2d737b4
Clean up environment detection code 2024-04-07 10:03:28 +05:30
Manav Rathi 3cb51184b3
[web] Add required transitive dependency of MUI datepicker
Previously this was coming from react-datepicker that was otherwise unused and thus removed.

Use the same major version as we had previously.

Ref:
https://stackoverflow.com/questions/71037974/module-not-found-error-cant-resolve-date-fns-adddays-in-c-users
2024-04-07 09:26:52 +05:30
Manav Rathi d317da6536
Remove unused package react-datepicker
+ another unused type
+ an transitive from code
2024-04-07 08:42:27 +05:30
Manav Rathi 6bff42ad9b
Remove unused keys 2024-04-06 12:11:29 +05:30
Manav Rathi 121df66ada
Cleanup 2024-04-06 11:19:14 +05:30
Manav Rathi 791cc61ca7
Fix more leftover issues 2024-04-05 21:18:26 +05:30