* [PATCH setup] Sort the packages listed in the "confirm" dialog
@ 2018-03-18 16:31 Ken Brown
2018-06-06 20:44 ` Jon Turney
0 siblings, 1 reply; 4+ messages in thread
From: Ken Brown @ 2018-03-18 16:31 UTC (permalink / raw)
To: cygwin-apps
---
confirm.cc | 44 ++++++++++++++++++++++++++++++--------------
1 file changed, 30 insertions(+), 14 deletions(-)
diff --git a/confirm.cc b/confirm.cc
index eb6bd99..92360cc 100644
--- a/confirm.cc
+++ b/confirm.cc
@@ -19,6 +19,8 @@
#include "package_db.h"
#include "package_meta.h"
+#include <algorithm>
+
extern ThreeBarProgressPage Progress;
// Sizing information.
@@ -61,26 +63,34 @@ ConfirmPage::OnActivate()
// first list things we will erase
if (source != IDC_SOURCE_DOWNLOAD)
{
+ std::vector<std::string> erase;
for (SolverTransactionList::const_iterator i = trans.begin ();
i != trans.end (); i++)
{
if (i->type == SolverTransaction::transErase)
{
+ std::string line;
packageversion pv = i->version;
packagemeta *pkg = db.findBinary (PackageSpecification (pv.Name ()));
- s += "Uninstall ";
- s += i->version.Name();
- s += " ";
- s += i->version.Canonical_version();
+ line += "Uninstall ";
+ line += i->version.Name();
+ line += " ";
+ line += i->version.Canonical_version();
if (pkg && pkg->desired)
- s += " (automatically added)";
- s += "\r\n";
+ line += " (automatically added)";
+ line += "\r\n";
+ erase.push_back (line);
}
}
+ sort (erase.begin(), erase.end());
+ for (std::vector<std::string>::const_iterator i = erase.begin ();
+ i != erase.end(); i++)
+ s += *i;
}
// then list things downloaded or installed
+ std::vector<std::string> install;
for (SolverTransactionList::const_iterator i = trans.begin ();
i != trans.end (); i++)
{
@@ -89,20 +99,26 @@ ConfirmPage::OnActivate()
if (i->type == SolverTransaction::transInstall)
{
+ std::string line;
if (source != IDC_SOURCE_DOWNLOAD)
- s += "Install ";
+ line += "Install ";
else
- s += "Download ";
- s += i->version.Name();
- s += " ";
- s += i->version.Canonical_version();
+ line += "Download ";
+ line += i->version.Name();
+ line += " ";
+ line += i->version.Canonical_version();
if (i->version.Type() == package_source)
- s += " (source)";
+ line += " (source)";
else if (pkg && !pkg->desired)
- s += " (automatically added)";
- s += "\r\n";
+ line += " (automatically added)";
+ line += "\r\n";
+ install.push_back (line);
}
}
+ sort (install.begin(), install.end());
+ for (std::vector<std::string>::const_iterator i = install.begin ();
+ i != install.end(); i++)
+ s += *i;
// be explicit about doing nothing
if (s.empty())
--
2.16.2
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH setup] Sort the packages listed in the "confirm" dialog
2018-03-18 16:31 [PATCH setup] Sort the packages listed in the "confirm" dialog Ken Brown
@ 2018-06-06 20:44 ` Jon Turney
2018-06-07 17:14 ` Ken Brown
0 siblings, 1 reply; 4+ messages in thread
From: Jon Turney @ 2018-06-06 20:44 UTC (permalink / raw)
To: cygwin-apps
On 18/03/2018 16:31, Ken Brown wrote:
> ---
> confirm.cc | 44 ++++++++++++++++++++++++++++++--------------
> 1 file changed, 30 insertions(+), 14 deletions(-)
Applied, thanks.
I know you had a few other patchsets in flight, which I've unfortunately
taken my eye off. If it's easier, you could push a branch with
somewhere with what's outstanding, and I'll see if I can pick them up.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH setup] Sort the packages listed in the "confirm" dialog
2018-06-06 20:44 ` Jon Turney
@ 2018-06-07 17:14 ` Ken Brown
2018-07-09 18:49 ` Jon Turney
0 siblings, 1 reply; 4+ messages in thread
From: Ken Brown @ 2018-06-07 17:14 UTC (permalink / raw)
To: cygwin-apps
On 6/6/2018 4:44 PM, Jon Turney wrote:
> I know you had a few other patchsets in flight, which I've unfortunately
> taken my eye off. If it's easier, you could push a branch with
> somewhere with what's outstanding, and I'll see if I can pick them up.
Here are the patchsets that I've sent in the last few months:
1. https://sourceware.org/ml/cygwin-apps/2018-03/msg00033.html
This still applies to the current HEAD.
2. https://sourceware.org/ml/cygwin-apps/2018-03/msg00051.html
This also applies to the current HEAD.
3. https://sourceware.org/ml/cygwin-apps/2018-04/msg00002.html
This needs to be tweaked slightly. I'll send a v2 today or tomorrow.
Next, there's the tentative proposal I made in
https://sourceware.org/ml/cygwin-apps/2018-04/msg00000.html, with a
cygport patch that isn't quite right. That could use some followup
eventually.
Finally, there's the older patchset attempting to distinguish between
user URLs and Cygwin mirrors:
https://sourceware.org/ml/cygwin-apps/2017-12/msg00051.html
with a followup patchset here:
https://sourceware.org/ml/cygwin-apps/2017-12/msg00066.html
I'm honestly not sure whether this "user URL" idea is worth pursuing,
because it might end up confusing users more than it helps them. But if
you think it is, I'll push it to a branch for further work.
Ken
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH setup] Sort the packages listed in the "confirm" dialog
2018-06-07 17:14 ` Ken Brown
@ 2018-07-09 18:49 ` Jon Turney
0 siblings, 0 replies; 4+ messages in thread
From: Jon Turney @ 2018-07-09 18:49 UTC (permalink / raw)
To: cygwin-apps
On 07/06/2018 18:14, Ken Brown wrote:
> On 6/6/2018 4:44 PM, Jon Turney wrote:
>> I know you had a few other patchsets in flight, which I've
>> unfortunately taken my eye off. If it's easier, you could push a
>> branch with somewhere with what's outstanding, and I'll see if I can
>> pick them up.
>
> Here are the patchsets that I've sent in the last few months:
Thanks very much for the summary. I think I'm more or less caught up now.
I'd like to do another setup release soonish to get your useful fixes
deployed, so please let me know if there's anything I've missed.
> 1. https://sourceware.org/ml/cygwin-apps/2018-03/msg00033.html > This still applies to the current HEAD.
Applied 1/3, thanks. I've posted a suggestion for reworking 3/3.
"Improve the handling of packagesource::sites"
> 2. https://sourceware.org/ml/cygwin-apps/2018-03/msg00051.html
> This also applies to the current HEAD.
"setup: uninstalling an orphaned package"
Applied, thanks.
> 3. https://sourceware.org/ml/cygwin-apps/2018-04/msg00002.html
> This needs to be tweaked slightly. I'll send a v2 today or tomorrow.
"Improve the handling of command line package selection"
Applied, thanks.
> Next, there's the tentative proposal I made in
> https://sourceware.org/ml/cygwin-apps/2018-04/msg00000.html, with a
> cygport patch that isn't quite right. That could use some followup
> eventually.
Thanks. I think this shouldn't need any more setup changes to support.
> Finally, there's the older patchset attempting to distinguish between
> user URLs and Cygwin mirrors:
>
> Â https://sourceware.org/ml/cygwin-apps/2017-12/msg00051.html
>
> with a followup patchset here:
>
> Â https://sourceware.org/ml/cygwin-apps/2017-12/msg00066.html
>
> I'm honestly not sure whether this "user URL" idea is worth pursuing,
> because it might end up confusing users more than it helps them. But if
> you think it is, I'll push it to a branch for further work.
Yeah, I tend to agree. We could be doing something better, but it's not
very clear yet what that is :S
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-07-09 18:49 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-03-18 16:31 [PATCH setup] Sort the packages listed in the "confirm" dialog Ken Brown
2018-06-06 20:44 ` Jon Turney
2018-06-07 17:14 ` Ken Brown
2018-07-09 18:49 ` Jon Turney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).