Duet3D Logo Duet3D
    • Tags
    • Documentation
    • Order
    • Register
    • Login

    RepRapFirmware 3.0RC1 released

    Scheduled Pinned Locked Moved
    Beta Firmware
    19
    77
    5.9k
    Loading More Posts
    • 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.
    • Phaedruxundefined
      Phaedrux Moderator @Synapsis
      last edited by Phaedrux

      @Synapsis said in RepRapFirmware 3.0RC1 released:

      I did and thank you for that bug fix, but I do have a question. For us "home users" is it better to stay with 2.05 or update to 3.0RC1 seeing thing are very different in the way things are set up.

      In my opinion, most users should stick with the RRF2 for the time being unless there is a feature of RRF3 that you really want. At least until RRF3 has been more fully developed and tested and becomes the main release. Besides that, the effort required to convert from RRF2 to RRF3 is (currently) not trivial. So unless you like to be on the bleeding edge and like testing firmware and submitting bug reports and understand that's what you're getting into, best to stick with 2.05 for now and print happily.

      Z-Bot CoreXY Build | Thingiverse Profile

      dc42undefined Synapsisundefined 2 Replies Last reply Reply Quote 2
      • dc42undefined
        dc42 administrators @Phaedrux
        last edited by

        @Phaedrux said in RepRapFirmware 3.0RC1 released:

        @Synapsis said in RepRapFirmware 3.0RC1 released:

        I did and thank you for that bug fix, but I do have a question. For us "home users" is it better to stay with 2.05 or update to 3.0RC1 seeing thing are very different in the way things are set up.

        In my opinion, most users should stick with the RRF2 for the time being unless there is a feature of RRF3 that you really want. At least until RRF3 has been more fully developed and tested and becomes the main release. Besides that, the effort required to convert from RRF2 to RRF3 is (currently) not trivial. So unless you like to be on the bleeding edge and like testing firmware and submitting bug reports and understand that's what you're getting into, best to sticktwith 2.05 for now and print happily.

        @Phaedrux has summed it up perfectly.

        Duet WiFi hardware designer and firmware engineer
        Please do not ask me for Duet support via PM or email, use the forum
        http://www.escher3d.com, https://miscsolutions.wordpress.com

        1 Reply Last reply Reply Quote 0
        • gtj0undefined
          gtj0
          last edited by gtj0

          Oh boy! A semantic versioning discussion and release process!!! COUNT ME IN! πŸ™‚

          OK, so here's what we do at Asterisk.
          Assuming the current RRF major version is 3 and the next will be 4...

          We start with 2 branches, "3" (current), and "master" (anything targeted for 4). With no prior history, "master" and "13" are equal.

          We start with a "3" branch where all development goes, bug fixes and new features that are slated for major release "3". Commits are also cherry-picked to "master".
          When we'd create the first RC of "3.0" (3.0.0-rc1), so we'd create branch "3.0" from "3", tag it "3.0.0-rc1" and release from it.
          If there are no issues with rc1, we tag that same commit in the "3.0" branch as "3.0.0" and release it.
          Meanwhile development continues in "3".
          If there are issues with rc1, the fix is committed to "3" then only that commit is cherry-picked to "3.0" and rc2 is cut.
          This way the ONLY difference between rc1 and rc2 are fixes for issues found in rc1.
          Meanwhile development continues in "3".
          If we discover a critical bug that needs to be released quickly, the fix is committed to "3" and cherry-picked to "3.0".
          If there are other critical fixes, they are also cherry picked to "3.0".
          We then create a release (skipping rc/beta) of "3.0.1" which ONLY has the critical fixes.
          Meanwhile development continues in "3".
          When it's time to create "3.1" it's the same process.

          All thew while all commits in "3" are cherry-picked to "master" so "master" is always up to date with "3" plus it has any development that is slated for the next major release.

          When we start thinking about a new major version, we create "4" from "master".
          Assuming "3" is still the current release, from here on, any new commits are cherry-picked to both "4" and "master". New stuff for "4" also goes into "master" and any experimental stuff for the future goes only in "master".

          It sounds complicated but we use Gerrit so the cherry-picking is easy. πŸ™‚

          I'm not saying all of that stuff should be done here of course. I just wanted to highlight the differences between release versions. Also, this scheme would require that commits contain only 1 functional change and that'll be a big change for both @dc42 and @chrishamm .

          I do believe though that as the user base picks up with the Duet3, RRF and DSF that changes will ultimately have to be made in the release process as well as the issue reporting process or customer perception will suffer.

          @dc42 and @chrishamm , Welcome to the "real" Open Source world. πŸ™‚

          1 Reply Last reply Reply Quote 1
          • dc42undefined
            dc42 administrators
            last edited by

            Sounds good; but in trying to apply the same fixes to RRF 2.04 and RRF3beta12, I found cherry-picking left such a mess (because the code had diverged so much between the branches) that it was better to copy across the changes manually. In doing so, I spotted that one of the fixes I had done in 3.0beta wouldn't work in 2.04 anyway. Cherry picking commits would work OK if nothing had changed in/around the code that the bug fixes were applied to, and the bug fixes didn't interact with other code that was different between the branches.

            Either way, applying the same fixes to more than one branch involves a lot of extra work, especially in testing. That's why I try to avoid it. If I had an army of users running tests, it might be different. Even better from my POV would be for me to work just on the next release, and for someone else to pick up fixes from the branch I work on, back-port them to the previous stable release, do the tests, and do a patch release.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            Phaedruxundefined 1 Reply Last reply Reply Quote 2
            • Phaedruxundefined
              Phaedrux Moderator @dc42
              last edited by

              @dc42 said in RepRapFirmware 3.0RC1 released:

              Even better from my POV would be for me to work just on the next release, and for someone else to pick up fixes from the branch I work on, back-port them to the previous stable release, do the tests, and do a patch release.

              Perfect, when is your new clone being decanted?

              Z-Bot CoreXY Build | Thingiverse Profile

              gtj0undefined 1 Reply Last reply Reply Quote 0
              • gtj0undefined
                gtj0
                last edited by

                Yep. There is NO "right" way. It's all about what works for specific projects, community participation levels, etc. When you're only one person you have to budget your time accordingly. The more time you spend on admin, the less you can spend on real work. Making it easier for folks to contribute both code and time can help but even that takes time in the short term.

                One thing that can help in the really short term with little effort is to create a new category in the forum specifically for reporting bugs, regardless of whether it's a DSF or RRF bug. A user should triage their own issue in one of the other categories by asking for help first but if they really think it's a bug, report it in that new category. I'm still confused about where I should report bugs for which components. πŸ™‚

                Danalundefined 1 Reply Last reply Reply Quote 0
                • gtj0undefined
                  gtj0 @Phaedrux
                  last edited by

                  @Phaedrux said in RepRapFirmware 3.0RC1 released:

                  @dc42 said in RepRapFirmware 3.0RC1 released:

                  Even better from my POV would be for me to work just on the next release, and for someone else to pick up fixes from the branch I work on, back-port them to the previous stable release, do the tests, and do a patch release.

                  Perfect, when is your new clone being decanted?

                  He needs a few unpaid interns as part of a work/study program. It might actually be pretty attractive to someone because he deals with both hardware and software design in a growing technology.

                  1 Reply Last reply Reply Quote 0
                  • Danalundefined
                    Danal @gtj0
                    last edited by

                    @gtj0 said in RepRapFirmware 3.0RC1 released:

                    One thing that can help in the really short term with little effort is to create a new category in the forum specifically for reporting bugs, regardless of whether it's a DSF or RRF bug. A user should triage their own issue in one of the other categories by asking for help first but if they really think it's a bug, report it in that new category. I'm still confused about where I should report bugs for which components.

                    Yes, YES, YES, please!

                    Delta / Kossel printer fanatic

                    Phaedruxundefined 1 Reply Last reply Reply Quote 0
                    • Phaedruxundefined
                      Phaedrux Moderator @Danal
                      last edited by

                      @Danal said in RepRapFirmware 3.0RC1 released:

                      @gtj0 said in RepRapFirmware 3.0RC1 released:

                      One thing that can help in the really short term with little effort is to create a new category in the forum specifically for reporting bugs, regardless of whether it's a DSF or RRF bug. A user should triage their own issue in one of the other categories by asking for help first but if they really think it's a bug, report it in that new category. I'm still confused about where I should report bugs for which components.

                      Yes, YES, YES, please!

                      The issue with this is that the average user is not really savvy enough to determine what is a bug and what is a configuration issue and typically just assume something must be a bug.

                      I would think that users savvy enough to be looking through the code should report the actual bug via github, but that may actually be more work for DC42 than it just being reported on the forum.

                      Z-Bot CoreXY Build | Thingiverse Profile

                      gtj0undefined A Former User? dc42undefined 3 Replies Last reply Reply Quote 0
                      • gtj0undefined
                        gtj0 @Phaedrux
                        last edited by

                        @Phaedrux said in RepRapFirmware 3.0RC1 released:

                        @Danal said in RepRapFirmware 3.0RC1 released:

                        @gtj0 said in RepRapFirmware 3.0RC1 released:

                        One thing that can help in the really short term with little effort is to create a new category in the forum specifically for reporting bugs, regardless of whether it's a DSF or RRF bug. A user should triage their own issue in one of the other categories by asking for help first but if they really think it's a bug, report it in that new category. I'm still confused about where I should report bugs for which components.

                        Yes, YES, YES, please!

                        The issue with this is that the average user is not really savvy enough to determine what is a bug and what is a configuration issue and typically just assume something must be a bug.

                        I would think that users savvy enough to be looking through the code should report the actual bug via github, but that may actually be more work for DC42 than it just being reported on the forum.

                        Yeah a new category isn't a perfect solution but @chrishamm seems to want his issues reported on github but I'm not sure where @dc42 would prefer them. Github is also a problem when an issue crosses over. For instance, I've had a few issues open against DSF but @chrishamm is waiting on @dc42 to do work in RRF. There have been a few the other way around as well.

                        This is where a common issue tracking system comes into play but that also takes time to set up and administer.

                        1 Reply Last reply Reply Quote 1
                        • A Former User?
                          A Former User @Phaedrux
                          last edited by

                          @Phaedrux said in RepRapFirmware 3.0RC1 released:

                          typically just assume something must be a bug.

                          thats not how you spell feature! ... but fair point.

                          And how to version things is not how I'd prefer the limited development effort to be focused no matter how much I'd rather see the major.minor.bugfix scheme adopted.

                          1 Reply Last reply Reply Quote 0
                          • dc42undefined
                            dc42 administrators @Phaedrux
                            last edited by dc42

                            @Phaedrux said in RepRapFirmware 3.0RC1 released:

                            The issue with this is that the average user is not really savvy enough to determine what is a bug and what is a configuration issue and typically just assume something must be a bug.

                            Exactly. My most common response to issues logged on the RRF repository in Github is along the lines of "This is a support question, use the forum". For a while I even disabled the Issues feature because I was getting so many support questions raised there.

                            Another weakness of github Issues is that it doesn't separate bug reports from feature requests.

                            Currently I track bug reports on a spreadsheet shared with my colleagues, linked back to the forum threads in which they were raised.

                            Duet WiFi hardware designer and firmware engineer
                            Please do not ask me for Duet support via PM or email, use the forum
                            http://www.escher3d.com, https://miscsolutions.wordpress.com

                            A Former User? gtj0undefined 2 Replies Last reply Reply Quote 0
                            • A Former User?
                              A Former User @dc42
                              last edited by

                              @dc42 said in RepRapFirmware 3.0RC1 released:

                              it doesn't separate bug reports from feature requests.

                              this can actually be configured, you can mark the issues with flags such as "bug", "feature request", "regression" etc etc .. also you can setup what needs to be filled in for bug to be consider "fully reported" and the github bot will autoreply that blah blah is missing and you ignore reports that are marked such way..

                              look for e.g. octoprint https://github.com/foosel/OctoPrint/issues
                              9cc5183d-0326-4923-80fb-60076e6c408d-image.png

                              when you go to create new issue you get to:
                              7b5f314a-cf26-4a91-b3f5-9b30fe4f6ea4-image.png

                              there's a bunch of stuff you can setup on github to make your life easier and to allow for community to better help you πŸ™‚ ... I'm not a github (I use self hosted gitlab myself and for my company) expert but I'm sure we can get one if we ask πŸ™‚ to help set all this up

                              1 Reply Last reply Reply Quote 1
                              • gtj0undefined
                                gtj0 @dc42
                                last edited by

                                @dc42 said in RepRapFirmware 3.0RC1 released:

                                @Phaedrux said in RepRapFirmware 3.0RC1 released:

                                The issue with this is that the average user is not really savvy enough to determine what is a bug and what is a configuration issue and typically just assume something must be a bug.

                                Exactly. My most common response to issues logged on the RRF repository in Github is along the lines of "This is a support question, use the forum". For a while I even disabled the Issues feature because I was getting so many support questions raised there.

                                Another weakness of github Issues is that it doesn't separate bug reports from feature requests.

                                Currently I track bug reports on a spreadsheet shared with my colleagues, linked back to the forum threads in which they were raised.

                                See. You want them here but @chrishamm wants them on github. πŸ™‚
                                So if you want them here, which category and how would a user know?

                                T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
                                • T3P3Tonyundefined
                                  T3P3Tony administrators @gtj0
                                  last edited by

                                  Generally it appears that most things are dumped into general discussion (not just potential bugs but most things) with only a subset of people using the other categories. Where important and appropriate and I try to move them.

                                  If we had a "bug report" category I am not sure that would make it more likely that bugs get reported there and other issues in the appropriate category. More likely there would still be bugs in general discussion and configuration issues in the "bug report" category.

                                  OTOH think github is an appropriate place for developers to collaborate and point out bugs/issues (as you do!)

                                  www.duet3d.com

                                  1 Reply Last reply Reply Quote 0
                                  • gtj0undefined
                                    gtj0
                                    last edited by

                                    No to beat a dead horse but did you know that as an open source project, you can get free licenses from Atlassian for Jira?

                                    T3P3Tonyundefined 1 Reply Last reply Reply Quote 0
                                    • T3P3Tonyundefined
                                      T3P3Tony administrators @gtj0
                                      last edited by

                                      @gtj0 said in RepRapFirmware 3.0RC1 released:

                                      Jira

                                      very weary to try more tools at this point!

                                      www.duet3d.com

                                      gtj0undefined 1 Reply Last reply Reply Quote 0
                                      • gtj0undefined
                                        gtj0 @T3P3Tony
                                        last edited by

                                        @T3P3Tony said in RepRapFirmware 3.0RC1 released:

                                        @gtj0 said in RepRapFirmware 3.0RC1 released:

                                        Jira

                                        very weary to try more tools at this point!

                                        I know, I was more just pulling your leg. πŸ™‚

                                        1 Reply Last reply Reply Quote 0
                                        • Synapsisundefined
                                          Synapsis @Phaedrux
                                          last edited by

                                          @Phaedrux Thanks will stay with 2.05 for now.

                                          1 Reply Last reply Reply Quote 0
                                          • fmaundefined
                                            fma @Danal
                                            last edited by

                                            @Danal said in RepRapFirmware 3.0RC1 released:

                                            My humble apologies for saying "We will always agree to disagree...". It was not you @fma; in fact you never posted to that thread.

                                            I didn't take it for me, don't worry πŸ˜‰

                                            There are perspectives in the user community that the overhead of merging a "bugfix only" N.0.N into N.1.0 would yield a negative return when implemented by a very small (almost one man) development team. We'd prefer to stick to the current arrangement.

                                            I understand that RRF is not developped by a large company/community. But I developped a few free softwares myself, and didn't have much troubles to use major.minor.bf. But I admit I was not as active as David is (it was only on my free time): RRF is releasing tons of new great features very quickly... Maybe it could be acceptable to release less often?

                                            I also know that it is much more interesting for a developper to add new features rather than fix bugs or refactor code. But these steps are mandatory for quality.

                                            I always take Gimp as example: releases are very rare, but always great quality, and I never had a single crash with this software, nor nasty bugs. The team ensures the code is rock solid, and I think it is a very good approach, very respectfull for users.

                                            Last, I apologize for putting coins in the juke box, and restarting that thread πŸ˜•

                                            FrΓ©dΓ©ric

                                            Danalundefined 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA