rbx.cp 0.17.3__tar.gz → 0.17.5__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.17.3 → rbx_cp-0.17.5}/PKG-INFO +1 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/pyproject.toml +1 -1
- rbx_cp-0.17.5/rbx/__version__.py +1 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/cli.py +8 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/package.py +1 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/stresses.py +4 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/stressing/generator_parser.py +1 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/boca/scraper.py +2 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/unit.py +2 -2
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/sandbox.py +1 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/storage.py +1 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/preset.rbx.yml +1 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/utils.py +13 -0
- rbx_cp-0.17.3/rbx/__version__.py +0 -1
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/LICENSE +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/README.md +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/annotations.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/autoenum.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/builder.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/cd.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/checkers.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/code.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/compile.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/contest/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/contest/build_contest_statements.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/contest/contest_package.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/contest/contest_utils.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/contest/main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/contest/schema.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/contest/statements.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/creation.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/deferred.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/download.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/dump_schemas.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/environment.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/extensions.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/fields.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/formatting.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/generators.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/git_utils.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/global_package.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/header.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/lang.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/lazy_importing_main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/limits_info.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/linting.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/naming.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/boca/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/boca/boca_language_utils.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/boca/boca_outcome_utils.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/boca/extension.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/boca/packager.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/contest_main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/importer.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/moj/packager.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/packager.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/pkg/packager.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/polygon/importer.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/polygon/packager.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/polygon/polygon_api.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/polygon/test.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/polygon/upload.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/packaging/polygon/xml_schema.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/presets/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/presets/fetch.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/presets/lock_schema.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/presets/schema.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/remote.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/retries.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/sanitizers/issue_stack.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/sanitizers/warning_stack.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/schema.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/setter_config.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/solutions.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/state.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/build_statements.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/builders.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/expander.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/joiners.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/latex.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/latex_jinja.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/statements/schema.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/stats.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/stressing/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/stressing/finder_parser.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tasks.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testcase_extractors.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testcase_utils.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testcases/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testcases/main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testing/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testing/testing_package.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testing/testing_preset.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/testing/testing_shared.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/timing.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/boca/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/boca/debug_utils.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/boca/main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/boca/manual_scrape.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/boca/scrape.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/converter.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/tooling/main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/captured_log.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/css/app.tcss +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/main.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/build.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/command.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/differ.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/error.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/rich_log_modal.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/run.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/run_explorer.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/run_test_explorer.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/selector.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/screens/test_explorer.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/utils/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/utils/run_ui.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/widgets/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/widgets/diff_box.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/widgets/file_log.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/widgets/interaction_box.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/widgets/rich_log_box.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/widgets/test_output_box.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/ui/widgets/two_sided_test_output_box.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/box/validators.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/config.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/console.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/caching.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/debug_context.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/grading_context.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/cacher.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/digester.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/program.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/sandboxes/__init__.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/sandboxes/stupid_sandbox.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/judge/sandboxes/tee.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/limits.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/profiling.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/steps.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/grading/steps_with_caching.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/checkers/boilerplate.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/checkers/noop.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/default_config.json +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/default_setter_config.mac.yml +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/default_setter_config.yml +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/envs/default.rbx.yml +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/checker.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compare.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compile/c +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compile/cc +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compile/cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compile/java +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compile/kt +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compile/py2 +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/compile/py3 +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactive/c +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactive/cc +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactive/cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactive/java +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactive/kt +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactive/py2 +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactive/py3 +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactor_compile.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/interactor_run.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/bkp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/c +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/cc +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/java +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/kt +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/py2 +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/run/py3 +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/safeexec.c +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/boca/safeexec_compile.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/c/compile.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/c/prep.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/c/run.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/compare.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/cpp/compile.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/cpp/prep.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/cpp/run.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/interactor_prep.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/interactor_run.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/java/compile.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/java/prep.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/java/run.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/py2/compile.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/py2/prep.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/py2/run.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/py3/compile.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/py3/prep.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/packagers/moj/scripts/py3/run.sh +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/.gitignore +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/contest.rbx.yml +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/statement/contest.rbx.tex +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/statement/info.rbx.tex +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/statement/instructions.tex +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/statement/logo.png +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/env.rbx.yml +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/.gitignore +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/gens/gen.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/manual_tests/samples/000.in +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/manual_tests/samples/001.in +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/problem.rbx.yml +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/rbx.h +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/sols/main.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/sols/wa-overflow.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/statement/statement.rbx.tex +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/testlib.h +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/testplan/random.py +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/testplan/random.txt +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/validator.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/wcmp.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/shared/contest_template.rbx.tex +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/shared/icpc.sty +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/shared/problem_template.rbx.tex +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/templates/rbx.h +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/templates/template.cpp +0 -0
- {rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/testing_utils.py +0 -0
@@ -0,0 +1 @@
|
|
1
|
+
__version__ = '0.17.5'
|
@@ -673,6 +673,13 @@ async def stress(
|
|
673
673
|
'-d',
|
674
674
|
help='Optional description of the stress test.',
|
675
675
|
),
|
676
|
+
print_descriptors: bool = typer.Option(
|
677
|
+
False,
|
678
|
+
'--descriptors',
|
679
|
+
'-D',
|
680
|
+
help='Whether to print descriptors of the stress test.',
|
681
|
+
hidden=True,
|
682
|
+
),
|
676
683
|
):
|
677
684
|
if finder and not generator_args or generator_args and not finder:
|
678
685
|
console.console.print(
|
@@ -693,6 +700,7 @@ async def stress(
|
|
693
700
|
progress=s,
|
694
701
|
verbose=verbose,
|
695
702
|
sanitized=sanitized,
|
703
|
+
print_descriptors=print_descriptors,
|
696
704
|
)
|
697
705
|
|
698
706
|
stresses.print_stress_report(report)
|
@@ -352,7 +352,7 @@ def get_solutions(root: pathlib.Path = pathlib.Path()) -> List[Solution]:
|
|
352
352
|
|
353
353
|
for entry in package.solutions:
|
354
354
|
if '*' in str(entry.path):
|
355
|
-
for file in root.glob(str(entry.path)):
|
355
|
+
for file in sorted(root.glob(str(entry.path))):
|
356
356
|
relative_file = file.relative_to(root)
|
357
357
|
add_solution(
|
358
358
|
Solution.model_copy(
|
@@ -56,6 +56,7 @@ async def run_stress(
|
|
56
56
|
verbose: bool = False,
|
57
57
|
progress: Optional[StatusProgress] = None,
|
58
58
|
sanitized: bool = False,
|
59
|
+
print_descriptors: bool = False,
|
59
60
|
) -> StressReport:
|
60
61
|
pkg = package.find_problem_package_or_die()
|
61
62
|
|
@@ -134,6 +135,9 @@ async def run_stress(
|
|
134
135
|
if time.monotonic() - startTime > timeoutInSeconds:
|
135
136
|
break
|
136
137
|
|
138
|
+
if print_descriptors:
|
139
|
+
utils.print_open_fd_count()
|
140
|
+
|
137
141
|
executed += 1
|
138
142
|
|
139
143
|
if progress:
|
@@ -359,7 +359,8 @@ class BocaScraper:
|
|
359
359
|
form['problemnumber'] = f'{problem_index + 1}'
|
360
360
|
form['problemname'] = problem_shortname
|
361
361
|
form['confirmation'] = 'confirm'
|
362
|
-
form
|
362
|
+
if form.find_control('autojudge_new_sel'):
|
363
|
+
form['autojudge_new_sel'] = ['all']
|
363
364
|
form['Submit3'] = 'Send'
|
364
365
|
|
365
366
|
with file.open('rb') as f:
|
@@ -45,7 +45,7 @@ def extract_validator_test_entries(
|
|
45
45
|
) -> List[ValidatorTestEntry]:
|
46
46
|
res: List[ValidatorTestEntry] = []
|
47
47
|
for test in tests:
|
48
|
-
for input in pathlib.Path().glob(str(test.glob)):
|
48
|
+
for input in sorted(pathlib.Path().glob(str(test.glob))):
|
49
49
|
if not input.is_file():
|
50
50
|
continue
|
51
51
|
res.append(
|
@@ -60,7 +60,7 @@ def extract_checker_test_entries(tests: List[CheckerTest]) -> List[CheckerTestEn
|
|
60
60
|
res: List[CheckerTestEntry] = []
|
61
61
|
seen: Set[pathlib.Path] = set()
|
62
62
|
for test in tests:
|
63
|
-
for file in pathlib.Path().glob(str(test.glob)):
|
63
|
+
for file in sorted(pathlib.Path().glob(str(test.glob))):
|
64
64
|
if not file.is_file():
|
65
65
|
continue
|
66
66
|
if file.suffix not in ['.in', '.out', '.ans']:
|
@@ -559,7 +559,7 @@ class SandboxBase(abc.ABC):
|
|
559
559
|
def glob(self, glob_expr: str) -> List[pathlib.Path]:
|
560
560
|
return [
|
561
561
|
path.relative_to(self.get_root_path())
|
562
|
-
for path in self.get_root_path().glob(glob_expr)
|
562
|
+
for path in sorted(self.get_root_path().glob(glob_expr))
|
563
563
|
]
|
564
564
|
|
565
565
|
@abc.abstractmethod
|
@@ -360,7 +360,7 @@ class FilesystemStorage(Storage):
|
|
360
360
|
def list_metadata(self, filename: str) -> List[str]:
|
361
361
|
return [
|
362
362
|
path.stem.split('__')[1]
|
363
|
-
for path in (self.path / '.metadata').glob(f'{filename}__*.json')
|
363
|
+
for path in sorted((self.path / '.metadata').glob(f'{filename}__*.json'))
|
364
364
|
]
|
365
365
|
|
366
366
|
def exists(self, filename: str) -> bool:
|
@@ -75,6 +75,19 @@ def check_version_compatibility(required: str) -> SemVerCompatibility:
|
|
75
75
|
return check_version_compatibility_between(installed, required)
|
76
76
|
|
77
77
|
|
78
|
+
def print_open_fd_count() -> int:
|
79
|
+
import psutil
|
80
|
+
|
81
|
+
try:
|
82
|
+
current_process = psutil.Process()
|
83
|
+
open_fds = len(current_process.open_files())
|
84
|
+
print(f'Number of opened file descriptors: {open_fds}')
|
85
|
+
except psutil.AccessDenied:
|
86
|
+
print('Access denied. Run with appropriate permissions (e.g., sudo) if needed.')
|
87
|
+
except Exception as e:
|
88
|
+
print(f'An error occurred: {e}')
|
89
|
+
|
90
|
+
|
78
91
|
def create_and_write(path: pathlib.Path, *args, **kwargs):
|
79
92
|
path.parent.mkdir(parents=True, exist_ok=True)
|
80
93
|
path.write_text(*args, **kwargs)
|
rbx_cp-0.17.3/rbx/__version__.py
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
__version__ = '0.17.3'
|
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.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/statement/contest.rbx.tex
RENAMED
File without changes
|
{rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/statement/info.rbx.tex
RENAMED
File without changes
|
{rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/contest/statement/instructions.tex
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/problem/manual_tests/samples/000.in
RENAMED
File without changes
|
{rbx_cp-0.17.3 → rbx_cp-0.17.5}/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
|
{rbx_cp-0.17.3 → rbx_cp-0.17.5}/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
|
File without changes
|
{rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/shared/contest_template.rbx.tex
RENAMED
File without changes
|
File without changes
|
{rbx_cp-0.17.3 → rbx_cp-0.17.5}/rbx/resources/presets/default/shared/problem_template.rbx.tex
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|