Commit graph

219 commits

Author SHA1 Message Date
Manav Rathi a86cdb1f1e
Interface 2024-04-13 08:40:08 +05:30
Manav Rathi e8b779745d
put2 2024-04-13 08:33:13 +05:30
Manav Rathi f2aee30f7c
get 2024-04-13 08:18:11 +05:30
Manav Rathi db96a0eb1b
get 2024-04-13 08:12:38 +05:30
Manav Rathi 6d1f8b4728
Blobs it is 2024-04-13 08:04:43 +05:30
Manav Rathi acedbdbe7d
Note 2024-04-13 07:42:24 +05:30
Manav Rathi 6cd795e29c
Create alternate code path 2024-04-13 07:19:28 +05:30
Manav Rathi 3499e47c88
Tweak 2024-04-13 06:47:43 +05:30
Manav Rathi 5ff01c40d8
poc implementation 2024-04-12 21:29:05 +05:30
Manav Rathi 295c0aa82e
Splinter 2024-04-12 21:12:37 +05:30
Manav Rathi 871a0e83cf
Fix 2024-04-12 20:59:15 +05:30
Manav Rathi a56cf55ffa
Remove indirection 2024-04-12 20:58:00 +05:30
Manav Rathi b056cf7f56
Move to newer shared package 2024-04-12 20:55:07 +05:30
Manav Rathi a2a8be3b19
Scaffold the split 2024-04-12 20:52:33 +05:30
Manav Rathi 41472eb87d
Document and structure more 2024-04-12 20:24:48 +05:30
Manav Rathi c691ad2ac1
Document the plan 2024-04-12 20:11:44 +05:30
Manav Rathi 36f9ca2004
Remove unused param 2024-04-12 19:53:23 +05:30
Manav Rathi 65c7cd2c05
[web] Various changes, moving towards fixing desktop caching (#1424)
The overall aim was to get the caching layer trimmed down to a point
where we can plug in OPFS into it for desktop. This PR doesn't have that
specific change, but it's just me gradually changing things, working
towards that.
2024-04-12 16:28:59 +05:30
Manav Rathi b36175a779
user 2024-04-12 15:40:24 +05:30
Manav Rathi c83dc87d5d
Inline the factory 2024-04-12 14:45:03 +05:30
Manav Rathi 495ff99874
Replace enum with TS type 2024-04-12 14:41:33 +05:30
Manav Rathi cd3ff6f878
Delete is not needed outside 2024-04-12 14:32:50 +05:30
Manav Rathi b447dedf83
Cache limit is usused 2024-04-12 14:26:41 +05:30
Manav Rathi bdadc839e0
Remove firefox specific workaround
In a quick (but possibly incomplete) test I wasn't able to reproduce this in an
incognito window. Throwing the error from here has a potential for breaking
things though, I'll try to verify this as I go through the flows individually.
2024-04-12 14:23:56 +05:30
Crowdin Bot ac534cf163 New Crowdin translations by GitHub Action 2024-04-12 01:37:37 +00:00
Manav Rathi 7fa9e924eb
Consolidate 2024-04-11 20:57:54 +05:30
Manav Rathi 320db9f8b7
Fix the putEmbeddings API calls for now 2024-04-11 16:22:38 +05:30
Manav Rathi ff66a2f44c
The ML code runs in workers 2024-04-11 15:27:02 +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 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
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 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 170aef9b30
Rename 2024-04-10 11:06:18 +05:30
Manav Rathi 8bcf77b7f7
IPC keys 2024-04-10 11:03:36 +05:30
Manav Rathi 18606b2358
IPC cleanup 2024-04-10 10:18:06 +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 544e6be3fd
Document 2024-04-09 15:38:59 +05:30
Manav Rathi 4f76cfb912
[web] New translations (#1380)
New translations from
[Crowdin](https://crowdin.com/project/ente-photos-web)
2024-04-09 13:23:39 +05:30
Manav Rathi b0fbd68d27
Fix errors 2024-04-09 13:13:37 +05:30
Manav Rathi 9127c48787
Remove duplicate files 2024-04-09 12:45: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 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 72dea7eca6
Start using it 2024-04-09 09:53:28 +05:30
Manav Rathi 54a973c457
Expose on the globalThis
Note that the filename of the .d.ts has to be different from any existing file!
https://stackoverflow.com/questions/59728371/typescript-d-ts-file-not-recognized
2024-04-09 09:37:43 +05:30
Crowdin Bot 7dee92f44e New Crowdin translations by GitHub Action 2024-04-09 01:37:23 +00:00
Manav Rathi 59bda25be2
Fix log entry format 2024-04-08 21:00:05 +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 5339b1aa89
Merge 2024-04-08 20:39:53 +05:30
Manav Rathi 0be549c91b
Transition 2024-04-08 20:21:49 +05:30
Manav Rathi 826cacd6bf
Reroute 2024-04-08 20:00:24 +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
Crowdin Bot b3842dab04 New Crowdin translations by GitHub Action 2024-04-08 04:09:44 +00:00
Manav Rathi 0b3165b812
Remove unused 2024-04-07 10:58:19 +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
Crowdin Bot e779ae5189 New Crowdin translations by GitHub Action 2024-04-06 07:12:09 +00:00
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 a98a29800b
[web] Bundle translations but load them lazily
Refs:
- https://github.com/i18next/i18next-resources-to-backend
- https://stackoverflow.com/questions/77251750/how-to-implement-lazy-loading-translations-in-i18next-with-react
- https://github.com/i18next/react-i18next/issues/525
- https://gist.github.com/SimeonC/6a738467c691eef7f21ebf96918cd95f
- https://www.i18next.com/overview/plugins-and-utils
2024-04-06 11:06:29 +05:30
Manav Rathi 10b0d9f533
Fix the yarn lint 2024-04-05 21:22:44 +05:30
Manav Rathi 411984ebdc
Fix lint errors 2024-04-05 21:09:47 +05:30
Manav Rathi cf27f3236c
lint-fix 2024-04-05 20:48:23 +05:30
Manav Rathi 42a59f2fb5
Consolidate and deduplicate 2024-04-05 20:35:22 +05:30
Manav Rathi 7807d3a413
Inline 2024-04-05 20:03:23 +05:30
Manav Rathi 461430a972
Move up from shared 2024-04-05 20:01:28 +05:30
Manav Rathi fe6215d0fd
Replace context entry with useRouter 2024-04-05 19:58:45 +05:30
Manav Rathi e680970cdf
Inline 2024-04-05 19:58:45 +05:30
Manav Rathi 356ad6f004
Use regular link
Removing unnecessary dependencies on next specific components
2024-04-05 19:58:45 +05:30
Manav Rathi fa7cbaea18
Remove custom _document
Looking towards a longer term transition out of next
2024-04-05 10:09:37 +05:30
Manav Rathi 9785bbcb26
We don't have full web app support yet
Plus, Apple doesn't do much for PWAs anyway. One reason for removing this until
we test it out in actuality is because there were reports of the semi-PWA
caching causing issues.
2024-04-05 09:38:48 +05:30
Manav Rathi 2c098904fb
Inline 2024-04-05 09:13:38 +05:30
Manav Rathi a68dce35f6
Remove unused knob 2024-04-05 09:08:56 +05:30
Manav Rathi 1d0f30ad91
These values were never customized 2024-04-05 09:08:02 +05:30
Manav Rathi d9d03d8451
Add schema validation of the response 2024-04-04 16:12:39 +05:30
Manav Rathi 29550317f7
Enable the jsx-runtime plugin for vite's ESLint
This prevents it complaining about a missing React import.

Enabling this is recommended by the vite starter itself:

> Install
  [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and
  add `plugin:react/recommended` & `plugin:react/jsx-runtime` to the `extends`
  list
2024-04-04 14:46:41 +05:30
Manav Rathi 935e47fbca
Fix the payments eslint 2024-04-04 14:10:16 +05:30
Manav Rathi ff6d0d32cf
Remove unused 404 handler
The default appType == 'spa' in vite redirects all (unclaimed) paths to /index.html.

If needed, this can be disabled:
https://stackoverflow.com/questions/69701743/how-can-i-configure-vites-dev-server-to-give-404-errors/69711988#69711988
2024-04-04 13:58:30 +05:30
Manav Rathi 87dc7d76ca
Remove middleman package, to get it to compile 2024-04-04 11:36:20 +05:30
Manav Rathi 4255e48abb
Convert payments app to use Vite - Part 1
(Doesn't compile)
2024-04-04 11:10:34 +05:30