cucu 1.0.0__tar.gz → 1.0.4__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.

Potentially problematic release.


This version of cucu might be problematic. Click here for more details.

Files changed (254) hide show
  1. {cucu-1.0.0 → cucu-1.0.4}/.pre-commit-config.yaml +2 -2
  2. {cucu-1.0.0 → cucu-1.0.4}/CHANGELOG.md +41 -28
  3. {cucu-1.0.0 → cucu-1.0.4}/Makefile +13 -1
  4. {cucu-1.0.0 → cucu-1.0.4}/PKG-INFO +10 -10
  5. {cucu-1.0.0 → cucu-1.0.4}/README.md +4 -8
  6. cucu-1.0.4/data/www/drag_drop.html +89 -0
  7. {cucu-1.0.0 → cucu-1.0.4}/features/browser/file_upload.feature +6 -0
  8. {cucu-1.0.0 → cucu-1.0.4}/features/cli/report_basics.feature +1 -1
  9. {cucu-1.0.0 → cucu-1.0.4}/pyproject.toml +21 -4
  10. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/file_input_steps.py +11 -2
  11. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/utils.py +4 -0
  12. {cucu-1.0.0 → cucu-1.0.4}/uv.lock +1 -3
  13. {cucu-1.0.0 → cucu-1.0.4}/.circleci/config.yml +0 -0
  14. {cucu-1.0.0 → cucu-1.0.4}/.env +0 -0
  15. {cucu-1.0.0 → cucu-1.0.4}/.github/CODEOWNERS +0 -0
  16. {cucu-1.0.0 → cucu-1.0.4}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  17. {cucu-1.0.0 → cucu-1.0.4}/.github/workflows/build.yml +0 -0
  18. {cucu-1.0.0 → cucu-1.0.4}/.github/workflows/create_a_new_release.yml +0 -0
  19. {cucu-1.0.0 → cucu-1.0.4}/.github/workflows/publish-production.yml +0 -0
  20. {cucu-1.0.0 → cucu-1.0.4}/.github/workflows/publish-test.yml +0 -0
  21. {cucu-1.0.0 → cucu-1.0.4}/.gitignore +0 -0
  22. {cucu-1.0.0 → cucu-1.0.4}/.python-version +0 -0
  23. {cucu-1.0.0 → cucu-1.0.4}/CODE_OF_CONDUCT.md +0 -0
  24. {cucu-1.0.0 → cucu-1.0.4}/CONTRIBUTING.md +0 -0
  25. {cucu-1.0.0 → cucu-1.0.4}/CONTRIBUTORS.md +0 -0
  26. {cucu-1.0.0 → cucu-1.0.4}/LICENSE +0 -0
  27. {cucu-1.0.0 → cucu-1.0.4}/bin/cucu +0 -0
  28. {cucu-1.0.0 → cucu-1.0.4}/bin/start_seleniarm_hub.sh +0 -0
  29. {cucu-1.0.0 → cucu-1.0.4}/bin/start_selenium_hub.sh +0 -0
  30. {cucu-1.0.0 → cucu-1.0.4}/cortex.yaml +0 -0
  31. {cucu-1.0.0 → cucu-1.0.4}/data/features/custom_step_test/custom_step.feature +0 -0
  32. {cucu-1.0.0 → cucu-1.0.4}/data/features/custom_step_test/steps/__init__.py +0 -0
  33. {cucu-1.0.0 → cucu-1.0.4}/data/features/custom_step_test/steps/cucu_steps.py +0 -0
  34. {cucu-1.0.0 → cucu-1.0.4}/data/features/echo.feature +0 -0
  35. {cucu-1.0.0 → cucu-1.0.4}/data/features/environment.py +0 -0
  36. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_skipping_scenarios_by_file_presence.feature +0 -0
  37. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_background.feature +0 -0
  38. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_background_using_substeps.feature +0 -0
  39. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_failing_scenario.feature +0 -0
  40. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_failing_scenario_with_table.feature +0 -0
  41. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_failing_scenario_with_web.feature +0 -0
  42. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_logging.feature +0 -0
  43. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_long_names.feature +0 -0
  44. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_mixed_results.feature +0 -0
  45. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_multilines_and_tables.feature +0 -0
  46. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_passing_scenario.feature +0 -0
  47. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_passing_scenario_with_web.feature +0 -0
  48. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_platform_specific_scenarios.feature +0 -0
  49. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_scenario_outline.feature +0 -0
  50. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_scenario_using_nth_type.feature +0 -0
  51. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_tagging.feature +0 -0
  52. {cucu-1.0.0 → cucu-1.0.4}/data/features/feature_with_xml_tags.feature +0 -0
  53. {cucu-1.0.0 → cucu-1.0.4}/data/features/multiple_scenarios_with_browser_steps.feature +0 -0
  54. {cucu-1.0.0 → cucu-1.0.4}/data/features/scenario_stop_retry_early.feature +0 -0
  55. {cucu-1.0.0 → cucu-1.0.4}/data/features/scenario_that_fails_with_after_scenario_steps.feature +0 -0
  56. {cucu-1.0.0 → cucu-1.0.4}/data/features/scenario_that_passes_with_after_scenario_steps.feature +0 -0
  57. {cucu-1.0.0 → cucu-1.0.4}/data/features/scenario_with_console_logs.feature +0 -0
  58. {cucu-1.0.0 → cucu-1.0.4}/data/features/scenario_with_substeps.feature +0 -0
  59. {cucu-1.0.0 → cucu-1.0.4}/data/features/scenario_with_substeps_and_logging.feature +0 -0
  60. {cucu-1.0.0 → cucu-1.0.4}/data/features/slow_features/slow_feature1.feature +0 -0
  61. {cucu-1.0.0 → cucu-1.0.4}/data/features/slow_features/slow_feature2.feature +0 -0
  62. {cucu-1.0.0 → cucu-1.0.4}/data/features/slow_features/slow_feature3.feature +0 -0
  63. {cucu-1.0.0 → cucu-1.0.4}/data/features/slow_features/slow_feature4.feature +0 -0
  64. {cucu-1.0.0 → cucu-1.0.4}/data/features/slow_features/slow_feature5.feature +0 -0
  65. {cucu-1.0.0 → cucu-1.0.4}/data/features/steps/__init__.py +0 -0
  66. {cucu-1.0.0 → cucu-1.0.4}/data/features/steps/cucu_steps.py +0 -0
  67. {cucu-1.0.0 → cucu-1.0.4}/data/features/tagged_features/tagged_feature1.feature +0 -0
  68. {cucu-1.0.0 → cucu-1.0.4}/data/features/tagged_features/tagged_feature2.feature +0 -0
  69. {cucu-1.0.0 → cucu-1.0.4}/data/features/tagged_features/tagged_feature3.feature +0 -0
  70. {cucu-1.0.0 → cucu-1.0.4}/data/features/with_secret/cucurc.yml +0 -0
  71. {cucu-1.0.0 → cucu-1.0.4}/data/features/with_secret/scenario_with_comments.feature +0 -0
  72. {cucu-1.0.0 → cucu-1.0.4}/data/unit/ansi.log +0 -0
  73. {cucu-1.0.0 → cucu-1.0.4}/data/unit/ansi.log.html +0 -0
  74. {cucu-1.0.0 → cucu-1.0.4}/data/www/broken_images.html +0 -0
  75. {cucu-1.0.0 → cucu-1.0.4}/data/www/buttons.html +0 -0
  76. {cucu-1.0.0 → cucu-1.0.4}/data/www/checkboxes.html +0 -0
  77. {cucu-1.0.0 → cucu-1.0.4}/data/www/clipboard.html +0 -0
  78. {cucu-1.0.0 → cucu-1.0.4}/data/www/comboboxes.html +0 -0
  79. {cucu-1.0.0 → cucu-1.0.4}/data/www/console_logging.html +0 -0
  80. {cucu-1.0.0 → cucu-1.0.4}/data/www/cookies.html +0 -0
  81. {cucu-1.0.0 → cucu-1.0.4}/data/www/counter.html +0 -0
  82. {cucu-1.0.0 → cucu-1.0.4}/data/www/draggables.html +0 -0
  83. {cucu-1.0.0 → cucu-1.0.4}/data/www/dropdowns.html +0 -0
  84. {cucu-1.0.0 → cucu-1.0.4}/data/www/duplicate_buttons.html +0 -0
  85. {cucu-1.0.0 → cucu-1.0.4}/data/www/duplicate_inputs.html +0 -0
  86. {cucu-1.0.0 → cucu-1.0.4}/data/www/dynamic_dropdown.html +0 -0
  87. {cucu-1.0.0 → cucu-1.0.4}/data/www/file.txt +0 -0
  88. {cucu-1.0.0 → cucu-1.0.4}/data/www/files.html +0 -0
  89. {cucu-1.0.0 → cucu-1.0.4}/data/www/frames.html +0 -0
  90. {cucu-1.0.0 → cucu-1.0.4}/data/www/fuzzy_rules.html +0 -0
  91. {cucu-1.0.0 → cucu-1.0.4}/data/www/images.html +0 -0
  92. {cucu-1.0.0 → cucu-1.0.4}/data/www/inputs.html +0 -0
  93. {cucu-1.0.0 → cucu-1.0.4}/data/www/js/util.js +0 -0
  94. {cucu-1.0.0 → cucu-1.0.4}/data/www/links.html +0 -0
  95. {cucu-1.0.0 → cucu-1.0.4}/data/www/nothing_to_see_here.html +0 -0
  96. {cucu-1.0.0 → cucu-1.0.4}/data/www/page_that_loads_forever.html +0 -0
  97. {cucu-1.0.0 → cucu-1.0.4}/data/www/radio_buttons.html +0 -0
  98. {cucu-1.0.0 → cucu-1.0.4}/data/www/stars.png +0 -0
  99. {cucu-1.0.0 → cucu-1.0.4}/data/www/tables.html +0 -0
  100. {cucu-1.0.0 → cucu-1.0.4}/data/www/tabs.html +0 -0
  101. {cucu-1.0.0 → cucu-1.0.4}/data/www/text.html +0 -0
  102. {cucu-1.0.0 → cucu-1.0.4}/features/browser/browser_tab_managemenet.feature +0 -0
  103. {cucu-1.0.0 → cucu-1.0.4}/features/browser/browser_window_managemenet.feature +0 -0
  104. {cucu-1.0.0 → cucu-1.0.4}/features/browser/buttons.feature +0 -0
  105. {cucu-1.0.0 → cucu-1.0.4}/features/browser/checkboxes.feature +0 -0
  106. {cucu-1.0.0 → cucu-1.0.4}/features/browser/clipboard.feature +0 -0
  107. {cucu-1.0.0 → cucu-1.0.4}/features/browser/comboboxes.feature +0 -0
  108. {cucu-1.0.0 → cucu-1.0.4}/features/browser/console_logs.feature +0 -0
  109. {cucu-1.0.0 → cucu-1.0.4}/features/browser/cookies.feature +0 -0
  110. {cucu-1.0.0 → cucu-1.0.4}/features/browser/draggables.feature +0 -0
  111. {cucu-1.0.0 → cucu-1.0.4}/features/browser/dropdowns.feature +0 -0
  112. {cucu-1.0.0 → cucu-1.0.4}/features/browser/duplicate_buttons.feature +0 -0
  113. {cucu-1.0.0 → cucu-1.0.4}/features/browser/duplicate_draggables.feature +0 -0
  114. {cucu-1.0.0 → cucu-1.0.4}/features/browser/duplicate_inputs.feature +0 -0
  115. {cucu-1.0.0 → cucu-1.0.4}/features/browser/file_downloads.feature +0 -0
  116. {cucu-1.0.0 → cucu-1.0.4}/features/browser/frames.feature +0 -0
  117. {cucu-1.0.0 → cucu-1.0.4}/features/browser/fuzzy_rules.feature +0 -0
  118. {cucu-1.0.0 → cucu-1.0.4}/features/browser/helpers.feature +0 -0
  119. {cucu-1.0.0 → cucu-1.0.4}/features/browser/images.feature +0 -0
  120. {cucu-1.0.0 → cucu-1.0.4}/features/browser/inputs.feature +0 -0
  121. {cucu-1.0.0 → cucu-1.0.4}/features/browser/inputs_limits.feature +0 -0
  122. {cucu-1.0.0 → cucu-1.0.4}/features/browser/links.feature +0 -0
  123. {cucu-1.0.0 → cucu-1.0.4}/features/browser/mht.feature +0 -0
  124. {cucu-1.0.0 → cucu-1.0.4}/features/browser/page_checks.feature +0 -0
  125. {cucu-1.0.0 → cucu-1.0.4}/features/browser/radio_buttons.feature +0 -0
  126. {cucu-1.0.0 → cucu-1.0.4}/features/browser/tables.feature +0 -0
  127. {cucu-1.0.0 → cucu-1.0.4}/features/browser/tabs.feature +0 -0
  128. {cucu-1.0.0 → cucu-1.0.4}/features/browser/text.feature +0 -0
  129. {cucu-1.0.0 → cucu-1.0.4}/features/cli/config.feature +0 -0
  130. {cucu-1.0.0 → cucu-1.0.4}/features/cli/help.feature +0 -0
  131. {cucu-1.0.0 → cucu-1.0.4}/features/cli/internals.feature +0 -0
  132. {cucu-1.0.0 → cucu-1.0.4}/features/cli/ipdb.feature +0 -0
  133. {cucu-1.0.0 → cucu-1.0.4}/features/cli/lint.feature +0 -0
  134. {cucu-1.0.0 → cucu-1.0.4}/features/cli/lsp.feature +0 -0
  135. {cucu-1.0.0 → cucu-1.0.4}/features/cli/report_search_and_sorting.feature +0 -0
  136. {cucu-1.0.0 → cucu-1.0.4}/features/cli/report_with_custom_failure_handler.feature +0 -0
  137. {cucu-1.0.0 → cucu-1.0.4}/features/cli/report_with_custom_subheader.feature +0 -0
  138. {cucu-1.0.0 → cucu-1.0.4}/features/cli/report_with_custom_tags.feature +0 -0
  139. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run.feature +0 -0
  140. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_outputs.feature +0 -0
  141. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_with_hooks.feature +0 -0
  142. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_with_junit.feature +0 -0
  143. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_with_logging.feature +0 -0
  144. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_with_report.feature +0 -0
  145. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_with_tags.feature +0 -0
  146. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_with_thread_dumper.feature +0 -0
  147. {cucu-1.0.0 → cucu-1.0.4}/features/cli/run_with_workers.feature +0 -0
  148. {cucu-1.0.0 → cucu-1.0.4}/features/cli/secrets.feature +0 -0
  149. {cucu-1.0.0 → cucu-1.0.4}/features/cli/steps.feature +0 -0
  150. {cucu-1.0.0 → cucu-1.0.4}/features/cli/vars.feature +0 -0
  151. {cucu-1.0.0 → cucu-1.0.4}/features/environment.py +0 -0
  152. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/before_retry_handlers.feature +0 -0
  153. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/repeating_steps.feature +0 -0
  154. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/run_after_scenario_steps.feature +0 -0
  155. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/run_and_measure.feature +0 -0
  156. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/run_other_features.feature +0 -0
  157. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/run_scenarios_conditionally.feature +0 -0
  158. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/run_steps_conditionally.feature +0 -0
  159. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/run_steps_on_element_visibilty.feature +0 -0
  160. {cucu-1.0.0 → cucu-1.0.4}/features/flow_control/wait_for_steps.feature +0 -0
  161. {cucu-1.0.0 → cucu-1.0.4}/features/os/command_steps.feature +0 -0
  162. {cucu-1.0.0 → cucu-1.0.4}/features/os/file_steps.feature +0 -0
  163. {cucu-1.0.0 → cucu-1.0.4}/features/os/platform_steps.feature +0 -0
  164. {cucu-1.0.0 → cucu-1.0.4}/features/os/screenshot.feature +0 -0
  165. {cucu-1.0.0 → cucu-1.0.4}/features/os/variables.feature +0 -0
  166. {cucu-1.0.0 → cucu-1.0.4}/features/steps/__init__.py +0 -0
  167. {cucu-1.0.0 → cucu-1.0.4}/features/steps/cucu_steps.py +0 -0
  168. {cucu-1.0.0 → cucu-1.0.4}/logo.png +0 -0
  169. {cucu-1.0.0 → cucu-1.0.4}/renovate.json +0 -0
  170. {cucu-1.0.0 → cucu-1.0.4}/sonar-project.properties +0 -0
  171. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/__init__.py +0 -0
  172. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/ansi_parser.py +0 -0
  173. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/behave_tweaks.py +0 -0
  174. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/browser/__init__.py +0 -0
  175. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/browser/core.py +0 -0
  176. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/browser/frames.py +0 -0
  177. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/browser/selenium.py +0 -0
  178. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/browser/selenium_tweaks.py +0 -0
  179. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/cli/__init__.py +0 -0
  180. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/cli/core.py +0 -0
  181. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/cli/run.py +0 -0
  182. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/cli/steps.py +0 -0
  183. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/cli/thread_dumper.py +0 -0
  184. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/config.py +0 -0
  185. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/edgedriver_autoinstaller/README.md +0 -0
  186. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/edgedriver_autoinstaller/__init__.py +0 -0
  187. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/edgedriver_autoinstaller/utils.py +0 -0
  188. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/environment.py +0 -0
  189. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/external/jquery/jquery-3.5.1.min.js +0 -0
  190. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/formatter/__init__.py +0 -0
  191. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/formatter/cucu.py +0 -0
  192. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/formatter/json.py +0 -0
  193. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/formatter/junit.py +0 -0
  194. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/fuzzy/__init__.py +0 -0
  195. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/fuzzy/core.py +0 -0
  196. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/fuzzy/fuzzy.js +0 -0
  197. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/helpers.py +0 -0
  198. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/hooks.py +0 -0
  199. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/language_server/__init__.py +0 -0
  200. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/language_server/core.py +0 -0
  201. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/lint/__init__.py +0 -0
  202. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/lint/linter.py +0 -0
  203. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/lint/rules/format.yaml +0 -0
  204. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/logger.py +0 -0
  205. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/matcher/__init__.py +0 -0
  206. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/matcher/core.py +0 -0
  207. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/page_checks.py +0 -0
  208. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/__init__.py +0 -0
  209. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/external/bootstrap.min.css +0 -0
  210. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/external/bootstrap.min.js +0 -0
  211. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/external/dataTables.bootstrap.min.css +0 -0
  212. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/external/dataTables.bootstrap.min.js +0 -0
  213. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/external/jquery-3.5.1.min.js +0 -0
  214. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/external/jquery.dataTables.min.js +0 -0
  215. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/external/popper.min.js +0 -0
  216. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/favicon.png +0 -0
  217. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/html.py +0 -0
  218. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/templates/feature.html +0 -0
  219. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/templates/flat.html +0 -0
  220. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/templates/index.html +0 -0
  221. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/templates/layout.html +0 -0
  222. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/reporter/templates/scenario.html +0 -0
  223. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/__init__.py +0 -0
  224. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/base_steps.py +0 -0
  225. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/browser_steps.py +0 -0
  226. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/button_steps.py +0 -0
  227. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/checkbox_steps.py +0 -0
  228. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/command_steps.py +0 -0
  229. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/comment_steps.py +0 -0
  230. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/draggable_steps.py +0 -0
  231. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/dropdown_steps.py +0 -0
  232. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/filesystem_steps.py +0 -0
  233. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/flow_control_steps.py +0 -0
  234. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/image_steps.py +0 -0
  235. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/input_steps.py +0 -0
  236. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/link_steps.py +0 -0
  237. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/menuitem_steps.py +0 -0
  238. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/platform_steps.py +0 -0
  239. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/radio_steps.py +0 -0
  240. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/step_utils.py +0 -0
  241. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/tab_steps.py +0 -0
  242. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/table_steps.py +0 -0
  243. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/tables.js +0 -0
  244. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/text_steps.py +0 -0
  245. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/variable_steps.py +0 -0
  246. {cucu-1.0.0 → cucu-1.0.4}/src/cucu/steps/webserver_steps.py +0 -0
  247. {cucu-1.0.0 → cucu-1.0.4}/tests/__init__.py +0 -0
  248. {cucu-1.0.0 → cucu-1.0.4}/tests/test_behave_tweaks.py +0 -0
  249. {cucu-1.0.0 → cucu-1.0.4}/tests/test_browser.py +0 -0
  250. {cucu-1.0.0 → cucu-1.0.4}/tests/test_config.py +0 -0
  251. {cucu-1.0.0 → cucu-1.0.4}/tests/test_core.py +0 -0
  252. {cucu-1.0.0 → cucu-1.0.4}/tests/test_language_server.py +0 -0
  253. {cucu-1.0.0 → cucu-1.0.4}/tests/test_reporter_parser.py +0 -0
  254. {cucu-1.0.0 → cucu-1.0.4}/tests/test_table_steps.py +0 -0
@@ -13,9 +13,9 @@ repos:
13
13
  - repo: local
14
14
  hooks:
15
15
  - id: makefile
16
- name: run make lint
16
+ name: run make ci-lint
17
17
  entry: make
18
- args: ["lint"]
18
+ args: ["ci-lint"]
19
19
  language: system
20
20
  pass_filenames: false
21
21
  verbose: true
@@ -5,55 +5,68 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project closely adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## 1.0.4
9
+ - Change - for retry steps, also log before and after call messages
10
+
11
+ ## 1.0.3
12
+ - Add - functional test for drag and drop file functionality
13
+
14
+ ## 1.0.2
15
+ - Chore - fix logo for pypi
16
+
17
+ ## 1.0.1
18
+ - Chore - fix pyproject.toml authors and urls
19
+ - Change - add pre-commit to makefile
20
+
8
21
  ## 1.0.0
9
- - change to 1.0.0!
10
- - chore - fix GH workflow for test publish
22
+ - Change to 1.0.0!
23
+ - Chore - fix GH workflow for test publish
11
24
 
12
25
  ## 0.207.0
13
- - chore - prep for publish - p2
14
- - replace poetry with uv
15
- - set default local python to 3.12
16
- - run pre-commit with uv
17
- - fix isort with ruff
26
+ - Chore - prep for publish - p2
27
+ - Replace poetry with uv
28
+ - Set default local python to 3.12
29
+ - Run pre-commit with uv
30
+ - Fix isort with ruff
18
31
 
19
32
  ## 0.206.0
20
- - chore - prep for publish
21
- - replace black with ruff
22
- - remove detect-secrets to be replaced by GH repo security
23
- - remove bandit to be replaced by GH CodeQL
24
- - cleanup makefile
33
+ - Chore - prep for publish
34
+ - Replace black with ruff
35
+ - Remove detect-secrets to be replaced by GH repo security
36
+ - Remove bandit to be replaced by GH CodeQL
37
+ - Cleanup makefile
25
38
 
26
39
  ## 0.205.0
27
- - change - increase information logged for failing before_scenario_hooks
40
+ - Change - increase information logged for failing before_scenario_hooks
28
41
 
29
42
  ## 0.204.0
30
- - chore - add gh workflows for publishing
31
- - chore - fix project metadata
43
+ - Chore - add gh workflows for publishing
44
+ - Chore - fix project metadata
32
45
 
33
46
  ## 0.203.0
34
- - chore - move repo GH org locations
35
- - chore - remove sonarqube
47
+ - Chore - move repo GH org locations
48
+ - Chore - remove sonarqube
36
49
 
37
50
  ## 0.202.0
38
- - add - wait step to saving values from any table cells to a variable
51
+ - Add - wait step to saving values from any table cells to a variable
39
52
 
40
53
  ## 0.201.0
41
- - change - add report path to the JUnit files when available
54
+ - Change - add report path to the JUnit files when available
42
55
 
43
56
  ## 0.200.0
44
- - change - increase the log level of scheduling a feature file
57
+ - Change - increase the log level of scheduling a feature file
45
58
 
46
59
  ## 0.199.0
47
- - chore - remove deprecated CI
48
- - chore - add PR template
60
+ - Chore - remove deprecated CI
61
+ - Chore - add PR template
49
62
 
50
63
  ## 0.198.0
51
- - chore - add sonarqube
52
- - chore - refactor circle config (config-drive executor, embed commands, move workflows up)
53
- - chore - configure renovate
54
- - chore - remove dependabot config (duplicates renovate)
55
- - chore - remove safety (duplicates sonarqube)
56
- - change - swap pebble for mpire, kill procs on run timeout
64
+ - Chore - add sonarqube
65
+ - Chore - refactor circle config (config-drive executor, embed commands, move workflows up)
66
+ - Chore - configure renovate
67
+ - Chore - remove dependabot config (duplicates renovate)
68
+ - Chore - remove safety (duplicates sonarqube)
69
+ - Change - swap pebble for mpire, kill procs on run timeout
57
70
 
58
71
  ## 0.197.0
59
72
  - Fix - before all hooks are now executed
@@ -15,6 +15,7 @@ setup: src/*
15
15
 
16
16
  fix:
17
17
  # make fix
18
+ uv sync
18
19
  uv run ruff format .
19
20
  uv run ruff check . --fix
20
21
  uv run cucu lint --fix features
@@ -23,6 +24,17 @@ lint:
23
24
  # make lint
24
25
  # lint code
25
26
  uv run ruff check .
27
+ # pre-commit
28
+ SKIP=makefile uv run pre-commit run --show-diff-on-failure --from-ref origin/HEAD --to-ref HEAD
29
+ # lint .feature files
30
+ uv run cucu lint features
31
+
32
+ ci-lint:
33
+ # make ci-lint
34
+ # only for use by CI through pre-commit
35
+ # lint code
36
+ uv run ruff check .
37
+ # don't run pre-commit since CI already did
26
38
  # lint .feature files
27
39
  uv run cucu lint features
28
40
 
@@ -55,4 +67,4 @@ coverage: src/* tests/*
55
67
  echo "open HTML coverage report at htmlcov/index.html"
56
68
 
57
69
  # disable caching for all make targets
58
- .PHONY: all help format lint test build coverage
70
+ .PHONY: all help fix lint ci-lint test build coverage
@@ -1,8 +1,12 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: cucu
3
- Version: 1.0.0
3
+ Version: 1.0.4
4
4
  Summary: Easy BDD web testing
5
- Author-email: Domino Data Lab <open-source@dominodatalab.com>
5
+ Project-URL: Homepage, https://github.com/dominodatalab/cucu
6
+ Project-URL: Download, https://pypi.org/project/cucu/
7
+ Project-URL: Source Code, https://github.com/dominodatalab/cucu
8
+ Author-email: Domino Data Lab <open-source@dominodatalab.com>, Rodney Gomes <107359+rlgomes@users.noreply.github.com>, Cedric Young <4129217+ccedricyoung@users.noreply.github.com>, Xin Dong <104880864+ddl-xin@users.noreply.github.com>, Kavya <91882851+ddl-kavya@users.noreply.github.com>, Kevin Garton <71028750+ddl-kgarton@users.noreply.github.com>, Joy Liao <107583686+ddl-joy-liao@users.noreply.github.com>
9
+ Maintainer-email: Domino Data Lab <open-source@dominodatalab.com>, Cedric Young <4129217+ccedricyoung@users.noreply.github.com>, Kevin Garton <71028750+ddl-kgarton@users.noreply.github.com>, Brian Colby <92048365+ddl-bcolby@users.noreply.github.com>
6
10
  License: The Clear BSD License
7
11
  License-File: LICENSE
8
12
  Keywords: behave,cucumber,selenium
@@ -43,14 +47,14 @@ Requires-Dist: tabulate~=0.9.0
43
47
  Requires-Dist: tenacity~=9.0.0
44
48
  Description-Content-Type: text/markdown
45
49
 
46
- # ![Cucu Logo](logo.png) **CUCU** - Easy BDD web testing
50
+ # ![Cucu Logo](https://raw.githubusercontent.com/dominodatalab/cucu/refs/heads/main/logo.png) **CUCU** - Easy BDD web testing <!-- omit from toc -->
47
51
 
48
52
  End-to-end testing framework that uses [gherkin](https://cucumber.io/docs/gherkin/)
49
53
  to drive various underlying tools/frameworks to create real world testing scenarios.
50
54
 
51
55
  [![CircleCI](https://dl.circleci.com/status-badge/img/gh/dominodatalab/cucu/tree/main.svg?style=svg&circle-token=CCIPRJ_FnyZPtQ9odT5vmGW3CmZNU_bf0cfd776a09729ca4225a2860d9b59c4dae88af)](https://dl.circleci.com/status-badge/redirect/gh/dominodatalab/cucu/tree/main)
52
56
 
53
- ## Why cucu?
57
+ ## Why cucu? <!-- omit from toc -->
54
58
  1. Cucu avoids unnecessary abstractions (i.e. no Page Objects!) while keeping scenarios readable.
55
59
  ```gherkin
56
60
  Feature: My First Cucu Test
@@ -70,19 +74,15 @@ to drive various underlying tools/frameworks to create real world testing scenar
70
74
  7. Enables hierarchical configuration and env var and **CLI arg overrides**
71
75
  8. Comes with a linter that is **customizable**
72
76
 
73
- ## Supporting docs
77
+ ## Supporting docs <!-- omit from toc -->
74
78
  1. [CHANGELOG.md](CHANGELOG.md) - for latest news
75
79
  2. [CONTRIBUTING.md](CONTRIBUTING.md) - how we develop and test the library
76
80
  3. [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)
77
81
  4. [CONTRIBUTORS.md](CONTRIBUTORS.md)
78
82
  5. [LICENSE](LICENSE)
79
83
 
80
- # Table of Contents
84
+ # Table of Contents <!-- omit from toc -->
81
85
 
82
- - [ **CUCU** - Easy BDD web testing](#-cucu---easy-bdd-web-testing)
83
- - [Why cucu?](#why-cucu)
84
- - [Supporting docs](#supporting-docs)
85
- - [Table of Contents](#table-of-contents)
86
86
  - [Installation](#installation)
87
87
  - [Requirements](#requirements)
88
88
  - [Install Walkthrough](#install-walkthrough)
@@ -1,11 +1,11 @@
1
- # ![Cucu Logo](logo.png) **CUCU** - Easy BDD web testing
1
+ # ![Cucu Logo](https://raw.githubusercontent.com/dominodatalab/cucu/refs/heads/main/logo.png) **CUCU** - Easy BDD web testing <!-- omit from toc -->
2
2
 
3
3
  End-to-end testing framework that uses [gherkin](https://cucumber.io/docs/gherkin/)
4
4
  to drive various underlying tools/frameworks to create real world testing scenarios.
5
5
 
6
6
  [![CircleCI](https://dl.circleci.com/status-badge/img/gh/dominodatalab/cucu/tree/main.svg?style=svg&circle-token=CCIPRJ_FnyZPtQ9odT5vmGW3CmZNU_bf0cfd776a09729ca4225a2860d9b59c4dae88af)](https://dl.circleci.com/status-badge/redirect/gh/dominodatalab/cucu/tree/main)
7
7
 
8
- ## Why cucu?
8
+ ## Why cucu? <!-- omit from toc -->
9
9
  1. Cucu avoids unnecessary abstractions (i.e. no Page Objects!) while keeping scenarios readable.
10
10
  ```gherkin
11
11
  Feature: My First Cucu Test
@@ -25,19 +25,15 @@ to drive various underlying tools/frameworks to create real world testing scenar
25
25
  7. Enables hierarchical configuration and env var and **CLI arg overrides**
26
26
  8. Comes with a linter that is **customizable**
27
27
 
28
- ## Supporting docs
28
+ ## Supporting docs <!-- omit from toc -->
29
29
  1. [CHANGELOG.md](CHANGELOG.md) - for latest news
30
30
  2. [CONTRIBUTING.md](CONTRIBUTING.md) - how we develop and test the library
31
31
  3. [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)
32
32
  4. [CONTRIBUTORS.md](CONTRIBUTORS.md)
33
33
  5. [LICENSE](LICENSE)
34
34
 
35
- # Table of Contents
35
+ # Table of Contents <!-- omit from toc -->
36
36
 
37
- - [ **CUCU** - Easy BDD web testing](#-cucu---easy-bdd-web-testing)
38
- - [Why cucu?](#why-cucu)
39
- - [Supporting docs](#supporting-docs)
40
- - [Table of Contents](#table-of-contents)
41
37
  - [Installation](#installation)
42
38
  - [Requirements](#requirements)
43
39
  - [Install Walkthrough](#install-walkthrough)
@@ -0,0 +1,89 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Drag and Drop File Upload Test with Validation</title>
7
+ <style>
8
+ #drop-zone {
9
+ width: 500px;
10
+ height: 100px;
11
+ border: 2px dashed #0088cc;
12
+ display: flex;
13
+ justify-content: center;
14
+ align-items: center;
15
+ margin: 20px auto;
16
+ font-family: Arial, sans-serif;
17
+ color: #0088cc;
18
+ background-color: #f9f9f9;
19
+ }
20
+ #drop-zone.hover {
21
+ background-color: #f0f0f0;
22
+ }
23
+ #message {
24
+ text-align: center;
25
+ margin-top: 20px;
26
+ font-family: Arial, sans-serif;
27
+ color: #ff0000;
28
+ }
29
+ </style>
30
+ </head>
31
+ <body>
32
+
33
+ <h2>Drag and Drop File Upload Test</h2>
34
+
35
+ <!-- Drag and Drop Zone -->
36
+ <div id="drop-zone">
37
+ Click or drag file to this area to upload
38
+ </div>
39
+
40
+ <input type="file" id="myFile" style="display: none;">
41
+
42
+ <!-- Validation Message Area -->
43
+ <div id="message"></div>
44
+
45
+ <script>
46
+ const dropZone = document.getElementById('drop-zone');
47
+ const fileInput = document.getElementById('myFile');
48
+ const messageDiv = document.getElementById('message');
49
+
50
+ // Function to display validation messages
51
+ function showMessage(message, isError = false) {
52
+ messageDiv.textContent = message;
53
+ messageDiv.style.color = isError ? '#ff0000' : '#008000'; // Red for errors, green for success
54
+ }
55
+
56
+ // Trigger file input click when the drop zone is clicked
57
+ dropZone.addEventListener('click', function() {
58
+ fileInput.click();
59
+ });
60
+
61
+ // Handle drag over
62
+ dropZone.addEventListener('dragover', function(e) {
63
+ e.preventDefault();
64
+ dropZone.classList.add('hover');
65
+ });
66
+
67
+ // Handle drag leave
68
+ dropZone.addEventListener('dragleave', function() {
69
+ dropZone.classList.remove('hover');
70
+ });
71
+
72
+ // Handle file drop
73
+ dropZone.addEventListener('drop', function(e) {
74
+ e.preventDefault();
75
+ dropZone.classList.remove('hover');
76
+ const files = e.dataTransfer.files;
77
+
78
+ if (files.length > 0) {
79
+ showMessage(`File dropped: ${files[0].name}`, false);
80
+ fileInput.files = files;
81
+ }
82
+ else {
83
+ showMessage('No file was dropped.', true);
84
+ }
85
+ });
86
+ </script>
87
+
88
+ </body>
89
+ </html>
@@ -9,3 +9,9 @@ Feature: File upload
9
9
  And I click the button "upload!"
10
10
  And I save the current url to the variable "URL"
11
11
  Then I should see "{URL}" matches ".*\?filename=file_upload.feature"
12
+
13
+ Scenario: User can drag and drop to upload a file
14
+ Given I start a webserver at directory "data/www" and save the port to the variable "PORT"
15
+ And I open a browser at the url "http://{HOST_ADDRESS}:{PORT}/drag_drop.html"
16
+ When I wait to drag and drop the file "features/browser/file_upload.feature" to "Click or drag file to this area to upload"
17
+ Then I wait to see the text "File dropped: file_upload.feature"
@@ -204,7 +204,7 @@ Feature: Report basics
204
204
  @runtime-timeout
205
205
  Scenario: User can run with a runtime timeout and still produce a valid report
206
206
  Given I run the command "cucu run data/features/slow_features --runtime-timeout 9 --results {CUCU_RESULTS_DIR}/runtime_timeout_reporting_results" and expect exit code "1"
207
- Then I should see the previous step took less than "13" seconds
207
+ Then I should see the previous step took less than "14" seconds
208
208
  When I run the command "cucu report {CUCU_RESULTS_DIR}/runtime_timeout_reporting_results --output {CUCU_RESULTS_DIR}/runtime_timeout_reporting_report" and expect exit code "0"
209
209
  And I start a webserver at directory "{CUCU_RESULTS_DIR}/runtime_timeout_reporting_report/" and save the port to the variable "PORT"
210
210
  And I open a browser at the url "http://{HOST_ADDRESS}:{PORT}/index.html"
@@ -1,13 +1,25 @@
1
1
  [project]
2
2
  name = "cucu"
3
- version = "1.0.0"
3
+ version = "1.0.4"
4
4
  description = "Easy BDD web testing"
5
5
  readme = "README.md"
6
6
  license = { text = "The Clear BSD License" }
7
7
  keywords = ["cucumber", "selenium", "behave"]
8
- homepage = "https://github.com/dominodatalab/cucu"
9
- repository = "https://github.com/dominodatalab/cucu"
10
- authors = [{ name = "Domino Data Lab", email = "open-source@dominodatalab.com" }]
8
+ authors = [
9
+ {name = "Domino Data Lab", email = "open-source@dominodatalab.com"},
10
+ {name = "Rodney Gomes", email = "107359+rlgomes@users.noreply.github.com"},
11
+ {name = "Cedric Young", email = "4129217+ccedricyoung@users.noreply.github.com"},
12
+ {name = "Xin Dong", email = "104880864+ddl-xin@users.noreply.github.com"},
13
+ {name = "Kavya", email = "91882851+ddl-kavya@users.noreply.github.com"},
14
+ {name = "Kevin Garton", email = "71028750+ddl-kgarton@users.noreply.github.com"},
15
+ {name = "Joy Liao", email = "107583686+ddl-joy-liao@users.noreply.github.com"},
16
+ ]
17
+ maintainers = [
18
+ {name = "Domino Data Lab", email = "open-source@dominodatalab.com"},
19
+ {name = "Cedric Young", email = "4129217+ccedricyoung@users.noreply.github.com"},
20
+ {name = "Kevin Garton", email = "71028750+ddl-kgarton@users.noreply.github.com"},
21
+ {name = "Brian Colby", email = "92048365+ddl-bcolby@users.noreply.github.com"}
22
+ ]
11
23
  classifiers = [
12
24
  "Development Status :: 4 - Beta",
13
25
  "Environment :: Console",
@@ -52,6 +64,11 @@ dependencies = [
52
64
  "tenacity~=9.0.0",
53
65
  ]
54
66
 
67
+ [project.urls]
68
+ Homepage = "https://github.com/dominodatalab/cucu"
69
+ Download = "https://pypi.org/project/cucu/"
70
+ "Source Code" = "https://github.com/dominodatalab/cucu"
71
+
55
72
  [project.scripts]
56
73
  cucu = "cucu.cli:main"
57
74
 
@@ -2,7 +2,7 @@ import os
2
2
 
3
3
  import humanize
4
4
 
5
- from cucu import fuzzy, logger, step
5
+ from cucu import fuzzy, logger, retry, step
6
6
  from cucu.utils import take_saw_element_screenshot
7
7
 
8
8
 
@@ -69,7 +69,6 @@ JS_DROP_FILE = """
69
69
  """
70
70
 
71
71
 
72
- @step('I drag and drop the file "{filepath}" to "{name}"')
73
72
  def drag_and_drop_file(ctx, name, filepath):
74
73
  drop_target = fuzzy.find(ctx.browser, name, ["*"])
75
74
  drop_target_html = drop_target.get_attribute("outerHTML")
@@ -78,3 +77,13 @@ def drag_and_drop_file(ctx, name, filepath):
78
77
  )
79
78
  file_input = ctx.browser.execute(JS_DROP_FILE, drop_target, 0, 0)
80
79
  file_input.send_keys(os.path.abspath(filepath))
80
+
81
+
82
+ @step('I drag and drop the file "{filepath}" to "{name}"')
83
+ def should_drag_and_drop_file(ctx, filepath, name):
84
+ drag_and_drop_file(ctx, name, filepath)
85
+
86
+
87
+ @step('I wait to drag and drop the file "{filepath}" to "{name}"')
88
+ def wait_to_drag_and_drop_file(ctx, filepath, name):
89
+ retry(drag_and_drop_file)(ctx, name, filepath)
@@ -11,6 +11,8 @@ import shutil
11
11
  import humanize
12
12
  from tabulate import DataRow, TableFormat, tabulate
13
13
  from tenacity import (
14
+ after_log,
15
+ before_log,
14
16
  before_sleep_log,
15
17
  retry_if_not_exception_type,
16
18
  stop_after_delay,
@@ -119,6 +121,8 @@ def retry(func, wait_up_to_s=None, retry_after_s=None):
119
121
  stop=stop_after_delay(wait_up_to_s),
120
122
  wait=wait_fixed(retry_after_s),
121
123
  retry=retry_if_not_exception_type(StopRetryException),
124
+ before=before_log(logger, logging.DEBUG),
125
+ after=after_log(logger, logging.DEBUG),
122
126
  before_sleep=before_sleep_log(logger, logging.DEBUG),
123
127
  )
124
128
  def new_decorator(*args, **kwargs):
@@ -263,7 +263,7 @@ toml = [
263
263
 
264
264
  [[package]]
265
265
  name = "cucu"
266
- version = "1.0.0"
266
+ version = "1.0.4"
267
267
  source = { editable = "." }
268
268
  dependencies = [
269
269
  { name = "beautifulsoup4" },
@@ -771,8 +771,6 @@ version = "6.0.0"
771
771
  source = { registry = "https://pypi.org/simple" }
772
772
  sdist = { url = "https://files.pythonhosted.org/packages/18/c7/8c6872f7372eb6a6b2e4708b88419fb46b857f7a2e1892966b851cc79fc9/psutil-6.0.0.tar.gz", hash = "sha256:8faae4f310b6d969fa26ca0545338b21f73c6b15db7c4a8d934a5482faa818f2", size = 508067 }
773
773
  wheels = [
774
- { url = "https://files.pythonhosted.org/packages/c5/66/78c9c3020f573c58101dc43a44f6855d01bbbd747e24da2f0c4491200ea3/psutil-6.0.0-cp27-none-win32.whl", hash = "sha256:02b69001f44cc73c1c5279d02b30a817e339ceb258ad75997325e0e6169d8b35", size = 249766 },
775
- { url = "https://files.pythonhosted.org/packages/e1/3f/2403aa9558bea4d3854b0e5e567bc3dd8e9fbc1fc4453c0aa9aafeb75467/psutil-6.0.0-cp27-none-win_amd64.whl", hash = "sha256:21f1fb635deccd510f69f485b87433460a603919b45e2a324ad65b0cc74f8fb1", size = 253024 },
776
774
  { url = "https://files.pythonhosted.org/packages/0b/37/f8da2fbd29690b3557cca414c1949f92162981920699cd62095a984983bf/psutil-6.0.0-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:c588a7e9b1173b6e866756dde596fd4cad94f9399daf99ad8c3258b3cb2b47a0", size = 250961 },
777
775
  { url = "https://files.pythonhosted.org/packages/35/56/72f86175e81c656a01c4401cd3b1c923f891b31fbcebe98985894176d7c9/psutil-6.0.0-cp36-abi3-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6ed2440ada7ef7d0d608f20ad89a04ec47d2d3ab7190896cd62ca5fc4fe08bf0", size = 287478 },
778
776
  { url = "https://files.pythonhosted.org/packages/19/74/f59e7e0d392bc1070e9a70e2f9190d652487ac115bb16e2eff6b22ad1d24/psutil-6.0.0-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5fd9a97c8e94059b0ef54a7d4baf13b405011176c3b6ff257c247cae0d560ecd", size = 290455 },
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes