This is so that we can start configuring what the yaml metadata keys
should be called, and not have them hardcoded.
This also allows the note.created to be null. Earlier we were always
setting it to some value. That's doesn't seem right.
Otherwise people can put # or : or something else in the title and that
will result in invalid YAML.
Also escape any existing '. YAML is weird that the method of escaping a
' is by specifying it twice. It's sad that there is no dart YAML
serializer, and I'm surely missing some other edge cases. The YAML
specification is quite long.
It's no longer a simple JournalListing and instead we also show the
title. The main problem is with what to do when the title is not there.
Just leaving it blank seems to feel weird, specially when the note is
too small.
Maybe it's time to change it such that each row size is not the same.
We're effectively wasting whitespace right now for very small notes.
We're moving away from being a Journal Editor to being a Note Editor. I
don't want to discard the Journaling parts, as Journaling is really a
subset of Note Taking - so in the future it would be nice if this could
be somehow toggled.
Maybe each Folder can have different display settings. Probably in the
"pro" version.
This somewhat shows what's going on with the network. It isn't ideal, as
is a bit ugly. But it's a start to show the network status, and what's
going on in the background.
Well, we actually do support it, but I don't want users to use it,
as I have no intention of supporting it in the future.
In the future - Git will be written entirely in Dart.
With AWS Code commit we get URLs of the form -
ssh://APKAZLZA77YWDCWYRAC5@git-codecommit.eu-west-1.amazonaws.com/v1/repos/blah
All our assumptions about how the URL should be are now invalid. It's
best to just check for the presence of an '@'
We now have a much clearer separation between Git code and this app
specific code. This is awesome, it will allow other people to easily
integrate Git within their apps. Also, eventually it will be trivial to
switch to another implemention of Git (via JGit or a git client written
completely in Dart)
This breaks the iOS version as I haven't moved the code to build the ios
version. Maybe this will be a good excuse for me to setup a proper CI/CD
system for ios builds.
There is also a chance this breaks Crashalytics NDK symbols :(