robotframework 7.4rc1__tar.gz → 7.4rc2__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 (289) hide show
  1. {robotframework-7.4rc1 → robotframework-7.4rc2}/PKG-INFO +2 -2
  2. {robotframework-7.4rc1 → robotframework-7.4rc2}/setup.py +1 -1
  3. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/types.py +15 -2
  4. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/BuiltIn.py +13 -8
  5. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/console/dotted.py +1 -1
  6. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/console/quiet.py +1 -1
  7. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/console/verbose.py +1 -1
  8. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/logger.py +14 -14
  9. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/typeconverters.py +7 -1
  10. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/version.py +1 -1
  11. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robotframework.egg-info/PKG-INFO +2 -2
  12. {robotframework-7.4rc1 → robotframework-7.4rc2}/AUTHORS.rst +0 -0
  13. {robotframework-7.4rc1 → robotframework-7.4rc2}/BUILD.rst +0 -0
  14. {robotframework-7.4rc1 → robotframework-7.4rc2}/CONTRIBUTING.rst +0 -0
  15. {robotframework-7.4rc1 → robotframework-7.4rc2}/COPYRIGHT.txt +0 -0
  16. {robotframework-7.4rc1 → robotframework-7.4rc2}/INSTALL.rst +0 -0
  17. {robotframework-7.4rc1 → robotframework-7.4rc2}/LICENSE.txt +0 -0
  18. {robotframework-7.4rc1 → robotframework-7.4rc2}/MANIFEST.in +0 -0
  19. {robotframework-7.4rc1 → robotframework-7.4rc2}/README.rst +0 -0
  20. {robotframework-7.4rc1 → robotframework-7.4rc2}/pyproject.toml +0 -0
  21. {robotframework-7.4rc1 → robotframework-7.4rc2}/setup.cfg +0 -0
  22. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/__init__.py +0 -0
  23. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/__main__.py +0 -0
  24. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/__init__.py +0 -0
  25. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/deco.py +0 -0
  26. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/exceptions.py +0 -0
  27. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/interfaces.py +0 -0
  28. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/logger.py +0 -0
  29. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/parsing.py +0 -0
  30. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/api/py.typed +0 -0
  31. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/conf/__init__.py +0 -0
  32. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/conf/gatherfailed.py +0 -0
  33. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/conf/languages.py +0 -0
  34. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/conf/settings.py +0 -0
  35. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/errors.py +0 -0
  36. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/__init__.py +0 -0
  37. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/common/__init__.py +0 -0
  38. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/common/js_disabled.css +0 -0
  39. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/common/storage.js +0 -0
  40. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/htmlfilewriter.py +0 -0
  41. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/jsonwriter.py +0 -0
  42. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/lib/__init__.py +0 -0
  43. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/lib/jquery.highlight.min.js +0 -0
  44. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/lib/jquery.min.js +0 -0
  45. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/lib/jquery.tablesorter.min.js +0 -0
  46. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/lib/jquery.tmpl.min.js +0 -0
  47. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/lib/jsxcompressor.min.js +0 -0
  48. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/libdoc/__init__.py +0 -0
  49. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/libdoc/libdoc.html +0 -0
  50. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/__init__.py +0 -0
  51. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/common.css +0 -0
  52. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/doc_formatting.css +0 -0
  53. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/fileloading.js +0 -0
  54. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/log.css +0 -0
  55. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/log.html +0 -0
  56. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/log.js +0 -0
  57. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/model.js +0 -0
  58. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/print.css +0 -0
  59. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/report.css +0 -0
  60. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/report.html +0 -0
  61. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/testdata.js +0 -0
  62. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/util.js +0 -0
  63. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/rebot/view.js +0 -0
  64. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/template.py +0 -0
  65. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/testdoc/__init__.py +0 -0
  66. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/testdoc/testdoc.css +0 -0
  67. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/htmldata/testdoc/testdoc.html +0 -0
  68. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdoc.py +0 -0
  69. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/__init__.py +0 -0
  70. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/builder.py +0 -0
  71. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/consoleviewer.py +0 -0
  72. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/datatypes.py +0 -0
  73. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/htmlutils.py +0 -0
  74. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/htmlwriter.py +0 -0
  75. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/jsonbuilder.py +0 -0
  76. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/jsonwriter.py +0 -0
  77. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/languages.py +0 -0
  78. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/model.py +0 -0
  79. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/output.py +0 -0
  80. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/robotbuilder.py +0 -0
  81. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/standardtypes.py +0 -0
  82. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/writer.py +0 -0
  83. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/xmlbuilder.py +0 -0
  84. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libdocpkg/xmlwriter.py +0 -0
  85. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/Collections.py +0 -0
  86. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/DateTime.py +0 -0
  87. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/Dialogs.py +0 -0
  88. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/Easter.py +0 -0
  89. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/OperatingSystem.py +0 -0
  90. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/Process.py +0 -0
  91. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/Remote.py +0 -0
  92. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/Screenshot.py +0 -0
  93. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/String.py +0 -0
  94. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/Telnet.py +0 -0
  95. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/XML.py +0 -0
  96. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/__init__.py +0 -0
  97. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/dialogs_py.py +0 -0
  98. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/normalizer.py +0 -0
  99. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/libraries/py.typed +0 -0
  100. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/logo.png +0 -0
  101. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/__init__.py +0 -0
  102. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/body.py +0 -0
  103. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/configurer.py +0 -0
  104. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/control.py +0 -0
  105. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/filter.py +0 -0
  106. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/fixture.py +0 -0
  107. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/itemlist.py +0 -0
  108. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/keyword.py +0 -0
  109. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/message.py +0 -0
  110. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/metadata.py +0 -0
  111. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/modelobject.py +0 -0
  112. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/modifier.py +0 -0
  113. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/namepatterns.py +0 -0
  114. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/statistics.py +0 -0
  115. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/stats.py +0 -0
  116. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/suitestatistics.py +0 -0
  117. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/tags.py +0 -0
  118. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/tagsetter.py +0 -0
  119. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/tagstatistics.py +0 -0
  120. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/testcase.py +0 -0
  121. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/testsuite.py +0 -0
  122. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/totalstatistics.py +0 -0
  123. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/model/visitor.py +0 -0
  124. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/__init__.py +0 -0
  125. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/console/__init__.py +0 -0
  126. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/console/highlighting.py +0 -0
  127. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/debugfile.py +0 -0
  128. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/filelogger.py +0 -0
  129. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/jsonlogger.py +0 -0
  130. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/librarylogger.py +0 -0
  131. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/listeners.py +0 -0
  132. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/loggerapi.py +0 -0
  133. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/loggerhelper.py +0 -0
  134. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/loglevel.py +0 -0
  135. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/output.py +0 -0
  136. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/outputfile.py +0 -0
  137. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/pyloggingconf.py +0 -0
  138. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/stdoutlogsplitter.py +0 -0
  139. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/output/xmllogger.py +0 -0
  140. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/__init__.py +0 -0
  141. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/__init__.py +0 -0
  142. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/blocklexers.py +0 -0
  143. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/context.py +0 -0
  144. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/lexer.py +0 -0
  145. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/settings.py +0 -0
  146. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/statementlexers.py +0 -0
  147. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/tokenizer.py +0 -0
  148. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/lexer/tokens.py +0 -0
  149. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/model/__init__.py +0 -0
  150. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/model/blocks.py +0 -0
  151. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/model/statements.py +0 -0
  152. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/model/visitor.py +0 -0
  153. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/parser/__init__.py +0 -0
  154. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/parser/blockparsers.py +0 -0
  155. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/parser/fileparser.py +0 -0
  156. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/parser/parser.py +0 -0
  157. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/parsing/suitestructure.py +0 -0
  158. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/pythonpathsetter.py +0 -0
  159. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/rebot.py +0 -0
  160. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/__init__.py +0 -0
  161. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/expandkeywordmatcher.py +0 -0
  162. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/jsbuildingcontext.py +0 -0
  163. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/jsexecutionresult.py +0 -0
  164. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/jsmodelbuilders.py +0 -0
  165. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/jswriter.py +0 -0
  166. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/logreportwriters.py +0 -0
  167. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/outputwriter.py +0 -0
  168. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/resultwriter.py +0 -0
  169. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/stringcache.py +0 -0
  170. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/reporting/xunitwriter.py +0 -0
  171. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/__init__.py +0 -0
  172. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/configurer.py +0 -0
  173. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/executionerrors.py +0 -0
  174. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/executionresult.py +0 -0
  175. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/flattenkeywordmatcher.py +0 -0
  176. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/keywordremover.py +0 -0
  177. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/merger.py +0 -0
  178. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/messagefilter.py +0 -0
  179. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/model.py +0 -0
  180. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/modeldeprecation.py +0 -0
  181. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/resultbuilder.py +0 -0
  182. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/suiteteardownfailed.py +0 -0
  183. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/visitor.py +0 -0
  184. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/result/xmlelementhandlers.py +0 -0
  185. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/run.py +0 -0
  186. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/__init__.py +0 -0
  187. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/__init__.py +0 -0
  188. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/argumentconverter.py +0 -0
  189. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/argumentmapper.py +0 -0
  190. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/argumentparser.py +0 -0
  191. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/argumentresolver.py +0 -0
  192. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/argumentspec.py +0 -0
  193. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/argumentvalidator.py +0 -0
  194. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/customconverters.py +0 -0
  195. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/embedded.py +0 -0
  196. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/typeinfo.py +0 -0
  197. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/typeinfoparser.py +0 -0
  198. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/arguments/typevalidator.py +0 -0
  199. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/bodyrunner.py +0 -0
  200. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/builder/__init__.py +0 -0
  201. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/builder/builders.py +0 -0
  202. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/builder/parsers.py +0 -0
  203. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/builder/settings.py +0 -0
  204. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/builder/transformers.py +0 -0
  205. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/context.py +0 -0
  206. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/dynamicmethods.py +0 -0
  207. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/importer.py +0 -0
  208. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/invalidkeyword.py +0 -0
  209. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/keywordfinder.py +0 -0
  210. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/keywordimplementation.py +0 -0
  211. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/librarykeyword.py +0 -0
  212. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/librarykeywordrunner.py +0 -0
  213. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/libraryscopes.py +0 -0
  214. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/model.py +0 -0
  215. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/namespace.py +0 -0
  216. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/outputcapture.py +0 -0
  217. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/randomizer.py +0 -0
  218. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/resourcemodel.py +0 -0
  219. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/runkwregister.py +0 -0
  220. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/signalhandler.py +0 -0
  221. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/status.py +0 -0
  222. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/statusreporter.py +0 -0
  223. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/suiterunner.py +0 -0
  224. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/testlibraries.py +0 -0
  225. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/timeouts/__init__.py +0 -0
  226. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/timeouts/nosupport.py +0 -0
  227. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/timeouts/posix.py +0 -0
  228. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/timeouts/runner.py +0 -0
  229. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/timeouts/timeout.py +0 -0
  230. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/timeouts/windows.py +0 -0
  231. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/running/userkeywordrunner.py +0 -0
  232. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/testdoc.py +0 -0
  233. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/__init__.py +0 -0
  234. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/application.py +0 -0
  235. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/argumentparser.py +0 -0
  236. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/asserts.py +0 -0
  237. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/charwidth.py +0 -0
  238. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/compress.py +0 -0
  239. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/connectioncache.py +0 -0
  240. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/dotdict.py +0 -0
  241. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/encoding.py +0 -0
  242. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/encodingsniffer.py +0 -0
  243. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/error.py +0 -0
  244. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/escaping.py +0 -0
  245. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/etreewrapper.py +0 -0
  246. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/filereader.py +0 -0
  247. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/frange.py +0 -0
  248. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/htmlformatters.py +0 -0
  249. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/importer.py +0 -0
  250. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/json.py +0 -0
  251. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/markuputils.py +0 -0
  252. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/markupwriters.py +0 -0
  253. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/match.py +0 -0
  254. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/misc.py +0 -0
  255. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/normalizing.py +0 -0
  256. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/notset.py +0 -0
  257. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/platform.py +0 -0
  258. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/recommendations.py +0 -0
  259. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/restreader.py +0 -0
  260. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/robotenv.py +0 -0
  261. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/robotinspect.py +0 -0
  262. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/robotio.py +0 -0
  263. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/robotpath.py +0 -0
  264. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/robottime.py +0 -0
  265. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/robottypes.py +0 -0
  266. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/secret.py +0 -0
  267. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/setter.py +0 -0
  268. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/sortable.py +0 -0
  269. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/text.py +0 -0
  270. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/typehints.py +0 -0
  271. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/utils/unic.py +0 -0
  272. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/__init__.py +0 -0
  273. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/assigner.py +0 -0
  274. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/evaluation.py +0 -0
  275. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/filesetter.py +0 -0
  276. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/finders.py +0 -0
  277. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/notfound.py +0 -0
  278. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/replacer.py +0 -0
  279. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/resolvable.py +0 -0
  280. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/scopes.py +0 -0
  281. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/search.py +0 -0
  282. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/store.py +0 -0
  283. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/tablesetter.py +0 -0
  284. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robot/variables/variables.py +0 -0
  285. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robotframework.egg-info/SOURCES.txt +0 -0
  286. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robotframework.egg-info/dependency_links.txt +0 -0
  287. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robotframework.egg-info/entry_points.txt +0 -0
  288. {robotframework-7.4rc1 → robotframework-7.4rc2}/src/robotframework.egg-info/top_level.txt +0 -0
  289. {robotframework-7.4rc1 → robotframework-7.4rc2}/tasks.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: robotframework
3
- Version: 7.4rc1
3
+ Version: 7.4rc2
4
4
  Summary: Generic automation framework for acceptance testing and robotic process automation (RPA)
5
5
  Home-page: https://robotframework.org
6
6
  Download-URL: https://pypi.org/project/robotframework
@@ -10,7 +10,7 @@ License: Apache License 2.0
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.4rc1.rst
13
+ Project-URL: Release Notes, https://github.com/robotframework/robotframework/blob/master/doc/releasenotes/rf-7.4rc2.rst
14
14
  Project-URL: Slack, http://slack.robotframework.org
15
15
  Keywords: robotframework automation testautomation rpa testing acceptancetesting atdd bdd
16
16
  Platform: any
@@ -6,7 +6,7 @@ from setuptools import find_packages, setup
6
6
 
7
7
  # Version number typically updated by running `invoke set-version <version>`.
8
8
  # Run `invoke --help set-version` or see tasks.py for details.
9
- VERSION = "7.4rc1"
9
+ VERSION = "7.4rc2"
10
10
  with open(join(dirname(abspath(__file__)), "README.rst")) as f:
11
11
  LONG_DESCRIPTION = f.read()
12
12
  base_url = "https://github.com/robotframework/robotframework/blob/master"
@@ -13,11 +13,24 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
 
16
- """Types for libraries and other extensions.
16
+ """Types that libraries and other extensions can utilize.
17
17
 
18
- Currently only exposes the :class:`~robot.utils.secret.Secret` type.
18
+ - The :class:`~robot.utils.secret.Secret` class is used for encapsulating
19
+ passwords, tokens and other such secret information.
20
+
21
+ - :class:`KeywordName` and :class:`KeywordArguments` are used in type hints
22
+ with keywords executing other keywords. External tools can recognize special
23
+ arguments using these types and handle them adequately.
19
24
 
20
25
  New in Robot Framework 7.4.
21
26
  """
22
27
 
23
28
  from robot.utils.secret import Secret as Secret
29
+
30
+
31
+ class KeywordName(str):
32
+ """Name of a keyword executed by another keyword."""
33
+
34
+
35
+ class KeywordArgument:
36
+ """Argument of a keyword executed by another keyword."""
@@ -21,6 +21,8 @@ from datetime import datetime, timedelta
21
21
  from typing import Any, Callable, Iterator, Literal, NoReturn
22
22
 
23
23
  from robot.api import logger, SkipExecution
24
+ from robot.api.deco import library
25
+ from robot.api.types import KeywordArgument, KeywordName
24
26
  from robot.errors import (
25
27
  BreakLoop, ContinueLoop, DataError, ExecutionFailed, ExecutionFailures,
26
28
  ExecutionPassed, PassExecution, ReturnFromKeyword, VariableError
@@ -43,13 +45,8 @@ from robot.version import get_version
43
45
 
44
46
  from .normalizer import Normalizer, StripSpaces
45
47
 
46
- # Type aliases representing names and arguments of keywords executed dynamically
47
- # by `Run Keyword` and other similar keywords. We may want to replace these with
48
- # concrete types in the future.
49
- KeywordName = str
50
- KeywordArgument = object
51
48
  # Type alias for expressions that are evaluated in Python. We may want to replace
52
- # this with a concrete type with custom type documentation later.
49
+ # this with a concrete type with a custom type documentation.
53
50
  Expression = object
54
51
 
55
52
 
@@ -657,8 +654,9 @@ class _Verify(_BuiltInBase):
657
654
  formatter: Literal["str", "repr", "ascii"] = "str",
658
655
  strip_spaces: StripSpaces = False,
659
656
  collapse_spaces: bool = False,
660
- type: "type | str | Literal['AUTO'] | Any | None" = None,
661
- types: "type | str | Any | None" = None,
657
+ type: "Literal['AUTO'] | Any | None" = None,
658
+ types: "Any | None" = None,
659
+ # TODO: 'Any' -> 'TypeForm' with 'type' and 'types' once PEP 747 lands.
662
660
  ):
663
661
  r"""Fails if the given objects are unequal.
664
662
 
@@ -4248,6 +4246,13 @@ class _Misc(_BuiltInBase):
4248
4246
  raise RuntimeError(str(err))
4249
4247
 
4250
4248
 
4249
+ @library(
4250
+ converters={
4251
+ KeywordName: lambda value: str(value),
4252
+ KeywordArgument: lambda value: value,
4253
+ },
4254
+ auto_keywords=True,
4255
+ )
4251
4256
  class BuiltIn(_Verify, _Converter, _Variables, _RunKeyword, _Control, _Misc):
4252
4257
  r"""An always available standard library with often needed keywords.
4253
4258
 
@@ -62,7 +62,7 @@ class DottedOutput(LoggerApi):
62
62
  self.stdout.write("\n")
63
63
 
64
64
  def message(self, msg):
65
- if msg.console:
65
+ if msg.level in ("WARN", "ERROR") and msg.console:
66
66
  self.stderr.error(msg.message, msg.level)
67
67
 
68
68
  def result_file(self, kind, path):
@@ -25,7 +25,7 @@ class QuietOutput(LoggerApi):
25
25
  self._stderr = HighlightingStream(stderr or sys.__stderr__, colors)
26
26
 
27
27
  def message(self, msg):
28
- if msg.console:
28
+ if msg.level in ("WARN", "ERROR") and msg.console:
29
29
  self._stderr.error(msg.message, msg.level)
30
30
 
31
31
 
@@ -70,7 +70,7 @@ class VerboseOutput(LoggerApi):
70
70
  self.writer.keyword_marker(result.status)
71
71
 
72
72
  def message(self, msg):
73
- if msg.console:
73
+ if msg.level in ("WARN", "ERROR") and msg.console:
74
74
  self.writer.error(msg.message, msg.level, clear=self.running_test)
75
75
 
76
76
  def result_file(self, kind, path):
@@ -187,25 +187,25 @@ class Logger(AbstractLogger):
187
187
  self._cache_only = False
188
188
 
189
189
  def log_message(self, msg):
190
- if self._log_message_parents and not self._library_import_logging:
191
- self._log_message(msg)
192
- else:
193
- self.message(msg)
194
-
195
- def _log_message(self, msg):
196
190
  """Log messages written (mainly) by libraries."""
197
- for logger in self:
198
- logger.log_message(msg)
199
- if (
200
- self._log_message_parents
201
- and self._output_file
202
- and self._output_file.is_logged(msg)
203
- ):
204
- self._log_message_parents[-1].body.append(msg)
191
+ logged = False
192
+ # Common case. We can log normally.
193
+ if self._log_message_parents and not self._library_import_logging:
194
+ for logger in self:
195
+ logger.log_message(msg)
196
+ if self._output_file and self._output_file.is_logged(msg):
197
+ self._log_message_parents[-1].body.append(msg)
198
+ logged = True
199
+ # Handle warnings and errors as well as logging to console.
205
200
  if msg.level in ("WARN", "ERROR"):
206
201
  self.message(msg)
202
+ logged = True
207
203
  elif msg.console:
208
204
  write_to_console(msg.message)
205
+ msg.console = False
206
+ # If not logged otherwise, log as a system message.
207
+ if not logged:
208
+ self.message(msg)
209
209
 
210
210
  def log_output(self, output):
211
211
  for msg in StdoutLogSplitter(output):
@@ -795,7 +795,13 @@ class UnionConverter(TypeConverter):
795
795
  return True
796
796
 
797
797
  def no_conversion_needed(self, value):
798
- return any(converter.no_conversion_needed(value) for converter in self.nested)
798
+ for converter in self.nested:
799
+ if (
800
+ converter.no_conversion_needed(value)
801
+ and not isinstance(converter, ObjectConverter)
802
+ ): # fmt:skip
803
+ return True
804
+ return False
799
805
 
800
806
  def _convert(self, value):
801
807
  unknown_types = False
@@ -18,7 +18,7 @@ import sys
18
18
 
19
19
  # Version number typically updated by running `invoke set-version <version>`.
20
20
  # Run `invoke --help set-version` or see tasks.py for details.
21
- VERSION = "7.4rc1"
21
+ VERSION = "7.4rc2"
22
22
 
23
23
 
24
24
  def get_version(naked=False):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: robotframework
3
- Version: 7.4rc1
3
+ Version: 7.4rc2
4
4
  Summary: Generic automation framework for acceptance testing and robotic process automation (RPA)
5
5
  Home-page: https://robotframework.org
6
6
  Download-URL: https://pypi.org/project/robotframework
@@ -10,7 +10,7 @@ License: Apache License 2.0
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.4rc1.rst
13
+ Project-URL: Release Notes, https://github.com/robotframework/robotframework/blob/master/doc/releasenotes/rf-7.4rc2.rst
14
14
  Project-URL: Slack, http://slack.robotframework.org
15
15
  Keywords: robotframework automation testautomation rpa testing acceptancetesting atdd bdd
16
16
  Platform: any