diff --git a/src/data/contributions.ts b/src/data/contributions.ts index 505d572..bc42d14 100644 --- a/src/data/contributions.ts +++ b/src/data/contributions.ts @@ -4,18 +4,18 @@ export const contributions: Contribution[] = [ { repo: "DarkFlippers/unleashed-firmware", emoji: "🔓", - stars: 21920, + stars: 21946, pr: 1048, desc: { en: "The EMV parser took each TLV length straight off the card, so tapping a crafted card wrote past several fixed-size fields and a stack buffer.", es: "El parser EMV tomaba la longitud de cada TLV directamente de la tarjeta, así que acercar una tarjeta manipulada escribía más allá de varios campos de tamaño fijo y de un buffer de pila.", }, - state: "open", + state: "merged", }, { repo: "DarkFlippers/unleashed-firmware", emoji: "🔓", - stars: 21920, + stars: 21946, pr: 1049, desc: { en: "A reader writing to the emulated NFC tag at offset 1 shifted the stored payload by a byte and spliced in a stale byte from the previous frame.", @@ -26,7 +26,7 @@ export const contributions: Contribution[] = [ { repo: "Next-Flip/Momentum-Firmware", emoji: "⚡", - stars: 8941, + stars: 8960, pr: 573, desc: { en: "The same unbounded EMV lengths as the unleashed fix, except here the stack overflow is not compiled out of the release builds the project ships.", @@ -37,7 +37,7 @@ export const contributions: Contribution[] = [ { repo: "Next-Flip/Momentum-Firmware", emoji: "⚡", - stars: 8941, + stars: 8960, pr: 574, desc: { en: "The Type 4 Tag write fix, ported to the byte-identical copy of the file this firmware carries.", @@ -48,7 +48,7 @@ export const contributions: Contribution[] = [ { repo: "vitessio/vitess", emoji: "🐬", - stars: 21171, + stars: 21176, pr: 20700, desc: { en: "A sharded query with EXISTS inside a CASE silently dropped half of its WHERE clause and returned the wrong rows.", @@ -59,7 +59,7 @@ export const contributions: Contribution[] = [ { repo: "vitessio/vitess", emoji: "🐬", - stars: 21171, + stars: 21176, pr: 20701, desc: { en: "An outer join against a reference table returned every preserved row once per shard instead of once.", @@ -70,7 +70,7 @@ export const contributions: Contribution[] = [ { repo: "traefik/yaegi", emoji: "🐹", - stars: 8342, + stars: 8347, pr: 1729, desc: { en: "A constant condition in an if or for statement crashed the interpreter instead of reporting a compile error, taking down any program embedding it.", @@ -81,7 +81,7 @@ export const contributions: Contribution[] = [ { repo: "traefik/yaegi", emoji: "🐹", - stars: 8342, + stars: 8347, pr: 1730, desc: { en: "Using a package name as a value crashed the interpreter five different ways, and inside a return statement it raised no error at all and ran.", @@ -92,7 +92,7 @@ export const contributions: Contribution[] = [ { repo: "tobymao/sqlglot", emoji: "🧩", - stars: 9469, + stars: 9486, pr: 7969, desc: { en: "DuckDB was modelled as returning NULL on division by zero, but it follows IEEE 754 and returns inf, so transpiled queries diverged.", @@ -103,7 +103,7 @@ export const contributions: Contribution[] = [ { repo: "fonttools/fonttools", emoji: "🔠", - stars: 5180, + stars: 5186, pr: 4137, desc: { en: "Instancing a variable font left the BASE table untouched, so instances kept the default baselines and a dangling variation store.", @@ -114,7 +114,7 @@ export const contributions: Contribution[] = [ { repo: "MatthewKuKanich/FindMyFlipper", emoji: "📍", - stars: 2170, + stars: 2172, pr: 144, desc: { en: "An infinite 2FA loop blocked report fetching: the anisette device identity was partly overwritten with random UUIDs. Behind seven reported issues.",