Urgent.News

What's breaking now, across thousands of outlets.

Tech

Four pull requests, four full suites, one answer

While the project was small, none of this mattered. It grew, and the suite grew with it. A great many tests need a great deal of machine time, and that becomes a choice where both answers cost: run the whole suite on every pull request, or land changes by hand-rebasing each one behind the last. We took the usual way out — a cheap check on the pull request, the expensive suite once, later, where…

The article discusses the issue of running the full test suite in a merge queue, which led to slower CI times. The project grew, and the test suite grew with it, becoming a significant bottleneck. To address this, the team implemented a merge queue that runs the pre-merge suite once per batch of pull requests, not once per individual pull request.

However, the author argues that the merge queue still runs the full suite once per pull request in the group, resulting in multiple runs of the expensive suite. The article also mentions a move to a metered cloud builder to handle pull-request waves, which increased costs and moved the heavy work to owned machines. The author emphasizes that deleting tests did not help, as the suite has never shrunk, and the only way to avoid running the full suite is to run a subset of tests affected by the change.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Creepy crawlies

  • 14 CPU cores dedicated to rendering git commits as HTML across five nodes
  • Training LLM on Linux commit data prevents digital prion disease
  • Uncontrolled scraper traffic overwhelms git.kernel.org with 6M daily requests

POO: Classes Concretas

Introdução Uma classe é concreta quando está 100% implementada. Nenhum membro fica pendurado sem corpo. É por isso, e so por isso que o compilador libera o new .

  • Concrete classes fully implemented without abstract members
  • Allow 'new' usage for concrete classes in compilation
  • Contain private fields, read-only properties, static members

More from Saturday 29 August →