-
Notifications
You must be signed in to change notification settings - Fork 190
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[FEAT] Refactor code to support diff methods of storing the scheduling info, and diff SR algorithms #878
Comments
It's only my opinion but,
Edit: |
I hope you can bring FSRS functionality into this project! |
I hope so! I've completed implementing the re-factoring addressed by this issue, but not yet completed testing. After this then there are a couple of other nontrivial tasks to complete... |
Hi! Can you tell me approximately how long until I can use FSRS? |
Hi @YIRU69 if I'm the one implementing, I'd think realistically say 6 months, so around October this year. |
…) modified for code changes implemented in st3v3nmw#878
… branch st3v3nmw#878) Squashed commit f44bea6
… info, and diff SR algorithms (#1006) * Perhaps half way towards implementation; doesn't build yet * Implemented 70%; doesn't build * Progress * Progress * Progress * 11 of the 19 existing test suites pass * 12 of the 19 existing test suites pass * 14 of the 19 existing test suites pass * Progress * 15 of the 19 existing test suites pass * All nineteen existing test suites pass * Minor fixes * More refactoring; doesn't build * Progress, doesn't build * Builds and all existing unit tests pass * Progress * Merge remote-tracking branch 'upstream/master'; due to conflicts fair manual work involved to complete merge with unit test cases working * Continued fixing post #495 integration * Added some test cases for OsrCore * Added unit test support code * Added more test files * Added test case, fixed code issues * Updated tests * Small refactor * !!GitHub_Desktop<feat-878-support-multiple-schedule-methods> * Fixes post merge stash * Added tests * More refactoring * Improved test coverage * Improved unit test code coverage * Starting testing of plugin within Obsidian * Bug fixes * Fixed broken test cases * Added test case for global coverage * A few merge fixes * Version ready for beta testing * Format and lint * Updated actions/checkout@v3 to node 20 * Lets make lint happy! * Previously the pnpm format added a blank line in a test markdown file which caused the test to fail * Slightly reduced jest code coverage threshold to writing a number of difficult test cases * Fixed bug where note frontmatter interval/ease set to null (app specific code, not core code) * Fixed some note review queue bugs (previously introduced in branch #878) * Lint & format * Fixed bug preventing stats being shown (previously introduced in branch #878) * Squashed commit of the following: commit 3228e9c Author: Ronny Zulaikha <[email protected]> Date: Wed Jul 24 15:10:39 2024 +1000 Support RTL flashcards specified by frontmatter "direction" attribute (#935) * Nearly completed * Added RTL support for flashcards edit modal * Changes as part of the merge * post upstream master merge fixes * Minor code improvement * lint and format * Change log and documentation update * Minor code change * Fixed EditModal RTL * lint and format * Updated test cases to fix global coverage error * Format & lint commit 971e4af Author: Anna Zubenko <[email protected]> Date: Mon Jul 22 07:29:18 2024 +0200 FEAT-990 Mobile landscape mode and functional size sliders (#998) commit a89a818 Author: 4Source <[email protected]> Date: Mon Jul 22 07:25:45 2024 +0200 [FIX] Cards missing when horizontal rule present in document (#970) * Use obsidians funtion to extractFrontmatter * Fix line pos shift * Stop using obsidian function because of UnitTest * Add UnitTest for Frontmatter and Horizontal line * Fix linting --------- Co-authored-by: Stephen Mwangi <[email protected]> commit 77f15e1 Author: Carlos Galdino <[email protected]> Date: Mon Jul 22 06:02:11 2024 +0100 Filter due notes when all are scheduled (#947) Ignore notes due in the future. Fixes #548 commit 83590be Author: Newdea <[email protected]> Date: Sat Jul 20 15:10:57 2024 +0800 fix #1000 sidebar indent (#1001) commit e3a0146 Author: 4Source <[email protected]> Date: Sat Jul 20 09:02:14 2024 +0200 [FIX] Include link parsing for Review context (#964) * Include link parsing * Fix linting commit 3024264 Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:46 2024 +0200 [FIX] Not scroll back to top after review (#971) * Update deprecated function * Add scroll back to top * Fix linting commit 1dfd52e Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:33 2024 +0200 [FIX] Folder ignore sorts all folder starting with string (#972) * Implement isEqualOrSubPath * Implement UnitTest for isEqualOrSubPath * Replace separators with system seperator * Improved seperator replacement commit b175d22 Author: artificialUsagi <[email protected]> Date: Sat Jul 20 14:59:11 2024 +0800 add translation: zh-cn (#982) * Format & lint * fix: changelog formatting * Post review fixes * Format and lint * Format & lint --------- Co-authored-by: Stephen Mwangi <[email protected]>
@ronzulu this is done now right? |
… info, and diff SR algorithms (#1006) * Perhaps half way towards implementation; doesn't build yet * Implemented 70%; doesn't build * Progress * Progress * Progress * 11 of the 19 existing test suites pass * 12 of the 19 existing test suites pass * 14 of the 19 existing test suites pass * Progress * 15 of the 19 existing test suites pass * All nineteen existing test suites pass * Minor fixes * More refactoring; doesn't build * Progress, doesn't build * Builds and all existing unit tests pass * Progress * Merge remote-tracking branch 'upstream/master'; due to conflicts fair manual work involved to complete merge with unit test cases working * Continued fixing post #495 integration * Added some test cases for OsrCore * Added unit test support code * Added more test files * Added test case, fixed code issues * Updated tests * Small refactor * !!GitHub_Desktop<feat-878-support-multiple-schedule-methods> * Fixes post merge stash * Added tests * More refactoring * Improved test coverage * Improved unit test code coverage * Starting testing of plugin within Obsidian * Bug fixes * Fixed broken test cases * Added test case for global coverage * A few merge fixes * Version ready for beta testing * Format and lint * Updated actions/checkout@v3 to node 20 * Lets make lint happy! * Previously the pnpm format added a blank line in a test markdown file which caused the test to fail * Slightly reduced jest code coverage threshold to writing a number of difficult test cases * Fixed bug where note frontmatter interval/ease set to null (app specific code, not core code) * Fixed some note review queue bugs (previously introduced in branch #878) * Lint & format * Fixed bug preventing stats being shown (previously introduced in branch #878) * Squashed commit of the following: commit 3228e9c Author: Ronny Zulaikha <[email protected]> Date: Wed Jul 24 15:10:39 2024 +1000 Support RTL flashcards specified by frontmatter "direction" attribute (#935) * Nearly completed * Added RTL support for flashcards edit modal * Changes as part of the merge * post upstream master merge fixes * Minor code improvement * lint and format * Change log and documentation update * Minor code change * Fixed EditModal RTL * lint and format * Updated test cases to fix global coverage error * Format & lint commit 971e4af Author: Anna Zubenko <[email protected]> Date: Mon Jul 22 07:29:18 2024 +0200 FEAT-990 Mobile landscape mode and functional size sliders (#998) commit a89a818 Author: 4Source <[email protected]> Date: Mon Jul 22 07:25:45 2024 +0200 [FIX] Cards missing when horizontal rule present in document (#970) * Use obsidians funtion to extractFrontmatter * Fix line pos shift * Stop using obsidian function because of UnitTest * Add UnitTest for Frontmatter and Horizontal line * Fix linting --------- Co-authored-by: Stephen Mwangi <[email protected]> commit 77f15e1 Author: Carlos Galdino <[email protected]> Date: Mon Jul 22 06:02:11 2024 +0100 Filter due notes when all are scheduled (#947) Ignore notes due in the future. Fixes #548 commit 83590be Author: Newdea <[email protected]> Date: Sat Jul 20 15:10:57 2024 +0800 fix #1000 sidebar indent (#1001) commit e3a0146 Author: 4Source <[email protected]> Date: Sat Jul 20 09:02:14 2024 +0200 [FIX] Include link parsing for Review context (#964) * Include link parsing * Fix linting commit 3024264 Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:46 2024 +0200 [FIX] Not scroll back to top after review (#971) * Update deprecated function * Add scroll back to top * Fix linting commit 1dfd52e Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:33 2024 +0200 [FIX] Folder ignore sorts all folder starting with string (#972) * Implement isEqualOrSubPath * Implement UnitTest for isEqualOrSubPath * Replace separators with system seperator * Improved seperator replacement commit b175d22 Author: artificialUsagi <[email protected]> Date: Sat Jul 20 14:59:11 2024 +0800 add translation: zh-cn (#982) * Format & lint * fix: changelog formatting * Post review fixes * Format and lint * Format & lint --------- Co-authored-by: Stephen Mwangi <[email protected]>
… info, and diff SR algorithms (#1006) * Perhaps half way towards implementation; doesn't build yet * Implemented 70%; doesn't build * Progress * Progress * Progress * 11 of the 19 existing test suites pass * 12 of the 19 existing test suites pass * 14 of the 19 existing test suites pass * Progress * 15 of the 19 existing test suites pass * All nineteen existing test suites pass * Minor fixes * More refactoring; doesn't build * Progress, doesn't build * Builds and all existing unit tests pass * Progress * Merge remote-tracking branch 'upstream/master'; due to conflicts fair manual work involved to complete merge with unit test cases working * Continued fixing post #495 integration * Added some test cases for OsrCore * Added unit test support code * Added more test files * Added test case, fixed code issues * Updated tests * Small refactor * !!GitHub_Desktop<feat-878-support-multiple-schedule-methods> * Fixes post merge stash * Added tests * More refactoring * Improved test coverage * Improved unit test code coverage * Starting testing of plugin within Obsidian * Bug fixes * Fixed broken test cases * Added test case for global coverage * A few merge fixes * Version ready for beta testing * Format and lint * Updated actions/checkout@v3 to node 20 * Lets make lint happy! * Previously the pnpm format added a blank line in a test markdown file which caused the test to fail * Slightly reduced jest code coverage threshold to writing a number of difficult test cases * Fixed bug where note frontmatter interval/ease set to null (app specific code, not core code) * Fixed some note review queue bugs (previously introduced in branch #878) * Lint & format * Fixed bug preventing stats being shown (previously introduced in branch #878) * Squashed commit of the following: commit 3228e9c Author: Ronny Zulaikha <[email protected]> Date: Wed Jul 24 15:10:39 2024 +1000 Support RTL flashcards specified by frontmatter "direction" attribute (#935) * Nearly completed * Added RTL support for flashcards edit modal * Changes as part of the merge * post upstream master merge fixes * Minor code improvement * lint and format * Change log and documentation update * Minor code change * Fixed EditModal RTL * lint and format * Updated test cases to fix global coverage error * Format & lint commit 971e4af Author: Anna Zubenko <[email protected]> Date: Mon Jul 22 07:29:18 2024 +0200 FEAT-990 Mobile landscape mode and functional size sliders (#998) commit a89a818 Author: 4Source <[email protected]> Date: Mon Jul 22 07:25:45 2024 +0200 [FIX] Cards missing when horizontal rule present in document (#970) * Use obsidians funtion to extractFrontmatter * Fix line pos shift * Stop using obsidian function because of UnitTest * Add UnitTest for Frontmatter and Horizontal line * Fix linting --------- Co-authored-by: Stephen Mwangi <[email protected]> commit 77f15e1 Author: Carlos Galdino <[email protected]> Date: Mon Jul 22 06:02:11 2024 +0100 Filter due notes when all are scheduled (#947) Ignore notes due in the future. Fixes #548 commit 83590be Author: Newdea <[email protected]> Date: Sat Jul 20 15:10:57 2024 +0800 fix #1000 sidebar indent (#1001) commit e3a0146 Author: 4Source <[email protected]> Date: Sat Jul 20 09:02:14 2024 +0200 [FIX] Include link parsing for Review context (#964) * Include link parsing * Fix linting commit 3024264 Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:46 2024 +0200 [FIX] Not scroll back to top after review (#971) * Update deprecated function * Add scroll back to top * Fix linting commit 1dfd52e Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:33 2024 +0200 [FIX] Folder ignore sorts all folder starting with string (#972) * Implement isEqualOrSubPath * Implement UnitTest for isEqualOrSubPath * Replace separators with system seperator * Improved seperator replacement commit b175d22 Author: artificialUsagi <[email protected]> Date: Sat Jul 20 14:59:11 2024 +0800 add translation: zh-cn (#982) * Format & lint * fix: changelog formatting * Post review fixes * Format and lint * Format & lint --------- Co-authored-by: Stephen Mwangi <[email protected]>
* Full coverage for UnitTest utils * Change test config * Added Unit Test for stats * Added Unit Test for NumberCountDict * Add function parseDateToTicks, formatDate * Fix includes and doc * Added Testcases * Remove unused function * Try fix ticksFromDate * Fix lint * [FIX] isEqualOrSubPath function (#1048) * Improve isEqualOrSubPath Description + remove use of normalize * update changelog * fix linting * update changelog * Revert "update changelog" This reverts commit d7ba801. * Update Changelog * feat: refactor code to support diff methods of storing the scheduling info, and diff SR algorithms (#1006) * Perhaps half way towards implementation; doesn't build yet * Implemented 70%; doesn't build * Progress * Progress * Progress * 11 of the 19 existing test suites pass * 12 of the 19 existing test suites pass * 14 of the 19 existing test suites pass * Progress * 15 of the 19 existing test suites pass * All nineteen existing test suites pass * Minor fixes * More refactoring; doesn't build * Progress, doesn't build * Builds and all existing unit tests pass * Progress * Merge remote-tracking branch 'upstream/master'; due to conflicts fair manual work involved to complete merge with unit test cases working * Continued fixing post #495 integration * Added some test cases for OsrCore * Added unit test support code * Added more test files * Added test case, fixed code issues * Updated tests * Small refactor * !!GitHub_Desktop<feat-878-support-multiple-schedule-methods> * Fixes post merge stash * Added tests * More refactoring * Improved test coverage * Improved unit test code coverage * Starting testing of plugin within Obsidian * Bug fixes * Fixed broken test cases * Added test case for global coverage * A few merge fixes * Version ready for beta testing * Format and lint * Updated actions/checkout@v3 to node 20 * Lets make lint happy! * Previously the pnpm format added a blank line in a test markdown file which caused the test to fail * Slightly reduced jest code coverage threshold to writing a number of difficult test cases * Fixed bug where note frontmatter interval/ease set to null (app specific code, not core code) * Fixed some note review queue bugs (previously introduced in branch #878) * Lint & format * Fixed bug preventing stats being shown (previously introduced in branch #878) * Squashed commit of the following: commit 3228e9c Author: Ronny Zulaikha <[email protected]> Date: Wed Jul 24 15:10:39 2024 +1000 Support RTL flashcards specified by frontmatter "direction" attribute (#935) * Nearly completed * Added RTL support for flashcards edit modal * Changes as part of the merge * post upstream master merge fixes * Minor code improvement * lint and format * Change log and documentation update * Minor code change * Fixed EditModal RTL * lint and format * Updated test cases to fix global coverage error * Format & lint commit 971e4af Author: Anna Zubenko <[email protected]> Date: Mon Jul 22 07:29:18 2024 +0200 FEAT-990 Mobile landscape mode and functional size sliders (#998) commit a89a818 Author: 4Source <[email protected]> Date: Mon Jul 22 07:25:45 2024 +0200 [FIX] Cards missing when horizontal rule present in document (#970) * Use obsidians funtion to extractFrontmatter * Fix line pos shift * Stop using obsidian function because of UnitTest * Add UnitTest for Frontmatter and Horizontal line * Fix linting --------- Co-authored-by: Stephen Mwangi <[email protected]> commit 77f15e1 Author: Carlos Galdino <[email protected]> Date: Mon Jul 22 06:02:11 2024 +0100 Filter due notes when all are scheduled (#947) Ignore notes due in the future. Fixes #548 commit 83590be Author: Newdea <[email protected]> Date: Sat Jul 20 15:10:57 2024 +0800 fix #1000 sidebar indent (#1001) commit e3a0146 Author: 4Source <[email protected]> Date: Sat Jul 20 09:02:14 2024 +0200 [FIX] Include link parsing for Review context (#964) * Include link parsing * Fix linting commit 3024264 Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:46 2024 +0200 [FIX] Not scroll back to top after review (#971) * Update deprecated function * Add scroll back to top * Fix linting commit 1dfd52e Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:33 2024 +0200 [FIX] Folder ignore sorts all folder starting with string (#972) * Implement isEqualOrSubPath * Implement UnitTest for isEqualOrSubPath * Replace separators with system seperator * Improved seperator replacement commit b175d22 Author: artificialUsagi <[email protected]> Date: Sat Jul 20 14:59:11 2024 +0800 add translation: zh-cn (#982) * Format & lint * fix: changelog formatting * Post review fixes * Format and lint * Format & lint --------- Co-authored-by: Stephen Mwangi <[email protected]> * chore: update dependencies, linting, & tests * update eslint * lower coverage threshold * minor fixes --------- Co-authored-by: 4Source <[email protected]> Co-authored-by: Ronny Zulaikha <[email protected]>
Hi @st3v3nmw More will need to be done when new data stores are actually implemented, for example converting from one Datastore type to another. But I'm happy enough with what's been completed so far, so I'll close this now. |
@ronzulu Hi, glad to hear you complete this huge work. But it just part work for FSRS? I check the newest update and can't find FSRS. |
Unfortunately @YIRU69 that is correct. It's only one part. Also, I've taken @danhje suggestion and am first working on [FEAT] user defined "Easy, Good, Hard" values instead of or in addition to the algorithm defined one. #741 . The rationale being that #741 is a practical and easier way of verifying the work done here in #878 compared with FSRS. (Apart from all the unit test cases I added here...) |
* Full coverage for UnitTest utils * Change test config * Added Unit Test for stats * Added Unit Test for NumberCountDict * Add function parseDateToTicks, formatDate * Fix includes and doc * Added Testcases * Remove unused function * Try fix ticksFromDate * Fix lint * [FIX] isEqualOrSubPath function (st3v3nmw#1048) * Improve isEqualOrSubPath Description + remove use of normalize * update changelog * fix linting * update changelog * Revert "update changelog" This reverts commit d7ba801. * Update Changelog * feat: refactor code to support diff methods of storing the scheduling info, and diff SR algorithms (st3v3nmw#1006) * Perhaps half way towards implementation; doesn't build yet * Implemented 70%; doesn't build * Progress * Progress * Progress * 11 of the 19 existing test suites pass * 12 of the 19 existing test suites pass * 14 of the 19 existing test suites pass * Progress * 15 of the 19 existing test suites pass * All nineteen existing test suites pass * Minor fixes * More refactoring; doesn't build * Progress, doesn't build * Builds and all existing unit tests pass * Progress * Merge remote-tracking branch 'upstream/master'; due to conflicts fair manual work involved to complete merge with unit test cases working * Continued fixing post st3v3nmw#495 integration * Added some test cases for OsrCore * Added unit test support code * Added more test files * Added test case, fixed code issues * Updated tests * Small refactor * !!GitHub_Desktop<feat-878-support-multiple-schedule-methods> * Fixes post merge stash * Added tests * More refactoring * Improved test coverage * Improved unit test code coverage * Starting testing of plugin within Obsidian * Bug fixes * Fixed broken test cases * Added test case for global coverage * A few merge fixes * Version ready for beta testing * Format and lint * Updated actions/checkout@v3 to node 20 * Lets make lint happy! * Previously the pnpm format added a blank line in a test markdown file which caused the test to fail * Slightly reduced jest code coverage threshold to writing a number of difficult test cases * Fixed bug where note frontmatter interval/ease set to null (app specific code, not core code) * Fixed some note review queue bugs (previously introduced in branch st3v3nmw#878) * Lint & format * Fixed bug preventing stats being shown (previously introduced in branch st3v3nmw#878) * Squashed commit of the following: commit 3228e9c Author: Ronny Zulaikha <[email protected]> Date: Wed Jul 24 15:10:39 2024 +1000 Support RTL flashcards specified by frontmatter "direction" attribute (st3v3nmw#935) * Nearly completed * Added RTL support for flashcards edit modal * Changes as part of the merge * post upstream master merge fixes * Minor code improvement * lint and format * Change log and documentation update * Minor code change * Fixed EditModal RTL * lint and format * Updated test cases to fix global coverage error * Format & lint commit 971e4af Author: Anna Zubenko <[email protected]> Date: Mon Jul 22 07:29:18 2024 +0200 FEAT-990 Mobile landscape mode and functional size sliders (st3v3nmw#998) commit a89a818 Author: 4Source <[email protected]> Date: Mon Jul 22 07:25:45 2024 +0200 [FIX] Cards missing when horizontal rule present in document (st3v3nmw#970) * Use obsidians funtion to extractFrontmatter * Fix line pos shift * Stop using obsidian function because of UnitTest * Add UnitTest for Frontmatter and Horizontal line * Fix linting --------- Co-authored-by: Stephen Mwangi <[email protected]> commit 77f15e1 Author: Carlos Galdino <[email protected]> Date: Mon Jul 22 06:02:11 2024 +0100 Filter due notes when all are scheduled (st3v3nmw#947) Ignore notes due in the future. Fixes st3v3nmw#548 commit 83590be Author: Newdea <[email protected]> Date: Sat Jul 20 15:10:57 2024 +0800 fix st3v3nmw#1000 sidebar indent (st3v3nmw#1001) commit e3a0146 Author: 4Source <[email protected]> Date: Sat Jul 20 09:02:14 2024 +0200 [FIX] Include link parsing for Review context (st3v3nmw#964) * Include link parsing * Fix linting commit 3024264 Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:46 2024 +0200 [FIX] Not scroll back to top after review (st3v3nmw#971) * Update deprecated function * Add scroll back to top * Fix linting commit 1dfd52e Author: 4Source <[email protected]> Date: Sat Jul 20 09:00:33 2024 +0200 [FIX] Folder ignore sorts all folder starting with string (st3v3nmw#972) * Implement isEqualOrSubPath * Implement UnitTest for isEqualOrSubPath * Replace separators with system seperator * Improved seperator replacement commit b175d22 Author: artificialUsagi <[email protected]> Date: Sat Jul 20 14:59:11 2024 +0800 add translation: zh-cn (st3v3nmw#982) * Format & lint * fix: changelog formatting * Post review fixes * Format and lint * Format & lint --------- Co-authored-by: Stephen Mwangi <[email protected]> * chore: update dependencies, linting, & tests * update eslint * lower coverage threshold * minor fixes --------- Co-authored-by: 4Source <[email protected]> Co-authored-by: Ronny Zulaikha <[email protected]>
The current code has a structure tied to the method of storing scheduling info within the note markdown file itself.
Refactoring the code is a prerequisite to implementing other methods, e.g. as requested in:
[FEAT] Stop using YAML; Move plugin info and data to separate file
The text was updated successfully, but these errors were encountered: