pywin32-ctypes


Namepywin32-ctypes JSON
Version 0.2.2 PyPI version JSON
download
home_pagehttps://github.com/enthought/pywin32-ctypes
SummaryA (partial) reimplementation of pywin32 using ctypes/cffi
upload_time2023-06-27 11:13:01
maintainer
docs_urlNone
authorEnthought Inc.
requires_python>=3.6
licenseBSD-3-Clause
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            
.. image:: https://readthedocs.org/projects/pywin32-ctypes/badge/?version=master
   :target: http://pywin32-ctypes.readthedocs.org/en/latest/?badge=master
   :alt: Documentation Status

A reimplementation of pywin32 that is pure python. The default
behaviour will try to use cffi (>= 1.3.0), if available, and fall back
to using ctypes. Please note that there is no need to have a compiler
available on installation or at runtime.

Usage
=====

Example::

  # Equivalent to 'import win32api' from pywin32.
  from win32ctypes.pywin32 import win32api

  win32api.LoadLibraryEx(sys.executable, 0, win32api.LOAD_LIBRARY_AS_DATAFILE)

.. note::

   Currently pywin32ctypes implements only a very small subset
   of pywin32, for internal needs at Enthought. We do welcome
   additional features and PRs, though.

Development setup
=================

The following should be good enough::

  pip install -r test_requirements.txt
  python install -e .

.. note::

   - While pywin32-ctypes should regularly be tested on windows, you can also
     develop/test on unix by using wine

Change Log
==========

Version 0.2.2
-------------

- Use ctypes.set_last_error to avoid race conditions (#122)

Version 0.2.1
-------------

- Use faulthandler when testing and fix discovered errors (#115, #117).
- Fix support for None username in credentials to be consistent in all backends (#99).
- Test also on cp38, cp39, cp310, cp311 and use cp38 for linking (#114, #107, #100).
- Add support for CredEnumerate extending code from @markb-EE (#110, #109, #111)
- Remove support for older python versions < cp36 (#104, #120).

Version 0.2.0
-------------

- Fix syntax error when installing in python 3.7 (#81).
- Support testing on python 3.7 (#82).
- Support testing on python 3.3 and python 3.4 (#77).
- Do not use 2to3 (#75).
- Support lazy wrapping of win32 functions (#67).
- Add CRED_PERSIST constants (#79 contributed by @tivnet).

Version 0.1.2
-------------

(bugfix release)

- Fix implementation for the deprecated api (#64).

Version 0.1.1
-------------

(bugfix release)

- Update Manifest.in entries (#63)
- fix VERSION path in Manifest.in (#62 contributed by @MinchinWeb)


Version 0.1.0
-------------

- Update tests and provide better compatibility with pywin32 for
  Resource functions
- Fix: Python 3.5 and 3.6 support (#52).
- API additions to allow pywin32-ctypes to work with pyinstaller (#46
  and #57 contributed by @virtuald).
- Fix: do not update the global copy of the windows dlls (#42)
- Add documentation and setup automatic builds in ReadTheDocs (#3, #36).
- Add cffi backend to be used when available (#31).
- Fix: EnumResourceTypes and EnumResourceNames would only return ints
  (#21, #30).
- Restructure package layout to split core wrapping modules from
  pywin32 emulation (#15, #17).

Version 0.0.1
-------------

7/04/2014

- Python 2.6 support (#13)
- Python 3 support (#12)
- Basic maintenance work (#11, #7)
- Fix error raising to be pywin32 compatible (#8)
- Package rename mini_pywin32 -> pywin32-ctypes
- Add travis-ci integration using wine! (#2)
- Support basic library and resource loading (#1)
- mini_pywin32 is born



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/enthought/pywin32-ctypes",
    "name": "pywin32-ctypes",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "",
    "author": "Enthought Inc.",
    "author_email": "info@enthough.com",
    "download_url": "https://files.pythonhosted.org/packages/10/3d/0cfbca45201351fe8c09cca743403e6c2407892e256e25d126ad64dc6bb7/pywin32-ctypes-0.2.2.tar.gz",
    "platform": null,
    "description": "\n.. image:: https://readthedocs.org/projects/pywin32-ctypes/badge/?version=master\n   :target: http://pywin32-ctypes.readthedocs.org/en/latest/?badge=master\n   :alt: Documentation Status\n\nA reimplementation of pywin32 that is pure python. The default\nbehaviour will try to use cffi (>= 1.3.0), if available, and fall back\nto using ctypes. Please note that there is no need to have a compiler\navailable on installation or at runtime.\n\nUsage\n=====\n\nExample::\n\n  # Equivalent to 'import win32api' from pywin32.\n  from win32ctypes.pywin32 import win32api\n\n  win32api.LoadLibraryEx(sys.executable, 0, win32api.LOAD_LIBRARY_AS_DATAFILE)\n\n.. note::\n\n   Currently pywin32ctypes implements only a very small subset\n   of pywin32, for internal needs at Enthought. We do welcome\n   additional features and PRs, though.\n\nDevelopment setup\n=================\n\nThe following should be good enough::\n\n  pip install -r test_requirements.txt\n  python install -e .\n\n.. note::\n\n   - While pywin32-ctypes should regularly be tested on windows, you can also\n     develop/test on unix by using wine\n\nChange Log\n==========\n\nVersion 0.2.2\n-------------\n\n- Use ctypes.set_last_error to avoid race conditions (#122)\n\nVersion 0.2.1\n-------------\n\n- Use faulthandler when testing and fix discovered errors (#115, #117).\n- Fix support for None username in credentials to be consistent in all backends (#99).\n- Test also on cp38, cp39, cp310, cp311 and use cp38 for linking (#114, #107, #100).\n- Add support for CredEnumerate extending code from @markb-EE (#110, #109, #111)\n- Remove support for older python versions < cp36 (#104, #120).\n\nVersion 0.2.0\n-------------\n\n- Fix syntax error when installing in python 3.7 (#81).\n- Support testing on python 3.7 (#82).\n- Support testing on python 3.3 and python 3.4 (#77).\n- Do not use 2to3 (#75).\n- Support lazy wrapping of win32 functions (#67).\n- Add CRED_PERSIST constants (#79 contributed by @tivnet).\n\nVersion 0.1.2\n-------------\n\n(bugfix release)\n\n- Fix implementation for the deprecated api (#64).\n\nVersion 0.1.1\n-------------\n\n(bugfix release)\n\n- Update Manifest.in entries (#63)\n- fix VERSION path in Manifest.in (#62 contributed by @MinchinWeb)\n\n\nVersion 0.1.0\n-------------\n\n- Update tests and provide better compatibility with pywin32 for\n  Resource functions\n- Fix: Python 3.5 and 3.6 support (#52).\n- API additions to allow pywin32-ctypes to work with pyinstaller (#46\n  and #57 contributed by @virtuald).\n- Fix: do not update the global copy of the windows dlls (#42)\n- Add documentation and setup automatic builds in ReadTheDocs (#3, #36).\n- Add cffi backend to be used when available (#31).\n- Fix: EnumResourceTypes and EnumResourceNames would only return ints\n  (#21, #30).\n- Restructure package layout to split core wrapping modules from\n  pywin32 emulation (#15, #17).\n\nVersion 0.0.1\n-------------\n\n7/04/2014\n\n- Python 2.6 support (#13)\n- Python 3 support (#12)\n- Basic maintenance work (#11, #7)\n- Fix error raising to be pywin32 compatible (#8)\n- Package rename mini_pywin32 -> pywin32-ctypes\n- Add travis-ci integration using wine! (#2)\n- Support basic library and resource loading (#1)\n- mini_pywin32 is born\n\n\n",
    "bugtrack_url": null,
    "license": "BSD-3-Clause",
    "summary": "A (partial) reimplementation of pywin32 using ctypes/cffi",
    "version": "0.2.2",
    "project_urls": {
        "Homepage": "https://github.com/enthought/pywin32-ctypes"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a4bc78b2c00cc64c31dbb3be42a0e8600bcebc123ad338c3b714754d668c7c2d",
                "md5": "5b33131e0ca521c5d39281fe27b70e5c",
                "sha256": "bf490a1a709baf35d688fe0ecf980ed4de11d2b3e37b51e5442587a75d9957e7"
            },
            "downloads": -1,
            "filename": "pywin32_ctypes-0.2.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5b33131e0ca521c5d39281fe27b70e5c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 30152,
            "upload_time": "2023-06-27T11:13:00",
            "upload_time_iso_8601": "2023-06-27T11:13:00.189822Z",
            "url": "https://files.pythonhosted.org/packages/a4/bc/78b2c00cc64c31dbb3be42a0e8600bcebc123ad338c3b714754d668c7c2d/pywin32_ctypes-0.2.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "103d0cfbca45201351fe8c09cca743403e6c2407892e256e25d126ad64dc6bb7",
                "md5": "0240a84cb38ea0936717b936ab74ee21",
                "sha256": "3426e063bdd5fd4df74a14fa3cf80a0b42845a87e1d1e81f6549f9daec593a60"
            },
            "downloads": -1,
            "filename": "pywin32-ctypes-0.2.2.tar.gz",
            "has_sig": false,
            "md5_digest": "0240a84cb38ea0936717b936ab74ee21",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 26950,
            "upload_time": "2023-06-27T11:13:01",
            "upload_time_iso_8601": "2023-06-27T11:13:01.641585Z",
            "url": "https://files.pythonhosted.org/packages/10/3d/0cfbca45201351fe8c09cca743403e6c2407892e256e25d126ad64dc6bb7/pywin32-ctypes-0.2.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-27 11:13:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "enthought",
    "github_project": "pywin32-ctypes",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "pywin32-ctypes"
}
        
Elapsed time: 0.08498s