Copyright thenewstack

If you’re following the Ruby dispute, you might want to check out a recent post by Mike McQuaid that drills down on who has the most pull requests, merge requests and commits. McQaid maintains Homebrew, an open source software package manager that is mostly written in Ruby. He’s spent 13 years working on Ruby on Rails applications, including AllTrails (a personal favorite for my family), GitHub (where he was a principal engineer), Workbrew and Strap. He’s maintained Homebrew for 16 years, serving as the Project Leader since 2019. As such, some of his responsibilities include assessing whether Homebrew maintainers’ contributions make them eligible for retaining committees access, receiving a $300 month maintainer stipend, as well as other payments (such as hardware grants, travel expenses to the AGM, and lunch with other maintainers). In the blog post, he explains the core metrics he considers when evaluating whether someone is maintaining Homebrew. “Homebrew has open tooling to analyze GitHub contributions. RubyGems has a GitHub organization. Let’s combine the two,” he wrote, and then proceeds to look at the data on who contributes what, including comparing last year’s numbers with the month before the removal of the contributors and maintainers from the GitHub. By far, last year’s top contributor was David Rodriquez (on GitHub, deivid-rodriguez) but there’s a long list of people with zero in each of those categories. “I’m not going to make any value judgements about these data. Remember that open source maintainers owe you nothing,” he wrote. That said, his observation is that if he were deciding based on the principle of least privilege for access control in the Homebrew organization, based only on this data and Homebrew’s process, there would be people in all the groups of: appear they should have been removed, were removed; appear they should have been removed, were not removed; appear they should not have been removed, were removed; and appear they should not have been removed, were not removed. “This situation also highlights how funding and transparency can shape open source dynamics,” said McQuaid, who tried to broker discussions between the Ruby Gems maintainers and Ruby Central. “I’ve long believed that money is not the solution to every problem in open source. In some cases, it can create problems that wouldn’t exist otherwise.” André Arko, who helped build Bundler, also wrote a post detailing Bundler’s relationship with Ruby Central. “In the last few weeks, Ruby Central has suddenly asserted that they alone own Bundler,” he wrote. “That simply isn’t true. In order to defend the reputation of the team of maintainers who have given so much time and energy to the project, I have registered my existing trademark on the Bundler project.” He adds that trademarks do not affect copyright, which stays with the original contributors unchanged. “Trademarks only impact one thing: Who is allowed say that what they make is named ‘Bundler,’” he wrote. “Ruby Central is welcome to the code, just like everyone else. They are not welcome to the project name that the Bundler maintainers have painstakingly created over the last 15 years.” He is, however, not seeking the trademark for himself, noting that the “idea of Bundler belongs to the Ruby community.” “Once there is a Ruby organization that is accountable to the maintainers, and accountable to the community, with openly and democratically elected board members, I commit to transfer my trademark to that organization,” he said. “I will not license the trademark, and will instead transfer ownership entirely. Bundler should belong to the community, and I want to make sure that is true for as long as Bundler exists.” Astro Now Supports Async Svelte Rendering, React 19 Actions Astro 5.14 released Thursday and offers new routing tools, support for async Svelte rendering and support for React 19 actions, wrote Astro core maintainer Matt Kane. The new routing tools include prerendered route collision warnings, which make it easier to find and fix common errors in dynamic routing, according to Kane. In previous versions, when two dynamic routes such as /blog/[slug] and /blog/[…all] tried to prerender the same path (e.g. /blog/post-1 ), Astro ignored one and rendered only the highest priority route for the conflicting path. “This allowed your site to build successfully, although you may have discovered that some pages were rendered by unexpected routes,” Kane said. “Now, when this happens, a warning will be displayed explaining which routes collided and on which path.” Svelte 5.36 also incorporated experimental support for asynchronous rendering, which allows developers to use await in their components in several new places. Svelte 5.36 added experimental support for async rendering, allowing you to use await in your components in several new places. This already worked out of the box with client-rendered components, but server-rendered components needed some extra help. This update adds support for async server rendering in Svelte components used in Astro. This release also provides a new RoutePattern property that makes it easier to work with complex dynamic routes in getStaticPaths(). “This provides the original, dynamic segment definition in a routing file path (e.g. /[…locale]/[files]/[slug]) from the Astro render context that would not otherwise be available within the scope of getStaticPaths(),” Kane wrote. “This can be useful to calculate the params and props for each page route.” Finally, React 19 introduced useActionState(), a hook that lets developers update the state based on the result of a form action. “The newly-stable getActionState() and withState() functions integrate Astro Actions with useActionState(), making it easy to build progressively enhanced forms with React and Astro Actions,” Kane explained. Nuxt UI and Nuxt UI Pro Combined into Free Offering Nuxt UI v.4 released Monday, combining Next UI and Next UI Pro into one completely free library, according to the Nuxt team. Nuxt UI helps developers build professional, accessible and responsive user interfaces quickly by providing a collection of ready-to-use components. Nuxt, you’ll recall, is an open-source full stack web framework built on top of Vue.js. “What was previously a premium offering is now available to all,” the team wrote. “With over 110 components, 12 templates, and a comprehensive Figma kit, all of this is available for free.” the team wrote. The team noted that this was made possible because NuxtLabs joined Vercel in early July. The team also has refined it’s documentation, making it AI-ready. It’s informed by Nuxt’s new Model Context Protocol (MCP) server, which allows AI tools like Cursor to access component documentation and metadata directly, the team said. “In addition, we provide LLMs.txt files, a structured format that enables any AI assistant to understand our components, theming, and best practices,” they wrote. “Your AI tools now have first-class access to our entire library, right inside your editor.” Nuxt added that its AI chat components now support Vercel’s AI SDK v5.