[Development] Windows 7 support will be dropped in Qt 6

Edward Welbourne edward.welbourne at qt.io
Mon Jun 15 12:35:08 CEST 2020

Max Paperno (13 June 2020 03:28) wrote:
> I would restate my objection by pointing out again [1] that Win 7 is
> still the 2nd most popular desktop OS in the world, with 3x more users
> than all MacOS versions combined.  Never mind Linux, which is on par
> with Win XP users (the previous "known good" Windows version prior to
> 7).

How many of those Win 7 users are routinely upgrading the software on
their systems ?  Given that they're not updating the O/S, it seems
reasonable to presume that they are, at least, somewhat conservative
about upgrades; they don't want the shiny new features the folk you
dismiss as "cool kids" are upgrading for, so why would they care if the
Qt apps they're using are upgraded to Qt 6 ?  Surely such conservative
users are likely to *prefer* to have such updates as they do take in
contain only security fixes - i.e. the sorts of change that happen on an
LTS version of Qt, rather than the radical change that comes with a new
major version.

For reference, at home I'm one of those conservative users - albeit on
Linux - using Debian/stable and often sliding into Debian/old-stable
rather than update, just because there's a newer stable available.  I
like the stability and don't care so much about the shiny new things; so
don't try accusing me of looking down on those who stick with the tried
and trusted things they have; and don't try telling me that software
developers should make sure their newest versions work on those stable
systems, because I - like many such conservative users - don't want
shiny new versions, I only want security fixes to stable versions,
sacrificing shiny new features in favour of reliability.

Meanwhile, at work, I use shiny new things so that I can deliver shiny
new things to those who *do* want them; and I fix bugs in old things so
that those who want stability get it.  Because software developers
should cater to what their users want - some of them care more about
stability, others about shiny new things.  In the end, giving the latter
what they want today is the way to ensure the former get what they'll be
wanting in a few years time (once the shiny new things have been tried,
tested, fixed and made stable, while those using them have found which
of them live up to their shininess and which fade too fast to be worth
caring about).  So we have stable versions and we make new versions that
break old stuff in order to deliver new things - and stay relevant.

> Any software publisher not catering exclusively to the "cool kids"
> with the "latest and greatest" mentality would be shooting themselves
> in the foot by dropping Win 7 support at this point.  That's millions
> of potential users.  Depending on one's market, of course.

And Qt won't be dropping support for Win 7, it'll still be supported by
5.15, which will have the types of change that conservative users and
sysadmins are willing to take in on the machines whose O/S they're not
willing to upgrade.

> I would bet Qt could save a lot more resources by dropping MacOS/Linux
> support entirely.  Not saying that's a good idea, but dropping the 2nd
> most popular OS instead doesn't make any sense to me either.

Any saving is only meaningful in terms of what it lets you get instead.
A platform with more *users* isn't necessarily a platform with more
downloads of software previously absent from that platform, or upgrades
of software previously in use.  A platform whose users routinely upgrade
their O/S is also a platform on which one can reasonably expect users to
routinely upgrade their other software.  Numbers of users are only
relevant via their contribution to numbers of downloads / installs /

> Yes, anyone needing to support Win 7 can still use Qt 5, which is
> what's going to happen for several more years at least.

... and that's what most users of Win 7 are likely to want; the only
updates they want are security fixes.  If they wanted shiny new
features, they'd be upgrading the O/S, too.

> I though one of the goals for Qt 6 was quicker adaptation than the Qt
> 4 -> 5 migration.

That's adaptation by the app developers in their "new release" versions;
we understand perfectly well that app maintainers (in so far as *they*
care to continue supporting legacy versions of any O/S) also *want* to
have a stable version, whose security and stability they know well from
experience; which means sticking with LTS versions of the libraries they
use.  Just as we have our stable branches and our shiny new version, app
maintainers who care about supporting legacy platforms used by
conservative users have their stable versions, that they maintain atop
stable versions of their prerequisites.

> From this move, and everything I've seen discussed on the devs list
> lately, I just don't see that happening. Seems like one breaking
> change after another (even if each individual one is relatively minor,
> they add up quickly).

If we *never* allow ourselves breaking changes, we'd still have a nice
stable product that worked great on an O/S or two from the last century.
Qt would thus be irrelevant.  So we have major versions, at which we are
prepared to make breaking changes, though we do try not to over-do them,
and to make them easy to sort out, for those they affect (e.g. by
ensuring the compiler will tell them what they need to change, as far as
possible).  Fossils get buried; if you want to stay current, you have to
be ready to change and leave some of your past behind.

By the time the current Win 7 users are interested in apps that (are
stable and) make use of the shiny new features of Qt 6, there shall be
an LTS version of Qt 6, in use by the (by then) tried and tested
versions of apps catering to conservative users; and the versions of
their O/S more recent than Win 7 shall have seen a few years of use in
the field, so they'll be able to see which of those is stable enough for
their needs, thereby allowing them the benefits of the newer O/S and app
versions at only a modest price in risk from the upgrades - some of
which, at least, shall be compensated for by the fact that they'll be
back (for a while) to using a supported version of the O/S.

> There was plenty of negative feedback left on QTBUG-74687, but it was
> all either ignored or dismissed. Why bother even asking people's
> opinion if the decision had already been made?

Just had a quick look at that issue; and I note that it *didn't* ask
your opinion, it set out to evaluate how practical it would be to drop
Win 7.  It wasn't a popularity contest; and such a Jira ticket would not
be a statistically meaningful way to conduct one - way too much
selection bias.  The folk who want shiny new features, and are willing
to upgrade the software on their computers to get them, aren't watching
our Jira for mentions of a legacy O/S, so that they know to jump in and
say what they think of dropping it.


More information about the Development mailing list