Nightlies are fun but a stable release is required for Status contributors and the community at large.
Many people met at Prague and discussed stable launch prerequisites. Many issues were focused around reliability and user confidence.
0.9.0 released https://github.com/status-im/status-react/releases
Update: During today's desktop sync the team agreed to ship the alpha release by Dec 14. 馃帀
@churik If we are aiming for Dec 14 release when should be cutting the release branch? How much release testing will be needed?
Also for reference we have the mobile release guide to borrow from.
@chadyj
I believe 2-3 days should be enough to test RC candidates (if no more release blockers will be found).
Let me clarify several moments:
1) now we are mostly concentrated on Mac OSx users? (because imo Linux and Windows have existing important issues: https://github.com/status-im/status-react/issues/6796, https://github.com/status-im/status-react/issues/6727, https://github.com/status-im/status-react/issues/6124)
2) I propose to add https://github.com/status-im/status-react/issues/6656 to 0.9.0 -I believe it can be high-prio and Max is already started working on it.
3) group chats will be enabled in next mobile release; but they are still don't have any design applied and even icons on desktop, should we marked it as known in release notes?
- now we are mostly concentrated on Mac OSx users? (because imo Linux and Windows have existing important issues: #6796, #6727, #6124)
Most of our current users are on MacOS, but we aim to equally support Mac, Linux, and Windows.
We should fix any blockers that prevent the use of the app, but it is OK if there are a few warts on the release. This is an alpha after all :)
- I propose to add #6656 to 0.9.0 -I believe it can be high-prio and Max is already started working on it.
Ok.
For launch blockers let's do what mobile does and add the release-desktop tag to the issue. I started a desktop release guide doc so please add any thoughts there.
We can also ping this issue with updates.
- group chats will be enabled in next mobile release; but they are still don't have any design applied and even icons on desktop, should we marked it as known in release notes?
Good idea to mention it in the release notes. Group chats are WIP on mobile too so we can mention that feedback is appreciated and the feature is evolving.
Can we disable the download new version feature in the release builds? We don't want stable release users to accidentally install a unstable nightly version.
Also is there a flag like on mobile that can make some features dev/nightly and others release?
Can we disable the download new version feature in the release builds? We don't want stable release users to accidentally install a unstable nightly version.
@flexsurfer can you help here?
Also is there a flag like on mobile that can make some features dev/nightly and others release?
AFAIK no.
Can we disable the download new version feature in the release builds? We don't want stable release users to accidentally install a unstable nightly version.
better to remove it completely then, anyway it works only for mac
Added issue to remove nightly build feature https://github.com/status-im/status-react/issues/6997
Along those lines I notice that mobile has special Jenkins release jobs that do things like omit logging, or omit other features that are not intended for release. Is this something we might want to create @MaxRis @vkjr @siphiuel?
I think yes, this could be useful
As @cammellos pointed out we already have a few release jobs that we should be using. We can piggy back on or at least reference:
@jakubgs Got any tips for what job is best to use and how to edit and make suitable for desktop releases?
馃挕 @jakubgs what do you think of a Jenkins job similar to the iOS/Android release job that uploads release builds to Github releases using their API? I see there is a nice Fastlane action that does the heavy lifting :)
https://docs.fastlane.tools/actions/set_github_release/
(The same thing might be interesting for mobile releases to host a APK that @pablanopete likes to distribute for Chinese users.)
Added issue for desktop release - #7001
Hey everyone please remember to take a look at the security issue, especially this comment and linked doc https://github.com/status-im/status-react/issues/5845#issuecomment-444191319
This is arguably the most important feature of a release so please review and add your answers/questions/feedback.
@jakubgs Got any tips for what job is best to use and how to edit and make suitable for desktop releases?
The second and the third job you listed are obsolete and should not be used. There is only one Jenkinsfile we should be using and that's ci/Jenkinsfile.combined, and the only Job that uses is properly is the https://ci.status.im/job/status-react/job/release/.
Once the release of 0.9.32 is done I will disable and eventually delete both upload_release_ios and upload_release_android which are just legacy relicts.
Hey Core team! @mandrigin @cammellos @adambabik @dshulyak @rasom
We are aiming to cut the desktop alpha release branch and ship it next week. Is there anything that you are working on that we should be sure to include in the release? Please ping us if there is essential work to be cherry picked.
Is there anything that you are working on that we should be sure to include in the release?
nothing from my side
I need to port back the hotfix on develop so https://github.com/status-im/status-go/pull/1306 in status-go + updated status-go version, on top of #6877
@oskarth are we still aiming to release status-desktop by the end of the week and scope remains the same?
@churik @siphiuel Yes. Is the header parent up to date? It seems like a lot of stuff. Is it clear what the critical path is / what the blocker issues are, and is it realistic that this can be done?
If we can finish this up before end of the week that'd be good. This might mean cutting scope. I made some comments in the unfinished items.
It'd also be useful to understand who is the primary owner of this release.
cc @rachelhamlin FYI
@oskarth
1) Security review was made and only one thing should be done for now FYI - possibility to change log level for user in UI.
Two issues for now - https://github.com/status-im/status-react/issues/5848 and https://github.com/status-im/status-react/issues/6569.
https://github.com/status-im/status-react/issues/5848 is WIP
https://github.com/status-im/status-react/issues/6569 has a PR in "Testing"
@siphiuel can you please estimate remaining work?
2) Remove google.com connection #6961 - depends on https://github.com/status-im/react-native-desktop/pull/426 and https://github.com/status-im/status-react/pull/7012.
https://github.com/status-im/status-react/pull/7012 is "IN TESTING" state and hopefully today will be merged.
@vkjr should I test https://github.com/status-im/react-native-desktop/pull/426 and when it should be merged in RN and be included to desktop app as well?
3) "Offline" and couldn't send new messages after going back from sleep mode #6396. - should be fixed in https://github.com/status-im/status-react/pull/7012
4) Connection feedback #6568 - was done partially (app shows peer count).
@siphiuel do you think we can leave it as it is and exclude #6568 from alpha release?
5) Add FAQ to desktop #5452 - still unassigned.
6) remove nightly updater feature #6997 - assigned to @flexsurfer, can you please estimate remaining work?
@churik, Remove google.com connection #6961 doesn't really depends on status-im/react-native-desktop#426, because our decision was to implement it without using NetInfo module at all and this is exactly what is in progress in #7012
Pinging google won't be removed in status-im/react-native-desktop#426. Instead added possibility to ping another sites. We didn't find any other way to be sure that internet connectivity exists. And in mobile react-native it is implemented the same way. react-native for ios pings apple.com.
So we leave this functionality in react-native-desktop, but use different approach (peers count) in status-react
@vkjr currently I'm testing build from #7012 and I still can see that google.com is pinged by Status. What additionally should be done to remove it completely?
@churik, thanks for finding.
Created a bug for this - https://github.com/status-im/react-native-desktop/issues/434. That happens because NetInfo module checks connectivity even if there is no listener to this info.
Our main consideration against pinging google was that it can be inaccessible (blocked) in some countries and we will get inadequate results when detecting online\offline state. #7012 changed that.
So the bug in NetInfo and google pinging won't affect the work of status react.
I believe we can leave bug of out of scope of 0.9.0, but of course it should be fixed.
wdyt?
@vkjr I'm OK with that, but IMO it is included as part of release and should be confirmed from security POV.
@annadanchenko @corpetty WDYT?
extra stuff to include into desktop release when PR is approved and tested ok: https://github.com/status-im/status-react/pull/7085
and please, consider fixing https://github.com/status-im/status-react/issues/6200 for release as call to api.mixpanel.com is against privacy principles
I agree re fixing 6200. A DB shouldn't have hard dependency on tracking software.
That said, we should make sure this release gets out before people go on vacation. There might also be random regressions and so on, so the sooner the better. Do people feel confident we can get a stable version out before vacation time? cc @siphiuel
@oskarth @annadanchenko how about that NetInfo still checks connectivity using google.com? (RN-issue https://github.com/status-im/react-native-desktop/issues/434 ) - can we go with it?
Replied here https://github.com/status-im/react-native-desktop/issues/434#issuecomment-447027256
Depending on specifics I'd note it as a potential issue in release notes. Hunch would be that it is just a ping vs actually leaking data, so something to fix but not release blocker per se. IMO.
This would be a useful thing to make clear in a 'Security and Privacy' section, see https://github.com/status-im/swarms/pull/339#discussion_r241415423
That said, we should make sure this release gets out before people go on vacation. There might also be random regressions and so on, so the sooner the better. Do people feel confident we can get a stable version out before vacation time?
What if after the release hotfix will be needed? Does it make sense to make it so quick and no buffer for hotfix? Should we just have a dogfooding release build for 1-2 weeks before rolling out?
This release has to be done before end of year, which means before Christmas. Collectively we need to focus on SNT utility in Q1. If this means cutting scope for release then so be it. Also not unlikely at least someone will be around in case of huge flaw. It鈥檚 also the case that people are already relying on it.
We鈥檝e already delayed this first alpha release for months, this was a milestone back in Q2 and Q3 already.
Subscribed to this issue. Please ping when release is slated to go live, so can get communications out properly.
@yenda and @siphiuel, could you guys prioritise fixes to these open PRs today?
https://github.com/status-im/status-react/pull/7096
https://github.com/status-im/status-react/pull/7106
After that, we need to define what is mandatory from the security review.
And I'd vote to drop #7101 from release. cc @churik
@rachelhamlin @siphiuel @annadanchenko
on latest develop there are two new issues (https://ci.status.im/job/status-react/job/nightly/856/):
1) crash on logout
2) unable to see chat history in existing chats until you start scrolling
These issues are missing on nightly 17/12/2018.
@siphiuel can provide info what PR introduces an issue and I suggest to exclude it from release branch.
One more issue should be included in release IMO - #7115 because users can't fetch history for 24h when they select this mailserver
Please share your thoughts
If it's possible then rollback #7055 and after this make a branch for desktop release based on new develop. If not possible then branch release based on older develop state (before #7055). Cherry pick and merge fixes for open blockers for release into this branch.
@rasom maybe you can assist?
@siphiuel fixed these issues on latest nightly.
Added #7128 and #7115 to release
release branch is cut; release/desktop/0.9.0 - fixes #7100, #7128, #7115, #7101 should be included in this branch
@rachelhamlin @siphiuel @annadanchenko
13 build was tested and IMO it doesn't contain new release-blockers.
Testing results are here: https://ethstatus.testrail.net/index.php?/plans/view/2178
Hey! Any updates on this? When is the new ETA? I guess people are just getting back from vacation today or early last week :)
@oskarth, release build is ready. There are some refinements for the blog post in progress. As I understood, publishing is planned for Tuesday. @rachelhamlin, could you please confirm?
I guess people are just getting back from vacation today
Probably even tomorrow, because today is a holiday in a lot of countries - orthodox christmas.
Yup, that's right. We have a few edits to make to the blog post, and Noman is finishing updates to the desktop landing page. Tuesday should be a go.
Release published - https://status.im/get_desktop/
https://our.status.im/status-desktop-is-officially-in-alpha-v0-9-0/
Our StatusStatus Desktop client is officially in Alpha. Send peer-to-peer messages using state of the art web3 technology for secure and private communication.
Most helpful comment
release branch is cut;
release/desktop/0.9.0- fixes #7100, #7128, #7115, #7101 should be included in this branch