Also for handling the latest dart-git. This required disabling -
* ssh_key - Feature toggle (off by default) for generating the ssh key
in dart. This was causing problems.
* screenshots
* flutter_driver - used by screenshots
flutter_driver was nice to have as it was the only proper integration
test that we have.
Also, many of the tests currently fail because of problems with Sentry.
I prefer to fix those in another commit
Stop it being a singleton. This means it needs to be passed around a
lot. This sucks, but it's how it should be. I shouldn't be using a
global variable to get around this.
This is needed as Settings will soon become repo specific when we
support multiple repos.
This breaks saving the settings in a file, that feature was toggled off
anyway. It needs to be thought over again.
It makes the entire code base far more complicated and the round trip to
get the directory really isn't that much. This is a massive
micro-optimization for very little benefit.
This way all the persistant state of the app is managed from the same
place. It makes everything much easier. Also, it's required for when
GitJournal supports multiple repositories.
Instead lets just use the path_provider. This was being used as for some
reason I wanted the files to reside inside the 'files' folder and not in
the 'app_flutter' directory.
However, that requires maintaining a fork of path_provider, which I no
longer want to do.
This required refactoring the code. With this we can now write an
integration test to test the main parts of the app, but more importantly
we can automate the process of generating the screenshots.