* Weight search results by most recently updated
As discussed here: https://github.com/laurent22/joplin/pull/3777#issuecomment-696491859
Before this commit, results were rarely sorted by date. Content weights and fuzziness were
determined, and then the first criteria to differ would win in sort order (and user_updated_time
was the last criteria checked).
Now the weight score itself will also include age of user_updated_time, surfacing fresh content.
At the current alpha level, results are weighted logarithmically, prioritizing mostly within the
last 30 days, and especially heavily within the past week.
* Updated unit tests to weight search results by last updated date
* Updated unit test title
* Fixed issue with weighted search engine test, and made it more deterministic using mock date
Date was being calculated only at the start of the test suite. It also wasn't using a set mock date, so the milliseconds between the real search engine calculations and the test calculation caused differences in results
* Added initial Search Engine spec
* Added Search Engine spec to README.md
* Renamed Search Sorting spec per laurent22's mentioned naming
* Revised copy in search sorting spec
Co-authored-by: Laurent <laurent22@users.noreply.github.com>
* Update eslint config
* Applied linter to lib
* Applied eslint config to CliClient/app
* Removed prettier due to https://github.com/prettier/prettier/pull/4765
* First pass on test units
* Applied linter config to test units
* Applied eslint config to clipper
* Applied to plugin dir
* Applied to root of ElectronClient
* Applied on RN root
* Applied on CLI root
* Applied on Clipper root
* Applied config to tools
* test hook
* test hook
* test hook
* Added pre-commit hook
* Applied rule no-trailing-spaces
* Make sure root packages are installed when installing sub-dir
* Added doc