rbx.cp 0.11.1__tar.gz → 0.11.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/PKG-INFO +1 -1
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/pyproject.toml +1 -1
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/contest/build_contest_statements.py +19 -1
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/contest/statements.py +1 -15
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/LICENSE +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/README.md +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/annotations.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/autoenum.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/builder.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/cd.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/checkers.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/cli.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/code.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/compile.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/conftest.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/contest/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/contest/contest_package.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/contest/contest_utils.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/contest/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/contest/schema.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/creation.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/deferred.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/download.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/dump_schemas.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/environment.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/extensions.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/fields.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/formatting.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/generators.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/generators_test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/git_utils.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/global_package.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/header.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/lang.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/lazy_importing_main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/lazy_importing_test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/linting.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/naming.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/package.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/boca/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/boca/extension.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/boca/packager.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/contest_main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/moj/packager.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/packager.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/pkg/packager.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/polygon/packager.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/polygon/polygon_api.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/polygon/test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/polygon/upload.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/packaging/polygon/xml_schema.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/presets/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/presets/fetch.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/presets/lock_schema.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/presets/schema.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/remote.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/retries.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/sanitizers/warning_stack.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/schema.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/setter_config.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/solutions.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/solutions_test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/state.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/build_statements.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/builders.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/expander.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/joiners.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/latex.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/latex_jinja.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/statements/schema.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/stats.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/stresses.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/stressing/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/stressing/finder_parser.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/stressing/generator_parser.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/tasks.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/testcase_extractors.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/testcase_utils.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/testcases/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/testcases/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/tooling/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/tooling/boca/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/tooling/boca/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/tooling/boca/scrape.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/tooling/boca/scraper.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/tooling/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/captured_log.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/css/app.tcss +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/build.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/command.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/differ.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/error.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/rich_log_modal.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/run.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/run_explorer.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/run_test_explorer.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/selector.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/screens/test_explorer.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/utils/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/utils/run_ui.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/widgets/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/widgets/diff_box.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/widgets/file_log.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/widgets/interaction_box.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/widgets/rich_log_box.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/widgets/test_output_box.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/ui/widgets/two_sided_test_output_box.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/unit.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/validators.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/box/validators_test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/checker.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/clone.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/config.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/conftest.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/console.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/create.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/edit.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/caching.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/conftest.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/debug_context.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/grading_context.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/cacher.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/digester.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/sandbox.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/sandboxes/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/sandboxes/isolate.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/sandboxes/stupid_sandbox.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/sandboxes/timeit.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/storage.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/judge/testiso.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/limits.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/processing_context.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/profiling.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/steps.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/steps_with_caching.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading/steps_with_caching_run_test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/grading_utils.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/hydration.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/main.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/metadata.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/providers/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/providers/codeforces.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/providers/provider.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/checkers/boilerplate.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/checkers/noop.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/default_config.json +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/default_setter_config.mac.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/default_setter_config.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/envs/default.rbx.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/envs/isolate.rbx.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/checker.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compare.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compile/c +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compile/cc +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compile/cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compile/java +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compile/kt +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compile/py2 +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/compile/py3 +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactive/c +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactive/cc +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactive/cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactive/java +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactive/kt +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactive/py2 +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactive/py3 +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactor_compile.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/interactor_run.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/bkp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/c +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/cc +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/java +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/kt +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/py2 +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/run/py3 +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/safeexec.c +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/boca/safeexec_compile.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/c/compile.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/c/prep.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/c/run.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/compare.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/cpp/compile.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/cpp/prep.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/cpp/run.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/interactor_prep.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/interactor_run.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/java/compile.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/java/prep.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/java/run.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/py2/compile.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/py2/prep.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/py2/run.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/py3/compile.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/py3/prep.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/packagers/moj/scripts/py3/run.sh +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/contest/.gitignore +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/contest/contest.rbx.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/contest/statement/contest.rbx.tex +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/contest/statement/instructions.tex +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/contest/statement/logo.png +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/env.rbx.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/preset.rbx.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/.gitignore +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/gens/gen.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/manual_tests/samples/000.in +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/manual_tests/samples/001.in +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/problem.rbx.yml +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/rbx.h +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/sols/main.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/sols/slow.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/sols/wa.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/statement/statement.rbx.tex +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/testplan/random.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/testplan/random.txt +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/validator.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/wcmp.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/shared/contest_template.rbx.tex +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/shared/icpc.sty +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/shared/problem_template.rbx.tex +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/templates/rbx.h +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/templates/template.cpp +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/run.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/schema.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/submit.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/submitors/__init__.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/submitors/codeforces.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/submitors/submitor.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/test.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/testcase.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/testcase_rendering.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/testing_utils.py +0 -0
- {rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/utils.py +0 -0
@@ -1,5 +1,6 @@
|
|
1
1
|
import dataclasses
|
2
2
|
import pathlib
|
3
|
+
import subprocess
|
3
4
|
import tempfile
|
4
5
|
import typing
|
5
6
|
from typing import Any, Dict, List, Optional, Tuple
|
@@ -211,8 +212,12 @@ def build_contest_only(
|
|
211
212
|
input_type: StatementType,
|
212
213
|
output_type: Optional[StatementType] = None,
|
213
214
|
custom_vars: Optional[Dict[str, Any]] = None,
|
215
|
+
install_tex: bool = False,
|
214
216
|
) -> Tuple[bytes, StatementType]:
|
215
217
|
console.console.print('Building contest-level statement.')
|
218
|
+
if install_tex:
|
219
|
+
output_type = StatementType.TeX
|
220
|
+
|
216
221
|
bdrs = get_builders(
|
217
222
|
contest.name,
|
218
223
|
statement.steps,
|
@@ -243,6 +248,15 @@ def build_contest_only(
|
|
243
248
|
item=get_statement_builder_contest(statement, extracted_problems),
|
244
249
|
verbose=False,
|
245
250
|
)
|
251
|
+
|
252
|
+
if install_tex and bdr.output_type() == StatementType.TeX:
|
253
|
+
console.console.log(
|
254
|
+
f'Installing LaTeX packages for [item]{statement.name} {statement.language}[/item]...'
|
255
|
+
)
|
256
|
+
subprocess.run(
|
257
|
+
['texliveonfly', output],
|
258
|
+
cwd=td,
|
259
|
+
)
|
246
260
|
last_content = output
|
247
261
|
last_output = bdr.output_type()
|
248
262
|
|
@@ -256,6 +270,7 @@ def build_statement_rooted(
|
|
256
270
|
output_type: Optional[StatementType] = None,
|
257
271
|
use_samples: bool = True,
|
258
272
|
custom_vars: Optional[Dict[str, Any]] = None,
|
273
|
+
install_tex: bool = False,
|
259
274
|
) -> Tuple[bytes, StatementType]:
|
260
275
|
# Validate.
|
261
276
|
if not statement.path.is_file():
|
@@ -290,9 +305,10 @@ def build_statement_rooted(
|
|
290
305
|
statement.type,
|
291
306
|
output_type=joiner.joined_type() if joiner is not None else output_type,
|
292
307
|
custom_vars=custom_vars,
|
308
|
+
install_tex=install_tex,
|
293
309
|
)
|
294
310
|
|
295
|
-
if joiner is None or
|
311
|
+
if joiner is None or install_tex:
|
296
312
|
return last_content, last_output
|
297
313
|
assert statement.joiner is not None
|
298
314
|
|
@@ -335,6 +351,7 @@ def build_statement(
|
|
335
351
|
output_type: Optional[StatementType] = None,
|
336
352
|
use_samples: bool = True,
|
337
353
|
custom_vars: Optional[Dict[str, Any]] = None,
|
354
|
+
install_tex: bool = False,
|
338
355
|
) -> pathlib.Path:
|
339
356
|
with tempfile.TemporaryDirectory() as td:
|
340
357
|
root = pathlib.Path(td)
|
@@ -345,6 +362,7 @@ def build_statement(
|
|
345
362
|
output_type=output_type,
|
346
363
|
use_samples=use_samples,
|
347
364
|
custom_vars=custom_vars,
|
365
|
+
install_tex=install_tex,
|
348
366
|
)
|
349
367
|
|
350
368
|
statement_path = (pathlib.Path('build') / statement.name).with_suffix(
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import subprocess
|
2
1
|
from typing import Annotated, List, Optional
|
3
2
|
|
4
3
|
import syncer
|
@@ -102,9 +101,6 @@ async def build(
|
|
102
101
|
|
103
102
|
built_statements = []
|
104
103
|
|
105
|
-
if install_tex:
|
106
|
-
output = StatementType.TeX
|
107
|
-
|
108
104
|
for statement in valid_statements:
|
109
105
|
built_statements.append(
|
110
106
|
build_statement(
|
@@ -112,23 +108,13 @@ async def build(
|
|
112
108
|
contest,
|
113
109
|
output_type=output,
|
114
110
|
use_samples=samples,
|
111
|
+
install_tex=install_tex,
|
115
112
|
custom_vars=expand_any_vars(annotations.parse_dictionary_items(vars)),
|
116
113
|
)
|
117
114
|
)
|
118
115
|
|
119
116
|
console.console.rule(title='Built statements')
|
120
117
|
for statement, built_path in zip(valid_statements, built_statements):
|
121
|
-
if install_tex:
|
122
|
-
subprocess.run(
|
123
|
-
[
|
124
|
-
'texliveonfly',
|
125
|
-
built_path,
|
126
|
-
]
|
127
|
-
)
|
128
|
-
console.console.log(
|
129
|
-
f'Installing LaTeX packages for [item]{statement.name} {statement.language}[/item]...'
|
130
|
-
)
|
131
|
-
continue
|
132
118
|
console.console.print(
|
133
119
|
f'[item]{statement.name} {statement.language}[/item] -> {href(built_path)}'
|
134
120
|
)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/contest/statement/contest.rbx.tex
RENAMED
File without changes
|
{rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/contest/statement/instructions.tex
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/manual_tests/samples/000.in
RENAMED
File without changes
|
{rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/manual_tests/samples/001.in
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/problem/statement/statement.rbx.tex
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/shared/contest_template.rbx.tex
RENAMED
File without changes
|
File without changes
|
{rbx_cp-0.11.1 → rbx_cp-0.11.2}/rbx/resources/presets/default/shared/problem_template.rbx.tex
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|