Puppeteer’s PR Parade: Pulling the Right Strings for 98 Merges and a Dash of Dependency Magic!

Rajni RetheshRajni Rethesh
5 min read

Imagine you’ve someone who can do all the web surfing for you.

You just say, 'Hey, open this website for me.’ ‘Click that button or better, fill out this form for me,’ and voilà—it does everything without you lifting a finger.

That’s what Puppeteer is all about!

It’s like having an assistant for your browser. Whether you need to test how your site works or scrape data from a ton of web pages, Puppeteer’s got your back.

Now, picture Puppeteer as Alexa or Siri, but instead of controlling your lights or answering random trivia, it controls your browser. It can open pages, click around, fill in forms, and even take screenshots—basically, anything you’d do in a web browser, Puppeteer can handle.

It’s the ultimate tool for automating all those boring, repetitive tasks that you’d usually dread doing yourself.

If Puppeteer is the ultimate tool for automating tasks, let’s see how well automated the behind-the-scenes of their own repository is! Let’s check their Dora Metrics using Middleware OSS and understand their backend working. Before going further down their engineering tunnel, let me give you a quick bit on Dora Metrics.

Dora metrics are key performance indicators that measure the efficiency and effectiveness of software delivery, focusing on deployment frequency, lead time for changes, change failure rate, and time to restore service. Learn more in the following article, What are Dora Metrics. You can also check how Middleware gives insight into your engineering productivity pipeline in the following live demo.

Now, let’s quickly check Puppeteer’s Dora Metrics and find how strong their software delivery game is.

Also read: Getting Started with Middleware Open Source

Puppeteer: A Small but Mighty Crew Shipping Big Features!

Puppeteer boasts a tight-knit community of about 502 active contributors. Recently, they’ve rolled out an impressive array of new features, including Support for Custom baseUrl, implemented by Lightning00Blade in PR #12928; Improved Precision of Paper Sizes, which enhances measurement accuracy thanks to hangyeol0531 in PR #13087; and Node 22 Support in CI, where OrKoN detailed new test environment configurations in PR #872

Team Puppeteer is making smart moves by prioritizing the enhancement of their CI/CD pipeline, dedicating about 20% of their time and effort to this task. This approach appears to be paying off, as automating repetitive tasks allows team members to focus more on rolling out new features, which currently takes up around 15% of their resources. They’re also spending approximately 25% of their time on bug fixes, but this should become more efficient once the CI/CD pipeline is fully operational.

Also read: Jenkins Dora Metrics: CI/CD Leader With High Deployments, Slower Cycle Time

Puppeteer’s PR Parade: 98 Merges and a Dash of Dependency Magic

August was a high-activity month, with 98 PRs merged, showcasing an intense development cycle and contributors tackling a variety of tasks.

Key achievements included implementing "WebDriver capabilities in puppeteer.connect"

and adding support for "AbortSignal in waitForNavigation".

Notably, a significant chunk of PRs focused on dependency management, around 35%, driven by tools like dependabot, which automates the handling of dependencies.

The average merge time for the Puppeteer repo has been lightning fast—usually around or even under an hour.

In September, it was 0.82 hours, August saw 1.4 hours, and July was just a bit higher at 2.05 hours.

This quick turnaround shows a positive progress on their efforts towards improving their CI/CD practices. Their reviewers are also on point keeping PRs from getting stuck in limbo. PRs like PR #13147 and PR #13030 back this up, where reviews and approvals were handled super quickly, leading to fast merges.

Their secret?

Well-labeled PRs, clear documentation, and automated testing.
Their cycle time was impressively consistent during July, August, and September 2024.

In July, it clocked in at 11.91 hours, dropped slightly to 10.77 hours in August, and landed at 13.86 hours in September—showing a strong and steady pace throughout. These numbers truly place them in the elite ranks of the 2023 State of DevOps Report.

Also read: How to Leverage DORA Metrics to Optimize Your CI/CD Pipeline

Where can Puppeteer Repo Show Some improvement?

Documentation: The repository should prioritize enhancing contributor engagement, and improving documentation is essential to this effort. Currently, only a meager 5% of their efforts go toward documentation updates. By investing more in this area, they can foster greater engagement and attract more contributors.

More Focus on Feature Push: Right now, the team is putting significant effort into enhancing their CI/CD pipeline, which is a smart move, especially considering their smaller community. Strengthening this foundation helps ensure smoother and more efficient software delivery, which is crucial for maintaining quality and reliability. However, to thrive in the ever-evolving software development landscape, they also need to shift some of their attention toward rolling out new features and updates.

Also read: React Native's CI/CD Unveiled: The Truth Behind Its Cycle Time Triumphs and Stumbles

Puppeteer: Pulling the Right Strings for Cycle Time and PR Success

Puppeteer demonstrates remarkable efficiency in its engineering workflows, highlighted by its impressive cycle times and the volume of merged PRs. While the team is currently focusing on strengthening their CI/CD pipeline, a balanced approach that includes pushing out new features will be key to sustaining growth in the competitive software development landscape. By continually optimizing both their infrastructure and feature set, Puppeteer is well-positioned to engage its community and maintain its relevance in an ever-evolving market.

If you are grappling through engineering dilemmas, then write to us at productivity@middlewarehq.com and we would be happy to help you provide actionable insights into your workflow or you can also try tracking your Dora metrics yourself using Middleware Open Source that too for free!

Further Resources

Middleware and Dora Metrics

Continuous Integration Guides

Dora Metrics Methodology

0
Subscribe to my newsletter

Read articles from Rajni Rethesh directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Rajni Rethesh
Rajni Rethesh

I'm a senior technical content writer with a knack for writing just about anything, but right now, I'm all about technical writing. I've been cranking out IT articles for the past decade, so I know my stuff. When I'm not geeking out over tech, you can catch me turning everyday folks into fictional characters or getting lost in a good book in my little fantasy bubble.