I have been chatting off-list with Michael but really should be having these
conversations here.
Initial feedback on the CICD release process has been overwhelmingly positive,
but there were a few really good pieces of criticism as well
- the GitHub release page is not very user friendly and feels far more like
something targeting developers, not end users / divers
- in the same context, it's hard for some of our users to figure out which
binaries to download - which one is the Windows installer, which one is for
Android, etc
- depending on how many things get merged / pushed, this process creates a LOT
of new releases which most people will not want to upgrade to all the time
- unsigned binaries are far less convenient than signed binaries, especially on
macOS, but also on Windows
- it would be nice to get better update notifications in the apps, and to
include Android in that list (as it no longer gets store notifications)
- what about iOS?
In order to address some of these concerns, I built a new download page and
some automation that keeps it updated. This happens with, at a minimum, a 1h
time lag so that all binaries show up at the same time; this also gives us some
margin of error if we merge something that fails that allows us to not post a
release. And of course there's a mechanism to manually point at a different
release.
You can see the current version of this download page here:
https://subsurface-divelog.org/current-release/
This is NOT linked into the overall website, yet, as I wanted to collect a bit
more feedback, first.
(and yes, I am not a good web designer... tell me something I don't know)
This should address the first couple of concerns listed above.
To deal with the third one, I am thinking through options to semi-automatically
create weekly releases with a different landing page (that clearly identifies
these as "weekly", but is otherwise very similar to the page above). And I'm
hoping to find a rhythm to also update the iOS app roughly in that cadence.
In this context I am hoping to overhaul the update mechanism for the apps (and
add the mobile apps to the mix) and set things up so people can pick if they
want the water-hose or the weekly update reminders. That hasn't happened, yet,
and obviously will also require some changes in the apps (while at the same
time not breaking older apps). So this may take a little longer :)
Finally, app signing.
Given how painful macOS makes it to install unsigned apps, I think I'll need to
figure out how to sign at least the "weekly" builds. I doubt that I can truly
automate that, but maybe I can figure out a way to keep up with things.
As for Windows - that's a harder problem. The signing mechanisms for Windows
are either prohibitively expensive (even with the generous donations from some
of you - we are talking around $300-500 a year plus hardware cost (as I would
need an actual real Windows machine for this -- apparently doing this in a VM
no longer works) for what is essentially a blessed random number. The old
system that was more affordable (~$100/year) has been killed by Microsoft when
they started making additional requirements (including allowing signing
certificates only when they are on hardware keys). And as I mentioned before,
I'm seeing a lot more companies release unsigned apps for Windows again.
If a better and more realistically priced solution pops up, I'll happily
revisit this topic.
/D
_______________________________________________
subsurface mailing list
[email protected]
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface