diff --git a/.gitignore b/.gitignore
index 2edc11460..ccfc4b140 100644
--- a/.gitignore
+++ b/.gitignore
@@ -58,4 +58,3 @@ frontend/dev-dist
# outside data
switch_titledb.json
switch_product_ids.json
-mame.xml
diff --git a/README.md b/README.md
index dbb881178..5505e50a9 100644
--- a/README.md
+++ b/README.md
@@ -31,7 +31,7 @@ RomM (ROM Manager) allows you to scan, enrich, and browse your game collection w
- Supports a large number of **[platforms][platform-support]**
- Play games directly from the browser using [EmulatorJS][wiki-emulatorjs-url]
- Share your library with friend while [limiting access and permissions][authentication]
-- Supports [MAME][mame-xml-update], [Nintendo Switch][switch-titledb-update] and PS2 naming schemes
+- Supports MAME, Nintendo Switch, and Sony Playstation naming schemes
- Detects and groups **multifile games** (e.g. PS1 games with multiple CDs)
- Can [parse tags][tag-support] in filenames (e.g. (E), (USA), (rev v1), etc.)
- View, upload, update, and delete games from any modern web browser
@@ -179,8 +179,6 @@ Here are a few projects that we think you might like:
[platform-support]: #-platform-support
[authentication]: #-authentication
[tag-support]: #-tag-support
-[switch-titledb-update]: #-switch-titledb-update
-[mame-xml-update]: #-mame-xml-update
[configuration-file]: #-configuration-file
diff --git a/backend/config/__init__.py b/backend/config/__init__.py
index be9afa536..d95a7b393 100644
--- a/backend/config/__init__.py
+++ b/backend/config/__init__.py
@@ -79,10 +79,3 @@ SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON: Final = os.environ.get(
"SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON",
"0 4 * * *", # At 4:00 AM every day
)
-ENABLE_SCHEDULED_UPDATE_MAME_XML: Final = (
- os.environ.get("ENABLE_SCHEDULED_UPDATE_MAME_XML", "false") == "true"
-)
-SCHEDULED_UPDATE_MAME_XML_CRON: Final = os.environ.get(
- "SCHEDULED_UPDATE_MAME_XML_CRON",
- "0 5 * * *", # At 5:00 AM every day
-)
diff --git a/backend/endpoints/heartbeat.py b/backend/endpoints/heartbeat.py
index 6efa8b5ba..20c016aa0 100644
--- a/backend/endpoints/heartbeat.py
+++ b/backend/endpoints/heartbeat.py
@@ -1,11 +1,9 @@
from config import (
ENABLE_RESCAN_ON_FILESYSTEM_CHANGE,
ENABLE_SCHEDULED_RESCAN,
- ENABLE_SCHEDULED_UPDATE_MAME_XML,
ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB,
RESCAN_ON_FILESYSTEM_CHANGE_DELAY,
SCHEDULED_RESCAN_CRON,
- SCHEDULED_UPDATE_MAME_XML_CRON,
SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON,
)
from endpoints.responses.heartbeat import HeartbeatResponse
@@ -51,11 +49,5 @@ def heartbeat() -> HeartbeatResponse:
"TITLE": "Scheduled Switch TitleDB update",
"MESSAGE": "Updates the Nintedo Switch TitleDB file",
},
- "MAME_XML": {
- "ENABLED": ENABLE_SCHEDULED_UPDATE_MAME_XML,
- "CRON": SCHEDULED_UPDATE_MAME_XML_CRON,
- "TITLE": "Scheduled MAME XML update",
- "MESSAGE": "Updates the MAME XML file",
- },
}
}
diff --git a/backend/endpoints/responses/heartbeat.py b/backend/endpoints/responses/heartbeat.py
index 26d0f2c2a..94b0624ef 100644
--- a/backend/endpoints/responses/heartbeat.py
+++ b/backend/endpoints/responses/heartbeat.py
@@ -14,7 +14,6 @@ class TaskDict(WatcherDict):
class SchedulerDict(TypedDict):
RESCAN: TaskDict
SWITCH_TITLEDB: TaskDict
- MAME_XML: TaskDict
class MetadataSourcesDict(TypedDict):
diff --git a/backend/endpoints/tasks.py b/backend/endpoints/tasks.py
index 3ea7a731e..291b92784 100644
--- a/backend/endpoints/tasks.py
+++ b/backend/endpoints/tasks.py
@@ -1,7 +1,6 @@
from decorators.auth import protected_route
from endpoints.responses import MessageResponse
from fastapi import APIRouter, Request
-from tasks.update_mame_xml import update_mame_xml_task
from tasks.update_switch_titledb import update_switch_titledb_task
router = APIRouter()
@@ -33,7 +32,6 @@ async def run_task(request: Request, task: str) -> MessageResponse:
"""
tasks = {
- "mame": update_mame_xml_task,
"switch_titledb": update_switch_titledb_task
}
diff --git a/backend/endpoints/tests/test_heartbeat.py b/backend/endpoints/tests/test_heartbeat.py
index d699ec281..a8161e5b2 100644
--- a/backend/endpoints/tests/test_heartbeat.py
+++ b/backend/endpoints/tests/test_heartbeat.py
@@ -20,6 +20,3 @@ def test_heartbeat():
assert heartbeat.get('SCHEDULER').get('SWITCH_TITLEDB').get('ENABLED')
assert heartbeat.get('SCHEDULER').get('SWITCH_TITLEDB').get('CRON') == "0 4 * * *"
assert heartbeat.get('SCHEDULER').get('SWITCH_TITLEDB').get('TITLE') == "Scheduled Switch TitleDB update"
- assert heartbeat.get('SCHEDULER').get('MAME_XML').get('ENABLED')
- assert heartbeat.get('SCHEDULER').get('MAME_XML').get('CRON') == "0 5 * * *"
- assert heartbeat.get('SCHEDULER').get('MAME_XML').get('TITLE') == "Scheduled MAME XML update"
diff --git a/backend/handler/metadata_handler/__init__.py b/backend/handler/metadata_handler/__init__.py
index 3882d5a4c..9e2cd813e 100644
--- a/backend/handler/metadata_handler/__init__.py
+++ b/backend/handler/metadata_handler/__init__.py
@@ -5,7 +5,6 @@ import re
import unicodedata
from typing import Final
from logger.logger import log
-from tasks.update_mame_xml import update_mame_xml_task
from tasks.update_switch_titledb import update_switch_titledb_task
@@ -183,20 +182,8 @@ class MetadataHandler:
async def _mame_format(self, search_term: str) -> str:
from handler import fs_rom_handler
- mame_index = {"menu": {"game": []}}
-
- try:
- with open(MAME_XML_FILE, "r") as index_xml:
- mame_index = xmltodict.parse(index_xml.read())
- except FileNotFoundError:
- log.warning("Fetching the MAME XML file from Github...")
- await update_mame_xml_task.run(force=True)
- try:
- with open(MAME_XML_FILE, "r") as index_xml:
- mame_index = xmltodict.parse(index_xml.read())
- except FileNotFoundError:
- log.error("Could not fetch the MAME XML file from Github")
- finally:
+ with open(MAME_XML_FILE, "r") as index_xml:
+ mame_index = xmltodict.parse(index_xml.read())
index_entry = [
game
for game in mame_index["menu"]["game"]
diff --git a/backend/handler/metadata_handler/fixtures/mame.xml b/backend/handler/metadata_handler/fixtures/mame.xml
new file mode 100644
index 000000000..fc6ec3162
--- /dev/null
+++ b/backend/handler/metadata_handler/fixtures/mame.xml
@@ -0,0 +1,172879 @@
+
+
\ No newline at end of file
diff --git a/backend/scheduler.py b/backend/scheduler.py
index c2433625e..857f6252b 100644
--- a/backend/scheduler.py
+++ b/backend/scheduler.py
@@ -1,6 +1,5 @@
from logger.logger import log
from tasks.scan_library import scan_library_task
-from tasks.update_mame_xml import update_mame_xml_task
from tasks.update_switch_titledb import update_switch_titledb_task
from tasks.tasks import tasks_scheduler
@@ -8,7 +7,6 @@ if __name__ == "__main__":
# Initialize the tasks
scan_library_task.init()
update_switch_titledb_task.init()
- update_mame_xml_task.init()
log.info("Starting scheduler")
diff --git a/backend/tasks/update_mame_xml.py b/backend/tasks/update_mame_xml.py
deleted file mode 100644
index 6aeb45322..000000000
--- a/backend/tasks/update_mame_xml.py
+++ /dev/null
@@ -1,25 +0,0 @@
-import os
-from pathlib import Path
-from typing import Final
-
-from config import ENABLE_SCHEDULED_UPDATE_MAME_XML, SCHEDULED_UPDATE_MAME_XML_CRON
-from tasks.tasks import RemoteFilePullTask
-
-FIXTURE_FILE_PATH: Final = (
- Path(os.path.dirname(__file__)).parent / "handler" / "metadata_handler" / "fixtures" / "mame.xml"
-)
-
-
-class UpdateMAMEXMLTask(RemoteFilePullTask):
- def __init__(self):
- super().__init__(
- func="tasks.update_mame_xml.update_mame_xml_task.run",
- description="mame xml update",
- enabled=ENABLE_SCHEDULED_UPDATE_MAME_XML,
- cron_string=SCHEDULED_UPDATE_MAME_XML_CRON,
- url="https://gist.githubusercontent.com/gantoine/0e2b9e25962bfd661ad2fe0ba0e72766/raw/gistfile1.txt",
- file_path=FIXTURE_FILE_PATH,
- )
-
-
-update_mame_xml_task = UpdateMAMEXMLTask()
diff --git a/env.template b/env.template
index 3839c4517..87caeaa07 100644
--- a/env.template
+++ b/env.template
@@ -35,5 +35,3 @@ ENABLE_SCHEDULED_RESCAN=true
SCHEDULED_RESCAN_CRON=0 3 * * *
ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB=true
SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON=0 4 * * *
-ENABLE_SCHEDULED_UPDATE_MAME_XML=true
-SCHEDULED_UPDATE_MAME_XML_CRON=0 5 * * *
diff --git a/frontend/src/__generated__/models/SchedulerDict.ts b/frontend/src/__generated__/models/SchedulerDict.ts
index 85c5b13f3..d48121734 100644
--- a/frontend/src/__generated__/models/SchedulerDict.ts
+++ b/frontend/src/__generated__/models/SchedulerDict.ts
@@ -8,6 +8,5 @@ import type { TaskDict } from './TaskDict';
export type SchedulerDict = {
RESCAN: TaskDict;
SWITCH_TITLEDB: TaskDict;
- MAME_XML: TaskDict;
};
diff --git a/pytest.ini b/pytest.ini
index aeab33a3b..e0021ca02 100644
--- a/pytest.ini
+++ b/pytest.ini
@@ -13,8 +13,6 @@ env =
ENABLE_RESCAN_ON_FILESYSTEM_CHANGE=true
ENABLE_SCHEDULED_RESCAN=true
ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB=true
- ENABLE_SCHEDULED_UPDATE_MAME_XML=true
RESCAN_ON_FILESYSTEM_CHANGE_DELAY=5
SCHEDULED_RESCAN_CRON=0 3 * * *
SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON=0 4 * * *
- SCHEDULED_UPDATE_MAME_XML_CRON=0 5 * * *
diff --git a/unraid_template/romm.xml b/unraid_template/romm.xml
index 9ad97df4b..c687a2cb5 100644
--- a/unraid_template/romm.xml
+++ b/unraid_template/romm.xml
@@ -49,6 +49,4 @@
-
-