Skip to content

Instantly share code, notes, and snippets.

View gabizou's full-sized avatar

Gabriel Harris-Rouquette gabizou

View GitHub Profile
@jonymusky
jonymusky / replayconf-2024.md
Last active December 13, 2024 19:32
Conference Replay2024 - Temporal.io
@jingyi2318
jingyi2318 / resources.md
Last active September 26, 2024 22:03
[Replay 2024] Resources from Replay Safety at Datadog
@SizableShrimp
SizableShrimp / README.md
Last active April 21, 2025 19:37
How to use the Game Test Framework on Forge

Game Test Framework on Forge

The Game Test Framework is a powerful tool provided by Mojang that is included with Minecraft in 1.17 and up. It allows you to declare game tests that can be run inside a Minecraft world and provide a success or fail state. Game tests are similar in concept to unit tests, but they allow you to interact with a running instance of Minecraft. This means you can test block interactions, entity interactions, item functionality, etc. Game tests use template structures to define the dimensions of the test and what blocks and entities will start in the test structure. This framework has useful applications for Continuous Integration (CI) and testing during development to ensure features are working as expected.

For a more in-depth explanation about the Game Test Framework itself and how Mojang uses it to test the base game, please see this video with contributions by Dinnerbone. This guide is tailored towards Forge modders by expla

@dimo414
dimo414 / _README.md
Last active February 25, 2025 23:44
Bash array expansion patterns for use with -u

Expanding Bash arrays safely with set -u

Prior to Bash 4.4 set -u treated empty arrays as "unset", and terminates the process. There are a number of possible workarounds using array parameter expansion, however almost all of them fail in certain Bash versions.

This gist is a supplement to this StackOverflow post.

@sualeh
sualeh / how_to_sign_and_release_to_the_central_repository_with_github_actions.md
Last active July 6, 2025 08:37
How to Sign and Release to The Central Repository with GitHub Actions

How to Sign and Release to The Central Repository with GitHub Actions

GitHub allows automated builds using GitHub Actions. A commonly asked question is how to release artifacts (packaged Java jars) built by Maven and Gradle to The Central Repository. The GitHub Actions documentation provides only part of the answer.

So, first, configure your Maven project for staging artifacts to The Central Repository, by reading through Configuring Your Project for Deployment and following those steps. Please make sure that the maven-gpg-plugin is configured to prevent gpg from using PIN entry programs, as follows:

<configuration>
  <gpgArguments>
      <arg>--pinentry-mode</arg>
 loopback
@williewillus
williewillus / 1132_to_114.xml
Last active September 24, 2024 10:24
1.13.2 -> 1.14 migration mappings
<?xml version="1.0" encoding="UTF-8"?>
<migrationMap>
<name value="1.13.2 to 1.14" />
<description value="1.13.2 to 1.14 MCP changes" />
<entry oldName="net.minecraft.GameVersion" newName="net.minecraft.util.MinecraftVersion" type="class" />
<entry oldName="net.minecraft.advancements.AdvancementList.Listener" newName="net.minecraft.advancements.AdvancementList.IListener" type="class" />
<entry oldName="net.minecraft.advancements.RequirementsStrategy" newName="net.minecraft.advancements.IRequirementsStrategy" type="class" />
<entry oldName="net.minecraft.advancements.criterion.AbstractCriterionInstance" newName="net.minecraft.advancements.criterion.CriterionInstance" type="class" />
<entry oldName="net.minecraft.block.Block.EnumOffsetType" newName="net.minecraft.block.Block.OffsetType" type="class" />
<entry oldName="net.minecraft.block.BlockAbstractBanner" newName="net.minecraft.block.AbstractBannerBlock" type="class" />
@Deamon5550
Deamon5550 / Summary.md
Last active August 14, 2016 17:15
Sponge Event Benchmarking

All Tests were performed with 20 warmup iterations of 10000 cycles and 40 benchmarking iterations of 50000 cycles. Times are all in milliseconds.

These arguments were choosen such that the GC pauses would be long, but infrequent. VM arguments: -verbose:gc -Xbatch -XX:CICompilerCount=1 -XX:-TieredCompilation -Xmx10G -Xms10G -XX:+UseG1GC -XX:MaxGCPauseMillis=500 -XX:InitiatingHeapOccupancyPercent=80

Guava:

@wangruohui
wangruohui / Install NVIDIA Driver and CUDA.md
Last active May 7, 2025 16:40
Install NVIDIA Driver and CUDA on Ubuntu / CentOS / Fedora Linux OS
@Deamon5550
Deamon5550 / SchematicReader.java
Last active May 8, 2019 20:28
Schematic format analysis
package com.thevoxelbox.stats;
import com.thevoxelbox.stats.StatsGatherer.Schematic;
import org.jnbt.ByteArrayTag;
import org.jnbt.CompoundTag;
import org.jnbt.NBTInputStream;
import org.jnbt.ShortTag;
import org.jnbt.Tag;
import java.io.File;
@jomo
jomo / Minecraft Accounts.md
Last active May 31, 2025 01:10
Tracking down Minecraft account creation

Tracks down when a Minecraft account was created.

How it works

Mojang has an API endpoint for usernames:

https://api.mojang.com/users/profiles/minecraft/<name>?at=<timestamp>

It can be used to find the UUID of an account, by username it used at the given time.
It returns either 200 OK or 204 No Content – indicating that the username was not in use at the time.