robotframework 7.2.1__tar.gz → 7.3rc1__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 (303) hide show
  1. {robotframework-7.2.1 → robotframework-7.3rc1}/BUILD.rst +18 -7
  2. {robotframework-7.2.1/src/robotframework.egg-info → robotframework-7.3rc1}/PKG-INFO +2 -2
  3. robotframework-7.3rc1/setup.py +84 -0
  4. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/__init__.py +4 -5
  5. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/__main__.py +4 -2
  6. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/api/__init__.py +9 -9
  7. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/api/deco.py +34 -34
  8. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/api/exceptions.py +8 -3
  9. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/api/interfaces.py +101 -62
  10. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/api/logger.py +20 -19
  11. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/api/parsing.py +49 -49
  12. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/conf/__init__.py +7 -2
  13. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/conf/gatherfailed.py +10 -8
  14. robotframework-7.3rc1/src/robot/conf/languages.py +1462 -0
  15. robotframework-7.3rc1/src/robot/conf/settings.py +800 -0
  16. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/errors.py +94 -59
  17. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/__init__.py +6 -7
  18. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/htmlfilewriter.py +16 -14
  19. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/jsonwriter.py +31 -22
  20. robotframework-7.3rc1/src/robot/htmldata/libdoc/libdoc.html +408 -0
  21. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/template.py +13 -12
  22. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdoc.py +89 -45
  23. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/__init__.py +3 -2
  24. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/builder.py +13 -10
  25. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/consoleviewer.py +22 -22
  26. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/datatypes.py +61 -35
  27. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/htmlutils.py +51 -39
  28. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/htmlwriter.py +9 -6
  29. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/jsonbuilder.py +79 -56
  30. robotframework-7.3rc1/src/robot/libdocpkg/languages.py +29 -0
  31. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/model.py +91 -60
  32. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/output.py +3 -4
  33. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/robotbuilder.py +61 -44
  34. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/standardtypes.py +40 -36
  35. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/writer.py +7 -7
  36. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/xmlbuilder.py +84 -58
  37. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/xmlwriter.py +78 -61
  38. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/BuiltIn.py +674 -440
  39. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/Collections.py +268 -127
  40. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/DateTime.py +76 -42
  41. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/Dialogs.py +16 -15
  42. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/Easter.py +4 -4
  43. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/OperatingSystem.py +162 -158
  44. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/Process.py +304 -172
  45. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/Remote.py +83 -63
  46. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/Screenshot.py +79 -65
  47. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/String.py +98 -61
  48. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/Telnet.py +257 -160
  49. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/XML.py +205 -110
  50. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/__init__.py +16 -3
  51. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libraries/dialogs_py.py +92 -60
  52. robotframework-7.3rc1/src/robot/logo.png +0 -0
  53. robotframework-7.3rc1/src/robot/model/__init__.py +66 -0
  54. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/body.py +106 -81
  55. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/configurer.py +36 -20
  56. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/control.py +225 -179
  57. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/filter.py +35 -27
  58. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/fixture.py +8 -6
  59. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/itemlist.py +55 -48
  60. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/keyword.py +18 -14
  61. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/message.py +19 -18
  62. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/metadata.py +7 -4
  63. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/modelobject.py +71 -50
  64. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/modifier.py +12 -8
  65. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/namepatterns.py +2 -2
  66. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/statistics.py +23 -10
  67. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/stats.py +38 -21
  68. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/suitestatistics.py +1 -1
  69. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/tags.py +50 -48
  70. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/tagsetter.py +8 -5
  71. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/tagstatistics.py +28 -19
  72. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/testcase.py +70 -43
  73. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/testsuite.py +121 -76
  74. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/totalstatistics.py +5 -5
  75. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/model/visitor.py +69 -68
  76. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/__init__.py +5 -5
  77. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/console/__init__.py +17 -8
  78. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/console/dotted.py +26 -24
  79. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/console/highlighting.py +44 -33
  80. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/console/quiet.py +3 -3
  81. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/console/verbose.py +42 -24
  82. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/debugfile.py +30 -28
  83. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/filelogger.py +21 -12
  84. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/jsonlogger.py +109 -82
  85. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/librarylogger.py +10 -11
  86. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/listeners.py +241 -210
  87. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/logger.py +36 -36
  88. robotframework-7.3rc1/src/robot/output/loggerapi.py +271 -0
  89. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/loggerhelper.py +29 -26
  90. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/loglevel.py +9 -9
  91. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/output.py +14 -6
  92. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/outputfile.py +51 -13
  93. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/pyloggingconf.py +13 -11
  94. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/output/stdoutlogsplitter.py +12 -9
  95. robotframework-7.3rc1/src/robot/output/xmllogger.py +350 -0
  96. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/__init__.py +23 -5
  97. {robotframework-7.2.1/src/robot/running/builder → robotframework-7.3rc1/src/robot/parsing/lexer}/__init__.py +6 -3
  98. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/lexer/blocklexers.py +180 -76
  99. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/lexer/context.py +30 -23
  100. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/lexer/lexer.py +41 -25
  101. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/lexer/settings.py +112 -103
  102. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/lexer/statementlexers.py +60 -49
  103. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/lexer/tokenizer.py +23 -22
  104. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/lexer/tokens.py +149 -120
  105. robotframework-7.3rc1/src/robot/parsing/model/__init__.py +38 -0
  106. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/model/blocks.py +153 -105
  107. robotframework-7.3rc1/src/robot/parsing/model/statements.py +1769 -0
  108. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/model/visitor.py +12 -11
  109. {robotframework-7.2.1/src/robot/parsing/lexer → robotframework-7.3rc1/src/robot/parsing/parser}/__init__.py +5 -2
  110. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/parser/blockparsers.py +13 -12
  111. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/parser/fileparser.py +16 -14
  112. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/parser/parser.py +33 -15
  113. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/parsing/suitestructure.py +58 -49
  114. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/pythonpathsetter.py +3 -2
  115. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/rebot.py +20 -12
  116. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/__init__.py +1 -1
  117. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/expandkeywordmatcher.py +6 -6
  118. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/jsbuildingcontext.py +17 -9
  119. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/jsexecutionresult.py +30 -16
  120. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/jsmodelbuilders.py +124 -63
  121. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/jswriter.py +32 -29
  122. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/logreportwriters.py +14 -14
  123. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/outputwriter.py +3 -3
  124. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/resultwriter.py +31 -23
  125. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/stringcache.py +2 -2
  126. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/reporting/xunitwriter.py +34 -26
  127. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/__init__.py +26 -6
  128. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/configurer.py +12 -6
  129. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/executionerrors.py +7 -6
  130. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/executionresult.py +83 -56
  131. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/flattenkeywordmatcher.py +25 -23
  132. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/keywordremover.py +27 -25
  133. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/merger.py +35 -26
  134. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/messagefilter.py +4 -5
  135. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/model.py +376 -291
  136. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/modeldeprecation.py +9 -6
  137. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/resultbuilder.py +27 -23
  138. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/suiteteardownfailed.py +4 -4
  139. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/visitor.py +1 -0
  140. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/result/xmlelementhandlers.py +162 -138
  141. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/run.py +37 -23
  142. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/__init__.py +42 -12
  143. robotframework-7.3rc1/src/robot/running/arguments/__init__.py +26 -0
  144. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/argumentconverter.py +36 -20
  145. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/argumentmapper.py +8 -7
  146. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/argumentparser.py +94 -51
  147. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/argumentresolver.py +25 -15
  148. robotframework-7.3rc1/src/robot/running/arguments/argumentspec.py +286 -0
  149. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/argumentvalidator.py +19 -15
  150. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/customconverters.py +30 -16
  151. robotframework-7.3rc1/src/robot/running/arguments/embedded.py +195 -0
  152. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/typeconverters.py +249 -239
  153. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/typeinfo.py +200 -114
  154. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/typeinfoparser.py +25 -24
  155. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/arguments/typevalidator.py +17 -10
  156. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/bodyrunner.py +199 -113
  157. robotframework-7.3rc1/src/robot/running/builder/__init__.py +21 -0
  158. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/builder/builders.py +77 -58
  159. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/builder/parsers.py +59 -31
  160. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/builder/settings.py +37 -33
  161. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/builder/transformers.py +149 -83
  162. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/context.py +77 -41
  163. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/dynamicmethods.py +37 -28
  164. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/importer.py +31 -18
  165. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/invalidkeyword.py +13 -10
  166. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/keywordfinder.py +16 -16
  167. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/keywordimplementation.py +45 -35
  168. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/librarykeyword.py +207 -127
  169. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/librarykeywordrunner.py +131 -80
  170. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/libraryscopes.py +6 -4
  171. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/model.py +307 -202
  172. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/namespace.py +108 -76
  173. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/randomizer.py +7 -6
  174. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/resourcemodel.py +183 -127
  175. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/runkwregister.py +10 -4
  176. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/signalhandler.py +17 -15
  177. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/status.py +71 -57
  178. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/statusreporter.py +16 -7
  179. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/suiterunner.py +100 -73
  180. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/testlibraries.py +258 -168
  181. {robotframework-7.2.1/src/robot/parsing/parser → robotframework-7.3rc1/src/robot/running/timeouts}/__init__.py +1 -1
  182. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/timeouts/nosupport.py +4 -5
  183. robotframework-7.3rc1/src/robot/running/timeouts/posix.py +57 -0
  184. robotframework-7.3rc1/src/robot/running/timeouts/runner.py +85 -0
  185. robotframework-7.3rc1/src/robot/running/timeouts/timeout.py +130 -0
  186. robotframework-7.3rc1/src/robot/running/timeouts/windows.py +74 -0
  187. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/userkeywordrunner.py +93 -67
  188. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/testdoc.py +62 -56
  189. robotframework-7.3rc1/src/robot/utils/__init__.py +251 -0
  190. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/application.py +40 -18
  191. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/argumentparser.py +115 -98
  192. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/asserts.py +35 -29
  193. robotframework-7.3rc1/src/robot/utils/charwidth.py +106 -0
  194. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/compress.py +2 -2
  195. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/connectioncache.py +13 -11
  196. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/dotdict.py +7 -5
  197. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/encoding.py +13 -10
  198. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/encodingsniffer.py +23 -19
  199. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/error.py +33 -30
  200. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/escaping.py +31 -28
  201. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/etreewrapper.py +15 -26
  202. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/filereader.py +15 -18
  203. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/frange.py +10 -12
  204. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/htmlformatters.py +104 -89
  205. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/importer.py +56 -44
  206. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/json.py +13 -16
  207. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/markuputils.py +13 -9
  208. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/markupwriters.py +32 -15
  209. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/match.py +29 -10
  210. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/misc.py +33 -31
  211. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/normalizing.py +29 -22
  212. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/notset.py +2 -1
  213. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/platform.py +10 -9
  214. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/recommendations.py +14 -6
  215. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/restreader.py +14 -16
  216. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/robotenv.py +5 -3
  217. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/robotio.py +19 -20
  218. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/robotpath.py +17 -17
  219. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/robottime.py +179 -112
  220. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/robottypes.py +57 -63
  221. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/setter.py +11 -14
  222. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/sortable.py +2 -3
  223. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/text.py +31 -26
  224. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/typehints.py +2 -2
  225. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/unic.py +3 -3
  226. robotframework-7.3rc1/src/robot/variables/__init__.py +44 -0
  227. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/assigner.py +123 -91
  228. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/evaluation.py +43 -30
  229. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/filesetter.py +50 -38
  230. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/finders.py +36 -32
  231. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/notfound.py +16 -10
  232. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/replacer.py +25 -19
  233. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/scopes.py +48 -41
  234. robotframework-7.3rc1/src/robot/variables/search.py +335 -0
  235. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/store.py +32 -21
  236. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/tablesetter.py +80 -31
  237. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/variables.py +16 -6
  238. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/version.py +8 -11
  239. {robotframework-7.2.1 → robotframework-7.3rc1/src/robotframework.egg-info}/PKG-INFO +2 -2
  240. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robotframework.egg-info/SOURCES.txt +4 -0
  241. {robotframework-7.2.1 → robotframework-7.3rc1}/tasks.py +103 -25
  242. robotframework-7.2.1/setup.py +0 -75
  243. robotframework-7.2.1/src/robot/conf/languages.py +0 -1358
  244. robotframework-7.2.1/src/robot/conf/settings.py +0 -757
  245. robotframework-7.2.1/src/robot/htmldata/libdoc/libdoc.html +0 -408
  246. robotframework-7.2.1/src/robot/model/__init__.py +0 -43
  247. robotframework-7.2.1/src/robot/output/loggerapi.py +0 -232
  248. robotframework-7.2.1/src/robot/output/xmllogger.py +0 -332
  249. robotframework-7.2.1/src/robot/parsing/model/__init__.py +0 -21
  250. robotframework-7.2.1/src/robot/parsing/model/statements.py +0 -1441
  251. robotframework-7.2.1/src/robot/running/arguments/__init__.py +0 -23
  252. robotframework-7.2.1/src/robot/running/arguments/argumentspec.py +0 -209
  253. robotframework-7.2.1/src/robot/running/arguments/embedded.py +0 -146
  254. robotframework-7.2.1/src/robot/running/timeouts/__init__.py +0 -131
  255. robotframework-7.2.1/src/robot/running/timeouts/posix.py +0 -40
  256. robotframework-7.2.1/src/robot/running/timeouts/windows.py +0 -71
  257. robotframework-7.2.1/src/robot/utils/__init__.py +0 -134
  258. robotframework-7.2.1/src/robot/utils/charwidth.py +0 -140
  259. robotframework-7.2.1/src/robot/variables/__init__.py +0 -33
  260. robotframework-7.2.1/src/robot/variables/search.py +0 -285
  261. {robotframework-7.2.1 → robotframework-7.3rc1}/AUTHORS.rst +0 -0
  262. {robotframework-7.2.1 → robotframework-7.3rc1}/CONTRIBUTING.rst +0 -0
  263. {robotframework-7.2.1 → robotframework-7.3rc1}/COPYRIGHT.txt +0 -0
  264. {robotframework-7.2.1 → robotframework-7.3rc1}/INSTALL.rst +0 -0
  265. {robotframework-7.2.1 → robotframework-7.3rc1}/LICENSE.txt +0 -0
  266. {robotframework-7.2.1 → robotframework-7.3rc1}/MANIFEST.in +0 -0
  267. {robotframework-7.2.1 → robotframework-7.3rc1}/README.rst +0 -0
  268. {robotframework-7.2.1 → robotframework-7.3rc1}/setup.cfg +0 -0
  269. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/api/py.typed +0 -0
  270. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/common/__init__.py +0 -0
  271. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/common/js_disabled.css +0 -0
  272. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/common/storage.js +0 -0
  273. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/lib/__init__.py +0 -0
  274. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/lib/jquery.highlight.min.js +0 -0
  275. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/lib/jquery.min.js +0 -0
  276. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/lib/jquery.tablesorter.min.js +0 -0
  277. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/lib/jquery.tmpl.min.js +0 -0
  278. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/lib/jsxcompressor.min.js +0 -0
  279. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/libdoc/__init__.py +0 -0
  280. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/__init__.py +0 -0
  281. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/common.css +0 -0
  282. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/doc_formatting.css +0 -0
  283. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/fileloading.js +0 -0
  284. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/log.css +0 -0
  285. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/log.html +0 -0
  286. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/log.js +0 -0
  287. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/model.js +0 -0
  288. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/print.css +0 -0
  289. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/report.css +0 -0
  290. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/report.html +0 -0
  291. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/testdata.js +0 -0
  292. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/util.js +0 -0
  293. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/rebot/view.js +0 -0
  294. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/testdoc/__init__.py +0 -0
  295. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/testdoc/testdoc.css +0 -0
  296. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/htmldata/testdoc/testdoc.html +0 -0
  297. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/libdocpkg/jsonwriter.py +0 -0
  298. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/running/outputcapture.py +0 -0
  299. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/utils/robotinspect.py +0 -0
  300. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robot/variables/resolvable.py +0 -0
  301. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robotframework.egg-info/dependency_links.txt +0 -0
  302. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robotframework.egg-info/entry_points.txt +0 -0
  303. {robotframework-7.2.1 → robotframework-7.3rc1}/src/robotframework.egg-info/top_level.txt +0 -0
@@ -151,6 +151,24 @@ Release notes
151
151
 
152
152
  __ https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/creating-a-personal-access-token
153
153
 
154
+
155
+ Update libdoc generated files
156
+ -----------------------------
157
+
158
+ Run
159
+
160
+ invoke build-libdoc
161
+
162
+ This step can be skipped if there are no changes to Libdoc. Prerequisites
163
+ are listed in `<src/web/README.md>`_.
164
+
165
+ This will regenerate the libdoc html template and update libdoc command line
166
+ with the latest supported lagnuages.
167
+
168
+ Commit & push if there are changes any changes to either
169
+ `src/robot/htmldata/libdoc/libdoc.html` or `src/robot/libdocpkg/languages.py`.
170
+
171
+
154
172
  Set version
155
173
  -----------
156
174
 
@@ -189,13 +207,6 @@ Creating distributions
189
207
 
190
208
  invoke clean
191
209
 
192
- 3. Build `libdoc.html`::
193
-
194
- npm run build --prefix src/web/
195
-
196
- This step can be skipped if there are no changes to Libdoc. Prerequisites
197
- are listed in `<src/web/README.md>`_.
198
-
199
210
  4. Create and validate source distribution and `wheel <https://pythonwheels.com>`_::
200
211
 
201
212
  python setup.py sdist bdist_wheel
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: robotframework
3
- Version: 7.2.1
3
+ Version: 7.3rc1
4
4
  Summary: Generic automation framework for acceptance testing and robotic process automation (RPA)
5
5
  Home-page: https://robotframework.org
6
6
  Author: Pekka Klärck
@@ -10,7 +10,7 @@ Download-URL: https://pypi.org/project/robotframework
10
10
  Project-URL: Source, https://github.com/robotframework/robotframework
11
11
  Project-URL: Issue Tracker, https://github.com/robotframework/robotframework/issues
12
12
  Project-URL: Documentation, https://robotframework.org/robotframework
13
- Project-URL: Release Notes, https://github.com/robotframework/robotframework/blob/master/doc/releasenotes/rf-7.2.1.rst
13
+ Project-URL: Release Notes, https://github.com/robotframework/robotframework/blob/master/doc/releasenotes/rf-7.3rc1.rst
14
14
  Project-URL: Slack, http://slack.robotframework.org
15
15
  Description: Robot Framework
16
16
  ===============
@@ -0,0 +1,84 @@
1
+ #!/usr/bin/env python
2
+
3
+ from os.path import abspath, dirname, join
4
+
5
+ from setuptools import find_packages, setup
6
+
7
+ # Version number typically updated by running `invoke set-version <version>`.
8
+ # Run `invoke --help set-version` or see tasks.py for details.
9
+ VERSION = "7.3rc1"
10
+ with open(join(dirname(abspath(__file__)), "README.rst")) as f:
11
+ LONG_DESCRIPTION = f.read()
12
+ base_url = "https://github.com/robotframework/robotframework/blob/master"
13
+ for text in ("INSTALL", "CONTRIBUTING"):
14
+ search = f"`<{text}.rst>`__"
15
+ replace = f"`{text}.rst <{base_url}/{text}.rst>`__"
16
+ if search not in LONG_DESCRIPTION:
17
+ raise RuntimeError(f"{search} not found from README.rst")
18
+ LONG_DESCRIPTION = LONG_DESCRIPTION.replace(search, replace)
19
+ CLASSIFIERS = """
20
+ Development Status :: 5 - Production/Stable
21
+ License :: OSI Approved :: Apache Software License
22
+ Operating System :: OS Independent
23
+ Programming Language :: Python :: 3
24
+ Programming Language :: Python :: 3 :: Only
25
+ Programming Language :: Python :: 3.8
26
+ Programming Language :: Python :: 3.9
27
+ Programming Language :: Python :: 3.10
28
+ Programming Language :: Python :: 3.11
29
+ Programming Language :: Python :: 3.12
30
+ Programming Language :: Python :: 3.13
31
+ Programming Language :: Python :: Implementation :: CPython
32
+ Programming Language :: Python :: Implementation :: PyPy
33
+ Topic :: Software Development :: Testing
34
+ Topic :: Software Development :: Testing :: Acceptance
35
+ Topic :: Software Development :: Testing :: BDD
36
+ Framework :: Robot Framework
37
+ """.strip().splitlines()
38
+ DESCRIPTION = (
39
+ "Generic automation framework for acceptance testing "
40
+ "and robotic process automation (RPA)"
41
+ )
42
+ KEYWORDS = (
43
+ "robotframework automation testautomation rpa testing acceptancetesting atdd bdd"
44
+ )
45
+ PACKAGE_DATA = [
46
+ join("htmldata", directory, pattern)
47
+ for directory in ("rebot", "libdoc", "testdoc", "lib", "common")
48
+ for pattern in ("*.html", "*.css", "*.js")
49
+ ] + ["api/py.typed", "logo.png"]
50
+
51
+
52
+ setup(
53
+ name="robotframework",
54
+ version=VERSION,
55
+ author="Pekka Klärck",
56
+ author_email="peke@eliga.fi",
57
+ url="https://robotframework.org",
58
+ project_urls={
59
+ "Source": "https://github.com/robotframework/robotframework",
60
+ "Issue Tracker": "https://github.com/robotframework/robotframework/issues",
61
+ "Documentation": "https://robotframework.org/robotframework",
62
+ "Release Notes": f"https://github.com/robotframework/robotframework/blob/master/doc/releasenotes/rf-{VERSION}.rst",
63
+ "Slack": "http://slack.robotframework.org",
64
+ },
65
+ download_url="https://pypi.org/project/robotframework",
66
+ license="Apache License 2.0",
67
+ description=DESCRIPTION,
68
+ long_description=LONG_DESCRIPTION,
69
+ long_description_content_type="text/x-rst",
70
+ keywords=KEYWORDS,
71
+ platforms="any",
72
+ python_requires=">=3.8",
73
+ classifiers=CLASSIFIERS,
74
+ package_dir={"": "src"},
75
+ package_data={"robot": PACKAGE_DATA},
76
+ packages=find_packages("src"),
77
+ entry_points={
78
+ "console_scripts": [
79
+ "robot = robot.run:run_cli",
80
+ "rebot = robot.rebot:rebot_cli",
81
+ "libdoc = robot.libdoc:libdoc_cli",
82
+ ]
83
+ },
84
+ )
@@ -40,16 +40,15 @@ this package are for internal usage and may change without prior notice.
40
40
  import sys
41
41
  import warnings
42
42
 
43
- from robot.rebot import rebot, rebot_cli
44
- from robot.run import run, run_cli
43
+ from robot.rebot import rebot as rebot, rebot_cli as rebot_cli
44
+ from robot.run import run as run, run_cli as run_cli
45
45
  from robot.version import get_version
46
46
 
47
-
48
47
  # Avoid warnings when using `python -m robot.run`.
49
48
  # https://github.com/robotframework/robotframework/issues/2552
50
49
  if not sys.warnoptions:
51
- warnings.filterwarnings('ignore', category=RuntimeWarning, module='runpy')
50
+ warnings.filterwarnings("ignore", category=RuntimeWarning, module="runpy")
52
51
 
53
52
 
54
- __all__ = ['run', 'run_cli', 'rebot', 'rebot_cli']
53
+ __all__ = ["rebot", "rebot_cli", "run", "run_cli"]
55
54
  __version__ = get_version()
@@ -17,8 +17,10 @@
17
17
 
18
18
  import sys
19
19
 
20
- if __name__ == '__main__' and 'robot' not in sys.modules:
21
- import pythonpathsetter
20
+ if __name__ == "__main__" and "robot" not in sys.modules:
21
+ from pythonpathsetter import set_pythonpath
22
+
23
+ set_pythonpath()
22
24
 
23
25
  from robot import run_cli
24
26
 
@@ -73,7 +73,7 @@ All of the above classes can be imported like::
73
73
  from robot.api import ClassName
74
74
 
75
75
  The public API intends to follow the `distributing type information specification
76
- <https://typing.readthedocs.io/en/latest/spec/distributing.html#distributing-type-information>`_
76
+ <https://typing.readthedocs.io/en/latest/spec/distributing.html#distributing-type-information>`_
77
77
  originally specified in `PEP 484 <https://peps.python.org/pep-0484/>`_.
78
78
 
79
79
  See documentations of the individual APIs for more details.
@@ -85,29 +85,29 @@ See documentations of the individual APIs for more details.
85
85
  from robot.conf.languages import Language as Language, Languages as Languages
86
86
  from robot.model import SuiteVisitor as SuiteVisitor
87
87
  from robot.parsing import (
88
- get_tokens as get_tokens,
89
- get_resource_tokens as get_resource_tokens,
88
+ get_init_model as get_init_model,
90
89
  get_init_tokens as get_init_tokens,
91
90
  get_model as get_model,
92
91
  get_resource_model as get_resource_model,
93
- get_init_model as get_init_model,
94
- Token as Token
92
+ get_resource_tokens as get_resource_tokens,
93
+ get_tokens as get_tokens,
94
+ Token as Token,
95
95
  )
96
96
  from robot.reporting import ResultWriter as ResultWriter
97
97
  from robot.result import (
98
98
  ExecutionResult as ExecutionResult,
99
- ResultVisitor as ResultVisitor
99
+ ResultVisitor as ResultVisitor,
100
100
  )
101
101
  from robot.running import (
102
102
  TestSuite as TestSuite,
103
103
  TestSuiteBuilder as TestSuiteBuilder,
104
- TypeInfo as TypeInfo
104
+ TypeInfo as TypeInfo,
105
105
  )
106
106
 
107
107
  from .exceptions import (
108
108
  ContinuableFailure as ContinuableFailure,
109
+ Error as Error,
109
110
  Failure as Failure,
110
111
  FatalError as FatalError,
111
- Error as Error,
112
- SkipExecution as SkipExecution
112
+ SkipExecution as SkipExecution,
113
113
  )
@@ -13,22 +13,18 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
 
16
- from typing import Any, Callable, Literal, Sequence, TypeVar, Union, overload
16
+ from typing import Any, Callable, Literal, overload, Sequence, TypeVar, Union
17
17
 
18
18
  from .interfaces import TypeHints
19
19
 
20
-
21
- # Current annotations report `attr-defined` errors. This can be solved once Python 3.10
22
- # becomes the minimum version (error-free conditional typing proved too complex).
23
- # See: https://discuss.python.org/t/questions-related-to-typing-overload-style/38130
24
- F = TypeVar('F', bound=Callable[..., Any]) # Any function.
25
- K = TypeVar('K', bound=Callable[..., Any]) # Keyword function.
26
- L = TypeVar('L', bound=type) # Library class.
20
+ F = TypeVar("F", bound=Callable[..., Any])
21
+ K = TypeVar("K", bound=Callable[..., Any])
22
+ L = TypeVar("L", bound=type)
27
23
  KeywordDecorator = Callable[[K], K]
28
24
  LibraryDecorator = Callable[[L], L]
29
- Scope = Literal['GLOBAL', 'SUITE', 'TEST', 'TASK']
25
+ Scope = Literal["GLOBAL", "SUITE", "TEST", "TASK"]
30
26
  Converter = Union[Callable[[Any], Any], Callable[[Any, Any], Any]]
31
- DocFormat = Literal['ROBOT', 'HTML', 'TEXT', 'REST']
27
+ DocFormat = Literal["ROBOT", "HTML", "TEXT", "REST"]
32
28
 
33
29
 
34
30
  def not_keyword(func: F) -> F:
@@ -57,21 +53,23 @@ not_keyword.robot_not_keyword = True
57
53
 
58
54
 
59
55
  @overload
60
- def keyword(func: K, /) -> K:
61
- ...
56
+ def keyword(func: K, /) -> K: ...
62
57
 
63
58
 
64
59
  @overload
65
- def keyword(name: 'str | None' = None,
66
- tags: Sequence[str] = (),
67
- types: 'TypeHints | None' = ()) -> KeywordDecorator:
68
- ...
60
+ def keyword(
61
+ name: "str|None" = None,
62
+ tags: Sequence[str] = (),
63
+ types: "TypeHints|None" = (),
64
+ ) -> KeywordDecorator: ...
69
65
 
70
66
 
71
67
  @not_keyword
72
- def keyword(name: 'K | str | None' = None,
73
- tags: Sequence[str] = (),
74
- types: 'TypeHints | None' = ()) -> 'K | KeywordDecorator':
68
+ def keyword(
69
+ name: "K|str|None" = None,
70
+ tags: Sequence[str] = (),
71
+ types: "TypeHints|None" = (),
72
+ ) -> "K|KeywordDecorator":
75
73
  """Decorator to set custom name, tags and argument types to keywords.
76
74
 
77
75
  This decorator creates ``robot_name``, ``robot_tags`` and ``robot_types``
@@ -126,27 +124,29 @@ def keyword(name: 'K | str | None' = None,
126
124
 
127
125
 
128
126
  @overload
129
- def library(cls: L, /) -> L:
130
- ...
127
+ def library(cls: L, /) -> L: ...
131
128
 
132
129
 
133
130
  @overload
134
- def library(scope: 'Scope | None' = None,
135
- version: 'str | None' = None,
136
- converters: 'dict[type, Converter] | None' = None,
137
- doc_format: 'DocFormat | None' = None,
138
- listener: 'Any | None' = None,
139
- auto_keywords: bool = False) -> LibraryDecorator:
140
- ...
131
+ def library(
132
+ scope: "Scope|None" = None,
133
+ version: "str|None" = None,
134
+ converters: "dict[type, Converter]|None" = None,
135
+ doc_format: "DocFormat|None" = None,
136
+ listener: "Any|None" = None,
137
+ auto_keywords: bool = False,
138
+ ) -> LibraryDecorator: ...
141
139
 
142
140
 
143
141
  @not_keyword
144
- def library(scope: 'L | Scope | None' = None,
145
- version: 'str | None' = None,
146
- converters: 'dict[type, Converter] | None' = None,
147
- doc_format: 'DocFormat | None' = None,
148
- listener: 'Any | None' = None,
149
- auto_keywords: bool = False) -> 'L | LibraryDecorator':
142
+ def library(
143
+ scope: "L|Scope|None" = None,
144
+ version: "str|None" = None,
145
+ converters: "dict[type, Converter]|None" = None,
146
+ doc_format: "DocFormat|None" = None,
147
+ listener: "Any|None" = None,
148
+ auto_keywords: bool = False,
149
+ ) -> "L|LibraryDecorator":
150
150
  """Class decorator to control keyword discovery and other library settings.
151
151
 
152
152
  Disables automatic keyword detection by setting class attribute
@@ -29,6 +29,7 @@ class Failure(AssertionError):
29
29
  the standard ``AssertionError``. The main benefits are HTML support and that
30
30
  the name of this exception is consistent with other exceptions in this module.
31
31
  """
32
+
32
33
  ROBOT_SUPPRESS_NAME = True
33
34
 
34
35
  def __init__(self, message: str, html: bool = False):
@@ -36,11 +37,12 @@ class Failure(AssertionError):
36
37
  :param message: Exception message.
37
38
  :param html: When ``True``, message is considered to be HTML and not escaped.
38
39
  """
39
- super().__init__(message if not html else '*HTML* ' + message)
40
+ super().__init__(message if not html else "*HTML* " + message)
40
41
 
41
42
 
42
43
  class ContinuableFailure(Failure):
43
44
  """Report failed validation but allow continuing execution."""
45
+
44
46
  ROBOT_CONTINUE_ON_FAILURE = True
45
47
 
46
48
 
@@ -55,6 +57,7 @@ class Error(RuntimeError):
55
57
  the standard ``RuntimeError``. The main benefits are HTML support and that
56
58
  the name of this exception is consistent with other exceptions in this module.
57
59
  """
60
+
58
61
  ROBOT_SUPPRESS_NAME = True
59
62
 
60
63
  def __init__(self, message: str, html: bool = False):
@@ -62,17 +65,19 @@ class Error(RuntimeError):
62
65
  :param message: Exception message.
63
66
  :param html: When ``True``, message is considered to be HTML and not escaped.
64
67
  """
65
- super().__init__(message if not html else '*HTML* ' + message)
68
+ super().__init__(message if not html else "*HTML* " + message)
66
69
 
67
70
 
68
71
  class FatalError(Error):
69
72
  """Report error that stops the whole execution."""
73
+
70
74
  ROBOT_EXIT_ON_FAILURE = True
71
75
  ROBOT_SUPPRESS_NAME = False
72
76
 
73
77
 
74
78
  class SkipExecution(Exception):
75
79
  """Mark the executed test or task skipped."""
80
+
76
81
  ROBOT_SKIP_EXECUTION = True
77
82
  ROBOT_SUPPRESS_NAME = True
78
83
 
@@ -81,4 +86,4 @@ class SkipExecution(Exception):
81
86
  :param message: Exception message.
82
87
  :param html: When ``True``, message is considered to be HTML and not escaped.
83
88
  """
84
- super().__init__(message if not html else '*HTML* ' + message)
89
+ super().__init__(message if not html else "*HTML* " + message)