Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Special Interest Groups
  3. Qt Contribution
  4. Gerrit Contributions
Forum Updated to NodeBB v4.3 + New Features

Gerrit Contributions

Scheduled Pinned Locked Moved Qt Contribution
68 Posts 10 Posters 36.2k Views 6 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Chris KawaC Offline
    Chris KawaC Offline
    Chris Kawa
    Lifetime Qt Champion
    wrote on last edited by Chris Kawa
    #19

    I know little of this is technically feasible (the amount of work to gain ratio) but just for the sake of an idea let me describe what I'd like the process to look like:

    • I open QtCreator (because why not?), from one of the menus I choose "Contribute"
    • I'm presented with a wizard that lets me login with my Qt account credentials and accept CLA
    • The wizard presents a list of development branches and modules I can check (like the Qt installer does), I select some
    • The wizard downloads stuff (source, dependencies, even git if needed!), sets up git (locally to the downloaded repos!) without me needing to do anything, creates the .pro files and I can just start hacking right away (Visual Studio does things like that so it's not really science fiction)
    • When I'm done I just push my changes to automatically set up remote and am presented a link to gerrit review page (gerrit integration into QtCreator would be a cherry on the cake).
    • Done

    Btw. Why do we even need perl? I mean maybe it was convenient to use in a linux environment but think about it - we have a giant c++ library, with its own language(QML), which has two custom build systems (qmake and qbs), its own IDE (QtCreator), two (or is it already one now?) Javascript engines, a networking and web browser engines and yet we still need a totally unrelated foreign language runtime just to download the sources. Sounds kinda eccentric.

    VRoninV 1 Reply Last reply
    3
    • Chris KawaC Chris Kawa

      I know little of this is technically feasible (the amount of work to gain ratio) but just for the sake of an idea let me describe what I'd like the process to look like:

      • I open QtCreator (because why not?), from one of the menus I choose "Contribute"
      • I'm presented with a wizard that lets me login with my Qt account credentials and accept CLA
      • The wizard presents a list of development branches and modules I can check (like the Qt installer does), I select some
      • The wizard downloads stuff (source, dependencies, even git if needed!), sets up git (locally to the downloaded repos!) without me needing to do anything, creates the .pro files and I can just start hacking right away (Visual Studio does things like that so it's not really science fiction)
      • When I'm done I just push my changes to automatically set up remote and am presented a link to gerrit review page (gerrit integration into QtCreator would be a cherry on the cake).
      • Done

      Btw. Why do we even need perl? I mean maybe it was convenient to use in a linux environment but think about it - we have a giant c++ library, with its own language(QML), which has two custom build systems (qmake and qbs), its own IDE (QtCreator), two (or is it already one now?) Javascript engines, a networking and web browser engines and yet we still need a totally unrelated foreign language runtime just to download the sources. Sounds kinda eccentric.

      VRoninV Offline
      VRoninV Offline
      VRonin
      wrote on last edited by VRonin
      #20

      @Chris-Kawa I think your process might move the problem on the other side of gerrit. Making it too easy to propose changes to the code might swamp code reviewers with changes that can't be accepted. Bots could filer out a few of them but probably the burden will increase significantly.

      I'd stick with a diff submission portal. preparing a git diff is the kind of thing a seasoned programmer considers trivial but it's not for a newcomer hence filtering out submission by people that might feel too confident in their Qt expertise.

      Same goes for the config. I'm not a fan of a 100% automated wizard but it shouldn't take more than 1 or 2 hours to set up the entire thing for a regular Qt user with decent git experience that is looking to contribute for the first time.

      "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
      ~Napoleon Bonaparte

      On a crusade to banish setIndexWidget() from the holy land of Qt

      Chris KawaC 1 Reply Last reply
      1
      • VRoninV VRonin

        @Chris-Kawa I think your process might move the problem on the other side of gerrit. Making it too easy to propose changes to the code might swamp code reviewers with changes that can't be accepted. Bots could filer out a few of them but probably the burden will increase significantly.

        I'd stick with a diff submission portal. preparing a git diff is the kind of thing a seasoned programmer considers trivial but it's not for a newcomer hence filtering out submission by people that might feel too confident in their Qt expertise.

        Same goes for the config. I'm not a fan of a 100% automated wizard but it shouldn't take more than 1 or 2 hours to set up the entire thing for a regular Qt user with decent git experience that is looking to contribute for the first time.

        Chris KawaC Offline
        Chris KawaC Offline
        Chris Kawa
        Lifetime Qt Champion
        wrote on last edited by
        #21

        @VRonin said in Gerrit Contributions:

        Bots could filer out a few of them but probably the burden will increase significantly.

        I don't claim to have a silver bullet here but I think it's a better problem to have than not having as much contributions because of the process complexity.

        I'm not a fan of a 100% automated wizard but it shouldn't take more than 1 or 2 hours to set up the entire thing

        Sorry, but if it takes me two hours to set up a submission it might as well take 10, because I'm not gonna do it. I don't think using complexity as newbie deterrent is the way to go.
        A diff submission portal would be fine, but it solves only part of the problem. On Windows at least just getting the right sources with all the dependencies set up correctly (paths, environment variables etc.) is a chore.

        VRoninV K 2 Replies Last reply
        0
        • Chris KawaC Chris Kawa

          @VRonin said in Gerrit Contributions:

          Bots could filer out a few of them but probably the burden will increase significantly.

          I don't claim to have a silver bullet here but I think it's a better problem to have than not having as much contributions because of the process complexity.

          I'm not a fan of a 100% automated wizard but it shouldn't take more than 1 or 2 hours to set up the entire thing

          Sorry, but if it takes me two hours to set up a submission it might as well take 10, because I'm not gonna do it. I don't think using complexity as newbie deterrent is the way to go.
          A diff submission portal would be fine, but it solves only part of the problem. On Windows at least just getting the right sources with all the dependencies set up correctly (paths, environment variables etc.) is a chore.

          VRoninV Offline
          VRoninV Offline
          VRonin
          wrote on last edited by VRonin
          #22

          @Chris-Kawa said in Gerrit Contributions:

          On Windows at least just getting the right sources with all the dependencies set up correctly (paths, environment variables etc.) is a chore.

          Agree it should be simplified a lot

          Sorry, but if it takes me two hours to set up a submission it might as well take 10, because I'm not gonna do it

          I did not explain myself correctly. What I meant is that from the moment I get the idea of submitting something (while still having only the binary of Qt on my machine) to the moment I submit it, it shouldn't take more than 2 hours (net, of course of the time I spend actually changing the sources) of goggling, reading, downloading setting up and sending. Subsequent submits (i.e. after I already set up my system) should be significantly faster.

          I don't think using complexity as newbie deterrent is the way to go.

          Probably not, it's the first thing that came to mind to mitigate the resistances of code reviewers, that can face a significant increase in their work burden, to the changes

          "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
          ~Napoleon Bonaparte

          On a crusade to banish setIndexWidget() from the holy land of Qt

          1 Reply Last reply
          1
          • Chris KawaC Chris Kawa

            @VRonin said in Gerrit Contributions:

            Bots could filer out a few of them but probably the burden will increase significantly.

            I don't claim to have a silver bullet here but I think it's a better problem to have than not having as much contributions because of the process complexity.

            I'm not a fan of a 100% automated wizard but it shouldn't take more than 1 or 2 hours to set up the entire thing

            Sorry, but if it takes me two hours to set up a submission it might as well take 10, because I'm not gonna do it. I don't think using complexity as newbie deterrent is the way to go.
            A diff submission portal would be fine, but it solves only part of the problem. On Windows at least just getting the right sources with all the dependencies set up correctly (paths, environment variables etc.) is a chore.

            K Offline
            K Offline
            Konstantin Tokarev
            wrote on last edited by
            #23

            @Chris-Kawa said in Gerrit Contributions:

            I don't claim to have a silver bullet here but I think it's a better problem to have than not having as much contributions because of the process complexity.

            Note that process may be complex only a first time, when you do your second or third patch you just use existing setup and execute simple git commands. If we make it possible to do "drive-by" contributions without setup, chances are that the person will continue using "drive-by" way, putting extra burden on reviewers.

            Chris KawaC 1 Reply Last reply
            1
            • kshegunovK kshegunov

              @SGaist said in Gerrit Contributions:

              You should add a ping comment on your patch, that's what I usually do when it starts to stale.

              @Konstantin-Tokarev said in Gerrit Contributions:

              If patch is left hanging, it's your responsibility to bring attention of reviewers to it.

              Will do.

              @SGaist said in Gerrit Contributions:

              maybe have some sort of "Windows pack installer" that you could download to help you setup more easily for contribution.

              Possibly feasible. I don't much work on windows, so our win users should feel free to correct me, but I think this should include setting up the git, somehow generating and uploading the ssh keys and probably installing perl with running the appropriate scripts. Do I miss something? Perhaps a set of dependencies?

              @Konstantin-Tokarev said in Gerrit Contributions:

              Though we could have a "remind bot" that would post automatic message in case there is no activity on review in e.g. 2 weeks, and if nothing happens in the next 2 weeks after message, move patch to deferred state

              Also we could have a reviewer suggestion bot that adds all developers that might be relevant for each patch that is hanging unreviewed for, say, more than 3 days.

              Both of those suggestions sound very good to me. What about adding a list of reviewers automatically on first patch upload (following the same logic)?

              K Offline
              K Offline
              Konstantin Tokarev
              wrote on last edited by
              #24

              @kshegunov said in Gerrit Contributions:

              What about adding a list of reviewers automatically on first patch upload (following the same logic)?

              It may create unnecessary noise. There are cases when you know for sure which person needs to review the patch, and there is no need to bother others (unless they are actively subscribed to this change by means of watch list)

              kshegunovK 1 Reply Last reply
              0
              • K Konstantin Tokarev

                @Chris-Kawa said in Gerrit Contributions:

                I don't claim to have a silver bullet here but I think it's a better problem to have than not having as much contributions because of the process complexity.

                Note that process may be complex only a first time, when you do your second or third patch you just use existing setup and execute simple git commands. If we make it possible to do "drive-by" contributions without setup, chances are that the person will continue using "drive-by" way, putting extra burden on reviewers.

                Chris KawaC Offline
                Chris KawaC Offline
                Chris Kawa
                Lifetime Qt Champion
                wrote on last edited by Chris Kawa
                #25

                @Konstantin-Tokarev First time is all it takes to drive a newcomer away. I'm not sure I understand your point. How is a drive-by contribution different from a regular one? The submission and approval process is the same for both. What's the point of limiting it apart from offloading the reviewers? Isn't having many submitters a good thing? Growing community should take priority over mitigating a side effect of its growth I think.

                1 Reply Last reply
                2
                • K Konstantin Tokarev

                  @kshegunov said in Gerrit Contributions:

                  What about adding a list of reviewers automatically on first patch upload (following the same logic)?

                  It may create unnecessary noise. There are cases when you know for sure which person needs to review the patch, and there is no need to bother others (unless they are actively subscribed to this change by means of watch list)

                  kshegunovK Offline
                  kshegunovK Offline
                  kshegunov
                  Moderators
                  wrote on last edited by kshegunov
                  #26

                  @Konstantin-Tokarev said in Gerrit Contributions:

                  It may create unnecessary noise. There are cases when you know for sure which person needs to review the patch, and there is no need to bother others (unless they are actively subscribed to this change by means of watch list)

                  And unless the Qt Company is going to run an exclusive show then most of the time I, or any other unaffiliated/occasional contributor, scroll(s) down a list of git commit history entries and add(s) manually people to the list in gerrit. And to make it worse, I still have no idea whom I'm adding - is he/she active on gerrit, interested in reviewing, etc.
                  So in fact I'm doing exactly that - bothering people, I don't see any difference between me doing it manually and it being automated.

                  @Chris-Kawa said in Gerrit Contributions:

                  First time is all it takes to drive a newcomer away. I'm not sure I understand your point. How is a drive-by contribution different from a regular one? The submission and approval process is the same for both. What's the point of limiting it apart from offloading the reviewers? Isn't having many submitters a good thing?

                  And I think Chris took a stab at the heart of the issue, leaving the technicalities aside. I'm with him on this one. Isn't the point of Qt being distributed over LGPL to reap the benefits of that open source license, I'd think so, but then why insist on making the contribution process so deterrent that most potential submitters would prefer not to bother with it at all?

                  Read and abide by the Qt Code of Conduct

                  K 1 Reply Last reply
                  2
                  • kshegunovK kshegunov

                    @Konstantin-Tokarev said in Gerrit Contributions:

                    It may create unnecessary noise. There are cases when you know for sure which person needs to review the patch, and there is no need to bother others (unless they are actively subscribed to this change by means of watch list)

                    And unless the Qt Company is going to run an exclusive show then most of the time I, or any other unaffiliated/occasional contributor, scroll(s) down a list of git commit history entries and add(s) manually people to the list in gerrit. And to make it worse, I still have no idea whom I'm adding - is he/she active on gerrit, interested in reviewing, etc.
                    So in fact I'm doing exactly that - bothering people, I don't see any difference between me doing it manually and it being automated.

                    @Chris-Kawa said in Gerrit Contributions:

                    First time is all it takes to drive a newcomer away. I'm not sure I understand your point. How is a drive-by contribution different from a regular one? The submission and approval process is the same for both. What's the point of limiting it apart from offloading the reviewers? Isn't having many submitters a good thing?

                    And I think Chris took a stab at the heart of the issue, leaving the technicalities aside. I'm with him on this one. Isn't the point of Qt being distributed over LGPL to reap the benefits of that open source license, I'd think so, but then why insist on making the contribution process so deterrent that most potential submitters would prefer not to bother with it at all?

                    K Offline
                    K Offline
                    Konstantin Tokarev
                    wrote on last edited by
                    #27

                    @kshegunov said in Gerrit Contributions:

                    And unless the Qt Company is going to run an exclusive show

                    As you can easily see, this is not the case, lots of people not affiliated with The Qt Company are contributors, approvers and even maintainers of modules.

                    So in fact I'm doing exactly that - bothering people, I don't see any difference between me doing it manually and it being automated.

                    There is a difference when you know whom to add.

                    @Chris-Kawa said in Gerrit Contributions:

                    I'm not sure I understand your point. How is a drive-by contribution different from a regular one? The submission and approval process is the same for both. What's the point of limiting it apart from offloading the reviewers?

                    Because if you are not ready to invest a bit of time to learn git (and Gerrit does not use anything else) there is a risk that you won't modify your patches to fix reviewers' comments, or won't write unit tests when needed, or won't make sure that your code is ocmpatible with other platforms. In short, offloading work to approvers and maintainers. Sorry, if this is not the case for you.

                    VRoninV kshegunovK 2 Replies Last reply
                    1
                    • K Konstantin Tokarev

                      @kshegunov said in Gerrit Contributions:

                      And unless the Qt Company is going to run an exclusive show

                      As you can easily see, this is not the case, lots of people not affiliated with The Qt Company are contributors, approvers and even maintainers of modules.

                      So in fact I'm doing exactly that - bothering people, I don't see any difference between me doing it manually and it being automated.

                      There is a difference when you know whom to add.

                      @Chris-Kawa said in Gerrit Contributions:

                      I'm not sure I understand your point. How is a drive-by contribution different from a regular one? The submission and approval process is the same for both. What's the point of limiting it apart from offloading the reviewers?

                      Because if you are not ready to invest a bit of time to learn git (and Gerrit does not use anything else) there is a risk that you won't modify your patches to fix reviewers' comments, or won't write unit tests when needed, or won't make sure that your code is ocmpatible with other platforms. In short, offloading work to approvers and maintainers. Sorry, if this is not the case for you.

                      VRoninV Offline
                      VRoninV Offline
                      VRonin
                      wrote on last edited by VRonin
                      #28

                      @Konstantin-Tokarev said in Gerrit Contributions:

                      Because if you are not ready to invest a bit of time to learn git (and Gerrit does not use anything else) there is a risk that you won't modify your patches to fix reviewers' comments, or won't write unit tests when needed, or won't make sure that your code is ocmpatible with other platforms. In short, offloading work to approvers and maintainers.

                      I do see your point but drive-by would usually just act on small bugs, things you don't have time to fix because you, correctly, prioritise other stuff letting the odd user that is affected by the bug just fix it himself. This kind of contributors will probably have limited need to write platform-specific code or entire unit tests. things like this: https://bugreports.qt.io/browse/QTBUG-57925 which requires a either simple distribution of a parenthesis or a std::is_unsigned check (or both)

                      Are we veering off track? I think the main point is configuring for contribution (primarily under windows) being too hard is preventing people from contributing altogether

                      "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                      ~Napoleon Bonaparte

                      On a crusade to banish setIndexWidget() from the holy land of Qt

                      1 Reply Last reply
                      0
                      • K Konstantin Tokarev

                        @kshegunov said in Gerrit Contributions:

                        And unless the Qt Company is going to run an exclusive show

                        As you can easily see, this is not the case, lots of people not affiliated with The Qt Company are contributors, approvers and even maintainers of modules.

                        So in fact I'm doing exactly that - bothering people, I don't see any difference between me doing it manually and it being automated.

                        There is a difference when you know whom to add.

                        @Chris-Kawa said in Gerrit Contributions:

                        I'm not sure I understand your point. How is a drive-by contribution different from a regular one? The submission and approval process is the same for both. What's the point of limiting it apart from offloading the reviewers?

                        Because if you are not ready to invest a bit of time to learn git (and Gerrit does not use anything else) there is a risk that you won't modify your patches to fix reviewers' comments, or won't write unit tests when needed, or won't make sure that your code is ocmpatible with other platforms. In short, offloading work to approvers and maintainers. Sorry, if this is not the case for you.

                        kshegunovK Offline
                        kshegunovK Offline
                        kshegunov
                        Moderators
                        wrote on last edited by kshegunov
                        #29

                        @Konstantin-Tokarev said in Gerrit Contributions:

                        As you can easily see, this is not the case, lots of people not affiliated with The Qt Company are contributors, approvers and even maintainers of modules.

                        It was a conditional, I'm not claiming they are. And your note, namely "There is a difference when you know whom to add." just supports it. The fact is that a new contributor doesn't know anyone out there, or they may not even care to, especially if it's a once-in-life thing. My point was that the review process shouldn't be an exclusive club for a group of people who know each other, right? The idea is that it'd be good to have smooth sailing irrespective of whether you're submitting your first patch or are a long-time contributor.

                        there is a risk that you won't modify your patches to fix reviewers' comments, or won't write unit tests when needed, or won't make sure that your code is ocmpatible with other platforms.

                        Suppose you're right. For one, as @VRonin hinted, no one is going to waste a day, or two only to submit a 5 line patch, it just ain't gonna happen. Not to mention commercial customers who are not even required to submit their changes, they can just sit on them forever. So even if we accept that there are enough people to handle the major things, they still have limited resources. It's been a complaint (I know you follow the mailing list, but some don't so I put it here for completeness) that there's accumulation of bugs and many just go unresolved for long periods of time. In my mind allowing more people to pitch in, should help alleviate that problem.
                        And secondly, there's always risk. There's the risk a tree might fell on you while strolling through the park, this shouldn't stop you from having a walk, should it? Suppose it doesn't work in any of the proposed configurations, so what, what is there to lose?

                        Read and abide by the Qt Code of Conduct

                        1 Reply Last reply
                        1
                        • kshegunovK Offline
                          kshegunovK Offline
                          kshegunov
                          Moderators
                          wrote on last edited by
                          #30

                          Resurrecting this thread due to Code contributions via bug reports and forum posts being allowed. Users are still encouraged to go through the usual route of setting up gerrit and the code review process however.

                          Read and abide by the Qt Code of Conduct

                          1 Reply Last reply
                          2
                          • VRoninV Offline
                            VRoninV Offline
                            VRonin
                            wrote on last edited by
                            #31

                            It would be nice to have a place in the forum where people could just post their “casual contribution” so that someone could pick them up while still being 100% covered under the Qt Account contribution model mentioned in the blog.
                            Maybe a subforum of https://forum.qt.io/category/48/qt-contribution ?

                            "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                            ~Napoleon Bonaparte

                            On a crusade to banish setIndexWidget() from the holy land of Qt

                            1 Reply Last reply
                            3
                            • SGaistS Offline
                              SGaistS Offline
                              SGaist
                              Lifetime Qt Champion
                              wrote on last edited by
                              #32

                              I'd rather avoid that. Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                              Furthermore, this would pose other problems like having people posting patches that might solve something but break something else.

                              Also, the forum is not monitored therefore it's going to be even more complicated.

                              What would be nice is to have tools that help casual contributors to setup their environment to submit their patches. Since they would have already built Qt for their patch, it would really mean just setting up for Gerrit.

                              Interested in AI ? www.idiap.ch
                              Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                              kshegunovK 1 Reply Last reply
                              0
                              • SGaistS SGaist

                                I'd rather avoid that. Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                                Furthermore, this would pose other problems like having people posting patches that might solve something but break something else.

                                Also, the forum is not monitored therefore it's going to be even more complicated.

                                What would be nice is to have tools that help casual contributors to setup their environment to submit their patches. Since they would have already built Qt for their patch, it would really mean just setting up for Gerrit.

                                kshegunovK Offline
                                kshegunovK Offline
                                kshegunov
                                Moderators
                                wrote on last edited by kshegunov
                                #33

                                @SGaist said in Gerrit Contributions:

                                Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                                This can be fixed by introducing a couple of special rules, so I don't see it as a big problem.

                                Furthermore, this would pose other problems like having people posting patches that might solve something but break something else.

                                Happens all the time in gerrit too. This isn't a valid argument in my mind.

                                Also, the forum is not monitored therefore it's going to be even more complicated.

                                This would be the biggest problem as I see it. We've been running our own show more or less, Tero being lenient and all. And such "casual" contributions will still need to go through one of QtC's developers (as mentioned in the blog post). It ain't gonna be easy, that's for sure. Also @kkoehne might have something to say for or against here ...

                                What would be nice is to have tools that help casual contributors to setup their environment to submit their patches. Since they would have already built Qt for their patch, it would really mean just setting up for Gerrit.

                                This would be very, very nice. The perfect solution, but are you volunteering? I, for one, don't know the infrastructure well enough to even consider helping with such a task ...

                                Read and abide by the Qt Code of Conduct

                                SGaistS kkoehneK 2 Replies Last reply
                                0
                                • kshegunovK kshegunov

                                  @SGaist said in Gerrit Contributions:

                                  Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                                  This can be fixed by introducing a couple of special rules, so I don't see it as a big problem.

                                  Furthermore, this would pose other problems like having people posting patches that might solve something but break something else.

                                  Happens all the time in gerrit too. This isn't a valid argument in my mind.

                                  Also, the forum is not monitored therefore it's going to be even more complicated.

                                  This would be the biggest problem as I see it. We've been running our own show more or less, Tero being lenient and all. And such "casual" contributions will still need to go through one of QtC's developers (as mentioned in the blog post). It ain't gonna be easy, that's for sure. Also @kkoehne might have something to say for or against here ...

                                  What would be nice is to have tools that help casual contributors to setup their environment to submit their patches. Since they would have already built Qt for their patch, it would really mean just setting up for Gerrit.

                                  This would be very, very nice. The perfect solution, but are you volunteering? I, for one, don't know the infrastructure well enough to even consider helping with such a task ...

                                  SGaistS Offline
                                  SGaistS Offline
                                  SGaist
                                  Lifetime Qt Champion
                                  wrote on last edited by
                                  #34

                                  @kshegunov said in Gerrit Contributions:

                                  @SGaist said in Gerrit Contributions:

                                  Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                                  This can be fixed by introducing a couple of special rules, so I don't see it as a big problem.

                                  Any example in mind ?

                                  Furthermore, this would pose other problems like having people posting patches that might solve something but break something else.

                                  Happens all the time in gerrit too. This isn't a valid argument in my mind.

                                  I didn't write my thoughts well. My concern is rather that there will be unexperienced people finding these patches (I know it goes against my suggestion that threads get lost in times), apply them and possibly trigger new bugs that will make their life way harder than it should be.
                                  The patches in gerrit are reviewed and updated until they stop breaking the build and the ones provided in Jira will have more contextual information.

                                  Also, the forum is not monitored therefore it's going to be even more complicated.

                                  This would be the biggest problem as I see it. We've been running our own show more or less, Tero being lenient and all. And such "casual" contributions will still need to go through one of QtC's developers (as mentioned in the blog post). It ain't gonna be easy, that's for sure. Also @kkoehne might have something to say for or against here ...

                                  Tero trusted us because we proved our worthiness. For the casual contributions, that's the point: having a simpler way to provide small patch is really nice, but multiplication of the channels where you can provide patches will likely make things more complicated for development. For patches posted on the forum, we will need people to monitor them (maybe a new group of dedicated persons) and ensure that they are properly posted, with enough information. Then the last point is to have someone taking the responsibility of making a submission out of it and continue the process until integration.

                                  Indeed @kkoehne's input will be nice.

                                  What would be nice is to have tools that help casual contributors to setup their environment to submit their patches. Since they would have already built Qt for their patch, it would really mean just setting up for Gerrit.

                                  This would be very, very nice. The perfect solution, but are you volunteering? I, for one, don't know the infrastructure well enough to even consider helping with such a task ...

                                  I have some ideas about that but I don't know yet about the implementation.

                                  Interested in AI ? www.idiap.ch
                                  Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                  VRoninV 1 Reply Last reply
                                  0
                                  • SGaistS SGaist

                                    @kshegunov said in Gerrit Contributions:

                                    @SGaist said in Gerrit Contributions:

                                    Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                                    This can be fixed by introducing a couple of special rules, so I don't see it as a big problem.

                                    Any example in mind ?

                                    Furthermore, this would pose other problems like having people posting patches that might solve something but break something else.

                                    Happens all the time in gerrit too. This isn't a valid argument in my mind.

                                    I didn't write my thoughts well. My concern is rather that there will be unexperienced people finding these patches (I know it goes against my suggestion that threads get lost in times), apply them and possibly trigger new bugs that will make their life way harder than it should be.
                                    The patches in gerrit are reviewed and updated until they stop breaking the build and the ones provided in Jira will have more contextual information.

                                    Also, the forum is not monitored therefore it's going to be even more complicated.

                                    This would be the biggest problem as I see it. We've been running our own show more or less, Tero being lenient and all. And such "casual" contributions will still need to go through one of QtC's developers (as mentioned in the blog post). It ain't gonna be easy, that's for sure. Also @kkoehne might have something to say for or against here ...

                                    Tero trusted us because we proved our worthiness. For the casual contributions, that's the point: having a simpler way to provide small patch is really nice, but multiplication of the channels where you can provide patches will likely make things more complicated for development. For patches posted on the forum, we will need people to monitor them (maybe a new group of dedicated persons) and ensure that they are properly posted, with enough information. Then the last point is to have someone taking the responsibility of making a submission out of it and continue the process until integration.

                                    Indeed @kkoehne's input will be nice.

                                    What would be nice is to have tools that help casual contributors to setup their environment to submit their patches. Since they would have already built Qt for their patch, it would really mean just setting up for Gerrit.

                                    This would be very, very nice. The perfect solution, but are you volunteering? I, for one, don't know the infrastructure well enough to even consider helping with such a task ...

                                    I have some ideas about that but I don't know yet about the implementation.

                                    VRoninV Offline
                                    VRoninV Offline
                                    VRonin
                                    wrote on last edited by VRonin
                                    #35

                                    @SGaist said in Gerrit Contributions:

                                    but multiplication of the channels where you can provide patches will likely make things more complicated for development.

                                    No, I think this is the crucial point, we would keep gerrit as the only development tool.
                                    Take my example:
                                    I opened a bug report ticket
                                    I'm pretty sure I would be able to solve it.
                                    The git configs are too invasive for me to apply to the environment I use everyday and building a VM just for that would be close to madness.
                                    My only option at the moment is to hope some poor sod that (1) doesn't have my restrictions (2) comes across the same issue and (3) can solve it (this combo probably gives me the same chances as winning lotto) comes along and picks it up.

                                    Having a forum channel would let me post the 1-method-patch here so that if somebody with a gerrit setup and a few minutes to spare can post it; basically removing 2 and 3 above from the "list of things that need to happen". If the gerrit review fails and the original poster doesn't update it then it's just another dead commit, it's not the first and it will not be the last

                                    "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                                    ~Napoleon Bonaparte

                                    On a crusade to banish setIndexWidget() from the holy land of Qt

                                    1 Reply Last reply
                                    1
                                    • SGaistS Offline
                                      SGaistS Offline
                                      SGaist
                                      Lifetime Qt Champion
                                      wrote on last edited by
                                      #36

                                      @VRonin Since you have the ticket, why not post the patch to the ticket directly ? Posting it in a thread here, then posting a link to the forum that contains the patch on that ticket is a bit counter productive as you'd have the information spread in different places when one would be enough. And don't forget the classic formatting trouble that will happen here when grabbing the patch.

                                      Don't get me wrong, I do understand the appeal of having such a channel, I'm not totally against it. However, as already written, I would rather have a tool that allows casual contributors to submit patches more easily to somewhere already monitored and properly managed for somebody to pick and continue.

                                      If possible, a tool that would allow them to setup gerrit and git. On the git note, I agree that the proposed way of setting up git is a bit intrusive, however you can make all these settings local to your Qt repositories.

                                      Interested in AI ? www.idiap.ch
                                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                                      kshegunovK 1 Reply Last reply
                                      0
                                      • SGaistS SGaist

                                        @VRonin Since you have the ticket, why not post the patch to the ticket directly ? Posting it in a thread here, then posting a link to the forum that contains the patch on that ticket is a bit counter productive as you'd have the information spread in different places when one would be enough. And don't forget the classic formatting trouble that will happen here when grabbing the patch.

                                        Don't get me wrong, I do understand the appeal of having such a channel, I'm not totally against it. However, as already written, I would rather have a tool that allows casual contributors to submit patches more easily to somewhere already monitored and properly managed for somebody to pick and continue.

                                        If possible, a tool that would allow them to setup gerrit and git. On the git note, I agree that the proposed way of setting up git is a bit intrusive, however you can make all these settings local to your Qt repositories.

                                        kshegunovK Offline
                                        kshegunovK Offline
                                        kshegunov
                                        Moderators
                                        wrote on last edited by kshegunov
                                        #37

                                        @SGaist said in Gerrit Contributions:

                                        @kshegunov said in Gerrit Contributions:

                                        @SGaist said in Gerrit Contributions:

                                        Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                                        This can be fixed by introducing a couple of special rules, so I don't see it as a big problem.

                                        Any example in mind ?

                                        A set of rules how would a drive-by contribution look like and what information it should contain. That'd include the link and ticket number, formatted code - with tags and appropriate code style and perhaps a requirement for a test case. I agree that it'd be better to do this in JIRA, simply as it allows also code to be uploaded directly, not just pasted inside the text as here. Still I do agree that a person should be assigned to at least monitor the hypothetical subforum and to make sure posts there are compliant.

                                        My concern is rather that there will be unexperienced people finding these patches (I know it goes against my suggestion that threads get lost in times), apply them and possibly trigger new bugs that will make their life way harder than it should be.

                                        You mean directly? That's crazy! ;)
                                        Joke aside a big fat disclaimer should deal with that problem - the code is experimental and for Qt's own use, do not apply in your code base - or something along those lines.

                                        Tero trusted us because we proved our worthiness.

                                        You may have, but I did no such thing! ;P

                                        I have some ideas about that but I don't know yet about the implementation.

                                        You should open a thread and lay it out for us, maybe an idea will sprout out of it.

                                        however you can make all these settings local to your Qt repositories.

                                        This is what I do. Global configs are evil.

                                        Read and abide by the Qt Code of Conduct

                                        1 Reply Last reply
                                        0
                                        • kshegunovK kshegunov

                                          @SGaist said in Gerrit Contributions:

                                          Threads on the forum tends to disappear over time and the patches would be really hard to associate with any given bug/problem.

                                          This can be fixed by introducing a couple of special rules, so I don't see it as a big problem.

                                          Furthermore, this would pose other problems like having people posting patches that might solve something but break something else.

                                          Happens all the time in gerrit too. This isn't a valid argument in my mind.

                                          Also, the forum is not monitored therefore it's going to be even more complicated.

                                          This would be the biggest problem as I see it. We've been running our own show more or less, Tero being lenient and all. And such "casual" contributions will still need to go through one of QtC's developers (as mentioned in the blog post). It ain't gonna be easy, that's for sure. Also @kkoehne might have something to say for or against here ...

                                          What would be nice is to have tools that help casual contributors to setup their environment to submit their patches. Since they would have already built Qt for their patch, it would really mean just setting up for Gerrit.

                                          This would be very, very nice. The perfect solution, but are you volunteering? I, for one, don't know the infrastructure well enough to even consider helping with such a task ...

                                          kkoehneK Offline
                                          kkoehneK Offline
                                          kkoehne
                                          Moderators
                                          wrote on last edited by
                                          #38

                                          @kshegunov said in Gerrit Contributions:

                                          Also, the forum is not monitored therefore it's going to be even more complicated.

                                          This would be the biggest problem as I see it. We've been running our own show more or less, Tero being lenient and all. And such "casual" contributions will still need to go through one of QtC's developers (as mentioned in the blog post). It ain't gonna be easy, that's for sure. Also @kkoehne might have something to say for or against here ...

                                          Let me just say that the legal side has been eased a bit. We can accept patches in forums and bug reports now:

                                          https://blog.qt.io/blog/2018/05/16/code-contributions-via-bug-reports-forum-posts/

                                          I'd recommend sticking to bugreports.qt.io for patches though, not setting up anything in particular in forums. Both other users and reviewers are much more likely to find the patch alongside the bug or feature it fixes, in the bug tracker.

                                          And yes, we should also ease the steps people have to do to contribute via gerrit. I do hope we revisit this soon, after the planned gerrit update...

                                          Director R&D, The Qt Company

                                          aha_1980A 1 Reply Last reply
                                          3

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved