Technical

Experienced software engineer, you have a good technical background and you want to move on, these articles are for you.

Julien Danjou

Pull Request vs. Merge Request: What's the Difference?

One of the most well-known and often-used git tools, the pull request is often also referred to as a merge request. These git-based requests are often utilized to promote cooperation and collaboration between software team members. They’re normally a required feature used by mid-sized or large teams. But what’

Julien Danjou

How Mergify Can Help With GitHub Pull Request Automation

A pull request [https://blog.mergify.com/what-is-a-pull-request/] allows a contributor to a project to experiment with new code changes without affecting the main project, then submit those changes for review. Managing pull requests can be time-consuming. You have to assign people to review code (or do it yourself), rebase

Julien Danjou

Cycle detection in PostgreSQL

A few months ago, we decided to build a referral program for Mergify [https://mergify.io]. This is a well-known, classical way of bringing more people on your product. To build this program, we add to define a data model that allowed us to store a list of referrers and

Julien Danjou

Debugging Dependabot nonworking Security Updates

Running a project requires good security practice and management. Handling the security of software passes through holding the safety of its dependencies. GitHub's answers to that have been to provide a service named Dependabot [https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates] that sends security updates to your

Mehdi Abaakouk

Converting a Python application to asyncio

As you may know, the Mergify engine is written in Python. To execute its vast number of asynchronous tasks, it was leveraging Celery, a framework providing task queues. While Celery is a prominent framework, it was not suited anymore for Mergify growth. In 2020, we decided to replace Celery with

Julien Danjou

How to serve static files from GitHub

Like many developers out there, you might use GitHub to store your source code. When you're building something pretty simple like a Web application, HTML files, JavaScript code, CSS stylesheets, etc., it could be useful to directly distribute your file through HTTP. The Naive Approach You probably tried

Julien Danjou

Batching queries with GraphQL

GraphQL has seen a booming growth over the last years. A large number of API providers are switching to this new paradigm of querying data on the Web. At Mergify [https://mergify.io], we’re no exception. To implement our automation engine, we’re heavy users of the GitHub API

Julien Danjou

Managing your GitHub pull request from the command line

At Mergify, we love providing the best tools for developers. Like many software engineers out there, we leverage GitHub to collaborate. After all, that’s how we started this! The GitHub pull request model is nice, but usually requires a lot of manual steps: 1. Forking the repository by clicking

Julien Danjou

Case Study: CPython Development Workflow

It’s no secret that Mergify is written in Python [https://python.org]. Our engine is open source [https://github.com/mergifyio] and is free for anyone to contribute to. That’s how we roll. We’ve been doing Python for a long time, and that got us close to