Releases: pleiszenburg/wenv
0.5.1 (2022-12-26)
- FEATURE: Prepends empty string to
sys.path
in Wine Python environment, allowing to import modules from the current working directory when running a Windows build of Python <= 3.10. - FEATURE: New configuration parameter
no_pth_file
, allowing to work around CPython PR #31542 in CPython >= 3.11. The PR setssafe_path
to1
thus avoiding to prepend an empty string tosys.path
if a pth-file is present.
0.5.0 (2022-12-24)
- FEATURE: Added support for Python 3.11.
- FEATURE: Deal with unexpected configuration parameters, transparently pass them through - required by
zugbruecke
. - DEV: Cleanup of old workaround configuration parameter (zugbruecke#50). Moved mechanism to
zugbruecke
entirely.
0.4.1 (2022-09-11)
- DEV: Cleanup of
docs
folder structure. - DEV: Include logo in repo.
0.4.0 (2022-09-09)
- FEATURE: Dropped support for Python 3.6.
- FIX: Internal paths were not updated when API calls were used, resulting in bugs in subsequent API calls expecting the paths to be changed.
- FIX: Dropped
requests
as a dependency in favor or standard library'surllib
for compatibility withzugbruecke
. - FIX: Configuration export to dict broken due to false type annotation.
- FIX: CI pipeline, Wine installation.
- DEV: Moved from
setuptools
toflit
for packaging. - DEV: Cleanups in documentation configuration for younger versions of Sphinx.
0.3.0 (2021-11-24)
- FEATURE: Added support for Python 3.9 and 3.10.
- FEATURE: Dropped support for Python 3.4 and 3.5.
- FEATURE: Exposed parser for CPython versions, see
wenv.PythonVersion
. - FEATURE: New functions for querying available Windows Embeddable Python builds from python.org/downloads, see
wenv.get_available_python_builds
andwenv.get_latest_python_build
. - FEATURE: Experimental support for ARM64 added.
- FEATURE: New command for showing wenv's version:
wenv version
- FIX: Wine Python can distinctly refer to and handle alpha, beta, release-candidate and stable builds of CPython.
- FIX: Error handling in package listing for Wine Python environments was broken.
- FIX: Python version parser could not handle Windows ARM64 builds.
- FIX: Configuration expected in
/etc/.wenv.json
and/etc/wenv.json
, see #15. The support for/etc/.wenv.json
will be removed in a future release. - FIX: The names of wine binaries/commands can be configured for special cases like RedHat/Fedora/CentOS wine packages, see zugbruecke#70.
- FIX: Configuration module,
wenv.EnvConfig
, is now properly documented and actually usable from outsidewenv
. - DOCS: Hugely improved.
- DEV: New
makefile
structure for developers. - DEV: Switched from unsupported
python-language-server
to supportedpython-lsp-server
.
0.2.1 (2020-07-10)
Bug fix release:
- FIX: CI tests failed due to dependency issue in Python 3.4, see issue #13.
0.2.0 (2019-12-17)
Feature and bug fix release.
- FEATURE:
wenv init
can be used offline. A cache for installation files was added, see #1.wenv cache
fills the cache automatically (internet connection required),WENV_OFFLINE=true wenv init
runs the initialization of the actual Wine Python environment offline. Offline functionality can be configured through the new configuration parametersprefix
,offline
,cache
andpackages
. See #1. - FEATURE: Added new configuration parameter
wineinstallprefix
allowing custom wine installation paths, see #10. - FEATURE:
wenv
now not only exposespython.exe
but alsopythonw.exe
. - FEATURE: New APIs:
Env.install_package
,Env.uninstall_package
,Env.list_packages
- FIX: Using
requests
instead ofurllib
for loading components. Removedcertifi
workaround. - FIX: For user installations,
sys.prefix
is not the right place to put shared resources.site.USER_BASE
should be used instead, see #4. - FIX:
wenv init
would trigger Wine's "update prefix" message window even when used in scripts. Now suppressed, see #5. - FIX:
wenv pip
does not warn anymore that exe-files are not in PATH, see #6. - FIX:
wenv help
only showspython
command if the Python interpreter is actually available. - API: Environment class is exported as
Env
.env
is deprecated and will be removed. - API: The constructor of the environment class expects keyword arguments matching configuration options. The use of a
parameter
dictionary is deprecated and support will be removed.
0.1.1 (2019-12-09)
Bug fix release.
- FIX:
wenv
installed its environment intoshared
folder instead ofshare
. - FIX: Broken links in README.md
0.1.0 (2019-12-08)
First release.
wenv
broken out of zugbruecke
and turned into an independent package. The following changes were made since zugbruecke
0.0.14.
OLD | NEW |
---|---|
wine-python |
wenv python |
wine-pip |
wenv pip |
wine-pytest |
wenv pytest |
#!/usr/bin/env wine-python |
#!/usr/bin/env _wenv_python |
{"version": "3.5.3"} |
{"pythonversion": "3.7.4"} |
The above significant change was mandatory for allowing to cleanup a lot of old code and to remove long-standing bugs.
The shell scripts wine-python
, wine-pip
and wine-pytest
have been removed. Their functionality was consolidated into a single new script, wenv
. One can now call wenv python
, wenv pip
and wenv pytest
. This change was necessary for allowing a more generic interface to entry points of arbitrary third party packages. Run wenv help
for more information.
The version
configuration parameter for controlling the version of Wine Python has been renamed to pythonversion
.
Wine 2.x and 3.x are no longer supported. Please use Wine 4.x or later.
On older versions of Linux such as Ubuntu 14.04 alias Trusty Tahr (released 2014), you may observe errors when running wenv python
. Most commonly, they will present themselves as OSError: [WinError 6] Invalid handle: 'z:\\...
triggered by calling os.listdir
on a symbolic link ("symlink") to a folder.
wenv will use semantic versioning. Breaking changes will be indicated by increasing the first version number, the major version. Going for example from 0.x.0 to 1.0.0 or going from 1.y.0 to 2.0.0 therefore indicates a breaking change.
- FEATURE: Allow
-h
and--help
as alternatives tohelp
. - FEATURE:
wineprefix
,winedebug
andpythonprefix
become configuration parameters definable by users allowing custom wine prefixes, wine debug levels and Python installation paths, see issue zugbruecke#44. - FEATURE: All configuration parameters can be overridden with individual environment variables.
- FEATURE: Introduced new exception types specific to wenv. Meaningful exception are now raised throughout the package.
- FEATURE: Added official support for CPython 3.8, see zugbruecke#56.
- FEATURE: Wine Python can be based on beta versions and release candidates of CPython.
- FIX:
wine-pip
previously would, on every launch, downloadget-pip.py
and try to install it first before running - even ifpip
was already installed.wenv pip
does not show this behavior anymore. - FIX:
wine-python
,wine-pip
andwenv pytest
implicitly depended onbash
. This dependency has been removed in their successorwenv
, see zugbruecke#48. - FIX:
wine-python
would fail on systems with old versions oflibssl
or broken SSL certificate store configurations, see zugbruecke#51. For details on the implemented workaround, see installation instructions in the documentation. - The configuration module was refactored and made clearer and faster, allowing to implement new options.