{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":17006430,"defaultBranch":"main","name":"comtypes","ownerLogin":"enthought","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-02-20T02:05:56.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/539651?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1712791780.0","currentOid":""},"activityList":{"items":[{"before":"b046b46d2ed5bcad1029602528f4082cfdbf9bbc","after":"efd900dd5cb4657b43e15be5dc167ec451cc8984","ref":"refs/heads/main","pushedAt":"2024-04-30T13:05:34.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Determine whether a disp interface is one of the known symbols not only by its name but also by using its iid (#534)","shortMessageHtmlLink":"Determine whether a disp interface is one of the known symbols not on…"}},{"before":"fe07704d6c3fb500c06b9face30be1bb9d9b40f5","after":"b046b46d2ed5bcad1029602528f4082cfdbf9bbc","ref":"refs/heads/main","pushedAt":"2024-04-23T00:54:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"add `Incomplete` and `Hresult` to `hints.pyi` (#532)\n\n* add `Incomplete` and `Hresult` to `hints.pyi`\r\n\r\n* fix grammars","shortMessageHtmlLink":"add Incomplete and Hresult to hints.pyi (#532)"}},{"before":"c8f3e2e0fe628643476b61d7e0bc5b2103fd6231","after":"fe07704d6c3fb500c06b9face30be1bb9d9b40f5","ref":"refs/heads/main","pushedAt":"2024-04-22T16:08:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Removing trailing newlines generated by `codegenerator` and `typeannotator` (#531)\n\n* fix trailing newlines generated by `typeannotator`.\r\n\r\n* fix typos\r\n\r\n* to f-string\r\n\r\n* fix trailing newlines generated by `ComMethodGenerator`, `DispPropertyGenerator` and `DispMethodGenerator`","shortMessageHtmlLink":"Removing trailing newlines generated by codegenerator and `typeanno…"}},{"before":"9ccfa6b3e2aa4ce4ff6e5c71d70739df7c4f40a9","after":"c8f3e2e0fe628643476b61d7e0bc5b2103fd6231","ref":"refs/heads/main","pushedAt":"2024-04-16T09:44:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Determine whether a COM interface is one of the known symbols not only by its name but also by using its iid (#529)\n\n* change to constructor arguments\r\n\r\n* add `_get_existing_friendly_module` and `_get_existing_wrapper_module`\r\n\r\n* update `mscorlib` test\r\n\r\n* replace `_get_known_symbols` with `_get_known_namespaces`\r\n\r\n* update `codegenerator`\r\nadd `known_interfaces` to constructor args.","shortMessageHtmlLink":"Determine whether a COM interface is one of the known symbols not onl…"}},{"before":"7fc1cce5fbbf5a648653fa3eef85e5b7f8d64d7b","after":"9ccfa6b3e2aa4ce4ff6e5c71d70739df7c4f40a9","ref":"refs/heads/main","pushedAt":"2024-04-15T22:50:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Integrate two `_create_module_in_...`. (#528)","shortMessageHtmlLink":"Integrate two _create_module_in_.... (#528)"}},{"before":"040152f6519cc132185415a3c516c19db9f51e5a","after":"7fc1cce5fbbf5a648653fa3eef85e5b7f8d64d7b","ref":"refs/heads/main","pushedAt":"2024-04-15T11:54:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Define constants and `c_int` aliases earlier than others in wrapper modules (#527)","shortMessageHtmlLink":"Define constants and c_int aliases earlier than others in wrapper m…"}},{"before":"e3da62bc5a9ff4dab8550c0b6b769161221b4e6f","after":"040152f6519cc132185415a3c516c19db9f51e5a","ref":"refs/heads/main","pushedAt":"2024-04-10T23:22:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Bump version and update change log for 1.4.1 (#526)\n\n* update `docs\\source\\conf.py`\r\n\r\n* update `comtypes\\__init__.py`\r\n\r\n* update change log for 1.4.1","shortMessageHtmlLink":"Bump version and update change log for 1.4.1 (#526)"}},{"before":"7fa88e132f0b0aa3165db1a243e7ee623771ac90","after":"e3da62bc5a9ff4dab8550c0b6b769161221b4e6f","ref":"refs/heads/main","pushedAt":"2024-04-10T22:58:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Fix `TypeError` when defining enumeration types (#525)","shortMessageHtmlLink":"Fix TypeError when defining enumeration types (#525)"}},{"before":"0d43d183e1881ab76bacf64d370c1697e21963b7","after":"7fa88e132f0b0aa3165db1a243e7ee623771ac90","ref":"refs/heads/main","pushedAt":"2024-04-07T23:16:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Bump version and update change log for 1.4.0 (#523)\n\n* update `docs\\source\\conf.py`\r\n\r\n* update `comtypes\\__init__.py`\r\n\r\n* remove completed plans from `README.md`\r\n\r\n* update change log for 1.4.0\r\n\r\n* add auto-test workflow by GHA\r\n\r\n* fix workflow\r\n\r\n* update `CHANGES.txt`","shortMessageHtmlLink":"Bump version and update change log for 1.4.0 (#523)"}},{"before":"765daf7d09e554a2e13fedf38b79061db34b7585","after":"0d43d183e1881ab76bacf64d370c1697e21963b7","ref":"refs/heads/main","pushedAt":"2024-04-07T14:05:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"update `index.rst` (#522)","shortMessageHtmlLink":"update index.rst (#522)"}},{"before":"aa770cadc2b57f838e2a20d25a9de2a348f556b3","after":"765daf7d09e554a2e13fedf38b79061db34b7585","ref":"refs/heads/main","pushedAt":"2024-03-19T14:03:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Add enumeration definitions in the friendly modules (#475)\n\n* add test for enumerations in friendly module\r\n\r\n* add enums generation processes\r\n\r\n* add the sprout class `EnumerationNamespaces`\r\n\r\n* refactor the `codegenerator`\r\n\r\n* remove `wrapper_module_name` arg\r\nfrom `EnumerationNamespaces.getvalue`","shortMessageHtmlLink":"Add enumeration definitions in the friendly modules (#475)"}},{"before":"e3c4a805f3fbfa3670c5837f337c35e0feac9065","after":"aa770cadc2b57f838e2a20d25a9de2a348f556b3","ref":"refs/heads/main","pushedAt":"2024-02-25T23:28:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Bump version and update change log for 1.3.1 (#518)\n\n* update `docs\\source\\conf.py`\r\n\r\n* update `comtypes\\__init__.py`\r\n\r\n* update change log for 1.3.1","shortMessageHtmlLink":"Bump version and update change log for 1.3.1 (#518)"}},{"before":"42cf9d771a0fa012d066374c223190dcf74868eb","after":"e3c4a805f3fbfa3670c5837f337c35e0feac9065","ref":"refs/heads/main","pushedAt":"2024-02-18T04:57:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"update `README.md` (#515)","shortMessageHtmlLink":"update README.md (#515)"}},{"before":"c6f800428e35437c2f6328f621ebd053398c8879","after":"42cf9d771a0fa012d066374c223190dcf74868eb","ref":"refs/heads/main","pushedAt":"2024-02-17T20:10:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Bring back Excel early-bind test (#514)","shortMessageHtmlLink":"Bring back Excel early-bind test (#514)"}},{"before":"afc6488d3386771f69ab4a3e305099e16c34f4d7","after":"c6f800428e35437c2f6328f621ebd053398c8879","ref":"refs/heads/main","pushedAt":"2024-02-11T00:07:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Add method annotations (all args and return-values are `Any`) (#490)\n\n* add stuffs to `comtypes/hints.pyi`\r\n\r\n* add `...Annotator`s to `comtypes/tools/codegenerator.py`\r\n\r\n* add `comtypes/tools/typeannotator.py`\r\nand move `...Annotator`s from `comtypes/tools/codegenerator.py`","shortMessageHtmlLink":"Add method annotations (all args and return-values are Any) (#490)"}},{"before":"e1d618584390f4580f89676d79da39e863785543","after":"afc6488d3386771f69ab4a3e305099e16c34f4d7","ref":"refs/heads/main","pushedAt":"2024-02-04T23:44:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Bump version and update change log for 1.3.0 (#510)\n\n* update `docs/source/conf.py`\r\n\r\n* update `comtypes/__init__.py`\r\n\r\n* update `README.md`\r\n\r\n* update `.github/workflows/autofmt.yml`\r\n\r\n* update change log for 1.3.0\r\nDropping Python 2.7 support","shortMessageHtmlLink":"Bump version and update change log for 1.3.0 (#510)"}},{"before":"ba24a817cb0f84feb1d001ceb663fdf15935fb00","after":"e1d618584390f4580f89676d79da39e863785543","ref":"refs/heads/main","pushedAt":"2024-02-04T22:48:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Merge `drop_py2` (#509)\n\n* update `appveyor.yml` (#398)\r\n\r\n(cherry picked from commit 30f497a8241fa32976b53f3f1469b6ea56839c36)\r\n\r\n* just remove trailing whitespaces (#410)\r\n\r\n(cherry picked from commit 7a1480444b25ef9fe49161175dda9f7cea8fc9ba)\r\n\r\n* adjust comments (#411)\r\n\r\n(cherry picked from commit 80ec49b0e7d424ba46f377ced4475026c3bfec47)\r\n\r\n* adjust comments (#412)\r\n\r\n(cherry picked from commit 817b6b7b81e4ffdf7af0c8b2bc5b2fbb802e6cbf)\r\n\r\n* adjust comments (#413)\r\n\r\n(cherry picked from commit 5b0dc8d12e6fe02239fb5c8de052b22d2759bcce)\r\n\r\n* adjust comments (#414)\r\n\r\n(cherry picked from commit a6fc08b7fbaf78ec1d0d09d52f6e76073977f762)\r\n\r\n* adjust comments (#415)\r\n\r\n(cherry picked from commit 21b6ab68a844d00caf24a93fb1b5a23d5b1ad9e7)\r\n\r\n* adjust comments (#416)\r\n\r\n(cherry picked from commit 086ec130217cdf89777b5e0f54b54d6497211113)\r\n\r\n* adjust comments (#417)\r\n\r\n(cherry picked from commit 4e537923121271a7fbab57378d9eea1130617376)\r\n\r\n* adjust comments and brackets (#420)\r\n\r\n(cherry picked from commit 14ae44dcb33c727605bb3a72f4f0e929328b2296)\r\n\r\n* unify styles for `__all__` and `__known_symbols__` (#421)\r\n\r\n(cherry picked from commit 1398608e5cd1352f80e5962077c1179991dca945)\r\n\r\n* Improve error message on non Win (#423)\r\n\r\n* Improve COM error message\r\n\r\n* Drop Py2 stuff\r\n\r\n* Remove dot\r\n\r\n* Remove empty line\r\n\r\n(cherry picked from commit 18cafb02662a50691cbb7ced5f7030ccd92cc4ca)\r\n\r\n* adjust styles of `client/__init__.py` (#424)\r\n\r\n(cherry picked from commit 12d22a24ddbae6f05abb7a03a895ae1a682f24b9)\r\n\r\n* add auto-formatter GHA triggered by PR (#427)\r\n\r\n* add `# fmt: ...` for avoiding redundant format\r\n\r\n* add GHA setting\r\n\r\n* apply automatic formatter\r\n\r\nCo-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>\r\n(cherry picked from commit 22bfc50756e78caa971fe1b43ff4558c9c6b6c16)\r\n\r\n* fix GHA settings (#431)\r\n\r\n(cherry picked from commit 0664400a43f7a3a0e177f4bef838dc2aeda22d50)\r\n\r\n* fix passing keyword arguments in `client.dynamic` (#432)\r\n\r\n(cherry picked from commit 32d66217fde577f722ff9a64adf16af7a66e2594)\r\n\r\n* remove `__cmp__` methods in `client.dynamic` (#434)\r\n\r\n(cherry picked from commit b6a41811a55a077a64e501d0aa5eec5a7dc95f4f)\r\n\r\n* remove `sys.version_info` bridges (#436)\r\n\r\n(cherry picked from commit 0cadf7745ca3fc5df1364ddc7dc724829e099667)\r\n\r\n* remove `hints.AnnoField` (#437)\r\n\r\n(cherry picked from commit 39d9e00e738411076712cb814bfcc2e27b379611)\r\n\r\n* adjust import part and references (#439)\r\n\r\n(cherry picked from commit 0fecfeacf3553ee744a7e6cb2f483116daacffdf)\r\n\r\n* add tests for `client.dynamic` (#440)\r\n\r\n(cherry picked from commit 7d69dce09adc65f92a3a3899037f7a974da31fa0)\r\n\r\n* fix `client.dynamic._Dispatch.QueryInterface` (#442)\r\n\r\n(cherry picked from commit 6b551a4bc57c14f9a8afedb6cecd3bc462e35724)\r\n\r\n* add type annotations other than `Dispatch` func (#444)\r\n\r\n(cherry picked from commit 11410ce563634b9c96b6ba9b30ac95e6a3af1f97)\r\n\r\n* fix importing `typing` under `if TYPE_CHECKING:` (#448)\r\n\r\n(cherry picked from commit ba1b18fae1b54b2973d19707ed2932ae5ef83d9c)\r\n\r\n* remove `sys.version_info` bridges (#449)\r\n\r\n(cherry picked from commit 9238cc77faff07a74525a818b8a65c146053e349)\r\n\r\n* fix `IPersist.GetClassID` to `TYPE_CHECKING` only method from `Callable` annotation (#451)\r\n\r\n(cherry picked from commit 446f52e22e26f40e2c1a489e32a3e5b0f173a3a9)\r\n\r\n* remove skip marks (#452)\r\n\r\n(cherry picked from commit 6732c266523fd1086e9d46a70cfafde6726d60a3)\r\n\r\n* fix type hints to inline annotations (#453)\r\n\r\n(cherry picked from commit 7321eafd6229242291bb8f1661b6681ec6f3a080)\r\n\r\n* change type hints from comment annotations to inline annotations in `comtypes/__init__.py`, `comtypes/automation.py` and `comtypes/typeinfo.py` (#454)\r\n\r\n* update `comtypes/__init__.py`\r\n\r\n* update `comtypes/automation.py`\r\n\r\n* update `comtypes/typeinfo.py`\r\n\r\n* fix `Array[T]` to quoted literal strings\r\n\r\n(cherry picked from commit 7b38a7a1db973ea4ba6545fff8fb71dd1a63a801)\r\n\r\n* change type hints from comment annotations to inline annotations in `_memberspec` (#455)\r\n\r\n(cherry picked from commit 5d230aa4e795fccda2448ab971b1a1ed068e4241)\r\n\r\n* change type hints from comment annotations to inline annotations in `comtypes/client/...` (#456)\r\n\r\n* change type hints from comment annotations to inline annotations in `comtypes/client/...`\r\n\r\n* fix type annotations\r\n\r\n(cherry picked from commit 18dc2cc0175ee3da76ca2e2766157a4a0a897884)\r\n\r\n* Update `codegenerator` type annotations (#457)\r\n\r\n* update `codegenerator` type annotations\r\n\r\n* lcid\r\n\r\n(cherry picked from commit 9e7b90006348ccfd6752f0bfe60465e54c10bcb8)\r\n\r\n* Update `tlbparser` type annotations (#459)\r\n\r\n(cherry picked from commit 0b4dbcad7c6f7632790aa81a242672ba41895a48)\r\n\r\n* Update type annotations in `typedesc` and `typedesc_base` (#461)\r\n\r\n* update `typedesc` type annotations\r\n\r\n* update `typedesc_base` type annotations\r\n\r\n(cherry picked from commit 95962e91bb66a1fd5241d67a673528225f0ad0ec)\r\n\r\n* remove raising `unittest.SkipTest` from `test_getactiveobj` (#462)\r\n\r\n(cherry picked from commit 00f231784f3ac7da83196e1c85095df6290d5b9f)\r\n\r\n* add `black` style checking to GHA settings (#465)\r\n\r\n(cherry picked from commit 04037aefe830b52d5b8efb643d81d9a7737bd72b)\r\n\r\n* modernize `test_client` (#466)\r\n\r\n* change from udf `silence_stdout` to stdlib `contextlib.contextmanager`\r\n\r\n* remove `sys.version_info` bridges\r\n\r\n* remove excessive blank lines\r\n\r\n(cherry picked from commit d470b62de8e5e56b74c13c799e24e27efea8c598)\r\n\r\n* fix `__next__()` in IEnum code generator (#467)\r\n\r\n(cherry picked from commit a76f0b1f24d64827b6d89991038350b5521eecf6)\r\n\r\n* correcting type hint for CreateObject (#470)\r\n\r\nCo-authored-by: jonschz \r\n(cherry picked from commit 1615af5b56670cc811e70403dd6762a49f6fe7d1)\r\n\r\n* Add unit test for generated IEnum (#468) (#471)\r\n\r\n* unit test for generated IEnum (#468)\r\n\r\n* change enum_test to a non-empty IEnum\r\n\r\n* improved checks and clarity\r\n\r\n* apply requested changes\r\n\r\nCo-authored-by: jonschz \r\n(cherry picked from commit e1ee6f05e29d07b94c22952b0ed69d1f6db0a56b)\r\n\r\n* make explicit the symbols that imports from the wrapper module into the friendly module (#469)\r\n\r\n* add `Library` to generated modules' `__all__`.\r\nbecause that symbol is public but not included.\r\n\r\n* add `typelib_path` to generated modules' `__all__`.\r\nbecause that symbol is public but not included.\r\n\r\n* make `ModuleGenerator` class\r\nthat encapsulates `CodeGenerator` instance.\r\n\r\n* rename to `generate_wrapper_code`\r\nfrom `generate_code`\r\n\r\n* add `generate_friendly_code`\r\n\r\n* add type annotations to `generate_wrapper_code`\r\n\r\n* add docstring\r\n\r\n* add `get_symbols` methods\r\nto `DeclaredNamespaces` and `ImportedNamespaces`\r\n\r\n* update imporing symbols\r\n\r\n* add type annotation to return value for `__init__`\r\n\r\n* change to using f-string\r\nin `generate_friendly_code`\r\n\r\n(cherry picked from commit 532c3996e73866009249e02981d3ead9ae58d474)\r\n\r\n* remove `'Programming Language :: Python :: 2.7'` (#483)\r\n\r\nfrom `setup.py`\r\n\r\n(cherry picked from commit 9724dc0f5acf5cf5a58b8ff2a6c16f49f96ef069)\r\n\r\n* change `_MemberSpec`s to `NamedTuple`s (#484)\r\n\r\n* change `_MemberSpec` to `NamedTuple`\r\n\r\n* `_ComMemberSpec` is no more `Generic`\r\nfor Py<3.11 backward compatibility.\r\n\r\n* apply `black` style\r\n\r\n(cherry picked from commit 94b81af9fcde16d9c7c0f5453bd72474471f7194)\r\n\r\n* split `DISPPARAMS` instantiation in `IDispatch.Invoke` method with `__make_dp` method (#485)\r\n\r\n(cherry picked from commit 62ce3035b44ae8e7c957b8cd8dca42bfa23b9dd3)\r\n\r\n* 477 Move clear_comtypes_cache to be a callable module (#478)\r\n\r\n* move clear_comtypes_cache to be a callable module\r\n\r\nThis commit modifies the clear_comtypes_cache.py script so that it is inside\r\nthe main comtypes module (renamed as just clear_cache) so that is can be called\r\nmore easily as \"py -m comtypes.clear_cache\". The main function of the script is\r\nalso exported using the \"console_scripts\" entry point so that the script also\r\ngoes into the standard Python \"Scripts\" folder as before, but now as a .exe\r\ninstead of a .py script, which makes it easier to run if systems are set to\r\nopen .py files instead of running them.\r\n\r\nThis version also includes a test case using the 3rd party package pyfakefs.\r\nCurrently, this is not desired to avoid the requirement of 3rd party packages\r\nin comtypes, but is included here for potential use if the position changes.\r\nA subsequent commit will modify the tests to use unittest.patch instead, which\r\nis an inferior technical solution but avoids a 3rd party package.\r\n\r\n* modify clear_cache tests to not use pyfakefs\r\n\r\nThis commit updates the test for comtypes.clear_cache to not use any 3rd party\r\npackages, instead relying on mocking the shutil.rmtree function which is used\r\nto do the actual cache deletion.\r\n\r\n* change quotes in print string\r\n\r\n* style changes based on review by @junkmd\r\n\r\n* Apply suggestions from code review\r\n\r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>\r\n\r\n---------\r\n\r\nCo-authored-by: Ben Rowland \r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>\r\n(cherry picked from commit 8954f6174caf3fd71e1ee4eff4a9c138db015b94)\r\n\r\n* delint long lines (#487)\r\n\r\n(cherry picked from commit 6532d3214c6b16776caa6aeca1c2f15f29dc79d9)\r\n\r\n* remove `from ctypes import *` (#488)\r\n\r\n(cherry picked from commit 65e3c100a59f6923d2e7ba1b33fff28f37bf9baf)\r\n\r\n* remove dead optional `for_stub` arg (#489)\r\n\r\nfrom `ImportedNamespaces.getvalue`\r\n\r\n(cherry picked from commit da27aaf9a0fd34a50d1bbb62b8a6c962fae94ac8)\r\n\r\n* importing the wrapper-module into the friendly-module using an abstracted name, `__wrapper_module__` (#493)\r\n\r\n* add test\r\n\r\n* add the `__wrapper_module__` to friendly modules\r\n\r\nBy doing so, it is possible to achieve a combination of friendly-modules\r\nfunctionalities and improved access to the wrapper-modules.\r\n\r\n(cherry picked from commit b7d5f1fad48a23ecbbdb43ae33055e540b746ead)\r\n\r\n* Fix old index bug in `call_with_inout` (#473)\r\n\r\n* bugfix in `call_with_inout`\r\n\r\n* minor cleanup\r\n\r\n* handling the case of no in and no out\r\n\r\n* Test case for _fix_inout_args\r\n\r\n* additional cleanup and error handling\r\n\r\n* code formatting fixed\r\n\r\n* fix python 3.7 and 3.8 compatibility\r\n\r\n* Temporary addition of real-world test\r\n\r\n* code cleanup\r\n\r\n* intermediate commit, do not review\r\n\r\n* Refactor of unit test, removing portdevice test\r\n\r\n* fix global side-effect of other skipped test\r\n\r\n* Update comtypes/test/test_outparam.py\r\n\r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>\r\n\r\n* work on tests for inout_args and outparam\r\n- cleanup for test_outparam.py\r\n- improvements to test_inout_args.py\r\n- comments on a possible error in _memberspec.py\r\n\r\n* removing dead code\r\n\r\n* rename variables and add assertions\r\n\r\n* pass `MagicMock` instead of `ut.TestCase`\r\n\r\n* make tests for each argument passing patterns\r\n\r\n* remove duplicated comments\r\n\r\n* update test code for readability\r\n- remove name from mock\r\n- move line breaks to between mock preparations and assertions\r\n\r\n* split the testcases\r\n\r\n* add `Test_Error`\r\n\r\n* minor corrections, remove redundancy, migration\r\n- rewrite the permutations test\r\n- missing direction and omitted name redundant\r\n- migrate autogenerated keywords\r\n- TBD: more real life tests\r\n\r\n* Add tests covering 24 patterns\r\n- instead of using `if` statements and `permutations`\r\n\r\n* update test name\r\n\r\n* add real world tests, remove old code\r\n\r\n* formatting issue\r\n\r\n* Update comtypes/_memberspec.py\r\n\r\ndict type annotation\r\n\r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>\r\n\r\n* Change missing 'in' or 'out' to be treated as 'in'\r\n\r\n* Add real-world test: param without 'in' or 'out'\r\n\r\n* add `contextlib.redirect_stdout`\r\nto supress warnings\r\n\r\n* apply review feedback\r\n\r\n* update comments\r\n\r\n* add line breaks to lines longer than 88 characters\r\n\r\n* Update comtypes/test/test_inout_args.py\r\n\r\n---------\r\n\r\nCo-authored-by: jonschz \r\nCo-authored-by: Jonathan \r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>\r\n(cherry picked from commit 876801f4061596bc744be1316fce0a2c58ab29a8)\r\n\r\n* Fix rendering emojis in `CONTRIBUTING.md` and remove \"Breaking troubles down\" from \"Table of contents\" (#505)\r\n\r\n(cherry picked from commit af78614ab9e73a5863684260a7af25cd164b9113)\r\n\r\n---------\r\n\r\nCo-authored-by: Cristi Fati \r\nCo-authored-by: jonschz <17198703+jonschz@users.noreply.github.com>\r\nCo-authored-by: Ben Rowland ","shortMessageHtmlLink":"Merge drop_py2 (#509)"}},{"before":"2d3f5c3657346e9ee8477f4fdc4d07bbc7c4adfb","after":"ba24a817cb0f84feb1d001ceb663fdf15935fb00","ref":"refs/heads/main","pushedAt":"2024-01-30T14:26:05.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Update \"Ongoing plans\" in `README.md` (#508)\n\n* update \"Ongoing plans\"\r\n\r\n* add backquotes","shortMessageHtmlLink":"Update \"Ongoing plans\" in README.md (#508)"}},{"before":"ee187e9642dc6b77985cb15f615c12a761d10b77","after":"2d3f5c3657346e9ee8477f4fdc4d07bbc7c4adfb","ref":"refs/heads/main","pushedAt":"2024-01-21T01:34:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"add Tidelift info (#506)","shortMessageHtmlLink":"add Tidelift info (#506)"}},{"before":"876801f4061596bc744be1316fce0a2c58ab29a8","after":"af78614ab9e73a5863684260a7af25cd164b9113","ref":"refs/heads/drop_py2","pushedAt":"2024-01-19T00:17:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Fix rendering emojis in `CONTRIBUTING.md` and remove \"Breaking troubles down\" from \"Table of contents\" (#505)","shortMessageHtmlLink":"Fix rendering emojis in CONTRIBUTING.md and remove \"Breaking troubl…"}},{"before":"07cf96df620f3a1a7097968c9c3896befb778a77","after":"876801f4061596bc744be1316fce0a2c58ab29a8","ref":"refs/heads/drop_py2","pushedAt":"2024-01-10T23:45:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"Fix old index bug in `call_with_inout` (#473)\n\n* bugfix in `call_with_inout`\r\n\r\n* minor cleanup\r\n\r\n* handling the case of no in and no out\r\n\r\n* Test case for _fix_inout_args\r\n\r\n* additional cleanup and error handling\r\n\r\n* code formatting fixed\r\n\r\n* fix python 3.7 and 3.8 compatibility\r\n\r\n* Temporary addition of real-world test\r\n\r\n* code cleanup\r\n\r\n* intermediate commit, do not review\r\n\r\n* Refactor of unit test, removing portdevice test\r\n\r\n* fix global side-effect of other skipped test\r\n\r\n* Update comtypes/test/test_outparam.py\r\n\r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>\r\n\r\n* work on tests for inout_args and outparam\r\n- cleanup for test_outparam.py\r\n- improvements to test_inout_args.py\r\n- comments on a possible error in _memberspec.py\r\n\r\n* removing dead code\r\n\r\n* rename variables and add assertions\r\n\r\n* pass `MagicMock` instead of `ut.TestCase`\r\n\r\n* make tests for each argument passing patterns\r\n\r\n* remove duplicated comments\r\n\r\n* update test code for readability\r\n- remove name from mock\r\n- move line breaks to between mock preparations and assertions\r\n\r\n* split the testcases\r\n\r\n* add `Test_Error`\r\n\r\n* minor corrections, remove redundancy, migration\r\n- rewrite the permutations test\r\n- missing direction and omitted name redundant\r\n- migrate autogenerated keywords\r\n- TBD: more real life tests\r\n\r\n* Add tests covering 24 patterns\r\n- instead of using `if` statements and `permutations`\r\n\r\n* update test name\r\n\r\n* add real world tests, remove old code\r\n\r\n* formatting issue\r\n\r\n* Update comtypes/_memberspec.py\r\n\r\ndict type annotation\r\n\r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>\r\n\r\n* Change missing 'in' or 'out' to be treated as 'in'\r\n\r\n* Add real-world test: param without 'in' or 'out'\r\n\r\n* add `contextlib.redirect_stdout`\r\nto supress warnings\r\n\r\n* apply review feedback\r\n\r\n* update comments\r\n\r\n* add line breaks to lines longer than 88 characters\r\n\r\n* Update comtypes/test/test_inout_args.py\r\n\r\n---------\r\n\r\nCo-authored-by: jonschz \r\nCo-authored-by: Jonathan \r\nCo-authored-by: Jun Komoda <45822440+junkmd@users.noreply.github.com>","shortMessageHtmlLink":"Fix old index bug in call_with_inout (#473)"}},{"before":"b7d5f1fad48a23ecbbdb43ae33055e540b746ead","after":"07cf96df620f3a1a7097968c9c3896befb778a77","ref":"refs/heads/drop_py2","pushedAt":"2024-01-06T03:55:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"add `Python312`s to ci pipeline (#502)","shortMessageHtmlLink":"add Python312s to ci pipeline (#502)"}},{"before":"033d6e8e8a9f4104481d092c3df31182558e2059","after":"ee187e9642dc6b77985cb15f615c12a761d10b77","ref":"refs/heads/main","pushedAt":"2024-01-04T20:52:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"vasily-v-ryabov","name":"Vasily Ryabov","path":"/vasily-v-ryabov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7419086?s=80&v=4"},"commit":{"message":"Bump version and update change log for 1.2.1 (#501)\n\n* Bump version and update change log for 1.2.1\r\n\r\n* Remove Python >=3.3, <=3.6 from CI pipeline","shortMessageHtmlLink":"Bump version and update change log for 1.2.1 (#501)"}},{"before":"fd6d1c9409e33f8ddb321d8eb4d5405a4b8d5e62","after":"033d6e8e8a9f4104481d092c3df31182558e2059","ref":"refs/heads/main","pushedAt":"2024-01-03T17:27:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"vasily-v-ryabov","name":"Vasily Ryabov","path":"/vasily-v-ryabov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7419086?s=80&v=4"},"commit":{"message":"add `hints.pyi` to `package_data` in `setup.py` (#491)","shortMessageHtmlLink":"add hints.pyi to package_data in setup.py (#491)"}},{"before":"df0c3c237aa3318835702e21fe9f714c7d80e0aa","after":"fd6d1c9409e33f8ddb321d8eb4d5405a4b8d5e62","ref":"refs/heads/main","pushedAt":"2024-01-03T17:22:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"vasily-v-ryabov","name":"Vasily Ryabov","path":"/vasily-v-ryabov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7419086?s=80&v=4"},"commit":{"message":"add `long_description_content_type` to `setup.py` (#482)\n\nto fix rendering description in PyPI","shortMessageHtmlLink":"add long_description_content_type to setup.py (#482)"}},{"before":"d1f5cd7e6c73c52f30a36c226cdde21586cdc4b7","after":"df0c3c237aa3318835702e21fe9f714c7d80e0aa","ref":"refs/heads/main","pushedAt":"2024-01-03T17:21:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"vasily-v-ryabov","name":"Vasily Ryabov","path":"/vasily-v-ryabov","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/7419086?s=80&v=4"},"commit":{"message":"add support for Python3.12 (#498)\n\n* add `matrix` to `appveyor.yml`\r\n\r\n* replace `distutils` with `setuptools`\r\n\r\n* upgrade setuptools","shortMessageHtmlLink":"add support for Python3.12 (#498)"}},{"before":"da27aaf9a0fd34a50d1bbb62b8a6c962fae94ac8","after":"b7d5f1fad48a23ecbbdb43ae33055e540b746ead","ref":"refs/heads/drop_py2","pushedAt":"2023-07-12T13:06:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"importing the wrapper-module into the friendly-module using an abstracted name, `__wrapper_module__` (#493)\n\n* add test\r\n\r\n* add the `__wrapper_module__` to friendly modules\r\n\r\nBy doing so, it is possible to achieve a combination of friendly-modules\r\nfunctionalities and improved access to the wrapper-modules.","shortMessageHtmlLink":"importing the wrapper-module into the friendly-module using an abstra…"}},{"before":"65e3c100a59f6923d2e7ba1b33fff28f37bf9baf","after":"da27aaf9a0fd34a50d1bbb62b8a6c962fae94ac8","ref":"refs/heads/drop_py2","pushedAt":"2023-06-16T23:33:23.385Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"remove dead optional `for_stub` arg (#489)\n\nfrom `ImportedNamespaces.getvalue`","shortMessageHtmlLink":"remove dead optional for_stub arg (#489)"}},{"before":"6532d3214c6b16776caa6aeca1c2f15f29dc79d9","after":"65e3c100a59f6923d2e7ba1b33fff28f37bf9baf","ref":"refs/heads/drop_py2","pushedAt":"2023-06-16T12:50:20.417Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"remove `from ctypes import *` (#488)","shortMessageHtmlLink":"remove from ctypes import * (#488)"}},{"before":"8954f6174caf3fd71e1ee4eff4a9c138db015b94","after":"6532d3214c6b16776caa6aeca1c2f15f29dc79d9","ref":"refs/heads/drop_py2","pushedAt":"2023-06-15T22:14:30.016Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"junkmd","name":"Jun Komoda","path":"/junkmd","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/45822440?s=80&v=4"},"commit":{"message":"delint long lines (#487)","shortMessageHtmlLink":"delint long lines (#487)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEPgUiUwA","startCursor":null,"endCursor":null}},"title":"Activity · enthought/comtypes"}