Re: [Development] On Removing Public Undocumented/\internal APIs

2025-07-10 Thread Marc Mutz via Development
owed alongside all others, or none are. It can't be that we apply double standards. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der Gesells

Re: [Development] HEADS-UP: Qt 6.10 API change review

2025-06-18 Thread Marc Mutz via Development
_review_6.10+status:open> > > Please review the diffs as soon as possible. > > br, > > Jani > > -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintun

[Development] Coverity HOWTO (was: Re: PSA: Lack of Coverity Scan builds)

2025-04-05 Thread Marc Mutz via Development
On 18.03.25 12:47, Giuseppe D'Angelo via Development wrote: > On 18/03/2025 12:01, Marc Mutz via Development wrote: >>> As I said, I'm skipping qtdeclarative and its dependencies. Not ideal >>> but better than nothing.  :( >> Looks like it stopped working ag

Re: [Development] PSA: Lack of Coverity Scan builds

2025-03-18 Thread Marc Mutz via Development
At least I got a few reports from Coverity Scan in the last days. > > As I said, I'm skipping qtdeclarative and its dependencies. Not ideal > but better than nothing.  :( Looks like it stopped working again? The last scan is from eight days ago? -- Marc Mutz (he/his) Principal Softwa

Re: [Development] A QStringList puzzle for Monday

2025-03-17 Thread Marc Mutz via Development
d overloading. Prefer named constructors (QList::fromRange), and explicit function names (appendString()/appendByteArray() instead of append(QString)/append(QByteArray)). Make ctors and conversion operator explicit. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Co

Re: [Development] On Pick-to: and QUIP-16

2025-03-17 Thread Marc Mutz via Development
On 17.03.25 08:58, Volker Hilsheimer wrote: >> On 14 Mar 2025, at 17:49, Marc Mutz via Development >> wrote: >> >> Hi, >> >> TL;DR: do _not_ approve patches that do not "pick-to:" according to >> QUIP-16 or explain in the commit message why the

Re: [Development] On Pick-to: and QUIP-16

2025-03-17 Thread Marc Mutz via Development
On 17.03.25 08:10, Jörg Bornemann wrote: > On 3/14/25 5:49 PM, Marc Mutz via Development wrote: > >> TL;DR: do _not_ approve patches that do not "pick-to:" according to >> QUIP-16 or explain in the commit message why they deviate. > > This reads as if QUIP-16 wo

[Development] On Pick-to: and QUIP-16

2025-03-14 Thread Marc Mutz via Development
UIP-16 to allow more refactorings: https://codereview.qt-project.org/c/meta/quips/+/608523 Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der

[Development] On quadratic behaviour

2025-02-27 Thread Marc Mutz via Development
ips/+/627689 See https://codereview.qt-project.org/q/owner:marc.m...@qt.io+message:quadratic for example fixes. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintu

Re: [Development] Adding a .gitreview to all repos

2025-02-12 Thread Marc Mutz via Development
rg/opendev/git-review/latest/installation.html#gitreview-file-format > [2]: https://bugreports.qt.io/browse/QTBUG-132604 > > -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Vare

Re: [Development] Using '#pragma once' instead of include guards?

2025-01-29 Thread Marc Mutz via Development
two modules). What say you? Thanks, Marc On 07.03.24 10:02, Marc Mutz via Development wrote: > Hi Tor Arne, > > On 06.03.24 09:34, Tor Arne Vestbø wrote: >> The choice of where we use/allow `#pragma once` should not be coupled to >> whether a header is considered publi

Re: [Development] Proposing to change https://wiki.qt.io/API_Design_Principles#Enums_in_classes to require scoped enums

2025-01-17 Thread Marc Mutz via Development
Strong; #else inline constexpr auto One = Strong::One; inline constexpr auto Two = Strong::Two; inline constexpr auto Three = Strong::Three; #endif use(One); use(Two); use(Three); The ice for unscoped enums becomes _very_ thin. -- Marc Mutz (he/his) Principal Software En

Re: [Development] API style guide: scoped enum or not?

2025-01-16 Thread Marc Mutz via Development
On 16.01.25 15:05, Thiago Macieira wrote: > On Thursday 16 January 2025 04:55:56 Pacific Standard Time Marc Mutz via > Development wrote: >> https://gcc.godbolt.org/z/6exEonP5o, maybe? > > Yes. @Ville, @Peppe: do you happen to know whether this is supposed to work (using

Re: [Development] API style guide: scoped enum or not?

2025-01-16 Thread Marc Mutz via Development
don't know why: > https://gcc.godbolt.org/z/6jf7Ebecq > > Looks like the using enum feature is not very useful for us. Back to the > drawing board for scoped flags https://gcc.godbolt.org/z/6exEonP5o, maybe? -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Eric

Re: [Development] Proposing to change https://wiki.qt.io/API_Design_Principles#Enums_in_classes to require scoped enums

2025-01-16 Thread Marc Mutz via Development
Hi Tor Arne, On 16.01.25 12:31, Tor Arne Vestbø wrote: > >> On Jan 16, 2025, at 11:56, Marc Mutz via Development >> wrote: >> >> Like every API review, so also in 6.9, we have the discussions between >> proponents of scoped vs. unscoped enums in class scope.

Re: [Development] Proposing to change https://wiki.qt.io/API_Design_Principles#Enums_in_classes to require scoped enums

2025-01-16 Thread Marc Mutz via Development
Sorry for the double post; I blame Outlook's UI, and so should you ;) On 16.01.25 11:58, Marc Mutz via Development wrote: > Hi, > > Groundhog Day... > > Like every API review, so also in 6.9, we have the discussions between > proponents of scoped vs. unscoped enums in c

[Development] Proposing to change https://wiki.qt.io/API_Design_Principles#Enums_in_classes to require scoped enums

2025-01-16 Thread Marc Mutz via Development
(https://doc.qt.io/qt-6/qgrpcstatus.html) elegantly evades the issue by putting the enum at namespace scope. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lint

Re: [Development] QtCS 2024 session on deprecations: what did we actually agree on?

2025-01-15 Thread Marc Mutz via Development
e extremely-fine-grained QT_NO_ opt-outs gracefully. But I guess it wouldn't be _that_ hard to make the deprecation macros per-module, if that would help people? Thanks, Marc On 14.01.25 22:15, Marc Mutz via Development wrote: > On 14.01.25 14:50, Volker Hilsheimer wrote: >&g

Re: [Development] QtCS 2024 session on deprecations: what did we actually agree on?

2025-01-14 Thread Marc Mutz via Development
at their own pace, in their own order, without being hit by these walls of changes with every Qt version. Something we ourselves have recently gotten a dose of when we tried to bump the QT_VERSION to 0x061000... -- Do unto others as you would have done to you. Th

[Development] QtCS 2024 session on deprecations: what did we actually agree on?

2025-01-13 Thread Marc Mutz via Development
arc ¹ https://codereview.qt-project.org/c/qt/qtbase/+/599356 ² Not in the REMOVED_SINCE sense, as that just removes deprecated API/ABI at _user_ discretion, but in the QT_VERSION < 7 or actually, physically, delete the code. -- Marc Mutz (he/his) Principal Software Engineer The Qt C

[Development] QUIP-18 and file "reclassification"

2024-12-19 Thread Marc Mutz via Development
https://contribute.qt-project.org/quips/18 ³ https://contribute.qt-project.org/quips/18#classification-of-files Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Vare

Re: [Development] Why is QUIP-5 "superseded", and what supersedes it?

2024-11-25 Thread Marc Mutz via Development
On 25.11.24 09:38, Arno Rehn wrote: > Hi Marc, > > Am 25.11.2024 um 09:34 schrieb Marc Mutz via Development: >> https://contribute.qt-project.org/quips/5 says >> >> > Status: Superseded >> >> What supersedes it, please? Should it not say "Sup

[Development] Why is QUIP-5 "superseded", and what supersedes it?

2024-11-25 Thread Marc Mutz via Development
Hi, https://contribute.qt-project.org/quips/5 says > Status: Superseded What supersedes it, please? Should it not say "Superseded by _link_"? Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germ

Re: [Development] (Bikeshed, pedantic) East constexpr vs West constexpr

2024-09-20 Thread Marc Mutz via Development
t just for the three keywords in question, please (and allow exceptions for late additions)? FTR, I'm voting -1 on "static constexpr inline" (without further qualification), because Q_CONSTINIT must come _first_ (it's an attribute in C++17, keyword only in C++20), and it ma

Re: [Development] (Bikeshed, pedantic) East constexpr vs West constexpr

2024-09-18 Thread Marc Mutz via Development
hether inline or constexpr comes first has none, IMNSHO. HTH, Marc ¹ https://www.oreilly.com/library/view/c-coding-standards/0321113586/ Item 0: "Don’t sweat the small stuff. (Or: Know what not to standardize.)" -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thi

Re: [Development] Compromise: Modified Lakos Rule

2024-09-07 Thread Marc Mutz via Development
overloaded on nexcept/non-noexcept for a binary-compatible switch between the different build modes (e.g. by template R func() noexcept(!Throw); Or using a mechanism similar to REMOVED_SINCE (which is also a way to remove noexcept that we have incorrectly added)). Thanks, Marc -

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-09-07 Thread Marc Mutz via Development
then may be saved to disk, making it permanent and the data error not > getting caught. > >>> My argument is "first, do no harm" (or "don't make it worse"). Exceptions >>> should only be used if there's a proper correction code for it. >>

[Development] Compromise: Modified Lakos Rule (was: Re: Disavowing the Lakos Rule for Q_ASSERT)

2024-09-06 Thread Marc Mutz via Development
t implementation rather than on Qt code. The *pre* condition > indicates something that must be true before the method is called and > therefore the method's own noexcept specification does not apply *yet*. > > -- Marc Mutz (he/his) Principal Software Engineer The Qt Comp

[Development] Exporting classes wholesale

2024-09-04 Thread Marc Mutz via Development
just don't know what else will crop up, until it does. So I maintain that the TL;DR: is the soundest engineering practice for exporting classes, and should be followed - without exception. Thanks, Marc PS: if you wonder about the second part of the rule, that's https://wiki.qt.io/T

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-09-03 Thread Marc Mutz via Development
. Besides, libc++ recently ditched their build-conditional noexcept approach, AFAIK. We needn't make mistakes others have already done for us. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsf

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-08-29 Thread Marc Mutz via Development
.qt-project.org/c/qt/qtbase/+/193707 *cough* -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg,

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-08-29 Thread Marc Mutz via Development
ate-of-the-art, namely the Standard > Libraries, where they have marked noexcept functions with certain > preconditions like std::vector::operator[] and std::basic_string_view char+len > constructor. > > IF and when they deploy a solution to allow turning those checks

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-08-26 Thread Marc Mutz via Development
On 26.08.24 22:12, Thiago Macieira wrote: > On Monday 26 August 2024 12:55:04 GMT-7 Marc Mutz via Development wrote: >> I don't see a proposal for an alternative rule in the above. Please >> provide a) a new rule and b) rationale for it. Bonus points for being >> impleme

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-08-26 Thread Marc Mutz via Development
Your two examples are quite different, though: On 26.08.24 22:28, Thiago Macieira wrote: > On Monday 26 August 2024 12:59:54 GMT-7 Marc Mutz via Development wrote: >> Part of why I'm sympathetic to the assertions throw mantra is that I >> used it very successfully in Kleopat

Re: [Development] QVariant and types with throwing dtors

2024-08-26 Thread Marc Mutz via Development
On 27.08.24 01:33, Ville Voutilainen wrote: > On Mon, 26 Aug 2024 at 20:41, Marc Mutz via Development > wrote: >> What is unacceptable in (1) (doing nothing) is not even _informing_ >> users about what we found¹, so _they_ can decide for themselves what to do. >> >>

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-08-26 Thread Marc Mutz via Development
he exception's what() and report back over the UI server channel that an assertion happened and the client would show a message box with the assertion details, copyable from a QMessageBox into a bugreport. T'was a boon for testing. -- Marc Mutz (he/his) Principal Software Engineer

Re: [Development] Disavowing the Lakos Rule for Q_ASSERT

2024-08-26 Thread Marc Mutz via Development
it can be fixed in the next major release (removing noexcept is BiC). So not only do we have _no_ incentive to diverge from std, we also have a rather large incentive to keep doing what std is doing. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-

Re: [Development] QVariant and types with throwing dtors

2024-08-26 Thread Marc Mutz via Development
e found¹, so _they_ can decide for themselves what to do. ¹ neither at compile-time, nor runtime, nor coding time (static checker) nor at documentation reading time. We want our APIs to be easy to use and hard to abuse. It's easy to abuse QVariant in this way, so it behooves us to try t

Re: [Development] QVariant and types with throwing dtors

2024-08-26 Thread Marc Mutz via Development
On 26.08.24 11:08, Giuseppe D'Angelo via Development wrote: > Il 26/08/24 07:24, Marc Mutz via Development ha scritto: >> IMHO, (1) is not an acceptable option. Us C++ professionals having >> identified >> this problem after years of it lying dormant, it behooves us

Re: [Development] Houston, qint128 has a problem

2024-08-26 Thread Marc Mutz via Development
On 09.12.23 18:38, Thiago Macieira wrote: > On Friday, 8 December 2023 18:51:19 PST Marc Mutz via Development wrote: >> I think we need to mandate that if you want qint128 support, then you >> must compile with gnu++NN, which is actually the default on both GCC and >> Clang. W

[Development] Bye, bye, qsnprinttf()

2024-08-25 Thread Marc Mutz via Development
tring::arg(). If you depend on the particular Windows return values, you'll need to fix that, too. The rest should be ok with s/q(v?)snprintf/std::\1snprintf/g; Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Ge

Re: [Development] QVariant and types with throwing dtors

2024-08-25 Thread Marc Mutz via Development
onally noexept, like QCache::take, even though that can never be > the case given the static_assert. > [2] At least in cases where we can detect it at compile time; the API > using QMetaType would require storing the necessary information in > QMetaType, and a runtime check. &g

Re: [Development] Houston, qint128 has a problem

2024-07-09 Thread Marc Mutz via Development
We should really try to fix this before 6.8.0 (LTS). On 09.12.23 18:38, Thiago Macieira wrote: > On Friday, 8 December 2023 18:51:19 PST Marc Mutz via Development wrote: >> I think we need to mandate that if you want qint128 support, then you >> must compile with gnu++NN, which

Re: [Development] Are char literals L1 or U8 in Qt?

2024-06-14 Thread Marc Mutz via Development
On 12.06.24 20:21, Thiago Macieira wrote: > On Tuesday 11 June 2024 12:44:11 GMT-7 Marc Mutz via Development wrote: [...] >> I don't want to break _any_ code. I could live with QAnyStringView(char) >> being deprecated before a future QT_NO_CAST_FROM_CHAR becomes the >>

Re: [Development] Are char literals L1 or U8 in Qt?

2024-06-11 Thread Marc Mutz via Development
ed about. I'm pretty sure that we can adapt the existing Clazy check for QString(const char*) to suggest _L1 or u8, depending on content, instead. But figuring out whether a QByteArray constructed from char[] is meant to be binary or UTF-8 (or L1, for that matter) is nothing a tool can d

Re: [Development] Are char literals L1 or U8 in Qt?

2024-06-10 Thread Marc Mutz via Development
On 10.06.24 23:13, Thiago Macieira wrote: > On Monday 10 June 2024 05:39:26 GMT-7 Marc Mutz via Development wrote: >> Since there are four bugs³ in QString::arg() that are all fixed by the >> existing patch chain porting the whole thing to QAnyStringView, and >> since the m

[Development] Are char literals L1 or U8 in Qt?

2024-06-10 Thread Marc Mutz via Development
...] ³ to wit: - https://bugreports.qt.io/browse/QTBUG-126053 (char8_t) - https://bugreports.qt.io/browse/QTBUG-126054 (wchar_t) - https://bugreports.qt.io/browse/QTBUG-126055 (qfloat16) - https://bugreports.qt.io/browse/QTBUG-125588 (char16_t) - and the issue at hand: https://bugreports.qt.io/browse/Q

[Development] ATTN Maintainers (was: Re: HEADS-UP: Qt 6.8 API change review)

2024-06-05 Thread Marc Mutz via Development
<https://codereview.qt-project.org/q/topic:qml_api_review_6.8> > > Please review the diffs as soon as possible. > > br, > > Jani > > -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io

Re: [Development] Moving QDesktopServices from Gui to Core?

2024-05-07 Thread Marc Mutz via Development
paying y’all’s salary, then I’d strongly suggest to go with option > 1, and maybe follow up with Option 2 for 6.9, while we take the time it takes > to figure out how to properly wrap intents etc into a cross-platform > abstraction. I don't see (1) solving anything for QtNetworkAu

Re: [Development] Moving QDesktopServices from Gui to Core?

2024-05-07 Thread Marc Mutz via Development
On 07.05.24 16:30, Thiago Macieira wrote: > On Monday 6 May 2024 23:08:07 GMT-7 Marc Mutz via Development wrote: [...] >> I'm currently fighting an older version of openfortifyvpn (CLI on Linux) >> which cannot, yet, spin up the browser. Newer versions are reported to >>

Re: [Development] Moving QDesktopServices from Gui to Core?

2024-05-07 Thread Marc Mutz via Development
etworkAuth will have to be ported, QtCore move or not, public API or not. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der Gesellschaft: Berlin,

Re: [Development] Moving QDesktopServices from Gui to Core?

2024-05-07 Thread Marc Mutz via Development
he code (if we can provide it as private API, there can't be many). So, if this boils down to private vs. public API: Why keep it private? It's not new API, it's just renamed for BC reasons. Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-S

Re: [Development] Moving QDesktopServices from Gui to Core?

2024-05-06 Thread Marc Mutz via Development
On 06.05.24 17:18, Thiago Macieira wrote: > On Monday 6 May 2024 00:02:58 GMT-7 Marc Mutz via Development wrote: >> Juha is currently improving the OAuth implementation in QtNetworkAuth. >> The protocol involves launching the system browser to get an access >> code, in tu

[Development] Moving QDesktopServices from Gui to Core?

2024-05-06 Thread Marc Mutz via Development
m handlers? We have XDG-code in QtCore already (mime types), so we should have all the information in Core already to implement the functionality, should we not? Thanks, Marc -- Marc Mutz (he/his) Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany

Re: [Development] Stepping down as a maintainer of Qt OPC UA

2024-04-23 Thread Marc Mutz via Development
o to some degree represents the project to the public, too. And yes, the borders are grey zones here. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Si

Re: [Development] Stepping down as a maintainer of Qt OPC UA

2024-04-23 Thread Marc Mutz via Development
C UA). +1 Jannis seems to be on top of the module, AFAICT. BUT: I've never met Jannis in person, so maybe Eva or other C-suite people from basyskom can confirm that this isn't going to be an xzlib-like situation? E.g. there's no Jannis on https://www.basyskom.de/ueber-uns/ :)

Re: [Development] Should QObject::event() be protected or public?

2024-03-16 Thread Marc Mutz via Development
On 16.03.24 01:47, Konstantin Shegunov wrote: > On Fri, Mar 15, 2024 at 10:48 PM Marc Mutz via Development > mailto:development@qt-project.org>> wrote: > > The member variable thing sounds very wrong. I'd be surprised if it >

Re: [Development] Should QObject::event() be protected or public?

2024-03-15 Thread Marc Mutz via Development
codify a lot more stuff than we have done in the past (and, where possible, have tools check it). Look at all the google-specific checks in clang-tidy for example. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io

Re: [Development] Should QObject::event() be protected or public?

2024-03-15 Thread Marc Mutz via Development
On 15.03.24 18:31, Christian Kandeler via Development wrote: > On 3/15/24 18:09, Marc Mutz via Development wrote: >> I like simple rules. "Overrides should have the same access level as the >> initial virtual function." is a simple rule. > > But it makes no sense in

Re: [Development] Should QObject::event() be protected or public?

2024-03-15 Thread Marc Mutz via Development
On 15.03.24 14:28, Volker Hilsheimer via Development wrote: >> On 15 Mar 2024, at 12:30, Marc Mutz via Development >> wrote: >> On 15.03.24 09:11, apoenitz wrote: >>> On Fri, Mar 15, 2024 at 07:16:59AM +, Marc Mutz via Development wrote: >> [...] >>

Re: [Development] Should QObject::event() be protected or public?

2024-03-15 Thread Marc Mutz via Development
On 15.03.24 09:11, apoenitz wrote: > On Fri, Mar 15, 2024 at 07:16:59AM +0000, Marc Mutz via Development wrote: [...] >> Please note that this means that any override (and all new QObject >> classes should contain one, since, in case we ever need it, it might not >> be possibl

Re: [Development] Should QObject::event() be protected or public?

2024-03-15 Thread Marc Mutz via Development
08:58, Marc Mutz via Development wrote: > Hi, > > In API review, we detected some overrides that changed the access > specifier vis-a-vis the original virtual function > (https://wiki.qt.io/Things_To_Look_Out_For_In_Reviews#Polymorphic_Classes > Item 5.3). > > One

[Development] Should QObject::event() be protected or public?

2024-03-13 Thread Marc Mutz via Development
become protected, please speak up before we fork Qt 7.0 :) Thanks, Marc ¹ https://codereview.qt-project.org/c/qt/qtdeclarative/+/528290/comment/f51938ca_fd065a18/ -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika

Re: [Development] On Removing Public Undocumented/\internal APIs

2024-03-13 Thread Marc Mutz via Development
ote: >> On 4 Mar 2024, at 10:57, Marc Mutz via Development >> wrote: >> >> Hi, >> >> TL;DR: >> - Treat all APIs not clearly marked as private (private access, *Private >>namespace or "We mean it!" comment) as public, in particular keep

Re: [Development] Using '#pragma once' instead of include guards?

2024-03-07 Thread Marc Mutz via Development
. The new thing is that installed headers cannot use #pragma once, and that's enforced by tooling, so can't be forgotten. Adding a comment to such headers is something additional that authors and reviewers need to keep in mind. I'd prefer the path of least resistance here. Thanks

Re: [Development] Using '#pragma once' instead of include guards?

2024-03-05 Thread Marc Mutz via Development
We have agreed that for some headers we allow use of #pragma, but taking > myself as a reference, I doubt that it’s obvious to everyone which > headers are installed, and when it’s allowed to use #pragma, and when > it’s mandatory to use #pragma. Perhaps adding the “We mean it” comment

[Development] On Removing Public Undocumented/\internal APIs

2024-03-04 Thread Marc Mutz via Development
ame time, we should make sure that we don't accept such semi-public APIs going forward anymore. In most cases, this isn't really any extra work for us, but it will help both current users of such APIs (they get a warning with suggested replacements instead of an out-of-the-blue linker erro

Re: [Development] Using '#pragma once' instead of include guards?

2024-02-29 Thread Marc Mutz via Development
> have time to do that for a while (perhaps ditto for > https://wiki.qt.io/Qt_Coding_Style), but perhaps someone else wants to give > this a shot. > > ___ > Development mailing list > Development@qt-project.org > https://lists.qt-

Re: [Development] What's our policy on changing the result of qHash(T, 0) between major releases?

2024-02-06 Thread Marc Mutz via Development
On 05.02.24 23:42, Thiago Macieira wrote: > On Monday, 5 February 2024 01:36:39 PST Marc Mutz via Development wrote: >> I've always understood it such that we as Qt must preserve the property >> that the hash for equal elements is equal within _one_ run of _one_ >> proce

Re: [Development] What's our policy on changing the result of qHash(T, 0) between major releases?

2024-02-06 Thread Marc Mutz via Development
On 05.02.24 19:07, apoenitz wrote: > On Mon, Feb 05, 2024 at 09:36:39AM +0000, Marc Mutz via Development wrote: >> Hi, >> >> I've always understood it such that we as Qt must preserve the property >> that the hash for equal elements is equal within _one_ run of _

Re: [Development] About the timeline and phases to support C++20 with and in Qt

2024-02-05 Thread Marc Mutz via Development
ause it means we'll need to maintain C++17-compatibility in the vast majority of the code-base. I have some sympathy for (b), and I could live with the required #ifsef'ery for the time being, because it would be something that's required for (public) headers only. Jani, Vladim

Re: [Development] Let's drop MSVC 2019 for dev (6.8)

2024-02-05 Thread Marc Mutz via Development
ort an X-1 version of MSVC for as long as practicable, a minimum of > a few years. Well, in April this year, MSVC 2019 will be 5 years old, though > fortunately it's still getting updates. Considering MSVC 2022 will be 3.5 at > that time, I think it's time to drop. > > --

Re: [Development] What's our policy on changing the result of qHash(T, 0) between major releases?

2024-02-05 Thread Marc Mutz via Development
r)) > > but it would be far more useful to have > > qHash(QLatin1StringView(str)) == qHash(QString(str)) > > I've made the change for the non-zero seeds, but one couldn't rely on the > above unless it applied for every seed.f > > -- Marc Mutz

[Development] QT_REMOVED_SINCE HOWTO

2024-01-31 Thread Marc Mutz via Development
https://wiki.qt.io/Things_To_Look_Out_For_In_Reviews#Specifically_QT_%2A_REMOVED_SINCE_%2F_QT_%2A_INLINE_SINCE -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der

Re: [Development] HEADS-UP: Qt 6.7 API change review

2024-01-31 Thread Marc Mutz via Development
05.01.24 09:28, Marc Mutz via Development wrote: > Hi, > > In the hope of spreading knowledge, I've created a staging area in the > wiki called "Things to look out for in reviews." This is a > low-entry-barrier way to quickly publish a guideline. After each > release

Re: [Development] static constexpr in exported classes needs out-of-line definitions

2024-01-31 Thread Marc Mutz via Development
it calls > std::vector_M_realloc_insert(), which takes the integer by reference, so > the compiler emits an import from the DLL. > > This appears to be a GCC bug/shortcoming. Clang and MSVC apparently > automatically emit and export the variable for you: > https://mingw.godb

Re: [Development] HEADS-UP: Qt 6.7 API change review

2024-01-05 Thread Marc Mutz via Development
> * https://codereview.qt-project.org/q/topic:api-change-review-6.7 > <https://codereview.qt-project.org/q/topic:api-change-review-6.7> > * https://codereview.qt-project.org/q/topic:qml_api_review_6.7 > <https://codereview.qt-project.org/q/topic:qml_api_review_6.7>

Re: [Development] 6.7 FF vs. C++20 comparisons

2023-12-17 Thread Marc Mutz via Development
ot; to the > new comparison scheme that makes that change not quite "mechanical". Sorry, I am not aware of either, and the lack of specificity in the above makes it impossible to respond in a meaningful way, so I won't try to. Thanks, Marc -- Marc Mutz Principal Software Engin

Re: [Development] 6.7 FF vs. C++20 comparisons

2023-12-14 Thread Marc Mutz via Development
On 13.12.23 18:36, Thiago Macieira wrote: > So, +1 for me on going ahead. Thanks! Is anyone else here for/against? -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz

Re: [Development] 6.7 FF vs. C++20 comparisons

2023-12-13 Thread Marc Mutz via Development
On 13.12.23 12:46, Marc Mutz via Development wrote: > The counter-argument is that this doesn't change much because the C++ > standard knows an operation called Was interrupted when writing this, then forgot to end the sentence before sending :) Sorry... ... https://eel.

[Development] 6.7 FF vs. C++20 comparisons

2023-12-13 Thread Marc Mutz via Development
nd the already-up-for-review QModelIndex/QPersistentModelIndex. Without this, it's hard to prove out the framework actually works in all cases. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika

[Development] Houston, qint128 has a problem

2023-12-08 Thread Marc Mutz via Development
;ll have BC issues from that, too. References: - https://bugreports.qt.io/browse/QTBUG-119901 - https://codereview.qt-project.org/c/qt/qtbase/+/478199/comment/bcbe8aca_d5d65018/ - https://codereview.qt-project.org/c/qt/qtbase/+/507383 Opinions? Comments? Thanks, Marc -- Marc Mutz Principal

[Development] QT_WARNING_MSG/QT_DEPRECATED_HEADER

2023-12-06 Thread Marc Mutz via Development
age https://codereview.qt-project.org/c/qt/qtbase/+/523363, it's already approved and just waits for a user. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Li

Re: [Development] Future of java-style iterators?

2023-12-05 Thread Marc Mutz via Development
On 05.12.23 10:06, Giuseppe D'Angelo via Development wrote: > Il 05/12/23 03:52, Kevin Kofler via Development ha scritto: >> Marc Mutz via Development wrote: >>> Until then, either you want to be notified of sub-optimal APIs asap, >> What is "suboptimal" abou

Re: [Development] Future of java-style iterators?

2023-12-04 Thread Marc Mutz via Development
gt;> >> My 2 c, >> -- >> Giuseppe D'Angelo | giuseppe.dang...@kdab.com | Senior Software Engineer >> KDAB (France) S.A.S., a KDAB Group company >> Tel. France +33 (0)4 90 84 08 53, http://www.kdab.com/ >> KDAB - The Qt, C++ and OpenGL Experts >> >>

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-15 Thread Marc Mutz via Development
to out-of-line. If either side is inline, it'll do the right thing on its > own. Yes. If either side is inline, you still get the conversion operators emitted in debug mode, which Qt tends to optimize for, too. That's one of the reasons why, even with {std,Qt}::_ordering types being B

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-14 Thread Marc Mutz via Development
have a `using std::...`, yet, so we're still ok, and QTestLib doesn't have BC constraints). The Qt::*ordering types, OTOH, are specifically _for_ use in the ABI. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-14 Thread Marc Mutz via Development
On 14.11.23 09:31, Marc Mutz via Development wrote: [...] > And then naming them Qt::partial_ordering is just consequent, because > users can reach ultimate SC by doing something like > > #ifdef __cpp_lib_three_way_comparison > using std::partial_ordering; >

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-14 Thread Marc Mutz via Development
ies will just increase the porting overhead for our users. In no universe would that be good for our users. We know where we need to go: no Qt::ordering classes, only std::ordering, and anything that distracts either our users or ourselves from that goal is counter-productive. Thanks, Marc --

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-14 Thread Marc Mutz via Development
t right than getting it soon. We're discussing various tangential aspects for half a year now. At some point, all the cards are on the table and all that talking needs to come to some conclusion. That point is now. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Eric

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-13 Thread Marc Mutz via Development
ment all this, but on Ivan and me. I think I speak for Ivan, too, if I say that we'd rather today than tomorrow see this stuff merged. The next FF is already approaching again. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, German

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-10 Thread Marc Mutz via Development
absence of `-fvisibility=hidden -fvisibility-inlines-hidden`? - does making the Qt and std::ordering types BC with each other not solve the problem in this case, too? Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäfts

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-08 Thread Marc Mutz via Development
On 08.11.23 16:46, Thiago Macieira wrote: > On Wednesday, 8 November 2023 00:38:32 PST Marc Mutz via Development wrote: >> Let's not mix up topics here... >> >> 1/ We're not responsible for the ABI of third-party libraries. As long as >> we document that the

Re: [Development] Nominating QtGRPC & Qt Protobuf maintainers

2023-11-08 Thread Marc Mutz via Development
gt; this code base even before they officially became part of Qt. I am glad they > agreed to continue this work going forward in the context of Qt Development. > > -- > Alex > -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www

Re: [Development] Nominating Jaishree Vyas as approver

2023-11-08 Thread Marc Mutz via Development
project.org/q/owner:jaishree.vyas%40qt.io > <https://codereview.qt-project.org/q/owner:jaishree.vyas%40qt.io> > As reviewer: > https://codereview.qt-project.org/q/reviewer:jaishree.vyas%2540qt.io > <https://codereview.qt-project.org/q/reviewer:jaishree.vyas%2540qt.io> > > //!

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-08 Thread Marc Mutz via Development
I agree that the latter is a problem; I stated as much in my previous email, and gave (1) and (3) as solutions. But I still don't see how the former is a problem, or, if it is, why (3) (BC between {std,Qt}::_ordering) doesn't fix it, too. On 08.11.23 01:16, Thiago Macieira wrote: > O

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-07 Thread Marc Mutz via Development
the Qt functions can switch between the two return type families. But you > can't overload operators, so operators must return one family only. -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha V

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-11-07 Thread Marc Mutz via Development
27;t like 2. It has it all backwards. Thanks, Marc -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt.io Geschäftsführer: Mika Pälsi, Juha Varelius, Jouni Lintunen Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlo

Re: [Development] C++20 comparisons @ Qt (was: Re: C++20 @ Qt)

2023-09-22 Thread Marc Mutz via Development
s) if there is no "API" for doing this on his data members? As a concrete example, how is the author of a `struct QFoo { int; QString; }` supposed to implement his cmp() if all he gets is op<=>, a C++20-only API? I don't see how we can manage without an API for doing three-way c

Re: [Development] qSwap (was: Re: C++20 comparisons @ Qt (was: Re: C++20 @ Qt))

2023-09-20 Thread Marc Mutz via Development
On 20.09.23 21:09, Marc Mutz via Development wrote: > Will un-deprecate and pour some TLC over it. → Chain ending in https://codereview.qt-project.org/c/qt/qtbase/+/505691 -- Marc Mutz Principal Software Engineer The Qt Company Erich-Thilo-Str. 10 12489 Berlin, Germany www.qt

  1   2   3   4   5   6   7   8   9   10   >