Handheld-Database / handheld-database

A handheld game console database
MIT License
4 stars 2 forks source link

Migrate to architecture 2.0 #23

Open ogregorio opened 1 month ago

ogregorio commented 1 month ago

The current architecture does not support adding multiple reviews to individual files. In the next version, this functionality will be introduced as a breaking change, requiring all related applications to be reviewed. Additionally, there will be automatic index generation and support for calculating scores for all new entries.

meeeaCH commented 1 month ago

So I tried the changes. I don't get how it works now.

What I did:

First I tried to add a new game as a test like I did before. ( python ./tools/new_file.py new game tsp psp "game_name" ), I got an error about the PATH to .CSV file. I made one to try it like that, added the same number of columns like the arguments. ( python ./tools/new_file.py new game "PATH to my .CSV file" "my_steamgridID" )

I checked the code in the new_file.py the part where the create_game is called and the game.py, they have different number of arguments. I assume this is because of the migration.

First test:

With this input: python .\tools\new_file.py new game tsp psp "test" The error I got:

Second test:

With this input: python .\tools\new_file.py new game .\test.meeeaCH.csv my_steamgrid_key The error I got:

The error comes from the game.py file, line 186. "" with open(csv_file_path, 'r') as csvfile: ""

About the changes:

In the architecture 2.0, how will we able to contribute? Will it be an import process from .CSV file, this process will make the .MD file that the index_game.py uses? And the game.py will make the other files automatically (making the overviews and images)?

ogregorio commented 1 month ago

I need to revise the scripts, and this revision will simplify the process.

Now, we only need to create two files for each game in the root game directory of the selected system, following this pattern: gamekey.user.md and gamekey.json, with the following content in the JSON file:

{
  "name": "Game Name",
  "key": "gamename"
}

The overview process and game image process will remain the same as in the last architectural revision.

Everything else will be automated after a new PR.

ogregorio commented 1 month ago

The script has been fixed, please try again.

meeeaCH commented 1 month ago

It works as it did before.