-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tracking version #966
Tracking version #966
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR has a too-complicated commit history, including merging of two branches with different upstream commits. The commits are not in one simple sequence.
This makes it too difficult to review, and to verify that each commit in the sequence builds and runs.
Please merge your work with recent master, then do
git reset audacity/master
(or whatever remote name you have for master)
and then add and commit files again, so that there are fewer commits (maybe one). Then force-push it.
There should not be commits, in a final form of the branch, for small corrections like indentation.
There may be multiple commits to show how the project can be done in logical stages, to aid review. But the branch should not keep a history of correction of errors, unless you still mark it as a draft.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Further reconsideration of lifetime problems.
I will await resolution of points I raised before continuing review. |
253853b
to
b581c57
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am satisfied that you addressed all points in my last review. Thank you for the simpler commit history.
This next review covers some points about naming and translation.
I have not reviewed everything yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some more points about parent window pointers and lifetimes.
Before anything else: again, please simplify the commit history. Make one simple, straight branch. Do not include merge commits. Rebase or cherry-pick one of the branches onto the other. You could do
And then, rebase onto more recent master and force-push. You might also do git rebase -i and make some of these commits fixups so the history is shorter. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The one incorrect static variable is the only mildly important thing in this review that isn't just style. It's wrong in principle, but even so isn't likely to cause an error in practice because of the long update interval, longer perhaps than most user sessions with Audacity.
Besides that, the commit history must be cleaned up, without merge commits, before I approve.
Overall I'm pleased with this branch.
#include <wx/utils.h> | ||
|
||
static const char* prefsUpdatePopupDialogShown = "/Update/UpdatePopupDialogShown"; | ||
static const char* prefsUpdateScheduledTime = "/Update/UpdateScheduledTime"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not very important, I would prefer to simplify with a static IntSetting object... but 32 bits may not be enough and it might be one of the 32 bit Windows builds we still do.
Maybe I should define LongSetting?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, if it possible LongLongSettings
ShowExceptionDialog(parent, | ||
XO("Error checking for update"), | ||
XO("Unable to connect to Audacity update server."), | ||
wxTheApp->CallAfter([] {ShowExceptionDialog(nullptr, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In this and the other lambdas, you use nullptr for parents of dialogs.
You might safely use FindProjectFrame(GetActiveProject())
instead. It would be sure to center the dialog on the main project window that the user is looking at.
This may be an unimportant, small advantage.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When I tested with wxTheApp
using it was centered too. Just I want avoid from project is not created (on macOS when menu shown only) by wxTheApp
using.
b8d78b3
to
cefe96f
Compare
Clean up extra code, remake static title, move settings to UpdateManager class.
cefe96f
to
4d6c68c
Compare
Dmitry's suggestions have all been done
New version check.
This pull request introduces an always-opt-in solution for checking a new Audacity version and further download updates by user actions. This feature will be only enabled if
audacity_has_updates_check
andaudacity_has_networking
is on.Dialog example:
![2021-06-07_16-43-48](https://user-images.githubusercontent.com/1660969/121355044-2883a600-c938-11eb-9cd9-69470351d902.png)