• decasia 13 hours ago

    About this, I noticed a relatively prominent gem maintainer publicly announcing his efforts to avoid rubygems security measures:

    > I'll try to get a unicorn 7.x release soon but tests take forever to run on ancient HW and I need to ration releases to keep download counts low in order to stay under the MFA threshold on Rubygems.org

    > I don't ever want users viewing me as trustworthy nor liable for anything I do, so no MFA nor sigs from me; just source + docs :>

    If I understand correctly - the idea is that the unicorn maintainer does not want to be viewed as trustworthy and is avoiding MFA and signatures because they could build trust that isn't, in this case, wanted.

    https://yhbt.net/unicorn-public/20231214230933.M299458@dcvr/

    • halostatue 8 hours ago

      The maintainer is eccentric. He refuses to use anything that runs JavaScript out of a sense of "Free Software Purity", which means that he cannot use most of the ecosystem to which Ruby has migrated.

      He has only contributed to Ruby via the ruby-core mailing list (he does not use the RubyMine interface which backs ruby-core) and the main Ruby git repo hosted by the Ruby team, never anything on GitHub.

      I'm sort of surprised that the RubyGems MFA threshold hasn't been updated (it was 180M total downloads in 2022; my gems combined have > 2.5B downloads, so I was never not going to pass the threshold), but he's under 70M downloads shy and each release gets about 15M downloads or so.

      I think that his position is irresponsible in today's threat environment, but given the amount of work that I'm doing for OSS maintenance that's just responding to bloody Dependabot updates…

      • haute_cuisine 2 hours ago

        It would be nice if OSS maintainers would start charging for extra security features like signed releases at least $1k/y per project.

      • drzaiusx11 10 hours ago

        From the unicorn readme:

        "unicorn is an HTTP server for Rack applications that has done decades of damage to the entire Ruby ecosystem due to its ability to tolerate (and thus encourage) bad code."

        Might have something to do with it.

        • jrochkind1 9 hours ago

          I feel like the unicorn maintainer(s) have been trying to kill unicorn for a while, making decisions meant to be user-hostile. I'm not sure why they are maintaining it at all.

          • halostatue 8 hours ago

            It would be better if he did kill it.

            • cortesoft 7 hours ago

              Ironically, my main memory from back when I used unicorn was that the supported way to stop the server was to run "killall unicorns"

        • cosmic_cheese 14 hours ago

          Good work to everybody involved. Looking into donating now.

          Ruby/Rails and its ecosystem continues to prove itself the practical, boring, reliable workhorse option.

          • princevegeta89 13 hours ago

            Boring? Not really.

            My 2c: it is more enjoyable than the Js/Ts ecosystem we have today.

            • woodruffw 12 hours ago

              I think they meant boring in a positive way, as in "choose boring technology."

            • f4stjack 3 hours ago

              Agreed. Time and time again, I wished I'd knew Ruby and/or RoR. Do you know any good (and "boring" as in time-tested & practical) tutorials/learning resources?

            • wredcoll 8 hours ago

              God, this gave me flashbacks to people saying the same thing, except with perl.

            • IFC_LLC 14 hours ago

              Interesting how the Internet turned into a place where you have to search for a long time in order to find something valuable. In this case - you have a dedicated team that sits there and diligently works on the quality of their product.

              I should have turned to RoR 3 years ago.

              • ecshafer 10 hours ago

                Ruby on Rails is the most productive web framework I have ever worked in. RoR + the Ecosystem is really geared towards getting things working quickly asap and its great.

                • IFC_LLC 9 hours ago

                  Oh, I will. I will. I'm quite amazed by the dedication of the team that supports the framework and how good of a care they have been taking about it.

                  Funny enough, one of my first articles I've ever written on the internet was about RoR. It's dated 1st of March 2010. Gosh, It's been 15 years. At that moment I used https://rubyforge.org to download RoR, Instant Rails for Windows and Aptana as an IDE. 15 years have gone by, but RoR is here just like PHP is.

                  So it's getting better and better.

                  • jrochkind1 9 hours ago

                    Please note though that the team supporting rubygems is not the team that supports the Rails framework. These are different projects.

                • infamouscow 13 hours ago

                  Welcome to the ecosystem o/

                • Dan42 11 hours ago

                  Reading this, I couldn't help but think these guys really know where their towel is. The opposite of enshittification?

                  • cortesoft 7 hours ago

                    Isn't this because there isn't a for profit company running this? They don't have to enshittify to make money for investors.

                  • burnt-resistor 13 hours ago

                    But still lacks mandatory gem signing. I also wonder how many malicious gems were published prior to this.

                    • firesteelrain 13 hours ago

                      Even if it was mandatory, if it doesn’t get signed by a trusted CA then it is still self signed. RubyGems would have to reject all. But signing alone does not prevent malicious code

                      • lmm 2 hours ago

                        There are plenty of ways for malicious code to make it out even if there is a full trust path. But every step raises the cost. Even if a developer just signs their releases with a self-signed key, it gives people a chance to notice the key has changed.

                        • mdaniel 8 hours ago

                          AIUI, the threat model isn't "self signed versus not," I would suspect the modern threat model is "current release signed by the same cert as prior release". The Android ecosystem is backed by this threat model, and (zip parsing nonsense aside) seems to be doing well with it. Even F-Droid, which runs their own signing stack, participates although it is not compatible with the Play Store distribution mechanism due to "who owns the signing key"

                      • halostatue 8 hours ago

                        I think that trusted publishing has had a bigger impact than the gem signing that was introduced years ago and never worked well because the infrastructure wasn't present.