py2docfx 0.1.15.dev2025736__py3-none-any.whl → 0.1.15.dev2038852__py3-none-any.whl

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 (600) hide show
  1. py2docfx/docfx_yaml/process_doctree.py +34 -21
  2. py2docfx/docfx_yaml/tests/test_method_arguments.py +7 -1
  3. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_core_metadata.py +21 -5
  4. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +2 -0
  5. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
  6. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/__init__.py +27 -8
  7. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
  8. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
  9. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
  10. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
  11. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
  12. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
  13. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
  14. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
  15. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
  16. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
  17. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
  18. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
  19. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
  20. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
  21. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_distutils/util.py +7 -6
  22. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_normalization.py +29 -0
  23. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
  24. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
  25. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
  26. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
  27. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
  28. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
  29. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
  30. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
  31. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
  32. py2docfx/venv/basevenv/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
  33. py2docfx/venv/basevenv/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
  34. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +48 -11
  35. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
  36. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
  37. py2docfx/venv/basevenv/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
  38. py2docfx/venv/basevenv/Lib/site-packages/setuptools/dist.py +115 -9
  39. py2docfx/venv/basevenv/Lib/site-packages/setuptools/msvc.py +12 -3
  40. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
  41. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
  42. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
  43. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
  44. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
  45. py2docfx/venv/basevenv/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
  46. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/__init__.py +1 -1
  47. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/any_pb2.py +4 -4
  48. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/api_pb2.py +4 -4
  49. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/compiler/plugin_pb2.py +4 -4
  50. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_database.py +22 -4
  51. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/descriptor_pb2.py +82 -35
  52. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/duration_pb2.py +4 -4
  53. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/empty_pb2.py +4 -4
  54. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/field_mask_pb2.py +4 -4
  55. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/builder.py +4 -3
  56. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/containers.py +13 -0
  57. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/decoder.py +62 -115
  58. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_edition_defaults.py +1 -1
  59. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/python_message.py +15 -18
  60. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/testing_refleaks.py +4 -1
  61. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/type_checkers.py +5 -0
  62. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/well_known_types.py +3 -3
  63. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/json_format.py +25 -9
  64. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message.py +26 -0
  65. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/message_factory.py +0 -63
  66. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto.py +38 -1
  67. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/proto_text.py +129 -0
  68. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/reflection.py +0 -49
  69. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/runtime_version.py +3 -3
  70. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/source_context_pb2.py +4 -4
  71. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/struct_pb2.py +4 -4
  72. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/symbol_database.py +0 -18
  73. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/text_format.py +8 -3
  74. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/timestamp_pb2.py +4 -4
  75. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/type_pb2.py +4 -4
  76. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/unknown_fields.py +3 -4
  77. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/wrappers_pb2.py +4 -4
  78. py2docfx/venv/venv1/Lib/site-packages/msal/__init__.py +1 -1
  79. py2docfx/venv/venv1/Lib/site-packages/msal/application.py +51 -17
  80. py2docfx/venv/venv1/Lib/site-packages/msal/broker.py +18 -4
  81. py2docfx/venv/venv1/Lib/site-packages/msal/cloudshell.py +5 -1
  82. py2docfx/venv/venv1/Lib/site-packages/msal/managed_identity.py +5 -4
  83. py2docfx/venv/venv1/Lib/site-packages/msal/sku.py +6 -0
  84. py2docfx/venv/venv1/Lib/site-packages/msal/token_cache.py +31 -10
  85. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/__init__.py +2 -3
  86. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/cache_lock.py +4 -1
  87. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/filelock.py +62 -0
  88. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/libsecret.py +1 -1
  89. py2docfx/venv/venv1/Lib/site-packages/msal_extensions/token_cache.py +7 -1
  90. py2docfx/venv/venv1/Lib/site-packages/setuptools/_core_metadata.py +21 -5
  91. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +2 -0
  92. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/ccompiler.py +5 -2
  93. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/__init__.py +27 -8
  94. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build.py +1 -6
  95. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_clib.py +1 -9
  96. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/build_ext.py +1 -8
  97. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/check.py +1 -1
  98. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/config.py +0 -2
  99. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/command/install.py +8 -17
  100. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
  101. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +8 -5
  102. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +1 -1
  103. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +15 -1
  104. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/dist.py +2 -1
  105. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -10
  106. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +60 -5
  107. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/unixccompiler.py +6 -0
  108. py2docfx/venv/venv1/Lib/site-packages/setuptools/_distutils/util.py +7 -6
  109. py2docfx/venv/venv1/Lib/site-packages/setuptools/_normalization.py +29 -0
  110. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +1 -1
  111. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
  112. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +2 -2
  113. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +25 -594
  114. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +6 -6
  115. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +282 -223
  116. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +22 -9
  117. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +16 -13
  118. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/util.py +0 -9
  119. py2docfx/venv/venv1/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +40 -9
  120. py2docfx/venv/venv1/Lib/site-packages/setuptools/command/bdist_wheel.py +6 -2
  121. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +48 -11
  122. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +31 -1
  123. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +222 -129
  124. py2docfx/venv/venv1/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +30 -3
  125. py2docfx/venv/venv1/Lib/site-packages/setuptools/dist.py +115 -9
  126. py2docfx/venv/venv1/Lib/site-packages/setuptools/msvc.py +12 -3
  127. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +246 -13
  128. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +93 -8
  129. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_build_meta.py +17 -4
  130. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_core_metadata.py +45 -0
  131. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_egg_info.py +24 -4
  132. py2docfx/venv/venv1/Lib/site-packages/setuptools/tests/test_sdist.py +13 -1
  133. {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/METADATA +1 -1
  134. {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/RECORD +136 -593
  135. py2docfx/docfx_yaml/tests/test_process_doctree.py +0 -120
  136. py2docfx/venv/venv1/Lib/site-packages/adodbapi/__init__.py +0 -82
  137. py2docfx/venv/venv1/Lib/site-packages/adodbapi/ado_consts.py +0 -283
  138. py2docfx/venv/venv1/Lib/site-packages/adodbapi/adodbapi.py +0 -1153
  139. py2docfx/venv/venv1/Lib/site-packages/adodbapi/apibase.py +0 -723
  140. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_print.py +0 -72
  141. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/db_table_names.py +0 -21
  142. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_read.py +0 -41
  143. py2docfx/venv/venv1/Lib/site-packages/adodbapi/examples/xls_write.py +0 -41
  144. py2docfx/venv/venv1/Lib/site-packages/adodbapi/is64bit.py +0 -34
  145. py2docfx/venv/venv1/Lib/site-packages/adodbapi/process_connect_string.py +0 -137
  146. py2docfx/venv/venv1/Lib/site-packages/adodbapi/schema_table.py +0 -16
  147. py2docfx/venv/venv1/Lib/site-packages/adodbapi/setup.py +0 -68
  148. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitest.py +0 -1547
  149. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/adodbapitestconfig.py +0 -184
  150. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/dbapi20.py +0 -879
  151. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/is64bit.py +0 -34
  152. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/setuptestframework.py +0 -98
  153. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/test_adodbapi_dbapi20.py +0 -195
  154. py2docfx/venv/venv1/Lib/site-packages/adodbapi/test/tryconnection.py +0 -30
  155. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/internal/_parameterized.py +0 -420
  156. py2docfx/venv/venv1/Lib/site-packages/google/protobuf/service.py +0 -213
  157. py2docfx/venv/venv1/Lib/site-packages/isapi/__init__.py +0 -39
  158. py2docfx/venv/venv1/Lib/site-packages/isapi/install.py +0 -809
  159. py2docfx/venv/venv1/Lib/site-packages/isapi/isapicon.py +0 -121
  160. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/advanced.py +0 -218
  161. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector.py +0 -116
  162. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_asynch.py +0 -85
  163. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/redirector_with_filter.py +0 -162
  164. py2docfx/venv/venv1/Lib/site-packages/isapi/samples/test.py +0 -195
  165. py2docfx/venv/venv1/Lib/site-packages/isapi/simple.py +0 -73
  166. py2docfx/venv/venv1/Lib/site-packages/isapi/test/extension_simple.py +0 -114
  167. py2docfx/venv/venv1/Lib/site-packages/isapi/threaded_extension.py +0 -191
  168. py2docfx/venv/venv1/Lib/site-packages/portalocker/__about__.py +0 -6
  169. py2docfx/venv/venv1/Lib/site-packages/portalocker/__init__.py +0 -79
  170. py2docfx/venv/venv1/Lib/site-packages/portalocker/__main__.py +0 -122
  171. py2docfx/venv/venv1/Lib/site-packages/portalocker/constants.py +0 -59
  172. py2docfx/venv/venv1/Lib/site-packages/portalocker/exceptions.py +0 -27
  173. py2docfx/venv/venv1/Lib/site-packages/portalocker/portalocker.py +0 -154
  174. py2docfx/venv/venv1/Lib/site-packages/portalocker/redis.py +0 -236
  175. py2docfx/venv/venv1/Lib/site-packages/portalocker/utils.py +0 -569
  176. py2docfx/venv/venv1/Lib/site-packages/pythoncom.py +0 -4
  177. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/basictimerapp.py +0 -258
  178. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/customprint.py +0 -183
  179. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/demoutils.py +0 -63
  180. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dlgappdemo.py +0 -51
  181. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/dojobapp.py +0 -71
  182. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/app/helloapp.py +0 -53
  183. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/cmdserver.py +0 -113
  184. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/createwin.py +0 -114
  185. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/demoutils.py +0 -65
  186. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dibdemo.py +0 -73
  187. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dlgtest.py +0 -145
  188. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/dyndlg.py +0 -104
  189. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/fontdemo.py +0 -85
  190. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/guidemo.py +0 -53
  191. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/hiertest.py +0 -138
  192. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/menutest.py +0 -13
  193. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/objdoc.py +0 -57
  194. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/demoutils.py +0 -63
  195. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/flash.py +0 -95
  196. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/msoffice.py +0 -159
  197. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxserialtest.py +0 -132
  198. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/ocxtest.py +0 -243
  199. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/ocx/webbrowser.py +0 -72
  200. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/openGLDemo.py +0 -415
  201. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/progressbar.py +0 -105
  202. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/sliderdemo.py +0 -76
  203. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/splittst.py +0 -79
  204. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/threadedgui.py +0 -189
  205. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/Demos/toolbar.py +0 -105
  206. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/__init__.py +0 -3
  207. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/__init__.py +0 -133
  208. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/configui.py +0 -34
  209. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgcon.py +0 -31
  210. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/dbgpyapp.py +0 -48
  211. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/debugger.py +0 -1097
  212. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/debugger/fail.py +0 -54
  213. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/__init__.py +0 -0
  214. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/ideoptions.py +0 -136
  215. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/list.py +0 -146
  216. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/login.py +0 -155
  217. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/dialogs/status.py +0 -242
  218. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/DockingBar.py +0 -676
  219. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/docking/__init__.py +0 -0
  220. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/__init__.py +0 -0
  221. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/app.py +0 -411
  222. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/bitmap.py +0 -168
  223. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/cmdline.py +0 -54
  224. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dbgcommands.py +0 -188
  225. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/dlgappcore.py +0 -76
  226. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/ModuleBrowser.py +0 -235
  227. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/__init__.py +0 -105
  228. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/__init__.py +0 -0
  229. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/color/coloreditor.py +0 -646
  230. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/configui.py +0 -299
  231. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/document.py +0 -379
  232. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/editor.py +0 -511
  233. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/frame.py +0 -74
  234. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/template.py +0 -59
  235. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/editor/vss.py +0 -104
  236. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/help.py +0 -173
  237. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/interact.py +0 -995
  238. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpyapp.py +0 -552
  239. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/intpydde.py +0 -65
  240. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/scriptutils.py +0 -684
  241. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/sgrepmdi.py +0 -749
  242. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/startup.py +0 -70
  243. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/stdin.py +0 -172
  244. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/toolmenu.py +0 -279
  245. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/window.py +0 -14
  246. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/framework/winout.py +0 -589
  247. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoExpand.py +0 -95
  248. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/AutoIndent.py +0 -536
  249. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/CallTips.py +0 -216
  250. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/FormatParagraph.py +0 -166
  251. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/IdleHistory.py +0 -87
  252. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/PyParse.py +0 -585
  253. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/idle/__init__.py +0 -1
  254. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/__init__.py +0 -0
  255. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/activex.py +0 -79
  256. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/afxres.py +0 -501
  257. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/dialog.py +0 -277
  258. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/docview.py +0 -151
  259. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/object.py +0 -66
  260. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/thread.py +0 -25
  261. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/mfc/window.py +0 -50
  262. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/IDLEenvironment.py +0 -593
  263. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/__init__.py +0 -1
  264. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/bindings.py +0 -180
  265. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/config.py +0 -363
  266. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/configui.py +0 -291
  267. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/control.py +0 -565
  268. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/document.py +0 -312
  269. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/find.py +0 -511
  270. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/formatter.py +0 -704
  271. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/keycodes.py +0 -190
  272. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/scintillacon.py +0 -3083
  273. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/scintilla/view.py +0 -841
  274. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/TraceCollector.py +0 -79
  275. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/__init__.py +0 -0
  276. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browseProjects.py +0 -323
  277. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/browser.py +0 -494
  278. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/hierlist.py +0 -353
  279. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regedit.py +0 -382
  280. py2docfx/venv/venv1/Lib/site-packages/pythonwin/pywin/tools/regpy.py +0 -80
  281. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupRead_BackupWrite.py +0 -119
  282. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/BackupSeek_streamheaders.py +0 -137
  283. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CopyFileEx.py +0 -57
  284. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/CreateFileTransacted_MiniVersion.py +0 -122
  285. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtFormatMessage.py +0 -83
  286. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_pull.py +0 -28
  287. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/EvtSubscribe_push.py +0 -32
  288. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/FileSecurityTest.py +0 -137
  289. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/GetSaveFileName.py +0 -43
  290. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/NetValidatePasswordPolicy.py +0 -127
  291. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/OpenEncryptedFileRaw.py +0 -66
  292. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegCreateKeyTransacted.py +0 -60
  293. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/RegRestoreKey.py +0 -71
  294. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/SystemParametersInfo.py +0 -210
  295. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/c_extension/setup.py +0 -26
  296. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeclient.py +0 -18
  297. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/dde/ddeserver.py +0 -42
  298. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/desktopmanager.py +0 -246
  299. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/eventLogDemo.py +0 -143
  300. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/getfilever.py +0 -33
  301. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/mmapfile_demo.py +0 -101
  302. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/cat.py +0 -17
  303. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/pipes/runproc.py +0 -114
  304. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/print_desktop.py +0 -113
  305. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/rastest.py +0 -166
  306. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/GetTokenInformation.py +0 -110
  307. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/account_rights.py +0 -49
  308. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/explicit_entries.py +0 -170
  309. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/get_policy_info.py +0 -39
  310. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/list_rights.py +0 -35
  311. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/localized_names.py +0 -70
  312. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsaregevent.py +0 -14
  313. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/lsastore.py +0 -12
  314. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/query_information.py +0 -25
  315. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsave_sa.py +0 -61
  316. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/regsecurity.py +0 -36
  317. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sa_inherit.py +0 -8
  318. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/security_enums.py +0 -336
  319. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_audit.py +0 -106
  320. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_file_owner.py +0 -73
  321. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/set_policy_info.py +0 -25
  322. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setkernelobjectsecurity.py +0 -134
  323. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setnamedsecurityinfo.py +0 -131
  324. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setsecurityinfo.py +0 -131
  325. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/setuserobjectsecurity.py +0 -102
  326. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/fetch_url.py +0 -158
  327. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/simple_auth.py +0 -72
  328. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/socket_server.py +0 -199
  329. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/security/sspi/validate_password.py +0 -41
  330. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/nativePipeTestService.py +0 -63
  331. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestService.py +0 -185
  332. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/pipeTestServiceClient.py +0 -158
  333. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/service/serviceEvents.py +0 -98
  334. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/timer_demo.py +0 -72
  335. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboardDemo.py +0 -155
  336. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32clipboard_bitmapdemo.py +0 -117
  337. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32comport_demo.py +0 -174
  338. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32console_demo.py +0 -132
  339. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32cred_demo.py +0 -82
  340. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32fileDemo.py +0 -41
  341. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_demo.py +0 -177
  342. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_devicenotify.py +0 -106
  343. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_dialog.py +0 -445
  344. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_menu.py +0 -464
  345. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32gui_taskbar.py +0 -136
  346. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32netdemo.py +0 -272
  347. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32rcparser_demo.py +0 -86
  348. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32servicedemo.py +0 -23
  349. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32ts_logoff_disconnected.py +0 -25
  350. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/testwnet.py +0 -123
  351. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/win32wnet/winnetwk.py +0 -100
  352. py2docfx/venv/venv1/Lib/site-packages/win32/Demos/winprocess.py +0 -230
  353. py2docfx/venv/venv1/Lib/site-packages/win32/lib/_win32verstamp_pywin32ctypes.py +0 -164
  354. py2docfx/venv/venv1/Lib/site-packages/win32/lib/afxres.py +0 -8
  355. py2docfx/venv/venv1/Lib/site-packages/win32/lib/commctrl.py +0 -1551
  356. py2docfx/venv/venv1/Lib/site-packages/win32/lib/mmsystem.py +0 -956
  357. py2docfx/venv/venv1/Lib/site-packages/win32/lib/netbios.py +0 -293
  358. py2docfx/venv/venv1/Lib/site-packages/win32/lib/ntsecuritycon.py +0 -731
  359. py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_bootstrap.py +0 -21
  360. py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywin32_testutil.py +0 -291
  361. py2docfx/venv/venv1/Lib/site-packages/win32/lib/pywintypes.py +0 -124
  362. py2docfx/venv/venv1/Lib/site-packages/win32/lib/rasutil.py +0 -40
  363. py2docfx/venv/venv1/Lib/site-packages/win32/lib/regcheck.py +0 -161
  364. py2docfx/venv/venv1/Lib/site-packages/win32/lib/regutil.py +0 -395
  365. py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspi.py +0 -413
  366. py2docfx/venv/venv1/Lib/site-packages/win32/lib/sspicon.py +0 -477
  367. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win2kras.py +0 -14
  368. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32con.py +0 -5064
  369. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32cryptcon.py +0 -1922
  370. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32evtlogutil.py +0 -225
  371. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32gui_struct.py +0 -957
  372. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32inetcon.py +0 -1086
  373. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32netcon.py +0 -627
  374. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhquery.py +0 -570
  375. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32pdhutil.py +0 -212
  376. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32rcparser.py +0 -674
  377. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32serviceutil.py +0 -1073
  378. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32timezone.py +0 -1201
  379. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32traceutil.py +0 -59
  380. py2docfx/venv/venv1/Lib/site-packages/win32/lib/win32verstamp.py +0 -235
  381. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winerror.py +0 -7362
  382. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winioctlcon.py +0 -1079
  383. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winnt.py +0 -1347
  384. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winperf.py +0 -236
  385. py2docfx/venv/venv1/Lib/site-packages/win32/lib/winxptheme.py +0 -8
  386. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/ControlService.py +0 -594
  387. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/BrandProject.py +0 -97
  388. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/bulkstamp.py +0 -156
  389. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/VersionStamp/vssutil.py +0 -201
  390. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/backupEventLog.py +0 -46
  391. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/h2py.py +0 -194
  392. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/killProcName.py +0 -62
  393. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_postinstall.py +0 -733
  394. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/pywin32_testall.py +0 -120
  395. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/rasutil.py +0 -98
  396. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/regsetup.py +0 -607
  397. py2docfx/venv/venv1/Lib/site-packages/win32/scripts/setup_d.py +0 -111
  398. py2docfx/venv/venv1/Lib/site-packages/win32/test/handles.py +0 -175
  399. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_clipboard.py +0 -137
  400. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_exceptions.py +0 -213
  401. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_odbc.py +0 -264
  402. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_pywintypes.py +0 -111
  403. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_security.py +0 -166
  404. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_sspi.py +0 -229
  405. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32api.py +0 -273
  406. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32clipboard.py +0 -59
  407. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32cred.py +0 -91
  408. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32crypt.py +0 -144
  409. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32event.py +0 -119
  410. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32file.py +0 -1096
  411. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32gui.py +0 -227
  412. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32guistruct.py +0 -333
  413. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32inet.py +0 -108
  414. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32net.py +0 -23
  415. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32pipe.py +0 -148
  416. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32print.py +0 -24
  417. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32profile.py +0 -19
  418. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32rcparser.py +0 -70
  419. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32timezone.py +0 -16
  420. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32trace.py +0 -366
  421. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32ts.py +0 -19
  422. py2docfx/venv/venv1/Lib/site-packages/win32/test/test_win32wnet.py +0 -174
  423. py2docfx/venv/venv1/Lib/site-packages/win32/test/testall.py +0 -223
  424. py2docfx/venv/venv1/Lib/site-packages/win32/winxpgui.py +0 -13
  425. py2docfx/venv/venv1/Lib/site-packages/win32com/__init__.py +0 -134
  426. py2docfx/venv/venv1/Lib/site-packages/win32com/client/CLSIDToClass.py +0 -60
  427. py2docfx/venv/venv1/Lib/site-packages/win32com/client/__init__.py +0 -717
  428. py2docfx/venv/venv1/Lib/site-packages/win32com/client/build.py +0 -771
  429. py2docfx/venv/venv1/Lib/site-packages/win32com/client/combrowse.py +0 -604
  430. py2docfx/venv/venv1/Lib/site-packages/win32com/client/connect.py +0 -48
  431. py2docfx/venv/venv1/Lib/site-packages/win32com/client/dynamic.py +0 -699
  432. py2docfx/venv/venv1/Lib/site-packages/win32com/client/gencache.py +0 -825
  433. py2docfx/venv/venv1/Lib/site-packages/win32com/client/genpy.py +0 -1350
  434. py2docfx/venv/venv1/Lib/site-packages/win32com/client/makepy.py +0 -453
  435. py2docfx/venv/venv1/Lib/site-packages/win32com/client/selecttlb.py +0 -182
  436. py2docfx/venv/venv1/Lib/site-packages/win32com/client/tlbrowse.py +0 -277
  437. py2docfx/venv/venv1/Lib/site-packages/win32com/client/util.py +0 -103
  438. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/__init__.py +0 -0
  439. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/connect.py +0 -96
  440. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/dump_clipboard.py +0 -74
  441. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsApartmentThreaded.py +0 -98
  442. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/eventsFreeThreaded.py +0 -92
  443. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelAddin.py +0 -169
  444. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/excelRTDServer.py +0 -434
  445. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/iebutton.py +0 -214
  446. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/ietoolbar.py +0 -368
  447. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/outlookAddin.py +0 -135
  448. py2docfx/venv/venv1/Lib/site-packages/win32com/demos/trybag.py +0 -78
  449. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/__init__.py +0 -1
  450. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegw.py +0 -618
  451. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwenum.py +0 -331
  452. py2docfx/venv/venv1/Lib/site-packages/win32com/makegw/makegwparse.py +0 -1017
  453. py2docfx/venv/venv1/Lib/site-packages/win32com/olectl.py +0 -70
  454. py2docfx/venv/venv1/Lib/site-packages/win32com/server/__init__.py +0 -1
  455. py2docfx/venv/venv1/Lib/site-packages/win32com/server/connect.py +0 -85
  456. py2docfx/venv/venv1/Lib/site-packages/win32com/server/dispatcher.py +0 -239
  457. py2docfx/venv/venv1/Lib/site-packages/win32com/server/exception.py +0 -99
  458. py2docfx/venv/venv1/Lib/site-packages/win32com/server/factory.py +0 -26
  459. py2docfx/venv/venv1/Lib/site-packages/win32com/server/localserver.py +0 -53
  460. py2docfx/venv/venv1/Lib/site-packages/win32com/server/policy.py +0 -803
  461. py2docfx/venv/venv1/Lib/site-packages/win32com/server/register.py +0 -677
  462. py2docfx/venv/venv1/Lib/site-packages/win32com/server/util.py +0 -229
  463. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/PythonTools.py +0 -47
  464. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/__init__.py +0 -0
  465. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/dictionary.py +0 -133
  466. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/interp.py +0 -59
  467. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/perfmon.py +0 -36
  468. py2docfx/venv/venv1/Lib/site-packages/win32com/servers/test_pycomtest.py +0 -181
  469. py2docfx/venv/venv1/Lib/site-packages/win32com/storagecon.py +0 -142
  470. py2docfx/venv/venv1/Lib/site-packages/win32com/test/GenTestScripts.py +0 -95
  471. py2docfx/venv/venv1/Lib/site-packages/win32com/test/__init__.py +0 -1
  472. py2docfx/venv/venv1/Lib/site-packages/win32com/test/daodump.py +0 -88
  473. py2docfx/venv/venv1/Lib/site-packages/win32com/test/errorSemantics.py +0 -243
  474. py2docfx/venv/venv1/Lib/site-packages/win32com/test/pippo_server.py +0 -96
  475. py2docfx/venv/venv1/Lib/site-packages/win32com/test/policySemantics.py +0 -115
  476. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testADOEvents.py +0 -100
  477. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAXScript.py +0 -44
  478. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testAccess.py +0 -185
  479. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testArrays.py +0 -99
  480. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testClipboard.py +0 -169
  481. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testCollections.py +0 -159
  482. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testConversionErrors.py +0 -35
  483. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDCOM.py +0 -50
  484. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDates.py +0 -74
  485. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDictionary.py +0 -101
  486. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testDynamic.py +0 -83
  487. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExchange.py +0 -121
  488. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testExplorer.py +0 -139
  489. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGIT.py +0 -142
  490. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testGatewayAddresses.py +0 -149
  491. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testIterators.py +0 -140
  492. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOffice.py +0 -184
  493. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMSOfficeEvents.py +0 -138
  494. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testMarshal.py +0 -160
  495. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPersist.py +0 -227
  496. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPippo.py +0 -80
  497. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testPyComTest.py +0 -918
  498. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testROT.py +0 -29
  499. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testServers.py +0 -51
  500. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testShell.py +0 -272
  501. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStorage.py +0 -88
  502. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testStreams.py +0 -147
  503. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testWMI.py +0 -18
  504. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testall.py +0 -320
  505. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testmakepy.py +0 -54
  506. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvb.py +0 -583
  507. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testvbscript_regexp.py +0 -40
  508. py2docfx/venv/venv1/Lib/site-packages/win32com/test/testxslt.py +0 -34
  509. py2docfx/venv/venv1/Lib/site-packages/win32com/test/util.py +0 -262
  510. py2docfx/venv/venv1/Lib/site-packages/win32com/universal.py +0 -224
  511. py2docfx/venv/venv1/Lib/site-packages/win32com/util.py +0 -35
  512. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/__init__.py +0 -113
  513. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/adsicon.py +0 -340
  514. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/objectPicker.py +0 -68
  515. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/scp.py +0 -565
  516. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/search.py +0 -151
  517. py2docfx/venv/venv1/Lib/site-packages/win32comext/adsi/demos/test.py +0 -274
  518. py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/__init__.py +0 -6
  519. py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditSecurity.py +0 -229
  520. py2docfx/venv/venv1/Lib/site-packages/win32comext/authorization/demos/EditServiceSecurity.py +0 -219
  521. py2docfx/venv/venv1/Lib/site-packages/win32comext/axcontrol/__init__.py +0 -4
  522. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/__init__.py +0 -4
  523. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/adb.py +0 -467
  524. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/codecontainer.py +0 -279
  525. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/contexts.py +0 -58
  526. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/debugger.py +0 -238
  527. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/documents.py +0 -135
  528. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/dump.py +0 -57
  529. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/expressions.py +0 -212
  530. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/gateways.py +0 -583
  531. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/stackframe.py +0 -178
  532. py2docfx/venv/venv1/Lib/site-packages/win32comext/axdebug/util.py +0 -98
  533. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/__init__.py +0 -4
  534. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/asputil.py +0 -13
  535. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/__init__.py +0 -1
  536. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/debug.py +0 -223
  537. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/error.py +0 -262
  538. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/framework.py +0 -1291
  539. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pydumper.py +0 -78
  540. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript.py +0 -438
  541. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/pyscript_rexec.py +0 -54
  542. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/client/scriptdispatch.py +0 -103
  543. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/__init__.py +0 -0
  544. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/server/axsite.py +0 -145
  545. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/leakTest.py +0 -185
  546. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost.py +0 -240
  547. py2docfx/venv/venv1/Lib/site-packages/win32comext/axscript/test/testHost4Dbg.py +0 -83
  548. py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/__init__.py +0 -6
  549. py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/show_all_jobs.py +0 -48
  550. py2docfx/venv/venv1/Lib/site-packages/win32comext/bits/test/test_bits.py +0 -119
  551. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/__init__.py +0 -4
  552. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/__init__.py +0 -1
  553. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_record.py +0 -60
  554. py2docfx/venv/venv1/Lib/site-packages/win32comext/directsound/test/ds_test.py +0 -402
  555. py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/__init__.py +0 -1
  556. py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/demo/filterDemo.py +0 -300
  557. py2docfx/venv/venv1/Lib/site-packages/win32comext/ifilter/ifiltercon.py +0 -110
  558. py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/__init__.py +0 -4
  559. py2docfx/venv/venv1/Lib/site-packages/win32comext/internet/inetcon.py +0 -261
  560. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/__init__.py +0 -21
  561. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/demos/mapisend.py +0 -98
  562. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/emsabtags.py +0 -875
  563. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapitags.py +0 -1023
  564. py2docfx/venv/venv1/Lib/site-packages/win32comext/mapi/mapiutil.py +0 -211
  565. py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/__init__.py +0 -1
  566. py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/pscon.py +0 -838
  567. py2docfx/venv/venv1/Lib/site-packages/win32comext/propsys/test/testpropsys.py +0 -5
  568. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/__init__.py +0 -4
  569. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IActiveDesktop.py +0 -83
  570. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IFileOperationProgressSink.py +0 -179
  571. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IShellLinkDataList.py +0 -67
  572. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/ITransferAdviseSink.py +0 -93
  573. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/IUniformResourceLocator.py +0 -56
  574. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/browse_for_folder.py +0 -45
  575. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/create_link.py +0 -73
  576. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/dump_link.py +0 -58
  577. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/explorer_browser.py +0 -143
  578. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/column_provider.py +0 -125
  579. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/context_menu.py +0 -122
  580. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/copy_hook.py +0 -84
  581. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/empty_volume_cache.py +0 -188
  582. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/folder_view.py +0 -866
  583. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/icon_handler.py +0 -81
  584. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/servers/shell_view.py +0 -971
  585. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/shellexecuteex.py +0 -19
  586. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/viewstate.py +0 -68
  587. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/demos/walk_shell_folders.py +0 -24
  588. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/shellcon.py +0 -1615
  589. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testSHFileOperation.py +0 -75
  590. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellFolder.py +0 -21
  591. py2docfx/venv/venv1/Lib/site-packages/win32comext/shell/test/testShellItem.py +0 -69
  592. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/__init__.py +0 -6
  593. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask.py +0 -66
  594. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_1.py +0 -68
  595. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_addtask_2.py +0 -49
  596. py2docfx/venv/venv1/Lib/site-packages/win32comext/taskscheduler/test/test_localsystem.py +0 -3
  597. py2docfx/venv/venv1/Scripts/pywin32_postinstall.py +0 -733
  598. py2docfx/venv/venv1/Scripts/pywin32_testall.py +0 -120
  599. {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/WHEEL +0 -0
  600. {py2docfx-0.1.15.dev2025736.dist-info → py2docfx-0.1.15.dev2038852.dist-info}/top_level.txt +0 -0
@@ -1,139 +0,0 @@
1
- # testExplorer -
2
-
3
- import os
4
- import time
5
-
6
- import pythoncom
7
- import win32api
8
- import win32com.client.dynamic
9
- import win32con
10
- import win32gui
11
- import winerror
12
- from win32com.client import Dispatch
13
- from win32com.test.util import CheckClean
14
-
15
- bVisibleEventFired = 0
16
-
17
- # These are errors we might see when this is run in automation (eg, on github)
18
- # Not sure exactly what -2125463506 is, but google shows it's a common error
19
- # possibly related to how IE is configured WRT site permissions etc.
20
- HRESULTS_IN_AUTOMATION = [-2125463506, winerror.MK_E_UNAVAILABLE]
21
-
22
-
23
- class ExplorerEvents:
24
- def OnVisible(self, visible):
25
- global bVisibleEventFired
26
- bVisibleEventFired = 1
27
-
28
-
29
- def TestExplorerEvents():
30
- global bVisibleEventFired
31
- try:
32
- iexplore = win32com.client.DispatchWithEvents(
33
- "InternetExplorer.Application", ExplorerEvents
34
- )
35
- except pythoncom.com_error as exc:
36
- # In automation we see this error trying to connect to events
37
- # It's a little surprising that the non-event tests seem to work, but
38
- # whatever...
39
- if exc.hresult not in HRESULTS_IN_AUTOMATION:
40
- raise
41
- print("IE events appear to not be available, so skipping this test")
42
- return
43
-
44
- iexplore.Visible = 1
45
- assert bVisibleEventFired, "The IE event did not appear to fire!"
46
- iexplore.Quit()
47
- iexplore = None
48
-
49
- bVisibleEventFired = 0
50
- ie = win32com.client.Dispatch("InternetExplorer.Application")
51
- ie_events = win32com.client.DispatchWithEvents(ie, ExplorerEvents)
52
- ie.Visible = 1
53
- assert bVisibleEventFired, "The IE event did not appear to fire!"
54
- ie.Quit()
55
- ie = None
56
- print("IE Event tests worked.")
57
-
58
-
59
- def TestObjectFromWindow():
60
- # Check we can use ObjectFromLresult to get the COM object from the
61
- hwnd = win32gui.FindWindow("IEFrame", None)
62
- # Thanks https://stackoverflow.com/a/10154498/18450412 for the child stack on IE8+
63
- for child_class in (
64
- "Frame Tab",
65
- "TabWindowClass",
66
- "Shell DocObject View",
67
- "Internet Explorer_Server",
68
- ):
69
- hwnd = win32gui.FindWindowEx(hwnd, 0, child_class, None)
70
- # Once you have an 'Internet Explorer_Server',
71
- # you can send a message and use ObjectFromLresult to get it back.
72
- msg = win32gui.RegisterWindowMessage("WM_HTML_GETOBJECT")
73
- rc, result = win32gui.SendMessageTimeout(
74
- hwnd, msg, 0, 0, win32con.SMTO_ABORTIFHUNG, 1000
75
- )
76
- ob = pythoncom.ObjectFromLresult(result, pythoncom.IID_IDispatch, 0)
77
- doc = Dispatch(ob)
78
- # just to prove it works, set the background color of the document.
79
- for color in "red green blue orange white".split():
80
- doc.bgColor = color
81
- time.sleep(0.2)
82
-
83
-
84
- def TestExplorer(iexplore):
85
- if not iexplore.Visible:
86
- iexplore.Visible = -1
87
- filename = os.path.join(os.path.dirname(__file__), "..\\readme.html")
88
- iexplore.Navigate(win32api.GetFullPathName(filename))
89
- win32api.Sleep(1000)
90
- TestObjectFromWindow()
91
- win32api.Sleep(3000)
92
- try:
93
- iexplore.Quit()
94
- except (AttributeError, pythoncom.com_error):
95
- # User got sick of waiting :)
96
- pass
97
-
98
-
99
- def TestAll():
100
- try:
101
- try:
102
- try:
103
- iexplore = win32com.client.dynamic.Dispatch(
104
- "InternetExplorer.Application"
105
- )
106
- except pythoncom.com_error as exc:
107
- if exc.hresult not in HRESULTS_IN_AUTOMATION:
108
- raise
109
- print("IE appears to not be available, so skipping this test")
110
- return
111
-
112
- TestExplorer(iexplore)
113
-
114
- win32api.Sleep(1000)
115
- iexplore = None
116
-
117
- # Test IE events.
118
- TestExplorerEvents()
119
- # Give IE a chance to shutdown, else it can get upset on fast machines.
120
- time.sleep(2)
121
-
122
- # Note that the TextExplorerEvents will force makepy - hence
123
- # this gencache is really no longer needed.
124
-
125
- from win32com.client import gencache
126
-
127
- gencache.EnsureModule("{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}", 0, 1, 1)
128
- iexplore = win32com.client.Dispatch("InternetExplorer.Application")
129
- TestExplorer(iexplore)
130
- except pythoncom.com_error as exc:
131
- if exc.hresult != winerror.RPC_E_DISCONNECTED: # user closed the app!
132
- raise
133
- finally:
134
- iexplore = None
135
-
136
-
137
- if __name__ == "__main__":
138
- TestAll()
139
- CheckClean()
@@ -1,142 +0,0 @@
1
- """Testing pasing object between multiple COM threads
2
-
3
- Uses standard COM marshalling to pass objects between threads. Even
4
- though Python generally seems to work when you just pass COM objects
5
- between threads, it shouldn't.
6
-
7
- This shows the "correct" way to do it.
8
-
9
- It shows that although we create new threads to use the Python.Interpreter,
10
- COM marshalls back all calls to that object to the main Python thread,
11
- which must be running a message loop (as this sample does).
12
-
13
- When this test is run in "free threaded" mode (at this stage, you must
14
- manually mark the COM objects as "ThreadingModel=Free", or run from a
15
- service which has marked itself as free-threaded), then no marshalling
16
- is done, and the Python.Interpreter object start doing the "expected" thing
17
- - ie, it reports being on the same thread as its caller!
18
-
19
- Python.exe needs a good way to mark itself as FreeThreaded - at the moment
20
- this is a pain in the but!
21
- """
22
-
23
- import _thread
24
- import traceback
25
-
26
- import pythoncom
27
- import win32api
28
- import win32com.client
29
- import win32event
30
-
31
-
32
- def TestInterp(interp):
33
- assert interp.Eval("1+1") == 2, "The interpreter returned the wrong result."
34
- try:
35
- interp.Eval(1 + 1)
36
- raise AssertionError("The interpreter did not raise an exception")
37
- except pythoncom.com_error as details:
38
- import winerror
39
-
40
- assert (
41
- details[0] == winerror.DISP_E_TYPEMISMATCH
42
- ), "The interpreter exception was not winerror.DISP_E_TYPEMISMATCH."
43
-
44
-
45
- def TestInterpInThread(stopEvent, cookie):
46
- try:
47
- DoTestInterpInThread(cookie)
48
- finally:
49
- win32event.SetEvent(stopEvent)
50
-
51
-
52
- def CreateGIT():
53
- return pythoncom.CoCreateInstance(
54
- pythoncom.CLSID_StdGlobalInterfaceTable,
55
- None,
56
- pythoncom.CLSCTX_INPROC,
57
- pythoncom.IID_IGlobalInterfaceTable,
58
- )
59
-
60
-
61
- def DoTestInterpInThread(cookie):
62
- try:
63
- pythoncom.CoInitialize()
64
- myThread = win32api.GetCurrentThreadId()
65
- GIT = CreateGIT()
66
-
67
- interp = GIT.GetInterfaceFromGlobal(cookie, pythoncom.IID_IDispatch)
68
- interp = win32com.client.Dispatch(interp)
69
-
70
- TestInterp(interp)
71
- interp.Exec("import win32api")
72
- print(
73
- "The test thread id is %d, Python.Interpreter's thread ID is %d"
74
- % (myThread, interp.Eval("win32api.GetCurrentThreadId()"))
75
- )
76
- interp = None
77
- pythoncom.CoUninitialize()
78
- except:
79
- traceback.print_exc()
80
-
81
-
82
- def BeginThreadsSimpleMarshal(numThreads, cookie):
83
- """Creates multiple threads using simple (but slower) marshalling.
84
-
85
- Single interpreter object, but a new stream is created per thread.
86
-
87
- Returns the handles the threads will set when complete.
88
- """
89
- ret = []
90
- for i in range(numThreads):
91
- hEvent = win32event.CreateEvent(None, 0, 0, None)
92
- _thread.start_new(TestInterpInThread, (hEvent, cookie))
93
- ret.append(hEvent)
94
- return ret
95
-
96
-
97
- def test(fn):
98
- print("The main thread is %d" % (win32api.GetCurrentThreadId()))
99
- GIT = CreateGIT()
100
- interp = win32com.client.Dispatch("Python.Interpreter")
101
- cookie = GIT.RegisterInterfaceInGlobal(interp._oleobj_, pythoncom.IID_IDispatch)
102
-
103
- events = fn(4, cookie)
104
- numFinished = 0
105
- while 1:
106
- try:
107
- rc = win32event.MsgWaitForMultipleObjects(
108
- events, 0, 2000, win32event.QS_ALLINPUT
109
- )
110
- if rc >= win32event.WAIT_OBJECT_0 and rc < win32event.WAIT_OBJECT_0 + len(
111
- events
112
- ):
113
- numFinished += 1
114
- if numFinished >= len(events):
115
- break
116
- elif rc == win32event.WAIT_OBJECT_0 + len(events): # a message
117
- # This is critical - whole apartment model demo will hang.
118
- pythoncom.PumpWaitingMessages()
119
- else: # Timeout
120
- print(
121
- "Waiting for thread to stop with interfaces=%d, gateways=%d"
122
- % (pythoncom._GetInterfaceCount(), pythoncom._GetGatewayCount())
123
- )
124
- except KeyboardInterrupt:
125
- break
126
- GIT.RevokeInterfaceFromGlobal(cookie)
127
- del interp
128
- del GIT
129
-
130
-
131
- if __name__ == "__main__":
132
- test(BeginThreadsSimpleMarshal)
133
- win32api.Sleep(500)
134
- # Doing CoUninit here stop pythoncom.dll hanging when DLLMain shuts-down the process
135
- pythoncom.CoUninitialize()
136
- if pythoncom._GetInterfaceCount() != 0 or pythoncom._GetGatewayCount() != 0:
137
- print(
138
- "Done with interfaces=%d, gateways=%d"
139
- % (pythoncom._GetInterfaceCount(), pythoncom._GetGatewayCount())
140
- )
141
- else:
142
- print("Done.")
@@ -1,149 +0,0 @@
1
- # The purpose of this test is to ensure that the gateways objects
2
- # do the right thing WRT COM rules about object identity etc.
3
-
4
- # Also includes a basic test that we support inheritance correctly in
5
- # gateway interfaces.
6
-
7
- # For our test, we create an object of type IID_IPersistStorage
8
- # This interface derives from IPersist.
9
- # Therefore, QI's for IID_IDispatch, IID_IUnknown, IID_IPersist and
10
- # IID_IPersistStorage should all return the same gateway object.
11
- #
12
- # In addition, the interface should only need to declare itself as
13
- # using the IPersistStorage interface, and as the gateway derives
14
- # from IPersist, it should automatically be available without declaration.
15
- #
16
- # We also create an object of type IID_I??, and perform a QI for it.
17
- # We then jump through a number of hoops, ensuring that the objects
18
- # returned by the QIs follow all the rules.
19
- #
20
- # Here is Gregs summary of the rules:
21
- # 1) the set of supported interfaces is static and unchanging
22
- # 2) symmetric: if you QI an interface for that interface, it succeeds
23
- # 3) reflexive: if you QI against A for B, the new pointer must succeed
24
- # for a QI for A
25
- # 4) transitive: if you QI for B, then QI that for C, then QI'ing A for C
26
- # must succeed
27
- #
28
- #
29
- # Note that 1) Requires cooperation of the Python programmer. The rule to keep is:
30
- # "whenever you return an _object_ from _query_interface_(), you must return the
31
- # same object each time for a given IID. Note that you must return the same
32
- # _wrapped_ object
33
- # you
34
- # The rest are tested here.
35
-
36
-
37
- import pythoncom
38
- from win32com.server.util import wrap
39
-
40
- from .util import CheckClean
41
-
42
- numErrors = 0
43
-
44
-
45
- # Check that the 2 objects both have identical COM pointers.
46
- def CheckSameCOMObject(ob1, ob2):
47
- addr1 = repr(ob1).split()[6][:-1]
48
- addr2 = repr(ob2).split()[6][:-1]
49
- return addr1 == addr2
50
-
51
-
52
- # Check that the objects conform to COM identity rules.
53
- def CheckObjectIdentity(ob1, ob2):
54
- u1 = ob1.QueryInterface(pythoncom.IID_IUnknown)
55
- u2 = ob2.QueryInterface(pythoncom.IID_IUnknown)
56
- return CheckSameCOMObject(u1, u2)
57
-
58
-
59
- def FailObjectIdentity(ob1, ob2, when):
60
- if not CheckObjectIdentity(ob1, ob2):
61
- global numErrors
62
- numErrors += 1
63
- print(f"{when} are not identical ({ob1!r}, {ob2!r})")
64
-
65
-
66
- class Dummy:
67
- _public_methods_ = [] # We never attempt to make a call on this object.
68
- _com_interfaces_ = [pythoncom.IID_IPersistStorage]
69
-
70
-
71
- class Dummy2:
72
- _public_methods_ = [] # We never attempt to make a call on this object.
73
- _com_interfaces_ = [
74
- pythoncom.IID_IPersistStorage,
75
- pythoncom.IID_IExternalConnection,
76
- ]
77
-
78
-
79
- class DelegatedDummy:
80
- _public_methods_ = []
81
-
82
-
83
- class Dummy3:
84
- _public_methods_ = [] # We never attempt to make a call on this object.
85
- _com_interfaces_ = [pythoncom.IID_IPersistStorage]
86
-
87
- def _query_interface_(self, iid):
88
- if iid == pythoncom.IID_IExternalConnection:
89
- # This will NEVER work - can only wrap the object once!
90
- return wrap(DelegatedDummy())
91
-
92
-
93
- def TestGatewayInheritance():
94
- # By default, wrap() creates and discards a temporary object.
95
- # This is not necessary, but just the current implementation of wrap.
96
- # As the object is correctly discarded, it doesn't affect this test.
97
- o = wrap(Dummy(), pythoncom.IID_IPersistStorage)
98
- o2 = o.QueryInterface(pythoncom.IID_IUnknown)
99
- FailObjectIdentity(o, o2, "IID_IPersistStorage->IID_IUnknown")
100
-
101
- o3 = o2.QueryInterface(pythoncom.IID_IDispatch)
102
-
103
- FailObjectIdentity(o2, o3, "IID_IUnknown->IID_IDispatch")
104
- FailObjectIdentity(o, o3, "IID_IPersistStorage->IID_IDispatch")
105
-
106
- o4 = o3.QueryInterface(pythoncom.IID_IPersistStorage)
107
- FailObjectIdentity(o, o4, "IID_IPersistStorage->IID_IPersistStorage(2)")
108
- FailObjectIdentity(o2, o4, "IID_IUnknown->IID_IPersistStorage(2)")
109
- FailObjectIdentity(o3, o4, "IID_IDispatch->IID_IPersistStorage(2)")
110
-
111
- o5 = o4.QueryInterface(pythoncom.IID_IPersist)
112
- FailObjectIdentity(o, o5, "IID_IPersistStorage->IID_IPersist")
113
- FailObjectIdentity(o2, o5, "IID_IUnknown->IID_IPersist")
114
- FailObjectIdentity(o3, o5, "IID_IDispatch->IID_IPersist")
115
- FailObjectIdentity(o4, o5, "IID_IPersistStorage(2)->IID_IPersist")
116
-
117
-
118
- def TestMultiInterface():
119
- o = wrap(Dummy2(), pythoncom.IID_IPersistStorage)
120
- o2 = o.QueryInterface(pythoncom.IID_IExternalConnection)
121
-
122
- FailObjectIdentity(o, o2, "IID_IPersistStorage->IID_IExternalConnection")
123
-
124
- # Make the same QI again, to make sure it is stable.
125
- o22 = o.QueryInterface(pythoncom.IID_IExternalConnection)
126
- FailObjectIdentity(o, o22, "IID_IPersistStorage->IID_IExternalConnection")
127
- FailObjectIdentity(
128
- o2, o22, "IID_IPersistStorage->IID_IExternalConnection (stability)"
129
- )
130
-
131
- o3 = o2.QueryInterface(pythoncom.IID_IPersistStorage)
132
- FailObjectIdentity(o2, o3, "IID_IExternalConnection->IID_IPersistStorage")
133
- FailObjectIdentity(
134
- o, o3, "IID_IPersistStorage->IID_IExternalConnection->IID_IPersistStorage"
135
- )
136
-
137
-
138
- def test():
139
- TestGatewayInheritance()
140
- TestMultiInterface()
141
- if numErrors == 0:
142
- print("Worked ok")
143
- else:
144
- print("There were", numErrors, "errors.")
145
-
146
-
147
- if __name__ == "__main__":
148
- test()
149
- CheckClean()
@@ -1,140 +0,0 @@
1
- # Some raw iter tests. Some "high-level" iterator tests can be found in
2
- # testvb.py and testOutlook.py
3
- import sys
4
- import unittest
5
-
6
- import pythoncom
7
- import win32com.server.util
8
- import win32com.test.util
9
- from win32com.client import Dispatch
10
- from win32com.client.gencache import EnsureDispatch
11
-
12
-
13
- class _BaseTestCase(win32com.test.util.TestCase):
14
- def test_enumvariant_vb(self):
15
- ob, iter = self.iter_factory()
16
- got = []
17
- for v in iter:
18
- got.append(v)
19
- self.assertEqual(got, self.expected_data)
20
-
21
- def test_yield(self):
22
- ob, i = self.iter_factory()
23
- got = []
24
- for v in iter(i):
25
- got.append(v)
26
- self.assertEqual(got, self.expected_data)
27
-
28
- def _do_test_nonenum(self, object):
29
- try:
30
- for i in object:
31
- pass
32
- self.fail("Could iterate over a non-iterable object")
33
- except TypeError:
34
- pass # this is expected.
35
- self.assertRaises(TypeError, iter, object)
36
- self.assertRaises(AttributeError, getattr, object, "next")
37
-
38
- def test_nonenum_wrapper(self):
39
- # Check our raw PyIDispatch
40
- ob = self.object._oleobj_
41
- try:
42
- for i in ob:
43
- pass
44
- self.fail("Could iterate over a non-iterable object")
45
- except TypeError:
46
- pass # this is expected.
47
- self.assertRaises(TypeError, iter, ob)
48
- self.assertRaises(AttributeError, getattr, ob, "next")
49
-
50
- # And our Dispatch wrapper
51
- ob = self.object
52
- try:
53
- for i in ob:
54
- pass
55
- self.fail("Could iterate over a non-iterable object")
56
- except TypeError:
57
- pass # this is expected.
58
- # Note that as our object may be dynamic, we *do* have a __getitem__
59
- # method, meaning we *can* call iter() on the object. In this case
60
- # actual iteration is what fails.
61
- # So either the 'iter(); will raise a type error, or an attempt to
62
- # fetch it
63
- try:
64
- next(iter(ob))
65
- self.fail("Expected a TypeError fetching this iterator")
66
- except TypeError:
67
- pass
68
- # And it should never have a 'next' method
69
- self.assertRaises(AttributeError, getattr, ob, "next")
70
-
71
-
72
- class VBTestCase(_BaseTestCase):
73
- def setUp(self):
74
- def factory():
75
- # Our VB test harness exposes a property with IEnumVariant.
76
- ob = self.object.EnumerableCollectionProperty
77
- for i in self.expected_data:
78
- ob.Add(i)
79
- # Get the raw IEnumVARIANT.
80
- invkind = pythoncom.DISPATCH_METHOD | pythoncom.DISPATCH_PROPERTYGET
81
- iter = ob._oleobj_.InvokeTypes(
82
- pythoncom.DISPID_NEWENUM, 0, invkind, (13, 10), ()
83
- )
84
- return ob, iter.QueryInterface(pythoncom.IID_IEnumVARIANT)
85
-
86
- # We *need* generated dispatch semantics, so dynamic __getitem__ etc
87
- # don't get in the way of our tests.
88
- self.object = EnsureDispatch("PyCOMVBTest.Tester")
89
- self.expected_data = [1, "Two", "3"]
90
- self.iter_factory = factory
91
-
92
- def tearDown(self):
93
- self.object = None
94
-
95
-
96
- # Test our client semantics, but using a wrapped Python list object.
97
- # This has the effect of re-using our client specific tests, but in this
98
- # case is exercising the server side.
99
- class SomeObject:
100
- _public_methods_ = ["GetCollection"]
101
-
102
- def __init__(self, data):
103
- self.data = data
104
-
105
- def GetCollection(self):
106
- return win32com.server.util.NewCollection(self.data)
107
-
108
-
109
- class WrappedPythonCOMServerTestCase(_BaseTestCase):
110
- def setUp(self):
111
- def factory():
112
- ob = self.object.GetCollection()
113
- flags = pythoncom.DISPATCH_METHOD | pythoncom.DISPATCH_PROPERTYGET
114
- enum = ob._oleobj_.Invoke(pythoncom.DISPID_NEWENUM, 0, flags, 1)
115
- return ob, enum.QueryInterface(pythoncom.IID_IEnumVARIANT)
116
-
117
- self.expected_data = [1, "Two", 3]
118
- sv = win32com.server.util.wrap(SomeObject(self.expected_data))
119
- self.object = Dispatch(sv)
120
- self.iter_factory = factory
121
-
122
- def tearDown(self):
123
- self.object = None
124
-
125
-
126
- def suite():
127
- # We don't want our base class run
128
- suite = unittest.TestSuite()
129
- for item in globals().values():
130
- if (
131
- isinstance(item, type)
132
- and issubclass(item, unittest.TestCase)
133
- and item != _BaseTestCase
134
- ):
135
- suite.addTest(unittest.defaultTestLoader.loadTestsFromTestCase(item))
136
- return suite
137
-
138
-
139
- if __name__ == "__main__":
140
- unittest.main(argv=sys.argv + ["suite"])