Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
20 changes: 20 additions & 0 deletions app/validate.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,13 @@
"verified",
}

GAME_REQUIRED = {
"slug",
"name",
"source_urls",
"verified",
}

DATE_RE = re.compile(r"^\d{4}-\d{2}-\d{2}$")


Expand Down Expand Up @@ -229,6 +236,7 @@ def validate() -> list[str]:
cpus = _load("cpu")
laptops = _load("laptop")
monitors = _load("monitor")
games = _load("game")

brand_slugs = {rec["slug"] for _, rec in brands if "slug" in rec}
soc_slugs = {rec["slug"] for _, rec in socs if "slug" in rec}
Expand All @@ -246,6 +254,7 @@ def validate() -> list[str]:
("cpu", cpus),
("laptop", laptops),
("monitor", monitors),
("game", games),
):
_check_unique_slugs(category, records, errors)

Expand Down Expand Up @@ -397,6 +406,17 @@ def validate() -> list[str]:
errors.append(f"{fname}: brand '{rec.get('brand')}' not a known brand")
_check_variant_path(fname, rec, "monitor", errors, allow_flat=True)

for fname, rec in games:
_check_required(fname, rec, GAME_REQUIRED, errors)
_check_source_urls(fname, rec, errors)
_check_slug(fname, rec.get("slug"), errors)
if rec.get("release_date") is not None:
_check_date(fname, rec["release_date"], errors)
if rec.get("rating") is not None:
_check_range(fname, "rating", rec.get("rating"), 0, 5, errors)
if rec.get("metacritic") is not None:
_check_range(fname, "metacritic", rec.get("metacritic"), 0, 100, errors)

return errors


Expand Down
8 changes: 8 additions & 0 deletions data/game/0-/0-99-skarbiec.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"slug": "0-99-skarbiec",
"name": "0-99 (Skarbiec)",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q126188192"
]
}
25 changes: 25 additions & 0 deletions data/game/0-/0-a-d.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"slug": "0-a-d",
"name": "0 A.D.",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q161234"
],
"release_date": "2021-02-21",
"platforms": [
"Berkeley Software Distribution",
"macOS",
"Microsoft Windows"
],
"genres": [
"real-time strategy",
"historical video game"
],
"developers": [
"Stanislas Dolcini",
"Wildfire Games"
],
"publishers": [
"Wildfire Games"
]
}
12 changes: 12 additions & 0 deletions data/game/0-/0-abyssalsomewhere.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"slug": "0-abyssalsomewhere",
"name": "0_abyssalSomewhere",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q116600557"
],
"release_date": "2018-07-12",
"platforms": [
"Microsoft Windows"
]
}
12 changes: 12 additions & 0 deletions data/game/0-/0-day-attack-on-earth.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"slug": "0-day-attack-on-earth",
"name": "0 Day Attack on Earth",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q5949313"
],
"release_date": "2009-12-23",
"genres": [
"action game"
]
}
12 changes: 12 additions & 0 deletions data/game/0-/0-day.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"slug": "0-day",
"name": "0 Day",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q116600558"
],
"release_date": "2016-11-15",
"platforms": [
"Microsoft Windows"
]
}
12 changes: 12 additions & 0 deletions data/game/0-/0-degrees.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"slug": "0-degrees",
"name": "0 Degrees",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q126974839"
],
"release_date": "2021-05-19",
"publishers": [
"Eastasiasoft"
]
}
13 changes: 13 additions & 0 deletions data/game/0-/0-ji-no-kane-to-cinderella-halloween-wedding.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"slug": "0-ji-no-kane-to-cinderella-halloween-wedding",
"name": "0-Ji no Kane to Cinderella: Halloween Wedding",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q11184904"
],
"release_date": "2013-01-01",
"genres": [
"visual novel",
"otome game"
]
}
8 changes: 8 additions & 0 deletions data/game/0-/0-kara-no-shogi-shogi-youchien-ayumi-gumi.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"slug": "0-kara-no-shogi-shogi-youchien-ayumi-gumi",
"name": "0 Kara no Shogi - Shogi Youchien Ayumi-Gumi",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q124430627"
]
}
17 changes: 17 additions & 0 deletions data/game/0-/0-n-0-w.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"slug": "0-n-0-w",
"name": "0°N 0°W",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q115193643"
],
"release_date": "2018-03-01",
"platforms": [
"macOS",
"Microsoft Windows"
],
"genres": [
"adventure video game",
"casual game"
]
}
14 changes: 14 additions & 0 deletions data/game/0-/0-world-td.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"slug": "0-world-td",
"name": "0 World TD",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q135022612"
],
"platforms": [
"Microsoft Windows"
],
"genres": [
"strategy video game"
]
}
12 changes: 12 additions & 0 deletions data/game/00/0000.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"slug": "0000",
"name": "0000",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q116600559"
],
"release_date": "2017-04-03",
"platforms": [
"Microsoft Windows"
]
}
15 changes: 15 additions & 0 deletions data/game/00/000000ff0000.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"slug": "000000ff0000",
"name": "000000FF0000",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q116600560"
],
"release_date": "2015-05-27",
"platforms": [
"Microsoft Windows"
],
"developers": [
"Kitty Horrorshow"
]
}
14 changes: 14 additions & 0 deletions data/game/00/0008-the-story.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"slug": "0008-the-story",
"name": "0008: The Story",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q124130659"
],
"platforms": [
"Microsoft Windows"
],
"genres": [
"visual novel"
]
}
18 changes: 18 additions & 0 deletions data/game/00/001-earth.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"slug": "001-earth",
"name": "001 Earth",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q122824846"
],
"release_date": "2022-03-31",
"platforms": [
"Microsoft Windows"
],
"genres": [
"adventure video game",
"action game",
"action-adventure game",
"casual game"
]
}
15 changes: 15 additions & 0 deletions data/game/00/0010100.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"slug": "0010100",
"name": "0010100",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q135047487"
],
"release_date": "2024-03-15",
"platforms": [
"Microsoft Windows"
],
"genres": [
"simulation video game"
]
}
22 changes: 22 additions & 0 deletions data/game/00/005.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"slug": "005",
"name": "005",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q4545526"
],
"release_date": "1981-01-01",
"platforms": [
"arcade video game machine"
],
"genres": [
"stealth game",
"maze video game"
],
"developers": [
"Sega"
],
"publishers": [
"Sega"
]
}
15 changes: 15 additions & 0 deletions data/game/00/007-aqua-base.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"slug": "007-aqua-base",
"name": "007: Aqua Base",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q114340286"
],
"release_date": "1982-01-01",
"platforms": [
"Texas Instruments TI-99/4A"
],
"genres": [
"adventure video game"
]
}
11 changes: 11 additions & 0 deletions data/game/00/007-ice-racer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"slug": "007-ice-racer",
"name": "007 Ice Racer",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q105958557"
],
"platforms": [
"mobile phone"
]
}
23 changes: 23 additions & 0 deletions data/game/00/007-legends.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"slug": "007-legends",
"name": "007 Legends",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q161192"
],
"release_date": "2012-10-16",
"platforms": [
"Wii U",
"PlayStation 3",
"Microsoft Windows"
],
"genres": [
"first-person shooter"
],
"developers": [
"Eurocom"
],
"publishers": [
"Activision"
]
}
25 changes: 25 additions & 0 deletions data/game/00/007-licence-to-kill.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"slug": "007-licence-to-kill",
"name": "007: Licence to Kill",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q55538"
],
"release_date": "1989-04-20",
"platforms": [
"MSX",
"BBC Micro",
"Atari ST",
"Amstrad CPC",
"Commodore Amiga",
"DOS",
"Commodore 64",
"ZX Spectrum"
],
"genres": [
"shoot 'em up"
],
"publishers": [
"Domark Software"
]
}
15 changes: 15 additions & 0 deletions data/game/00/007-nightfire.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"slug": "007-nightfire",
"name": "007: Nightfire",
"verified": false,
"source_urls": [
"https://www.wikidata.org/wiki/Q117358171"
],
"release_date": "2003-03-28",
"platforms": [
"Game Boy Advance"
],
"developers": [
"JV Games"
]
}
Loading