From ccc9d9027a83dbfedf0ae2c174d3f6c4792cfacf Mon Sep 17 00:00:00 2001 From: Sunong2008 <91547012+Sunrongguo2008@users.noreply.github.com> Date: Wed, 11 Jun 2025 14:01:47 +0800 Subject: [PATCH 1/5] Delay retention workload info display after FSRS optimization alerts (#4066) * Update FsrsOptions.svelte * Update CONTRIBUTORS * Make it full width too, so it doesn't resize when transitioning past 90 * Make sure the Warning appears after the alert * Update FsrsOptions.svelte * Update FsrsOptions.svelte * Update FsrsOptions.svelte --- CONTRIBUTORS | 1 + ts/routes/deck-options/FsrsOptions.svelte | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 8f167b962..d334540fb 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -230,6 +230,7 @@ KolbyML Adnane Taghi Spiritual Father Emmanuel Ferdman +Sunong2008 Marvin Kopf ******************** diff --git a/ts/routes/deck-options/FsrsOptions.svelte b/ts/routes/deck-options/FsrsOptions.svelte index af0a468ea..79a94f0bd 100644 --- a/ts/routes/deck-options/FsrsOptions.svelte +++ b/ts/routes/deck-options/FsrsOptions.svelte @@ -207,7 +207,9 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html } if (!already_optimal) { $config.fsrsParams6 = resp.params; - optimized = true; + setTimeout(() => { + optimized = true; + }, 201); } if (computeParamsProgress) { computeParamsProgress.current = computeParamsProgress.total; From fe750dba9f9f97c314446acd15a9ed7557c9e28d Mon Sep 17 00:00:00 2001 From: sorata <136738526+brishtibheja@users.noreply.github.com> Date: Wed, 11 Jun 2025 11:32:08 +0530 Subject: [PATCH 2/5] style hr element (#4067) --- ts/reviewer/reviewer.scss | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ts/reviewer/reviewer.scss b/ts/reviewer/reviewer.scss index 019cf1a81..a2c05d3f5 100644 --- a/ts/reviewer/reviewer.scss +++ b/ts/reviewer/reviewer.scss @@ -7,6 +7,8 @@ hr { background-color: vars.palette(darkgray, 0); margin: 1em 0; + border: none; + height: 1px; } body { From 83131cb48ea4752229fe79ac98496e3a7a83c0fa Mon Sep 17 00:00:00 2001 From: Luc Mcgrady Date: Wed, 11 Jun 2025 07:31:17 +0100 Subject: [PATCH 3/5] Feat/Message at 100% progress for optimize (#4069) --- ftl/core/deck-config.ftl | 1 + ts/routes/deck-options/FsrsOptions.svelte | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ftl/core/deck-config.ftl b/ftl/core/deck-config.ftl index 15507f468..6b8ebbfa5 100644 --- a/ftl/core/deck-config.ftl +++ b/ftl/core/deck-config.ftl @@ -483,6 +483,7 @@ deck-config-percent-of-reviews = *[other] { $pct }% of { $reviews } reviews } deck-config-percent-input = { $pct }% +deck-config-checking-for-improvement = Checking for improvement... deck-config-optimizing-preset = Optimizing preset { $current_count }/{ $total_count }... deck-config-fsrs-must-be-enabled = FSRS must be enabled first. deck-config-fsrs-params-optimal = The FSRS parameters currently appear to be optimal. diff --git a/ts/routes/deck-options/FsrsOptions.svelte b/ts/routes/deck-options/FsrsOptions.svelte index 79a94f0bd..1787da899 100644 --- a/ts/routes/deck-options/FsrsOptions.svelte +++ b/ts/routes/deck-options/FsrsOptions.svelte @@ -283,7 +283,11 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html if (val instanceof ComputeRetentionProgress) { return `${pct}%`; } else { - return tr.deckConfigPercentOfReviews({ pct, reviews: val.reviews }); + if (val.current === val.total) { + return tr.deckConfigCheckingForImprovement(); + } else { + return tr.deckConfigPercentOfReviews({ pct, reviews: val.reviews }); + } } } From 22f4a83222c2d49ba20e50a52b272c235c352d57 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Wed, 11 Jun 2025 13:34:26 +0700 Subject: [PATCH 4/5] Bump requests for CVE --- python/requirements.bundle.txt | 6 +++--- python/requirements.dev.txt | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/python/requirements.bundle.txt b/python/requirements.bundle.txt index 1540ba074..f1af449ac 100644 --- a/python/requirements.bundle.txt +++ b/python/requirements.bundle.txt @@ -362,9 +362,9 @@ pysocks==1.7.1 \ --hash=sha256:2725bd0a9925919b9b51739eea5f9e2bae91e83288108a9ad338b2e3a4435ee5 \ --hash=sha256:3f8804571ebe159c380ac6de37643bb4685970655d3bba243530d6558b799aa0 # via requests -requests==2.32.3 \ - --hash=sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760 \ - --hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c \ + --hash=sha256:27d0316682c8a29834d3264820024b62a36942083d52caf2f14c0591336d3422 # via # -r requirements.anki.in # -r requirements.aqt.in diff --git a/python/requirements.dev.txt b/python/requirements.dev.txt index 671a8ee9b..9b96a1cd4 100644 --- a/python/requirements.dev.txt +++ b/python/requirements.dev.txt @@ -502,9 +502,9 @@ pytest==8.3.2 \ --hash=sha256:4ba08f9ae7dcf84ded419494d229b48d0903ea6407b030eaec46df5e6a73bba5 \ --hash=sha256:c132345d12ce551242c87269de812483f5bcc87cdbb4722e48487ba194f9fdce # via -r requirements.dev.in -requests==2.32.3 \ - --hash=sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760 \ - --hash=sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6 +requests==2.32.4 \ + --hash=sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c \ + --hash=sha256:27d0316682c8a29834d3264820024b62a36942083d52caf2f14c0591336d3422 # via # -r requirements.anki.in # -r requirements.aqt.in From e728e8bcb1144ffdd7a83a4895219d9ee2ecabdc Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Thu, 12 Jun 2025 12:20:02 +0700 Subject: [PATCH 5/5] Recreate pyenv if it was created with uv Temporary fix for #4074 breaking normal builds --- build/runner/src/pyenv.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/build/runner/src/pyenv.rs b/build/runner/src/pyenv.rs index 82b3b49ed..934b88bbc 100644 --- a/build/runner/src/pyenv.rs +++ b/build/runner/src/pyenv.rs @@ -27,6 +27,13 @@ pub fn setup_pyenv(args: PyenvArgs) { let pyenv_python = pyenv_bin_folder.join("python"); let pip_sync = pyenv_bin_folder.join("pip-sync"); + // Ensure the venv gets recreated properly if it was created by our uv branch + let cache_tag = pyenv_folder.join("CACHEDIR.TAG"); + if cache_tag.exists() { + println!("Cleaning up uv pyenv..."); + std::fs::remove_dir_all(pyenv_folder).expect("Failed to remove pyenv folder"); + } + if !pyenv_python.exists() { run_command( Command::new(&args.python_bin)