* Test: check game in world manifest
* Update test/general/test_world_manifest.py
Co-authored-by: Duck <31627079+duckboycool@users.noreply.github.com>
* Test: rework finding expected manifest location
* Test: fix doc comment
* Test: fix wrong custom_worlds path in test_world_manifest
Also simplifies the way we find ./worlds/.
* Test: make test_world_manifest easier to extend
* Test: check world_version in world manifest
according to docs/apworld specification.md
* Test: check no container version in source world manifest
according what was added to docs/apworld specification.md in PR 5509
* Test: better assertion messages in test_world_manifest.py
* Test: fix wording in world source manifest
---------
Co-authored-by: Duck <31627079+duckboycool@users.noreply.github.com>
* Fix webhost argparse with extra args
* accidentally added line
* WebHost: fix some typing
B64 url conversion is used in test/hosting,
so it felt appropriate to include this here.
* Test: Hosting: also test autogen
* Test: Hosting: simplify stop_* and leave a note about Windows compat
* Test: Hosting: fix formatting error
* Test: Hosting: add limitted Windows support
There are actually some differences with MP on Windows
that make it impossible to run this in CI.
---------
Co-authored-by: black-sliver <59490463+black-sliver@users.noreply.github.com>
From Discord:
Well, flask-compress updated and now our 3.11 CI is failing
Why? They switched to a lib called backports.zstd
And 3.11 pkg_resources can't handle that.
pip finds it. But in our ModuleUpdate.py, we first pkg_resources.require packages, and this fails. I can't reproduce this locally yet, but in CI, it seems like even though backports.zstd is installed, it still fails on it and prompts installing it over and over in every unit test
Now what do we do :KEKW:
Black Sliver suggested pinning flask-compress for 3.11
But I would just like to point out that this means we can't unpin it until we drop 3.11
the real thing is we probably need to move away from pkg_resources? lol
since it's been deprecated literally since the oldest version we support
* WebHost: reset Generator proc title on error
* WebHost: fix shutting down autogen
This is still not perfect but solves some of the issues.
* WebHost: properly propagate JOB_TIME
* WebHost: handle autogen shutdown
* APWorld docs: Make a distinction between APWorld and .apworld
* Update apworld specification.md
* Update apworld specification.md
* Be more anal about the launcher component
* Update apworld specification.md
* Update apworld specification.md
* FF1 Client fixes.
* Strip leading/trailing spaces from rom-stored player name.
* FF1R encodes the name as utf-8, as it happens.
* UTF-8 is four bytes per character, so we need 64 bytes for the name, not 16.
* init
* Revert "init"
This reverts commit bba6b7a306b512dc77bc04acb166f83134827f98.
* put it back but clean
* pass args
* windows stuff
* delete old exe
this seems like it?
* use marin icon in launcher
* use LauncherComponents.launch
Without `gc.freeze()` and `gc.unfreeze()` afterward, the `gc.collect()`
call within each benchmark often takes much longer than all 100_000
iterations of the location access rule, making it difficult to benchmark
all but the slowest of access rules.
This change enables using `gc.freeze()` by default.
* core: Add host.yaml setting to make !countdown configurable
* Store /option changes to countdown_mode in save file
* Wording changes in host.yaml
* Use .get
* Fix validation for /option command