* add windows-2019 to CI os matrix
* use actual URI object instead of strings to represent paths/uris
* added datastore tests
* chore: make Foam IDisposable
* fix(graph): Don't delete node for note on update
Doing so causes graphlib to delete the inbound links from other nodes so when this node is re-created it will be adrift by itself.
* Clear graph node's forward links on note update so they can be accurately rebuilt
* test(dataviz): Ensure updating a note does not clear its backlinks (tests #393)
* fix(dataviz): On note delete, set node to "no file" state if it is referenced by other notes
* test(dataviz): Ensure graph updates properly from note deletions
* reorganized and updated foam docs
* minor changes to vscode extension readme
* added 404 page and minor changes
Co-authored-by: Joe Previte <jjprevite@gmail.com>
Added API and events around note deletion
Improved github workflows, added logic to avoid duplicate runs in CI and merged build + test jobs
Added support for running workflows in multiple environments, commented window-2019 as test don't pass, but they will be fixed in another PR to avoid scope creep here.
* Improved logging
- using classes instead of functions (feels like it fits better the use case)
- using singleton global to not pass logging service around
* Added vscode logger, command to change level, and settings
* improved bootstrap logging
* build foam-core before running tests in github workflows
* added common code from vscode repo
lots of good utility functions and objects, especially around lifecycle and event management
* added datastore and logger services
* refactored bootstrap to consolidate behavior in foam-core
* tags treeview now updates when files are saved
* updated node engine version to match vscode's
* using new event model for foam graph events
* Initial work to create new note from template
* Treat template as snippet string
* Small refactor
* Improve semantics of focusNote
* Ask for filename, not title
Authored-by: Jonathan Ingall <jonny@mondago.com>