rbx.cp 0.10.3__tar.gz → 0.11.1__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.
Files changed (245) hide show
  1. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/PKG-INFO +1 -1
  2. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/pyproject.toml +1 -1
  3. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/contest/build_contest_statements.py +1 -1
  4. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/contest/statements.py +19 -0
  5. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/contest/contest.rbx.yml +6 -3
  6. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/shared/contest_template.rbx.tex +1 -1
  7. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/shared/icpc.sty +1 -1
  8. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/LICENSE +0 -0
  9. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/README.md +0 -0
  10. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/__init__.py +0 -0
  11. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/annotations.py +0 -0
  12. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/autoenum.py +0 -0
  13. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/__init__.py +0 -0
  14. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/builder.py +0 -0
  15. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/cd.py +0 -0
  16. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/checkers.py +0 -0
  17. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/cli.py +0 -0
  18. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/code.py +0 -0
  19. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/compile.py +0 -0
  20. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/conftest.py +0 -0
  21. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/contest/__init__.py +0 -0
  22. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/contest/contest_package.py +0 -0
  23. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/contest/contest_utils.py +0 -0
  24. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/contest/main.py +0 -0
  25. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/contest/schema.py +0 -0
  26. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/creation.py +0 -0
  27. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/deferred.py +0 -0
  28. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/download.py +0 -0
  29. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/dump_schemas.py +0 -0
  30. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/environment.py +0 -0
  31. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/extensions.py +0 -0
  32. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/fields.py +0 -0
  33. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/formatting.py +0 -0
  34. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/generators.py +0 -0
  35. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/generators_test.py +0 -0
  36. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/git_utils.py +0 -0
  37. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/global_package.py +0 -0
  38. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/header.py +0 -0
  39. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/lang.py +0 -0
  40. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/lazy_importing_main.py +0 -0
  41. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/lazy_importing_test.py +0 -0
  42. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/linting.py +0 -0
  43. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/main.py +0 -0
  44. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/naming.py +0 -0
  45. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/package.py +0 -0
  46. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/__init__.py +0 -0
  47. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/boca/__init__.py +0 -0
  48. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/boca/extension.py +0 -0
  49. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/boca/packager.py +0 -0
  50. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/contest_main.py +0 -0
  51. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/main.py +0 -0
  52. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/moj/packager.py +0 -0
  53. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/packager.py +0 -0
  54. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/pkg/packager.py +0 -0
  55. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/polygon/packager.py +0 -0
  56. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/polygon/polygon_api.py +0 -0
  57. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/polygon/test.py +0 -0
  58. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/polygon/upload.py +0 -0
  59. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/packaging/polygon/xml_schema.py +0 -0
  60. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/presets/__init__.py +0 -0
  61. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/presets/fetch.py +0 -0
  62. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/presets/lock_schema.py +0 -0
  63. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/presets/schema.py +0 -0
  64. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/remote.py +0 -0
  65. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/retries.py +0 -0
  66. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/sanitizers/warning_stack.py +0 -0
  67. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/schema.py +0 -0
  68. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/setter_config.py +0 -0
  69. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/solutions.py +0 -0
  70. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/solutions_test.py +0 -0
  71. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/state.py +0 -0
  72. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/__init__.py +0 -0
  73. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/build_statements.py +0 -0
  74. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/builders.py +0 -0
  75. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/expander.py +0 -0
  76. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/joiners.py +0 -0
  77. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/latex.py +0 -0
  78. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/latex_jinja.py +0 -0
  79. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/statements/schema.py +0 -0
  80. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/stats.py +0 -0
  81. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/stresses.py +0 -0
  82. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/stressing/__init__.py +0 -0
  83. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/stressing/finder_parser.py +0 -0
  84. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/stressing/generator_parser.py +0 -0
  85. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/tasks.py +0 -0
  86. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/testcase_extractors.py +0 -0
  87. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/testcase_utils.py +0 -0
  88. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/testcases/__init__.py +0 -0
  89. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/testcases/main.py +0 -0
  90. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/tooling/__init__.py +0 -0
  91. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/tooling/boca/__init__.py +0 -0
  92. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/tooling/boca/main.py +0 -0
  93. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/tooling/boca/scrape.py +0 -0
  94. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/tooling/boca/scraper.py +0 -0
  95. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/tooling/main.py +0 -0
  96. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/__init__.py +0 -0
  97. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/captured_log.py +0 -0
  98. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/css/app.tcss +0 -0
  99. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/main.py +0 -0
  100. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/__init__.py +0 -0
  101. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/build.py +0 -0
  102. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/command.py +0 -0
  103. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/differ.py +0 -0
  104. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/error.py +0 -0
  105. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/rich_log_modal.py +0 -0
  106. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/run.py +0 -0
  107. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/run_explorer.py +0 -0
  108. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/run_test_explorer.py +0 -0
  109. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/selector.py +0 -0
  110. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/screens/test_explorer.py +0 -0
  111. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/utils/__init__.py +0 -0
  112. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/utils/run_ui.py +0 -0
  113. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/widgets/__init__.py +0 -0
  114. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/widgets/diff_box.py +0 -0
  115. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/widgets/file_log.py +0 -0
  116. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/widgets/interaction_box.py +0 -0
  117. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/widgets/rich_log_box.py +0 -0
  118. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/widgets/test_output_box.py +0 -0
  119. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/ui/widgets/two_sided_test_output_box.py +0 -0
  120. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/unit.py +0 -0
  121. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/validators.py +0 -0
  122. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/box/validators_test.py +0 -0
  123. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/checker.py +0 -0
  124. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/clone.py +0 -0
  125. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/config.py +0 -0
  126. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/conftest.py +0 -0
  127. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/console.py +0 -0
  128. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/create.py +0 -0
  129. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/edit.py +0 -0
  130. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/__init__.py +0 -0
  131. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/caching.py +0 -0
  132. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/conftest.py +0 -0
  133. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/debug_context.py +0 -0
  134. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/grading_context.py +0 -0
  135. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/__init__.py +0 -0
  136. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/cacher.py +0 -0
  137. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/digester.py +0 -0
  138. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/sandbox.py +0 -0
  139. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/sandboxes/__init__.py +0 -0
  140. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/sandboxes/isolate.py +0 -0
  141. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/sandboxes/stupid_sandbox.py +0 -0
  142. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/sandboxes/timeit.py +0 -0
  143. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/storage.py +0 -0
  144. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/test.py +0 -0
  145. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/judge/testiso.py +0 -0
  146. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/limits.py +0 -0
  147. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/processing_context.py +0 -0
  148. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/profiling.py +0 -0
  149. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/steps.py +0 -0
  150. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/steps_with_caching.py +0 -0
  151. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading/steps_with_caching_run_test.py +0 -0
  152. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/grading_utils.py +0 -0
  153. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/hydration.py +0 -0
  154. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/main.py +0 -0
  155. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/metadata.py +0 -0
  156. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/providers/__init__.py +0 -0
  157. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/providers/codeforces.py +0 -0
  158. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/providers/provider.py +0 -0
  159. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/checkers/boilerplate.cpp +0 -0
  160. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/checkers/noop.cpp +0 -0
  161. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/default_config.json +0 -0
  162. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/default_setter_config.mac.yml +0 -0
  163. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/default_setter_config.yml +0 -0
  164. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/envs/default.rbx.yml +0 -0
  165. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/envs/isolate.rbx.yml +0 -0
  166. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/checker.sh +0 -0
  167. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compare.sh +0 -0
  168. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compile/c +0 -0
  169. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compile/cc +0 -0
  170. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compile/cpp +0 -0
  171. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compile/java +0 -0
  172. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compile/kt +0 -0
  173. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compile/py2 +0 -0
  174. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/compile/py3 +0 -0
  175. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactive/c +0 -0
  176. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactive/cc +0 -0
  177. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactive/cpp +0 -0
  178. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactive/java +0 -0
  179. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactive/kt +0 -0
  180. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactive/py2 +0 -0
  181. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactive/py3 +0 -0
  182. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactor_compile.sh +0 -0
  183. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/interactor_run.sh +0 -0
  184. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/bkp +0 -0
  185. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/c +0 -0
  186. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/cc +0 -0
  187. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/cpp +0 -0
  188. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/java +0 -0
  189. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/kt +0 -0
  190. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/py2 +0 -0
  191. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/run/py3 +0 -0
  192. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/safeexec.c +0 -0
  193. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/boca/safeexec_compile.sh +0 -0
  194. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/c/compile.sh +0 -0
  195. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/c/prep.sh +0 -0
  196. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/c/run.sh +0 -0
  197. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/compare.sh +0 -0
  198. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/cpp/compile.sh +0 -0
  199. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/cpp/prep.sh +0 -0
  200. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/cpp/run.sh +0 -0
  201. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/interactor_prep.sh +0 -0
  202. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/interactor_run.sh +0 -0
  203. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/java/compile.sh +0 -0
  204. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/java/prep.sh +0 -0
  205. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/java/run.sh +0 -0
  206. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/py2/compile.sh +0 -0
  207. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/py2/prep.sh +0 -0
  208. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/py2/run.sh +0 -0
  209. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/py3/compile.sh +0 -0
  210. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/py3/prep.sh +0 -0
  211. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/packagers/moj/scripts/py3/run.sh +0 -0
  212. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/contest/.gitignore +0 -0
  213. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/contest/statement/contest.rbx.tex +0 -0
  214. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/contest/statement/instructions.tex +0 -0
  215. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/contest/statement/logo.png +0 -0
  216. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/env.rbx.yml +0 -0
  217. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/preset.rbx.yml +0 -0
  218. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/.gitignore +0 -0
  219. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/gens/gen.cpp +0 -0
  220. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/manual_tests/samples/000.in +0 -0
  221. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/manual_tests/samples/001.in +0 -0
  222. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/problem.rbx.yml +0 -0
  223. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/rbx.h +0 -0
  224. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/sols/main.cpp +0 -0
  225. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/sols/slow.cpp +0 -0
  226. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/sols/wa.cpp +0 -0
  227. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/statement/statement.rbx.tex +0 -0
  228. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/testplan/random.py +0 -0
  229. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/testplan/random.txt +0 -0
  230. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/validator.cpp +0 -0
  231. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/problem/wcmp.cpp +0 -0
  232. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/presets/default/shared/problem_template.rbx.tex +0 -0
  233. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/templates/rbx.h +0 -0
  234. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/resources/templates/template.cpp +0 -0
  235. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/run.py +0 -0
  236. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/schema.py +0 -0
  237. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/submit.py +0 -0
  238. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/submitors/__init__.py +0 -0
  239. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/submitors/codeforces.py +0 -0
  240. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/submitors/submitor.py +0 -0
  241. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/test.py +0 -0
  242. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/testcase.py +0 -0
  243. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/testcase_rendering.py +0 -0
  244. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/testing_utils.py +0 -0
  245. {rbx_cp-0.10.3 → rbx_cp-0.11.1}/rbx/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: rbx.cp
3
- Version: 0.10.3
3
+ Version: 0.11.1
4
4
  Summary:
5
5
  Author: Roberto Sales
6
6
  Requires-Python: >=3.9.1,<4.0.0
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "rbx.cp"
3
- version = "0.10.3"
3
+ version = "0.11.1"
4
4
  description = ""
5
5
  packages = [
6
6
  {include = "rbx"}
@@ -292,7 +292,7 @@ def build_statement_rooted(
292
292
  custom_vars=custom_vars,
293
293
  )
294
294
 
295
- if joiner is None:
295
+ if joiner is None or joiner.joined_type() == output_type:
296
296
  return last_content, last_output
297
297
  assert statement.joiner is not None
298
298
 
@@ -1,3 +1,4 @@
1
+ import subprocess
1
2
  from typing import Annotated, List, Optional
2
3
 
3
4
  import syncer
@@ -54,6 +55,10 @@ async def build(
54
55
  help='Variables to be used in the statements.',
55
56
  ),
56
57
  ] = None,
58
+ install_tex: Annotated[
59
+ bool,
60
+ typer.Option(help='Whether to install missing LaTeX packages.'),
61
+ ] = False,
57
62
  ):
58
63
  contest = find_contest_package_or_die()
59
64
  # At most run the validators, only in samples.
@@ -97,6 +102,9 @@ async def build(
97
102
 
98
103
  built_statements = []
99
104
 
105
+ if install_tex:
106
+ output = StatementType.TeX
107
+
100
108
  for statement in valid_statements:
101
109
  built_statements.append(
102
110
  build_statement(
@@ -110,6 +118,17 @@ async def build(
110
118
 
111
119
  console.console.rule(title='Built statements')
112
120
  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
113
132
  console.console.print(
114
133
  f'[item]{statement.name} {statement.language}[/item] -> {href(built_path)}'
115
134
  )
@@ -19,11 +19,14 @@ statements:
19
19
  template: "statement/template.rbx.tex"
20
20
  - name: "editorial-en"
21
21
  extends: "statement-en"
22
+ override:
23
+ vars:
24
+ # Whether to show the problem statement in the editorial.
25
+ show_problem: false
26
+ editorial: true
22
27
  vars:
23
28
  editorial: true
24
- watermark: true
25
- # Whether to show the problem statement in the editorial.
26
- show_problem: false
29
+ watermark: false
27
30
  vars:
28
31
  year: 2025
29
32
  date: "2025-06-21"
@@ -1,4 +1,4 @@
1
- %- if vars.show_problem is truthy
1
+ %- if vars.show_problem is truthy or vars.editorial is falsy
2
2
  \includeProblem
3
3
  %- if problem.short_name is defined
4
4
  [\VAR{problem.short_name}]
@@ -26,7 +26,7 @@
26
26
  \usepackage{amsmath}
27
27
 
28
28
  % Additional pandoc packages
29
- %\usepackage{lmodern} % or 'libertine' / 'times' for different fonts
29
+ \usepackage{lmodern} % or 'libertine' / 'times' for different fonts
30
30
  \usepackage{amssymb}
31
31
  \usepackage{microtype}
32
32
  \usepackage{graphicx}
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes