Skip to content
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

Closed
ronzulu opened this issue Feb 15, 2024 · 9 comments
Assignees
Labels
beta Included in beta release, https://github.com/st3v3nmw/obsidian-spaced-repetition/discussions/1011 enhancement New feature or request

Comments

@ronzulu
Copy link
Collaborator

ronzulu commented Feb 15, 2024

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

@ronzulu ronzulu added the enhancement New feature or request label Feb 15, 2024
@ronzulu ronzulu self-assigned this Feb 15, 2024
@pikatwinky
Copy link

pikatwinky commented Feb 26, 2024

It's only my opinion but,

Talking about the note review mode... i think having the note schedulling info in the frontmatter is very useful when using combined with Dataview which allows you create, through the use of queries, custom review sessions to filter down only certain sets of notes based on properties (in particular using the 'due date' field), functionality none existent currently in the plugin for this mode (you have to review your notes in a global way), so if #162 is implemented, this alternative won't be possible anymore (until the feat be implemented).
On the other hand, talking about the flashcards, i think having their scheduling info in a separate db could help to unclutter the notes, but of course, maybe this last thing is unfeasible

Edit:
Sorry, I wasn't aware of this fork and #748.
I like the idea of having a setting for selecting what kind of storage to use.

@YIRU69
Copy link

YIRU69 commented Mar 7, 2024

I hope you can bring FSRS functionality into this project!

@ronzulu
Copy link
Collaborator Author

ronzulu commented Mar 7, 2024

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...

@ronzulu ronzulu changed the title [FEAT] Refactor code to support different methods of storing the scheduling info [FEAT] Refactor code to support diff methods of storing the scheduling info, and diff SR algorithms Mar 31, 2024
@YIRU69
Copy link

YIRU69 commented Apr 21, 2024

Hi! Can you tell me approximately how long until I can use FSRS?

@ronzulu
Copy link
Collaborator Author

ronzulu commented Apr 21, 2024

Hi @YIRU69 if I'm the one implementing, I'd think realistically say 6 months, so around October this year.

@ronzulu ronzulu added the beta Included in beta release, https://github.com/st3v3nmw/obsidian-spaced-repetition/discussions/1011 label Jul 4, 2024
ronzulu added a commit to ronzulu/obsidian-spaced-repetition that referenced this issue Jul 10, 2024
ronzulu added a commit to ronzulu/obsidian-spaced-repetition that referenced this issue Jul 10, 2024
ronzulu added a commit to ronzulu/obsidian-spaced-repetition that referenced this issue Jul 16, 2024
ronzulu added a commit to ronzulu/obsidian-spaced-repetition that referenced this issue Jul 24, 2024
ronzulu added a commit that referenced this issue Sep 2, 2024
… 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 <75528127+ronzulu@users.noreply.github.com>
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 <anna_zubenko@fastmail.com>
Date:   Mon Jul 22 07:29:18 2024 +0200

    FEAT-990 Mobile landscape mode and functional size sliders (#998)

commit a89a818
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <mail@stephenmwangi.com>

commit 77f15e1
Author: Carlos Galdino <carloshsgaldino@gmail.com>
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 <9208450+Newdea@users.noreply.github.com>
Date:   Sat Jul 20 15:10:57 2024 +0800

    fix #1000 sidebar indent (#1001)

commit e3a0146
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <41666068+artefaritaKuniklo@users.noreply.github.com>
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 <mail@stephenmwangi.com>
@st3v3nmw
Copy link
Owner

@ronzulu this is done now right?

st3v3nmw added a commit that referenced this issue Sep 21, 2024
… 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 <75528127+ronzulu@users.noreply.github.com>
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 <anna_zubenko@fastmail.com>
Date:   Mon Jul 22 07:29:18 2024 +0200

    FEAT-990 Mobile landscape mode and functional size sliders (#998)

commit a89a818
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <mail@stephenmwangi.com>

commit 77f15e1
Author: Carlos Galdino <carloshsgaldino@gmail.com>
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 <9208450+Newdea@users.noreply.github.com>
Date:   Sat Jul 20 15:10:57 2024 +0800

    fix #1000 sidebar indent (#1001)

commit e3a0146
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <41666068+artefaritaKuniklo@users.noreply.github.com>
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 <mail@stephenmwangi.com>
st3v3nmw added a commit that referenced this issue Sep 21, 2024
… 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 <75528127+ronzulu@users.noreply.github.com>
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 <anna_zubenko@fastmail.com>
Date:   Mon Jul 22 07:29:18 2024 +0200

    FEAT-990 Mobile landscape mode and functional size sliders (#998)

commit a89a818
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <mail@stephenmwangi.com>

commit 77f15e1
Author: Carlos Galdino <carloshsgaldino@gmail.com>
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 <9208450+Newdea@users.noreply.github.com>
Date:   Sat Jul 20 15:10:57 2024 +0800

    fix #1000 sidebar indent (#1001)

commit e3a0146
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <41666068+artefaritaKuniklo@users.noreply.github.com>
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 <mail@stephenmwangi.com>
st3v3nmw added a commit that referenced this issue Sep 21, 2024
* 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 <75528127+ronzulu@users.noreply.github.com>
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 <anna_zubenko@fastmail.com>
Date:   Mon Jul 22 07:29:18 2024 +0200

    FEAT-990 Mobile landscape mode and functional size sliders (#998)

commit a89a818
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <mail@stephenmwangi.com>

commit 77f15e1
Author: Carlos Galdino <carloshsgaldino@gmail.com>
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 <9208450+Newdea@users.noreply.github.com>
Date:   Sat Jul 20 15:10:57 2024 +0800

    fix #1000 sidebar indent (#1001)

commit e3a0146
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <41666068+artefaritaKuniklo@users.noreply.github.com>
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 <mail@stephenmwangi.com>

* chore: update dependencies, linting, & tests

* update eslint

* lower coverage threshold

* minor fixes

---------

Co-authored-by: 4Source <38220764+4Source@users.noreply.github.com>
Co-authored-by: Ronny Zulaikha <75528127+ronzulu@users.noreply.github.com>
@ronzulu
Copy link
Collaborator Author

ronzulu commented Sep 22, 2024

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 ronzulu closed this as completed Sep 22, 2024
@YIRU69
Copy link

YIRU69 commented Sep 23, 2024

@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.

@ronzulu
Copy link
Collaborator Author

ronzulu commented Sep 23, 2024

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...)

Newdea pushed a commit to open-spaced-repetition/obsidian-spaced-repetition-recall that referenced this issue Sep 25, 2024
* 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 <75528127+ronzulu@users.noreply.github.com>
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 <anna_zubenko@fastmail.com>
Date:   Mon Jul 22 07:29:18 2024 +0200

    FEAT-990 Mobile landscape mode and functional size sliders (st3v3nmw#998)

commit a89a818
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <mail@stephenmwangi.com>

commit 77f15e1
Author: Carlos Galdino <carloshsgaldino@gmail.com>
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 <9208450+Newdea@users.noreply.github.com>
Date:   Sat Jul 20 15:10:57 2024 +0800

    fix st3v3nmw#1000 sidebar indent (st3v3nmw#1001)

commit e3a0146
Author: 4Source <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <38220764+4Source@users.noreply.github.com>
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 <41666068+artefaritaKuniklo@users.noreply.github.com>
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 <mail@stephenmwangi.com>

* chore: update dependencies, linting, & tests

* update eslint

* lower coverage threshold

* minor fixes

---------

Co-authored-by: 4Source <38220764+4Source@users.noreply.github.com>
Co-authored-by: Ronny Zulaikha <75528127+ronzulu@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
beta Included in beta release, https://github.com/st3v3nmw/obsidian-spaced-repetition/discussions/1011 enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants