[python-win32] [ANN] pywin32 build 300 released
Mark Hammond
mhammond at skippinet.com.au
Sat Nov 14 01:26:00 EST 2020
Hi all,
I'm happy to announce the release of pywin32 build 300.
Significantly, this is the first release to exclusively support Python 3
- Python 2 is no longer supported. All Python source files in the repo
are now in Python 3 syntax. To celebrate, the build numbers have jumped
to 300 - there will not be a build 229.
There were significant changes in this release - you are encouraged to
read the changes below carefully
Downloads are available at:
https://github.com/mhammond/pywin32/releases/tag/b300
and via pypi.
For initial support (eg, to ask questions about the release etc), please
contact this mailing-list (python-win32 at python.org). If you want to
report a bug, please do so at https://github.com/mhammond/pywin32/issues
As always, thanks to everyone who contributed to this release, both in
terms of code and reporting bugs - there were a number of new
contributors which is great to see,
Cheers,
Mark.
Changes:
Since build 228:
----------------
* Fixed a bug where win32com.client.VARIANT params were returned in the
reverse order. This only happened when win32com.client.VARIANT was
explicitly used (ie, not when normal params were passed) For example:
arg1 = VARIANT(pythoncom.VT_R4 | pythoncom.VT_BYREF, 2.0)
arg2 = VARIANT(pythoncom.VT_BOOL | pythoncom.VT_BYREF, True)
object.SomeFunction(arg1, arg2)
after this call, `arg1.value` was actually the value for `arg2`, and
vice-versa (#1303, #622).
* Fixed a bug that Pythonwin had an empty `sys.argv` (@kxrob in #1607)
* Fixed a bug that prevented win32process.ReadProcessMemory() from
working in all scenarios (#1599)
* Changed how Services implemented with
win32serviceutil.ServiceFramework report that they have stopped. Now if
the SvcRun() method (or the SvcDoRun() method, which is called by
SvcRun() by default) raises on Exception, the Service will report a
final SERVICE_STOPPED status with a non-zero error code. This will cause
the Service's recovery actions to be triggered if the Service has the
"Enable actions for stops with errors" option enabled. (#1563, Lincoln
Puzey)
* adodbapi connect() method now accepts a "mode" keyword argument which
is the "Mode" property to set on the ADO "Connection" object before
opening the Connection. See "ConnectModeEnum" for valid values. (Lincoln
Puzey)
* The Windows 10 SDK is now used to build the project. This shouldn't
cause any visible changes, but should make it much easier to build the
project yourself.
Python 2 is no longer supported - so long, Python 2, you served us well!
Notable changes in this transition:
* Python 3 builds used to erroneously turn "bytes" into a tuple of
integers instead of a buffer type object. Because this special-casing is
important for performance when using massive buffers, this has been
fixed in Python 3 so it matches the old Python 2 behavior. If you use
arrays of VT_UI1 and expect get back tuples of integers, your code may
break.
* Pythonwin's default encoding is now utf-8 (#1559)
* The build environment has been greatly simplified - you just need
Visual Studio and a Windows 10 SDK. (The free compilers probably work
too, but haven't been tested - let me know your experiences!)
More information about the python-win32
mailing list