Commit graph

304 commits

Author SHA1 Message Date
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
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 0b39759ad9
Inline 2024-04-05 19:58:45 +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 ae51531bd0
[web] Uncomment accidentally activated env vars for localhost defaults 2024-04-05 17:08:47 +05:30
Manav Rathi 0d48284b4f
[web] Remove leftover console log 2024-04-05 11:33:57 +05:30
Manav Rathi e0cfa36f08
Use the implementation instead of the accidental infinite loop 2024-04-05 10:51:04 +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 039387a84e
Initial-scale=1 is still recommended
Ref:
https://teamtreehouse.com/community/is-initialscale-not-needed
2024-04-05 09:36:18 +05:30
Manav Rathi 866b52b002
Inline constant 2024-04-05 09:26:30 +05:30
Manav Rathi 1d0f30ad91
These values were never customized 2024-04-05 09:08:02 +05:30
Manav Rathi 26b35cec9e
Merge @/ui into @/next 2024-04-02 19:58:42 +05:30
Manav Rathi 6213628aee
[web] Prefer .local files for local only configuration (#1280)
Refs: https://vitejs.dev/guide/env-and-mode.html
2024-04-02 17:22:32 +05:30
Manav Rathi cc90dd7ba5
[web] Enable Russian
The translation percentage of Russian in crowdin is now 100%, it's time to
enable it as an option in the UI.

A big thank you to the translators.
2024-04-02 17:16:33 +05:30
Manav Rathi 9cb289e002
[desktop] Prevent the desktop app from getting stuck on viewing openstreetmap info
Open the link in a new tab. This prevents the desktop app from getting into a
state where the user cannot navigate back.
2024-04-02 17:05:23 +05:30
Crowdin Bot ce5627f04c New Crowdin translations by GitHub Action 2024-04-02 11:28:47 +00:00
Manav Rathi 2e7dcc6bc2
Make the cast link clickable 2024-04-02 16:51:27 +05:30
Manav Rathi 0e1bdfe07e
Support arbitrary ReactNodes as title 2024-04-02 14:38:37 +05:30
Manav Rathi b95fc54adb
[web] Prefer .local files for local only configuration
Refs:
https://vitejs.dev/guide/env-and-mode.html
2024-04-01 19:59:02 +05:30
Manav Rathi 1e410a82f2
Remove stray use of @mui/system 2024-04-01 17:05:05 +05:30
Manav Rathi 3b3d314f9c
Remove stale import from styled-engine 2024-04-01 16:52:57 +05:30
Manav Rathi 7248a226bc
Remove bootstrap 2024-04-01 15:35:45 +05:30
Manav Rathi 28cf7d76d5
Even numbers don't seem to be kosher, only strings work 2024-04-01 15:13:43 +05:30
Manav Rathi c2957238da
Fix the date handling 2024-04-01 15:07:29 +05:30
Manav Rathi f9a2ec774a
Make it work with MUI components 2024-04-01 14:54:29 +05:30
Manav Rathi 0568cd03c9
Refactor somewhat
More to come
2024-04-01 13:07:36 +05:30
Manav Rathi 39bc68390f
Match the variable name 2024-04-01 10:49:28 +05:30
Manav Rathi 83dabfbdee
Refactor 2024-04-01 10:23:54 +05:30
Manav Rathi 35f2a6944e
Inline 2024-04-01 09:58:55 +05:30
Manav Rathi 18698d35bb
Replace in export progress 2024-03-31 21:43:24 +05:30
Manav Rathi 9e41b906a7
Swap progress bar 2024-03-31 21:38:26 +05:30
Manav Rathi 0f2181c09b
Remove more legacy ml code 2024-03-31 18:41:15 +05:30
Manav Rathi 707e14702e
Remove unused ML debug code 2024-03-31 18:34:00 +05:30
Manav Rathi f3a0240f1d
Remove more dead code
...that uses bootstrap instead of spending migration effort on it.
2024-03-31 18:23:05 +05:30
Manav Rathi e84b989484
Remove unused code
Came across this when trying to migrate off bootstrap in the few remaining
places, this code is unused and just removing it instead of doing a migration of
it to mui.
2024-03-31 18:19:48 +05:30
Manav Rathi 86e4cffb8e
Replace bootstrap buttons in fix time dialog 2024-03-31 18:16:57 +05:30
Manav Rathi 1d02fe4f32
Remove unused fix-large-thumbnail feature
This was disabled years ago. Specifically removing this now to reduce the amount
of work in removing bootstrap.
2024-03-31 18:07:17 +05:30
Manav Rathi e5edeae370
Remove the bootstrap carousel 2024-03-31 18:01:38 +05:30
Manav Rathi 40a1da1ba7
Fine tune 2024-03-31 18:00:09 +05:30
Manav Rathi 5dfafa28c7
Almost there in terms of styling 2024-03-31 17:54:38 +05:30
Manav Rathi d3df6b31ae
Use actual contents 2024-03-31 17:31:33 +05:30
Manav Rathi 145850a66e
Try using intrinsic size 2024-03-31 17:28:26 +05:30
Manav Rathi 8c127a6cec
Animate 2024-03-31 16:47:10 +05:30
Manav Rathi 3890373d4a
Try pure-react-carousel as a replacement of bootstrap's Carousel 2024-03-31 16:45:46 +05:30
Manav Rathi ee1eb75bdf
Extract component 2024-03-31 16:41:50 +05:30
Manav Rathi 7183a8b493
[web] Remove emotion caches
This is no longer needed for emotion > 10

> For v10 and above, SSR just works in Next.js.
>
> https://emotion.sh/docs/ssr#nextjs

Tested with

- yarn dev:*
- yarn preview:*

This change screws up the CSS in places in dev mode though.
2024-03-30 20:56:38 +05:30
Manav Rathi 949780d1e8
[cast] Use the placeholder as the placeholder, not as the label 2024-03-29 12:15:06 +05:30
Manav Rathi f524403580
Wait for i18 to be ready before trying to load the page 2024-03-28 14:25:20 +05:30
Manav Rathi 88e4f61221
Config 2024-03-28 12:07:10 +05:30
Manav Rathi 478435f806
Use :3001 for all the aux services 2024-03-28 11:42:59 +05:30
Manav Rathi 8f0ef055c5
[web] Make the imported payments code feel at home in the new monorepo
- Use the shared yarn monorepo configuration
- styled-components => emotion (since that's what the rest of the code uses)
- Remove Sentry (since it's gone elsewhere)
2024-03-28 11:40:22 +05:30
Vishnu Mohandas eef33e9c0c
[mobile][web] Redirect to payment portal if subscription is past due (#1222)
## Description

When a customer whose Stripe subscription is past due (within the 30 day
window after expiry time and has not been cancelled) clicks on the
subscription modal, take them to the payment portal to complete the
subscription.

## Tests

- [x] Tested web
- [x] Tested mobile
2024-03-27 16:29:58 +05:30
vishnukvmd ba307b0dcd [web] Fix check 2024-03-27 16:23:38 +05:30
vishnukvmd ba314eb647 [web] Handle past-due state on clicking "renew" 2024-03-27 16:17:23 +05:30
vishnukvmd 1020366c3a [mobile][web] Ignore cancelled subscriptions while computing past-due status 2024-03-27 16:11:03 +05:30
vishnukvmd a15e9b0c9a [web] Redirect to payment portal if subscription is past due 2024-03-27 15:57:00 +05:30