> I'm considering raising minimum target Windows version for my libraries
> to at least Windows 7
>
Go higher. Windows 7 has 3.34% market share left. And its not like those
users will be left out, they can stay on 1.83.0.
Thanks
Seconded.
Last time we delivered a WinXP app to our industrial customers was 15
years ago. Since then they *all* migrated to Win7 which is our targeted
version for at least 10 years. These days, *none* of our customers is on
Win7 anymore, Win10 is their minimum requirement, even asking for Win11
support.
Dani
That's not how it works in the land of downloadable closed-source
software. I can't exactly download the latest game from Steam and
modify it to use an earlier version of Boost.
--
Rainer Deyke (rai...@eldwood.com)
> If you have any further comments or you think Windows 7 needs to be
> supported, please let me know.
>
Nothing actionable from me, but I am curious to know what the impact of
dropping Windows 7 will be. For example, by what percentage will the
library shrink? How much time is saved on CI? I would imagine that dropping
Windows 7 doesn't give as much benefit as, say, dropping C++03. Of course
that would depend on the library. WinAPI might in particular get a big
savings. I'm just curious if there are metrics.
Thanks
Boost.WinAPI probably won't change at all as it defines the same APIs
either way. I didn't plan to raise the minimum in Boost.WinAPI anyway,
as other libraries might need it. Raising the minimum in Boost.WinAPI
would only make some compilers unsupported and unable to compile it, but
not reduce its code base.
My main motivation for going beyond Windows 7 is Boost.Atomic, which
needs WaitOnAddress family of functions to implement waiting/notifying
operations. Without it, users have to link with the pre-built
Boost.Atomic library that does runtime detection of WaitOnAddress and
falls back to the lock-based implementation if those are not available.
It's not a lot of code, but I'd like to remove it, and make Boost.Atomic
less dependent on the library.
There might be some savings in Boost.Filesystem, but I suspect it won't
be much because filesystem API is a complete and utter mess on Windows,
and even the APIs that are formally supported on Windows 10 are not
guaranteed to work, depending on the actual filesystem. So
Boost.Filesystem will probably need to retain multiple different code
paths that it has now. Dropping XP will make a notable difference though.
Boost.Log is mostly upgrading as a result of the former two. There will
be benefits from dropping XP, but not that much, if any, from dropping 7.
> ...
Thank you very much for the additional insights, I didn't realize the
extent of it.
Regards