SShortSingh.
Back to feed

How one dev team cut redundant CI runs in a merge queue to speed up delivery

0
·2 views

A software development team found that their merge queue, adopted to speed up code delivery, was running a full test suite separately for each pull request waiting to land — meaning four queued PRs triggered four complete runs, even though the last already included the others. Their test suite comprised over 15,000 tests taking 13 to 19 minutes per run, with 93% of CI time consumed by the test step alone. The team discovered that the slowest 1% of tests — around 226 that spin up real processes and migrate databases — accounted for 41% of total test time, making simple test deletion ineffective. After moving compute to idle owned hardware, the same suite dropped from up to 16 minutes to 108 seconds. The article examines whether redundant runs in a merge queue can be safely eliminated and what approaches to stopping them are viable.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingHacker News ·

Anthropic to Cut Claude Code Usage Limits by 25% Starting September 14

Anthropic has announced that Claude Code will see its usage limits reduced by 25% effective September 14. The update was communicated via the official ClaudeDevs Twitter account. The change will affect developers and users who rely on Claude Code for programming assistance. No detailed explanation for the reduction was provided in the announcement. The news has drawn attention from the developer community, though reactions remain limited so far.

0
ProgrammingHacker News ·

Strong Workplace Culture Outperforms AI as a Productivity Driver

A piece published in the Engineering Leadership newsletter argues that organizational culture has a greater impact on productivity than artificial intelligence tools. The author contends that no technology can compensate for a dysfunctional or low-trust work environment. The article suggests that teams with strong cultural foundations tend to outperform those relying solely on technological solutions. The discussion highlights that sustainable productivity gains come from investing in people, communication, and shared values rather than tools alone.

0
ProgrammingDEV Community ·

Supabase RLS Policy Flaw Can Expose Entire Users Table to Anonymous Requests

A subtle but critical misconfiguration in Supabase Row-Level Security (RLS) policies can inadvertently expose all user profile data to unauthenticated requests. Because PostgreSQL evaluates null comparisons and boolean logic in a way that makes an unguarded policy resolve to true for anonymous callers, the anon key — which is intentionally public and ships in client bundles — can bypass intended access controls. A developer discovered this in a real app where profile data including names, timezones, and availability schedules was fully accessible via a simple curl request, despite the app redirecting signed-out users to a login page in the browser. The fix involved adding an explicit auth.uid() is not null guard to the RLS policy, ensuring anonymous sessions are blocked at the database level rather than relying on client-side redirects. For cases where anonymous users need aggregate data, the recommended approach is a security definer function that returns only computed numbers, keeping raw rows inaccessible to unauthenticated callers.

0
ProgrammingDEV Community ·

Codename One Adds Apple Watch and Wear OS Support From a Single Codebase

Open-source framework Codename One has introduced watch app support for both Apple Watch and Wear OS through a single Java or Kotlin codebase via pull request #5487. On Apple platforms, setting a watchMain entry point automatically adds a companion watch target to the existing phone build. For Wear OS, enabling the watchStandalone flag replaces the phone build with a standalone Wear OS application, though a companion Wear APK alongside the phone app is not yet supported. The update also introduces a unified phone-to-watch communication API that maps to WCSession on Apple and the Wearable Data Layer on Android, offering both persistent data sync and real-time messaging. While the phone and watch can share source files, resources, and themes, they maintain completely separate runtime state, storage, and SQLite databases.