Benezivas / algobattle

Let teams compete by making them create hard instances and fast solvers for problems of your choice. Then pitch these instances and solvers against one another. All language-agnostic.
https://algobattle.org
MIT License
8 stars 3 forks source link

Add problem packaging #133

Closed ImogenBits closed 1 year ago

ImogenBits commented 1 year ago

This moves the algobattle package command to algobattle package problem and adds algobattle package programs. The latter just zips up the programs into zipfiles compatible with our matches. In order to make all this a lot simpler this also simplifies the algobattle config structure a little. The old

[match]
problem = "Some Problem"
# ...

[problems."Some Problem"]
location = "problem.py"

now simply is

[match]
problem = "Some Problem"
# ...

[problem]
location = "problem.py"

And since "problem.py" now is the default location we can just do

[match]
problem = "Some Problem"
# ...

the vast majority of the time now.