This article explains how to set up a codespace to allow for signing git tags.
How to Sign Tags in GitHub Codespaces

This article explains how to set up a codespace to allow for signing git tags.
This post explains how to emulate a real request in a WP CLI shell so that all global variables are populated correctly — the same way as if you requested that URL in the browser.
Sometimes, when bad bots attack your site, it is convenient to look at the request headers to see if there is a signature that allows you to block them all easily.
Even though nginx does not offer any built-in means for that, you can use NJS module to log the request headers.
A site has one primary domain name and several secondary names. It also uses an object cache drop-in. Site administrators use only the primary domain for posting. All the administrative operations trigger cache updates only for the primary domain; the mirrors on the secondary domains show stale data. Site owners somehow needed to disable the object cache for all domains except the primary one.
This post shows a way to selectively disable the object cache drop-in.
Quite often, one of the most time-taking parts of the build process is the installation of dependencies. This process is traditionally slow because package managers choose stability over performance. And this perfectly makes sense: if something terrible happens, the system must remain in a usable state.
However, stability is not very important when building an image: if the build fails, the system discards the image, and you have to start over.
This post provides some tips on how to use eatmydata
to speed up some operations by the example of Debian-based images.
I once needed that to debug the issue of why ESLint was so slow, and I thought I would share this piece of information. To get the list of the files ESLint processes, set the DEBUG environment variable to eslint:cli-engine.
This post shows how to modify the name of the uploaded file while WordPress processes the upload. Renaming may be helpful if you need to implement cache-busting or, say, change the file’s name so that it matches the slug of the parent post.
Post revisions do not work out of the box for custom post types which do not support the “title” and “editor” features. This post provides the necessary steps and code samples to make post revisions work for such post types.
In this post, we implement a simple script in Node.js, which unsubscribes you from notifications from unwanted repositories in GitHub.
Ryte indexability check and Cloudflare’s Bot Fight Mode are not compatible. You have to disable either the Bot fight mode or Ryte integration.