From 4937fa439767bf25c514dca7fe444295044dbc74 Mon Sep 17 00:00:00 2001 From: stonebig Date: Tue, 9 Feb 2016 20:24:58 +0100 Subject: [PATCH 01/89] WinPython 2016-01 --- index.html | 18 +++++++++--------- md5_sha1.txt | 15 +++++++++++++++ 2 files changed, 24 insertions(+), 9 deletions(-) diff --git a/index.html b/index.html index 5a68f6c..6ba47dd 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,13 @@

Recent Releases

+

Release 2016-01 of February 9th, 2015

+

Highlights: Jupyter Notebook 4.1, IDLEX, closer integration with pip, full support of '@' in WinPython 3.5 (Zero Version)

+

Release 2015-08 of December 12th, 2015

Highlights: WinPython 3.5, Pandas 0.17.1, Scikit-learn 0.17, smaller Winpython variants (Zero and Slim)

-

Release 2015-06 of August 9th, 2015

-

Highlights: mingwpy, Qt5.5, closer integration with pip, pyaudio, xray, bokeh

- - +
WinPython Small Logos

Overview

@@ -100,7 +100,7 @@

Portable or not, the choice is yours!

That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways!
WinPython Small Logos
- +
WinPython Small Logos
diff --git a/md5_sha1.txt b/md5_sha1.txt index ebe5345..f37c5bd 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,19 @@ +### WinPython 2016-01 release (February 9th, 2015) + + +MD5 | SHA-1 | Binary | Size +---------------------------------|------------------------------------------|---------------------------------|------------------ +b212fcff675f63bbeb221c393dbe9b23 | 3a2b1f5b6491b880fc6c7b9ec6b39937f5d6b1cc | winpython-64bit-3.4.4.1.exe | 286 551 000 Bytes +dccb657160f1e47dea77597d720bb4df | 4d9e6adff7cda3759463555c5e3a59d18459d0f0 | winpython-32bit-3.4.4.1zero.exe | 22 624 870 Bytes +bbc978f356bb91347cd1126a6c3eed0e | ff84b210172f0f9cbe545caa8c572cf1af7b71da | winpython-64bit-3.4.4.1zero.exe | 23 346 896 Bytes +d1dd2898a7934aa01ba51465374cfab3 | 321c4404fe016235ce41b03ff04eaa6ea5de87ce | winpython-64bit-3.5.1.2zero.exe | 21 310 313 Bytes +596d6f263f6c8297fbdda6f831922501 | 77823c6f13df685b85ebc1c61a52500ba85e0dc0 | winpython-64bit-3.5.1.2.exe | 248 576 409 Bytes +34da1d7a6821e457e2708c31494e8f1c | c159886986809db04286ef595003ee084136ce5b | winpython-64bit-3.4.4.1qt5.exe | 292 125 572 Bytes +db1c03db46988c88a81bbdf0df40037e | 859e84e242db6e55f4958bb1ca0ff8e2115e10be | winpython-32bit-3.4.4.1qt5.exe | 246 482 598 Bytes +b5a0391082aa92b1a75c9aa3a811c999 | b951f0dbc4e91429efb0b8cddbd67223439be9f8 | winpython-32bit-3.4.4.1.exe | 242 664 150 Bytes + + ### WinPython 2015-08 release (December 12th, 2015) MD5 | SHA-1 | Binary | Size From b070f8cb9daca8a812426b376ef8f8952147f38f Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 12 Feb 2016 20:36:35 +0100 Subject: [PATCH 02/89] update website --- images/winpython_launchers.png | Bin 22132 -> 24554 bytes index.html | 27 +++++++++++++++------------ 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/images/winpython_launchers.png b/images/winpython_launchers.png index c1a8cbe69b3ec3a3e3bffd4bf9152d5103c15fb7..3f7aa50762b09621bcf52c38928e156166c55a67 100644 GIT binary patch literal 24554 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 literal 22132 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

JS1qkQ}I`S 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 diff --git a/index.html b/index.html index 6ba47dd..3bf5dac 100644 --- a/index.html +++ b/index.html @@ -31,14 +31,14 @@

Recent Releases

Release 2015-08 of December 12th, 2015

Highlights: WinPython 3.5, Pandas 0.17.1, Scikit-learn 0.17, smaller Winpython variants (Zero and Slim)

Release 2015-07 of October 29th, 2015

Highlights: Ipython 4, Spyder 3, Matplotlib 1.5, Pandas 0.17, Qt5.5.1, closer integration with pip

@@ -52,38 +52,38 @@

Recent Releases

WinPython Small Logos

Overview

-

WinPython is a free open-source portable distribution of the Python programming language for Windows Vista/7/8 and scientific and educational usage.

+

WinPython is a free open-source portable distribution of the Python programming language for Windows 7/8/10 and scientific and educational usage.

WinPython Launcher Icons

It is a full-featured (see our Wiki) Python-based scientific environment:

  • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
      -
    • interactive data processing and visualization using Python with Spyder and IPython, or IDLE
    • +
    • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, or IDLE
    • out-of-the-box working Compiler (Mingw64), fully integrated Cython and Numba! See included example
    • -
    • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) and dedicated Flavors (R, Julia, ...) for advanced users
    • +
    • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
  • Portable:
      -
    • Runs out of the box on any Windows with 2GB Ram (IPython needs Windows>XP, and IPython Notebook a recent browser)
    • +
    • Runs out of the box(*) on any Windows with 2GB Ram (Jupyter Notebook may require a recent browser)
    • The WinPython folder can be moved to any location (local, network, USB drive) with most of the application settings
  • Flexible:
    • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
    • -
    • These installations can be of different versions of Python (2.7 or 3.4+) or different architectures (32bit or 64bit)
    • +
    • These installations can be of different versions of Python (3.5/3.4/2.7...) and different architectures (32bit/64bit)
  • Customizable:
    • The integrated WinPython Package Manager (WPPM) helps installing, uninstalling or upgrading Python packages
    • -
    • It's also possible to install or upgrade packages using pip from the WinPython command prompt
    • +
    • It's also possible to install or upgrade packages using pip from the WinPython command prompt
    • A configuration file allows you to set environment variables at runtime

WinPython is something different from other Python Distributions (see historic motivation and concept):

  • non-invasive: WinPython lives entirely in its own directory, without any OS installation
  • -
  • flavors: releases with added packages are created to better fit a domain out-of-the-box
  • -
  • do your own flavor: a winpython-creator kit is made available for you
  • +
  • customizable: add your missing packages, zip the WinPython directory and give it to your students
  • +
  • do your own version: a winpython-creator kit is made available for you
WinPython Small Logos
@@ -98,9 +98,12 @@

Portable or not, the choice is yours!

  • register WinPython as a standard Python distribution (standard Python Windows installers will see WinPython in Windows registry)
  • That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -
    WinPython Small Logos
    + +

    (*) For WinPython 3.5, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015 +

    +
    WinPython Small Logos
    - +
    WinPython Small Logos
    From f69e52167dbbd805a4244ee0fc6b620d89bfd15d Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 13 Feb 2016 17:37:01 +0100 Subject: [PATCH 03/89] https please --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 3bf5dac..a6eebcf 100644 --- a/index.html +++ b/index.html @@ -99,7 +99,7 @@

    Portable or not, the choice is yours!

    That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

    (*) For WinPython 3.5, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015 +

    (*) For WinPython 3.5, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015

    WinPython Small Logos
    From a0e5bd369e50f5aa0ab256334f829d23ce5451af Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 13 Feb 2016 20:27:12 +0100 Subject: [PATCH 04/89] WinPython 3.5 32 bit --- md5_sha1.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/md5_sha1.txt b/md5_sha1.txt index f37c5bd..30f6cee 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -13,6 +13,12 @@ d1dd2898a7934aa01ba51465374cfab3 | 321c4404fe016235ce41b03ff04eaa6ea5de87ce | wi db1c03db46988c88a81bbdf0df40037e | 859e84e242db6e55f4958bb1ca0ff8e2115e10be | winpython-32bit-3.4.4.1qt5.exe | 246 482 598 Bytes b5a0391082aa92b1a75c9aa3a811c999 | b951f0dbc4e91429efb0b8cddbd67223439be9f8 | winpython-32bit-3.4.4.1.exe | 242 664 150 Bytes +(complement of February 13th) +MD5 | SHA-1 | Binary | Size +---------------------------------|------------------------------------------|---------------------------------|------------------ +957a696479610820f5226d6b6a3f1357 | 5f317a3c88b0b5b6be5b9c37cb07b9fd7d2019c6 | winpython-32bit-3.5.1.2zero.exe | 20 581 843 Bytes +bcbde0c3522ccc4081e9fa24aa1c5d23 | 40e548f9989838dc0d50515f3335ddd0a8bcc81d | winpython-32bit-3.5.1.2.exe | 213 270 793 Bytes + ### WinPython 2015-08 release (December 12th, 2015) From 6b618404755a2bff03924523016f44350c98f718 Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 26 Feb 2016 20:04:27 +0100 Subject: [PATCH 05/89] sha-256 --- md5_sha1.txt | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/md5_sha1.txt b/md5_sha1.txt index 30f6cee..87c6fd2 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,23 +1,24 @@ ### WinPython 2016-01 release (February 9th, 2015) + MD5 | SHA-1 | SHA-256 | Binary | Size +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +b212fcff675f63bbeb221c393dbe9b23 | 3a2b1f5b6491b880fc6c7b9ec6b39937f5d6b1cc | bad5101b9f465fe08f7fd7aec828d3086ff4e5dd307ba4d614bc1096bee6c6df | WinPython-64bit-3.4.4.1.exe | 286 551 000 Bytesz +dccb657160f1e47dea77597d720bb4df | 4d9e6adff7cda3759463555c5e3a59d18459d0f0 | 500e7d33191fe9466a5d18295707f50985bf11dab3ae713d934b7d376051fdb3 | WinPython-32bit-3.4.4.1Zero.exe | 22 624 870 Bytesz +bbc978f356bb91347cd1126a6c3eed0e | ff84b210172f0f9cbe545caa8c572cf1af7b71da | 3aabd2c10e6f888a5ef4ea2153c0b3869d05fb7196e702c92a8d9830133d46fe | WinPython-64bit-3.4.4.1Zero.exe | 23 346 896 Bytesz +d1dd2898a7934aa01ba51465374cfab3 | 321c4404fe016235ce41b03ff04eaa6ea5de87ce | ae1685d00742b62f0979de43b377b270c2ccca0d34ccb91b6a3eae579b5b6cd9 | WinPython-64bit-3.5.1.2Zero.exe | 21 310 313 Bytesz +596d6f263f6c8297fbdda6f831922501 | 77823c6f13df685b85ebc1c61a52500ba85e0dc0 | 07e854b9aa7a31d8bbf7829d04a45b6d6266603690520e365199af2d98751ab1 | WinPython-64bit-3.5.1.2.exe | 248 576 409 Bytesz +34da1d7a6821e457e2708c31494e8f1c | c159886986809db04286ef595003ee084136ce5b | 18450fd6daf1b1d085cc4d578588af1bc67e95b1667cdf4a01712a40d2520106 | WinPython-64bit-3.4.4.1Qt5.exe | 292 125 572 Bytesz +db1c03db46988c88a81bbdf0df40037e | 859e84e242db6e55f4958bb1ca0ff8e2115e10be | d324e8df17631d13a4d7793ab6ea68957d0b2ff08f59548d231c914925c7f3e9 | WinPython-32bit-3.4.4.1Qt5.exe | 246 482 598 Bytesz +b5a0391082aa92b1a75c9aa3a811c999 | b951f0dbc4e91429efb0b8cddbd67223439be9f8 | 544382aee8ef56e2a00bf9502d6e9fa14597edf7bb88b054af7bec7691da9cf3 | WinPython-32bit-3.4.4.1.exe | 242 664 150 Bytesz -MD5 | SHA-1 | Binary | Size ----------------------------------|------------------------------------------|---------------------------------|------------------ -b212fcff675f63bbeb221c393dbe9b23 | 3a2b1f5b6491b880fc6c7b9ec6b39937f5d6b1cc | winpython-64bit-3.4.4.1.exe | 286 551 000 Bytes -dccb657160f1e47dea77597d720bb4df | 4d9e6adff7cda3759463555c5e3a59d18459d0f0 | winpython-32bit-3.4.4.1zero.exe | 22 624 870 Bytes -bbc978f356bb91347cd1126a6c3eed0e | ff84b210172f0f9cbe545caa8c572cf1af7b71da | winpython-64bit-3.4.4.1zero.exe | 23 346 896 Bytes -d1dd2898a7934aa01ba51465374cfab3 | 321c4404fe016235ce41b03ff04eaa6ea5de87ce | winpython-64bit-3.5.1.2zero.exe | 21 310 313 Bytes -596d6f263f6c8297fbdda6f831922501 | 77823c6f13df685b85ebc1c61a52500ba85e0dc0 | winpython-64bit-3.5.1.2.exe | 248 576 409 Bytes -34da1d7a6821e457e2708c31494e8f1c | c159886986809db04286ef595003ee084136ce5b | winpython-64bit-3.4.4.1qt5.exe | 292 125 572 Bytes -db1c03db46988c88a81bbdf0df40037e | 859e84e242db6e55f4958bb1ca0ff8e2115e10be | winpython-32bit-3.4.4.1qt5.exe | 246 482 598 Bytes -b5a0391082aa92b1a75c9aa3a811c999 | b951f0dbc4e91429efb0b8cddbd67223439be9f8 | winpython-32bit-3.4.4.1.exe | 242 664 150 Bytes (complement of February 13th) -MD5 | SHA-1 | Binary | Size ----------------------------------|------------------------------------------|---------------------------------|------------------ -957a696479610820f5226d6b6a3f1357 | 5f317a3c88b0b5b6be5b9c37cb07b9fd7d2019c6 | winpython-32bit-3.5.1.2zero.exe | 20 581 843 Bytes -bcbde0c3522ccc4081e9fa24aa1c5d23 | 40e548f9989838dc0d50515f3335ddd0a8bcc81d | winpython-32bit-3.5.1.2.exe | 213 270 793 Bytes + MD5 | SHA-1 | SHA-256 | Binary | Size +--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +957a696479610820f5226d6b6a3f1357 | 5f317a3c88b0b5b6be5b9c37cb07b9fd7d2019c6 | 77752e7c0584a7c6acb6d135409582feac81a276d1a3e54762c665abd5c37e28 | WinPython-32bit-3.5.1.2Zero.exe | 20 581 843 Bytesz +bcbde0c3522ccc4081e9fa24aa1c5d23 | 40e548f9989838dc0d50515f3335ddd0a8bcc81d | 172d19a743ccfaf55af779d15f29f67fca83a46f08b0af855dfaf809b4184c0d | WinPython-32bit-3.5.1.2.exe | 213 270 793 Bytesz + ### WinPython 2015-08 release (December 12th, 2015) From 570982dcd96250a91f16a77747256964f0e3c967 Mon Sep 17 00:00:00 2001 From: stonebig Date: Tue, 5 Apr 2016 10:21:18 +0200 Subject: [PATCH 06/89] visual studio redistribuable link moved --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index a6eebcf..4bdb2f1 100644 --- a/index.html +++ b/index.html @@ -99,7 +99,7 @@

    Portable or not, the choice is yours!

    That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

    (*) For WinPython 3.5, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015 +

    (*) For WinPython 3.5, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015

    WinPython Small Logos
    From 04d17c343c2d15cd072b0a399387d78fd3efc0c3 Mon Sep 17 00:00:00 2001 From: stonebig Date: Tue, 5 Apr 2016 10:22:23 +0200 Subject: [PATCH 07/89] update date of update --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 4bdb2f1..7a219ea 100644 --- a/index.html +++ b/index.html @@ -103,7 +103,7 @@

    Portable or not, the choice is yours!

    WinPython Small Logos
    - +
    WinPython Small Logos
    From fd53b3e8cd85c973ea77f65224030a579188d3e4 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Thu, 14 Apr 2016 15:12:04 +0200 Subject: [PATCH 08/89] Update index.html fix date typo --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index a6eebcf..9c2886f 100644 --- a/index.html +++ b/index.html @@ -26,7 +26,7 @@

    Recent Releases

    -

    Release 2016-01 of February 9th, 2015

    +

    Release 2016-01 of February 9th, 2016

    Highlights: Jupyter Notebook 4.1, IDLEX, closer integration with pip, full support of '@' in WinPython 3.5 (Zero Version)

    That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

    (*) For WinPython 3.5, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015 +

    (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015

    WinPython Small Logos
    - +
    WinPython Small Logos
    From 27673b3ead8c251b7769da0a8f8b2c687560ffc7 Mon Sep 17 00:00:00 2001 From: stonebig Date: Wed, 20 Apr 2016 19:28:35 +0200 Subject: [PATCH 10/89] proper spacing --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 342b1ff..0b6afb2 100644 --- a/index.html +++ b/index.html @@ -29,8 +29,8 @@

    Recent Releases

    Release 2016-02 of April 20th, 2016

    Highlights: Pandas 0.18, scikit-learn 0.17.1, Spyder 3.0.0beta 3, 'student' mode (Zero Version)

    From 390b8a6eb18b6c08f12fe01bdc78a80207a159cf Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 21 Apr 2016 07:14:58 +0200 Subject: [PATCH 11/89] sha1 of new release --- md5_sha1.txt | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/md5_sha1.txt b/md5_sha1.txt index 87c6fd2..b08f268 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,5 +1,21 @@ -### WinPython 2016-01 release (February 9th, 2015) +### WinPython 2016-02 release (April 20th, 2016) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +fa866aeb787f141220bb9f7f0d2e72c4 | 1798c86662bff196f3157b82c6c04997083b85cd | 2ee0583d722c5152149aaba45f671b66977b6dd3216d265eb24c41ff075665a0 | WinPython-32bit-3.4.4.2Zero.exe | 23 978 034 Bytes +a07992765419f76c1e9264777101eee1 | d7e0e920acaf8d7d6828703c01ef9ed1d56ccc44 | f4548a0cd88618d9ebb409d255b9bc58ef2472f652b1b7f1e1f3fd771b608556 | WinPython-64bit-3.4.4.2Zero.exe | 24 701 301 Bytes +8eb9768d3e1715af1e8a53d976533bbb | 6fa4da473361f4552c42285946fb9cd89852d4d3 | d7972a8f9d5e727b21909128993540e376a23209ecc0ca0908c9f839dced9ec1 | WinPython-64bit-3.5.1.3Zero.exe | 22 654 996 Bytes +c40e0a493019c2aafb3a916dffc3a9ed | 632878e7ae284c8685ef1e346dfd65594f44a36f | 44f99d49ef4bf6d0ee9bc236307f50c6fd69f21d4a841ef6f41ddef1b3363c4d | WinPython-32bit-3.5.1.3Zero.exe | 21 925 728 Bytes +32770edcba5e7b245010831040b0ffb2 | a427841e62ddeb0b440e6e44ed005e1fb14eac8a | 9c8c10178baf2e1d5bf4fdc6b1528ce50e5cfbd1010ce9a14975f525c60eddeb | WinPython-64bit-3.4.4.2.exe | 290 570 768 Bytes +7e84777426697eda8b9c69f724b8d09e | c816eeb5a3c9fa904bda7e0c81b3cf24d8c0a706 | c2c76242e7df65937b5d1b7357a2a29f71ff7cf91be98878a133e141866f090b | WinPython-32bit-3.4.4.2.exe | 246 624 165 Bytes +1966bd162f7dbec477fa509b2188f875 | 4ac51d34fa2b2b0b13815744ccc1fe2d147414b9 | 99d63c72d62795cc7ebdc32974d992db3bcc160bf3e1e7c0dfce07f7d166e182 | WinPython-64bit-3.5.1.3.exe | 252 839 646 Bytes +9b7c139ac490e28ce263c5d60f540e52 | 219cb48b163d84a8d5a7827a589675deb7390e7b | 6c37b45a3502c03d001852baf35f5caa7d40ecc7265940c364156c888a51bab2 | WinPython-32bit-3.5.1.3.exe | 217 520 456 Bytes +16ff6005e7f7b14c985795b07544e7e2 | ccaa05cd45faccbe7765725b5afaeb567d2f9fce | 4618bcb397f1ecb43d4300e350ff5f175d4838c5701e6c4de6cced2808d65f21 | WinPython-64bit-3.4.4.2Qt5.exe | 296 166 002 Bytes +d82084777d0debd9111974f293d3bc2d | 0ba27ecd419ae2025f4401935ee12e06d5db24cc | 27b54cbeecf3c67ca490375c21c5c28f34a3a0dbffa11413569b92fe63feee67 | WinPython-32bit-3.4.4.2Qt5.exe | 250 423 641 Bytes + + +### WinPython 2016-01 release (February 9th, 2016) MD5 | SHA-1 | SHA-256 | Binary | Size --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- From 3f80e27ddffea314f092e2e575c7b0669907eba7 Mon Sep 17 00:00:00 2001 From: anatoly techtonik Date: Mon, 20 Jun 2016 21:26:05 +0300 Subject: [PATCH 12/89] Fix link to Winpython Development Team Previous page shows 0 people for non-members --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 0b6afb2..72db547 100644 --- a/index.html +++ b/index.html @@ -103,7 +103,7 @@

    Portable or not, the choice is yours!

    WinPython Small Logos
    - +
    WinPython Small Logos
    From ad513c73f9321869e1f9c806c934d61f380c4ae4 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 23 Jul 2016 09:02:55 +0200 Subject: [PATCH 13/89] new release --- index.html | 9 +++++++++ md5_sha1.txt | 19 +++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/index.html b/index.html index 72db547..dda4648 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,15 @@

    Recent Releases

    +

    Release 2016-03 of July 23th, 2016

    +

    Highlights: IPython 5.0, Spyder 3.0.0beta 4, PyQt5.6 (for Python3.5) (Zero Version)

    + +

    Release 2016-02 of April 20th, 2016

    Highlights: Pandas 0.18, scikit-learn 0.17.1, Spyder 3.0.0beta 3, 'student' mode (Zero Version)

      diff --git a/md5_sha1.txt b/md5_sha1.txt index b08f268..6aa06da 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,23 @@ +### WinPython 2016-03 release (July 22nd, 2016) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +5634e7f090a9580b74ccc6d743403e62 | ccc0f215d30585982378840aa63976e60f5bb8e2 | 515476e01e97790d3baece0e6aa1e426011d8968b7800d6e212f80d6841e447e | WinPython-64bit-2.7.12.2Zero.exe | 22 337 907 Bytes +a49915a70d7ae1cdb07348fb781e066d | 3d2178bc8d1e18adae021c3a1be8aea9817b9668 | 01f1184eb352b1af8f39a7df19dff51c58b4b982880e52027df720804974800d | WinPython-32bit-2.7.12.2Zero.exe | 21 614 863 Bytes +e651763a0c3c5e6173fe01463692f7b3 | 29372261d86a6b7d32350b361c54bac31edb6262 | 64e7d47d9a60194822b522febd382efa5e816c2459ba8414d236b3026e70eaaf | WinPython-64bit-3.5.2.1Zero.exe | 23 152 399 Bytes +baa0f3a4a0d5774a5ab02d1a9858e5ec | 8730bee0c34fb840303fcde1eb0053b3a4fe39af | f6dba5ec1efa7eada5befd8dd38cf6d0e1dcacb9a27822e416fbb81eea66493d | WinPython-32bit-3.5.2.1Zero.exe | 22 413 213 Bytes +fa8d2888e4add0c0d987c50677220166 | cd6455cf0a7ff66d9850ea12c0dcdcee63a989e7 | adcc6c0897b4020f1536d163992be2d2f14dcea1708f0b860391081ca1db00c1 | WinPython-32bit-3.4.4.3Zero.exe | 23 996 736 Bytes +98f5aebebbec2506e47d1715acd0ff18 | 195549fa8faaf94b2e979bc7a744c67a2058f18d | 20c11e4495533d19bdb037b7f78d01c27cfdae4226016f56e120e16b5c5c866d | WinPython-64bit-3.4.4.3Zero.exe | 24 717 634 Bytes +ab5926903bf63b8d312f5c436e3d0c33 | 305e9a5a6feee5a04601d418afa678d4252b04b7 | 8302a49f3c47c6d0a49621e6f3a56e205372561faf1dee591914bf430986dff9 | WinPython-64bit-3.4.4.3Qt5.exe | 295 497 494 Bytes +9303a6c60a929c83099b0fcdf0f7d618 | 40e2110f89cbfd58bbefec4f0f12b8870b135294 | d9c7cb5b641e6ccd764d21de7ba4d1f27ad51e6e7df3f21312de2bb8a2d97980 | WinPython-32bit-3.4.4.3Qt5.exe | 250 848 555 Bytes +3fa08f6c6f3d094b89079f8bfc10df0c | 0deaf4d1d1c920b84ad0cdcecd20a7092b6e5cb1 | a5c7cd4f142b6c85de3a10013eaed8973e0fdb71a3ef5ba2ea69858c0d634a64 | WinPython-64bit-3.4.4.3.exe | 289 891 736 Bytes +4b123042739688dd3a54638da59c89a6 | e02a11770b032156d3b6c46092f6786435d451d5 | d7e88ee399560deba63f24ab298c87879acac7d1bbc17f8144c000c4a7081988 | WinPython-64bit-3.5.2.1.exe | 252 858 437 Bytes +f2572ce902bff949535ab15e024518c9 | b842e595610b79da323614735c0a050f9da8051a | 8a81931967ae6023e27ec757712d76188c16abf40d14cab66c92ad94c3f7b1f6 | WinPython-32bit-3.5.2.1.exe | 218 497 402 Bytes +be7998ab32b6b41e9e77c7aeb1a93284 | 85409622fc692edd754724103254dd9f744d187a | 3c40fbe70f9ac272bcde74eb9fa19a21b1df71309be2be8dcf972c8cb4b0e35f | WinPython-64bit-3.5.2.1Qt5.exe | 269 495 459 Bytes +ebc9bb79f96b0056bd586a79ac7beb2a | 4f08068e41c85f55d9a27f95137ea6f3c90f9b45 | aaf32c7976e9341ce684c254bbe491745bbb6e72310334f07f48dac786e4b5e2 | WinPython-32bit-3.5.2.1Qt5.exe | 232 275 654 Bytes + + ### WinPython 2016-02 release (April 20th, 2016) MD5 | SHA-1 | SHA-256 | Binary | Size From 0fc5964342bd0981c5fadf57b1918babc85a70b3 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 23 Jul 2016 09:06:00 +0200 Subject: [PATCH 14/89] cleanup oldest release --- index.html | 7 ------- 1 file changed, 7 deletions(-) diff --git a/index.html b/index.html index dda4648..3f48d33 100644 --- a/index.html +++ b/index.html @@ -50,13 +50,6 @@

      Recent Releases

    • WinPython 3.4.4.1Qt5 Changelog, Packages and Downloads
    • WinPython 3.5.1.2 (*) Changelog, Packages and Downloads
    -

    Release 2015-08 of December 12th, 2015

    -

    Highlights: WinPython 3.5, Pandas 0.17.1, Scikit-learn 0.17, smaller Winpython variants (Zero and Slim)

    -
    WinPython Small Logos
    From ad530b381eb38d491a3cf049ce696609b98c3602 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 28 Aug 2016 21:22:48 +0200 Subject: [PATCH 15/89] WinPython 2016-04 --- index.html | 16 +++++++++------- md5_sha1.txt | 18 ++++++++++++++++++ 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/index.html b/index.html index 3f48d33..6957d56 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,15 @@

    Recent Releases

    +

    Release 2016-04 of August 28th, 2016

    + +

    Highlights: IPython 5.1, Spyder 3.0.0beta 5, PyQt5.7 (for Python3.5) (Zero Version)

    + +

    Release 2016-03 of July 23th, 2016

    Highlights: IPython 5.0, Spyder 3.0.0beta 4, PyQt5.6 (for Python3.5) (Zero Version)

    -

    Release 2016-01 of February 9th, 2016

    -

    Highlights: Jupyter Notebook 4.1, IDLEX, closer integration with pip, full support of '@' in WinPython 3.5 (Zero Version)

    -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index 6aa06da..4d5d70e 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,22 @@ +### WinPython 2016-04 release (August 29th, 2016) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +64ace04d35e8d2eaa4c67469152e61fd | 563b1f2e0e01d6ef60c4f0c6c1ce6448a94c69ff | 0664b241e5dd8ef02d18f9ef1c07ef3860d605e164c50564dec5e078779fc1fd | WinPython-32bit-3.4.4.4Zero.exe | 23 881 113 Bytes +67c6ecb9e215a83551743426d7a08015 | bcfb98567bfd0c68f4488c93f89c3e0a6e252f12 | abecc24189db6ae5b10426c0eaba5c7f819a9d5362942808d0d960311a6480fe | WinPython-64bit-3.4.4.4Zero.exe | 24 600 054 Bytes +31cc8cbd1c94f69332b137cfa4f12c5f | bde744a8b442108bf200eb37799e3bacd6501f21 | eebb24cd2a0996853818d8bf87c19f8411de94c5b2d335fc7c978cbe8287bb37 | WinPython-64bit-3.5.2.2Zero.exe | 23 032 756 Bytes +6e738e456196b71b2b3c3d847d916f60 | aecf18ba1fbcd955ddd40d962bd5b94ce6bc4418 | 1f6fa6457c5ab41f4eaaab5cd443c20a9fbfb0a3caef80ad89c4d92582d216b5 | WinPython-32bit-3.5.2.2Zero.exe | 22 280 272 Bytes +0574aa934268fa6b4fcd450373ccf28e | 7077e5185917d320084f8d63a13f524c2900a877 | 280a877d452e05f71bd6a72685b99b99afb257863b2b5a8e174007eb58288225 | WinPython-64bit-2.7.12.3Zero.exe | 22 221 744 Bytes +fa4d385602f9e200b27970e5d863e656 | 1e0b915bb312a67df3bab39ba7078fc571f234be | 032e367187eb85945c01e1711950eed65f077bfc254c0dea5279cba580bd45e7 | WinPython-32bit-2.7.12.3Zero.exe | 21 498 414 Bytes +f682dbc3eeb99843c8b848ade3b220cb | c39e10adc8f2f6c42c06ef538edb4779bcd85f34 | 7b38419233b775354ae09d53f253b7fa5407cf99ad15c20ea3646c1e51759c57 | WinPython-64bit-3.4.4.4Qt5.exe | 301 448 368 Bytes +d372671a80bad0bd2e652e569c45e4ae | ead43341e0ae01860a90e6847333f5f6fe15a14c | b65c453fc09a5b5f585fd25aef23bb668ace6533e9f409e3d94125b4791c7d7c | WinPython-32bit-3.4.4.4Qt5.exe | 256 752 166 Bytes +5a96da96e8a38700076b3200c6e60dfe | 280cce807857e84b550246b155592456899364da | ae9dd71ef002b3cf85dc9c05cfebd78acc714cfe1a5c1e69cbdf78f4558559ba | WinPython-64bit-3.5.2.2Qt5.exe | 271 660 710 Bytes +e4e10b6ae96bf11874cad56bdd302990 | da6c45b49bf197fdc871188c7b606676682f0b2d | f24b7f1861d945abcbc9984df69fb94a28fdfcd78ee3dfc612c029a29e24e908 | WinPython-32bit-3.5.2.2Qt5.exe | 233 796 411 Bytes +903cf2e4b3b19c04e06365d7a1886437 | 12672218ee8ad67f16708231db0541a6db509a8a | a230587bc770267c62724e15da2e655ccc8b260c9ffb9d3d7a36a6dc12243df5 | WinPython-64bit-3.5.2.2.exe | 258 697 814 Bytes +51f40fb744d70c5a59fe3997043f55b3 | 8d11dbf4e0808fd2bfcd284327690edcf9a15dce | abb4d323dbd72781d7fa2a650385331182d5e64e8748d56b33a2ab16254a4752 | WinPython-32bit-3.5.2.2.exe | 224 074 210 Bytes + + ### WinPython 2016-03 release (July 22nd, 2016) MD5 | SHA-1 | SHA-256 | Binary | Size From b55638af6b0498193383771c192d826ede8ad51d Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 11 Nov 2016 11:53:16 +0100 Subject: [PATCH 16/89] hash file update --- index.html | 17 +++++++++-------- md5_sha1.txt | 19 +++++++++++++++++++ 2 files changed, 28 insertions(+), 8 deletions(-) diff --git a/index.html b/index.html index 6957d56..fda8d83 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,15 @@

    Recent Releases

    +

    Release 2016-05 of November 11th, 2016

    + +

    Highlights: Spyder 3.1.dev0, scipy-0.18.1, Pandas-0.19.1, scikit-learn-0.18.0 (Zero Version)

    + +

    Release 2016-04 of August 28th, 2016

    Highlights: IPython 5.1, Spyder 3.0.0beta 5, PyQt5.7 (for Python3.5) (Zero Version)

    @@ -44,14 +53,6 @@

    Recent Releases

  • WinPython 3.5.2.1Qt5 (*) Changelog, Packages and Downloads
  • -

    Release 2016-02 of April 20th, 2016

    -

    Highlights: Pandas 0.18, scikit-learn 0.17.1, Spyder 3.0.0beta 3, 'student' mode (Zero Version)

    - -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index 4d5d70e..aaad59b 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,22 @@ +### WinPython 2016-05 release (November 11th, 2016) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +fd74fa93926fca050aa132c3456046e3 | 6d292d2cc1966f20ea08d136a4123c7506998bfc | 4c925715733923e9f4fc8b1a44ad82e8398029a0a84ddd7d48a1fd689d7c7159 | WinPython-64bit-3.6.0.0Zero_preview.exe | 24 075 947 Bytes +1ace445989983c81110051c1cfa07e5b | c8d7480381e74eb9241ba2f370894769bc854555 | cbb1a934c83730a09dcad5811d94ec9210b77c0e18c542d62530f855d07933a8 | WinPython-32bit-3.6.0.0Zero_preview.exe | 23 203 484 Bytes +49eabdcc104772d458d272a6e797156d | 500a9e8f5c500060e136e3c3efb826517cd15d16 | e6e24a4deae4ae67388ff5b743fb3c27104b06921079a73f2af68d056cd6338b | WinPython-64bit-2.7.12.4Zero.exe | 22 270 791 Bytes +cbb5ed5d1d8fccae4adf79d1a625955f | 1babd7b9eddbbfecd8c384af04a2b9bf94fcf362 | 8a0fd17529ad5a3a61a2026833806125803a37ea75ad3758d9ec71a460ae737b | WinPython-32bit-2.7.12.4Zero.exe | 21 545 631 Bytes +fc44358714dc30a1a85d0e7520ec936f | 9cee6042b8120b89bf29beacacc46dcc6361bbad | e6db29f4c6a06b831a146d936c397ea90ba8ae4fb72cde76de7d8c29ebad8268 | WinPython-32bit-3.4.4.5Zero.exe | 24 489 833 Bytes +9dca9184b78c7728e4a8cc9d3367ee8c | ae8ecdf59c6f87b5b0eb9098e02797b94aa5fd7a | d560821e88bc6520c4c501e0dcbff2399cd7a06d5540ecdd66b8dde49fb518f6 | WinPython-64bit-3.4.4.5Zero.exe | 25 217 133 Bytes +ddbf14301965f3f9e8a2e5d5136f4c3f | 8c016ce7b8986f9b63c353baaac3771843cbc364 | bf9332092f8c513a5c3efe799bfc827a15ce70f4053583687ad74e052007de64 | WinPython-64bit-3.5.2.3Zero.exe | 23 642 895 Bytes +25e5e62668d339719b468d912e72cb7e | dd71a73e15be8b55a43a6c00aa502dc7691c187b | 23c04d66960fb57ae0f320ba7ac32e3ab9ba340b5e5189d8bb89d7b7498699a1 | WinPython-32bit-3.5.2.3Zero.exe | 22 895 733 Bytes +6c75e581df14a4ebde88b95706261d94 | 96830747b917ba4d5b3f2e174091da96453e151b | 241bfd6e65b3a935afd20c28276357c40bd73832a24c039da92613bb22305356 | WinPython-64bit-3.4.4.5Qt5.exe | 308 331 744 Bytes +26e8caec008e3f602c8158602bce7a61 | 9ca62a73b44c206942b7a7b7b398721c9e02d98e | 79ef9872e1ac3ced3367a016d45a6e92ed10d6052d0fc63fdb3a51229d60232a | WinPython-32bit-3.4.4.5Qt5.exe | 262 778 914 Bytes +d9ff0316f7829965f631c5f337c734ed | 3ebdf42def9e067ba4f6874caef4826348fee216 | 8b3d440890aa8efa7c460e069a5b96d6a1cbb398e6722a55bf49701ef71b3814 | WinPython-64bit-3.5.2.3Qt5.exe | 278 519 194 Bytes +a871589737db2c2d87354f4437e40b8a | 7086a76639afd673f4578665030f91476f57e8ac | 55eb701eeb69daf8f5148ea505e0eb0aef850146fc841e4fbdd449deb53a76f8 | WinPython-32bit-3.5.2.3Qt5.exe | 239 808 935 Bytes +450c9029779b307c49e6f35c3a6cce11 | a1b208ccc523c8d155a6289cbddbaac8e94bb8e3 | eac906d606cb465cda765347fc203ef46b5c137ab9931b399374b344442c820d | WinPython-64bit-3.5.2.3.exe | 265 515 257 Bytes +16cbe2650ea38a4cef520b0a529cb813 | a71a0421f54394230870259de0f96a2279751633 | d2d1996d237ff405c0a86d39bec276b7b3e0cdf01f5e1bb43cc725930cbbec4f | WinPython-64bit-3.6.0.0_preview.exe | 253 082 544 Bytes + ### WinPython 2016-04 release (August 29th, 2016) From 17f8a923ac06b5e09cf631e5402dfdf0c8e472a3 Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 11 Nov 2016 12:08:12 +0100 Subject: [PATCH 17/89] WinPython 2015-06 update --- index.html | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index fda8d83..a3bdd58 100644 --- a/index.html +++ b/index.html @@ -33,6 +33,7 @@

    Recent Releases

  • WinPython 3.4.4.5Qt5 (*) Changelog, Packages and Downloads, or alternative Downloads
  • WinPython 3.5.2.3 (*) Changelog, Packages and Downloads
  • WinPython 3.5.2.3Qt5 (*) Changelog, Packages and Downloads
  • +
  • Preview of WinPython 3.6.0.0 (***) Changelog, Packages and Downloads
  • Release 2016-04 of August 28th, 2016

    @@ -64,7 +65,7 @@

    Overview

  • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
    • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, or IDLE
    • -
    • out-of-the-box working Compiler (Mingw64), fully integrated Cython and Numba! See included example
    • +
    • out-of-the-box working Compiler (Mingw64) for Python 3.4, fully integrated Cython and Numba! See included example
    • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
  • Portable: @@ -75,7 +76,7 @@

    Overview

  • Flexible:
    • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
    • -
    • These installations can be of different versions of Python (3.5/3.4/2.7...) and different architectures (32bit/64bit)
    • +
    • These installations can be of different versions of Python (3.5/3.4/2.7/3.6/...) and different architectures (32bit/64bit)
  • Customizable:
      @@ -105,10 +106,11 @@

      Portable or not, the choice is yours!

      That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways!

      (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015 +

      (***) WinPython-3.6.0.0 relies on Python-3.6.0beta2, so is not recommanded for production

      WinPython Small Logos
      - +
      WinPython Small Logos
      From 6f492d6305128030cb06af402522f1bc7411b385 Mon Sep 17 00:00:00 2001 From: stonebig Date: Tue, 31 Jan 2017 22:37:02 +0100 Subject: [PATCH 18/89] WinPython 2106-06 --- index.html | 21 ++++++++++----------- md5_sha1.txt | 20 ++++++++++++++++++++ 2 files changed, 30 insertions(+), 11 deletions(-) diff --git a/index.html b/index.html index a3bdd58..5894639 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,15 @@

      Recent Releases

      +

      Release 2016-06 of January 28th, 2017

      + +

      Highlights: Spyder-3.1.2, Matplotlib-2.0, WinPython-3.6 (Zero Version)

      + +

      Release 2016-05 of November 11th, 2016

      Highlights: Spyder 3.1.dev0, scipy-0.18.1, Pandas-0.19.1, scikit-learn-0.18.0 (Zero Version)

      @@ -45,15 +54,6 @@

      Recent Releases

    • WinPython 3.5.2.2Qt5 (*) Changelog, Packages and Downloads
    -

    Release 2016-03 of July 23th, 2016

    -

    Highlights: IPython 5.0, Spyder 3.0.0beta 4, PyQt5.6 (for Python3.5) (Zero Version)

    - -
    WinPython Small Logos
    @@ -106,11 +106,10 @@

    Portable or not, the choice is yours!

    That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways!

    (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015 -

    (***) WinPython-3.6.0.0 relies on Python-3.6.0beta2, so is not recommanded for production

    WinPython Small Logos
    - +
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index aaad59b..67ae0b7 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,23 @@ +### WinPython 2016-06 release (January 28th, 2017) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +912ec86af16a628e74a7b111ab4c9f7e | 8b57483cf83844ac67f9ce34088d429f385dd986 | eec59983cd2a5c21db46afb444d32fcd497dab654fc963bfd4dc54b1339c887b | WinPython-64bit-2.7.13.0Zerorc3.exe | 22 514 754 Bytes +492a27996270cc4ecc0eacf5701fec5f | 3bcea7d0c93bc3c837549029ce0bba43b71fe737 | 2fceec1de8f58661fdcb1e54a249199ff6a06de7ab42a16e8d40f883b7a6fbfb | WinPython-32bit-2.7.13.0Zerorc3.exe | 21 786 499 Bytes +2f6a28d6c33730e6793d5b3d72d9ac8c | a19fe1c6eef7a471c87cc07955ab1720a36e7df0 | e4eeb8ae7a6bfa584b7534658f7377364e719cedb5c94e66200fcb4cd09aef1b | WinPython-32bit-3.4.4.6Zerorc3.exe | 24 477 361 Bytes +c86687074da1a5b6a1749bf4b493c3a8 | 691f1b24b55f885f05372c9bda00e209a05fcbdb | 921596396c52f71ebb6024f7420ddace1d1e4cb1b58b9b1aba33ada8022f18c7 | WinPython-64bit-3.4.4.6Zerorc3.exe | 25 209 324 Bytes +cc101b58502d8c3a14ac3f40d68a5c16 | 403a76350575617e1c6dd14520092b785cabe973 | 37ddd77daf69e75ca94213a3caf5a030ad4f3e2da36cb47892864b18a5c4ac10 | WinPython-64bit-3.5.3.0Zerorc3.exe | 23 639 141 Bytes +d18fccac95fcce92406d9f5e3374eabd | e660850b94dc3f2e7643ac41ff6b0c9a7de16fc5 | 05f51b91643b59b1e168f2e52b607df564446955ff2560b1f8e4d492c981a004 | WinPython-32bit-3.5.3.0Zerorc3.exe | 22 877 999 Bytes +ef3c1bbdb12fa9c88c0887c1f14812bc | 27a160950e34488ce571278b197f8f8b463bf1b7 | 8999d70fbee95421e3878172aaeb1a93c61a2255f32e9b0e74c0928da0319887 | WinPython-64bit-3.6.0.1Zerorc3.exe | 24 060 277 Bytes +776605b49c3ce6a43ee78be01f26e79f | c61a3eeda003e9a0d707ea339e823fe8f8b4ec7d | ac9594c5b9aed60555572c66349827f9048eea72046e95caac71f95032e103bd | WinPython-32bit-3.6.0.1Zerorc3.exe | 23 187 398 Bytes +1c44c989465b09af8b2edde99fbbdde1 | 59cef73ef350716da5b13fc802baf2219be6ec21 | 671849ea6d9ddc03dee5a781dbf1c94aef8dd3ac9f36646ed76a536e5d7b62cc | WinPython-64bit-3.4.4.6Qt5rc3.exe | 322 507 315 Bytes +775691ae21d2e8241297b6ba19b60c4e | 0509fc7133ed85d082465dadda40facb9f3955ef | bf4fd9d5bffba642ffcf8cfdde7ef89d9bde8bf26f01d61d99223d0c88c1ae89 | WinPython-32bit-3.4.4.6Qt5rc3.exe | 276 840 528 Bytes +759184d2325945c1a6c57d4c173a25d6 | 2f4cea9684887cd7d5a3c3ec5db49eea7275fd39 | 573f2d2466d20d32c44f5e9f5505438223814fb48299060587f1cc032631dae2 | WinPython-64bit-3.5.3.0Qt5rc3.exe | 309 463 663 Bytes +6e706be98543d42955203f0bd7ecf112 | 324374786c682a03034954a3a3f49a972677beed | 8e2bc7af8b4a99cfcb44219279956604558c23685561eb44586f0a3e14485359 | WinPython-32bit-3.5.3.0Qt5rc3.exe | 258 639 732 Bytes +d3b73dce843cb11ce98647084caf44b9 | bdf98669f93d99709bd94a5973eacc2e8e78a221 | a9c6ed5983711d21b96faf1d4ab4178ecaa0d4a4612ff0415c11f46b69495b48 | WinPython-64bit-3.6.0.1Qt5rc3.exe | 306 964 897 Bytes +8f6d9b4b128f9c3b95cc0becc6b3ab4c | f1378c9d0a4df4fea28716251562accffb833901 | c5acdfbfb57edbc395cce053bad807db61335fb1cd7abf5f209ed474b5374c2f | WinPython-32bit-3.6.0.1Qt5rc3.exe | 255 208 823 Bytes + + ### WinPython 2016-05 release (November 11th, 2016) MD5 | SHA-1 | SHA-256 | Binary | Size From fb519b97da7137edc87db6b19b3f69eaacf48b1d Mon Sep 17 00:00:00 2001 From: stonebig Date: Wed, 8 Feb 2017 21:14:28 +0100 Subject: [PATCH 19/89] icons update --- images/winpython_launchers.png | Bin 24554 -> 29989 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/images/winpython_launchers.png b/images/winpython_launchers.png index 3f7aa50762b09621bcf52c38928e156166c55a67..d2a3684b2576ae4a2722ba37e28db714521a7e28 100644 GIT binary patch literal 29989 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 T$(yz*;mm*5ekN%v9~Nn}B!`2fsGY@Ts} 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 F{{SApwO9ZE literal 24554 zcmY(rbySp5yElwTcZZ~OBOoB%-QC?F-5}wRg3=)j-7$1G2uMpeLrHgcytmJD&RO60 z2O9=%)*5zP*RM9;RF!4WQQo1zz`&r($x5ojz`TtEzP3ez1x6&q$aLV-8+UaXahS?K zr2D`NI2$n~F&LPdSkxyoc;Gd%i>#hI3=Br^zmGQq&Lx&GFeX8Al46=Z#>bh6hIlfM z14^q&ua8APZ9mf4&n%#N!I78~O2RWo%Ib(78CejvEpXqg#?fg-c@#3`$*TDwiuvi> zz8?KqT{X@fJ|_FLHr_X?9FVnm(`M$?G>eFa5Yl7%fe1}n`#lmYs`mf9{C)(2Xa3)x z6!n1c|N9UE^|WbE)PJ5w2#L3=Htje4z^SwcCTt>K&hYWsC|I5>H*0h1`m~p5iknH6 zZj_|2Wh6!Ts~(SunR#SnWd8?(y11D0AkVtBo*r?>q-c6PcgD&U&TsNO<5Vsy^vWK{HOz#$F6#L(sYDYTf%o9We7SV+2saVRE8MG zhpI|SKA*Kj^nBzCjPF6c0blVFi%g2ky`KCmyg{ME#OG}p6Wp@-Li>6CZ}Vfk-q*A+ zIabA%M%k+Iwv{I@>-j1zffx}%(|c+u4Vf_78*0g3l;ZQYc7iNqeTU0~&$4Cy;;V=4 z36Qb_`Br?iewip0!3nxddM-^Zt@qprwcnM?c<=A;RXNz%tFW2kEIP4x!2+^$ur0J& zDw~(teI1xS;N4fcdG?!36U7*3k46>El-onJszHw`9lKbQB0uQ@pLW?BBo()yti2nS z4K-auk70pUri3DSUFLevb3pQK~X5UcXf_ChSyZQu@QD;;(bw zDZ6t*<+9YfEpae-GFx2R&O~3sBwWBbOad!uii@*vNckx({*X_i=?rcZi6K0JI5tg~~+s=KX=VA#c zrnph(+vBiW%a`-dpg;0ZU9~Q+-|pG_aVuTfRZ+bY{xn=JF~&|_>nF~8UYg(|loF{< zmq(Aqk@#)Ft`EH5x11)Kfq*TNDyu6>!$yNA+QrpF(;yUD$atJW^J<+mGxtGlX4a%W z|79lj#b0hTc)RAp!JPi{53o0->-~Mw*!*hf*9;(x;ba{}16j3J1aADoCu}!kTVw%98{wdDlYG^S7Zv_h!+gmdOHS zAam89m9&ncn@={EGT z)}u|UcNqKFF6vARJj+x}XN*XUX7nkXJs`$azxs>{lQr-3l>c2lpNrQMTa>a()><*L zx6iFDyC^xn@BBSXMsTae$2Yiuaf9l3N#K3`S4CUU$MYBcDng*C<;O2E?X_h~!ZUue zo@61>e^b}AS1kq3DI$i>PNM{drBjo2jOSZludMB)T8;+i+S>&ShTe&ZiM@eFja~u; z2O`FaeV6xtGd|Z(zuB4j<+@9w@+te^`E>TED|`Pb=)mbU^Y3-^IFxE<18F*ayaIJHoLp{STtRZskF&BubH3;<>`1m)V zh{bkpYD!%{i92ei7E%Y_OiYAV>u~yp5y7M@xVDz_+n)={G^8(TAgz>say0P{xWl~s z_#h1R#Kc4rPRqfwjb40we3=;X@{*5wVtS5!K0mN=chR%!T?T17UU1P`W2O!%t6m2f zrvD^1dZ`Ia`R>>?$9v5*PX)$kE&KlIV)J>5E?TQX&90wBb|@!22lpI$NjopGE2#=4 zS$J@~76siGf+wx!D_`xd(ob}M1xwdAG;~lpRvLGpwCW9m8d}RZM=O0!iN2=I_#u|) z5?eDv7qw|z1NA4QUcXAxV1#nBX?O|GwZBf)K7>FNBbqd;mhEp4yOvlE>@5|>Kgl!r zw09_YGon}et-R`2Xq1<3xy6K6ehG%D_3x#g?R`;j2Kw&H&dsIAY0?v~RdQjn);4~! z)-puf$&)B(pN~=9S*mm`W(RSh9lJDeJM5wB{Q>whJ)|=?+k|S{SD+atPbBH>{{DU? zUM#~3!wM8CBq%7zNUq`I>kE&Fn9l^GSyh&BO(;_hRa91fNrin4K-Dje3MKZ&`lZBb zH8ts!wMYc)Qa0g!m<`t<#?J2XS{qk!@I!yU^CWgy3iuU;fePJ=p+z$ka9Zo^Fj>;o z*O%9+)+V$}HRfblojBxr`w>=Y@`oEn!l#Oc)_1xJ@~ydNu>(i;X?jSL>K!ji4x*W$ z**-C|eF`JyTe*JT=aQouoA~V?dJ1qGR zuHdG#5L%;&tIWQAXs|LqIa<88|6V!SsBxcoCD%Xol8jYFIQLBl9U-}QoU&fSMVD(H8mU~vagm@ zXNAbxY54vhkgo9|MiFCEs@e74sT(Jm;lHKbuRV5uvQGr>$#yDF0 zwdxBu2~U^U6)xTJB+;)U)u ztq3FE6Y}^qRy@oBa|$0qR*%?}K39|J#9LiZ1f9<@{mhQJVI_T*(q@fFQ65Z=uU?Y3 zF^uYo%Bz();*Kg`(D;Q|=m`T34lZY~#eLUSPoL}N=BDJVKbkOGI3Q}Xw!JUWb$V&( zom2{op7^(^rRw^6$*{4pG2+z1L%LGJwIVop;R;4LaUYb8Z>qq6911ge1}6>!_X>mb z5{UKm{N?@K{lndZ&!dk&#~b9iRCW`POEG!^3;^3q(oK`~{=p}co~3}$-z$6?n7Tv` zc7GOHptgtB5}8u&DPZ>1M$gi;{Y{14CZauuY>_srYo?Cvo%HqINNj3Khd2EXp6k0& zeC|7=SwfF9=M6a>Vt!SIxpjWCc|Q&bopqZAMO6Y`+U@jFi}nvnM(2pe3r(Tcu0Btn z9qAYxSR~CdS_z1)&qJmZmGFN5(SspvACbnU$XsNPr^bNOl2!-W$$W9I9A>QpxAzC! z&^4u57xe8{ISc5PxE$vaBhT#|da{B%)9N7 zvjY9$WFKAeh?>k>PXfnwsE=t{oKI=gBd;8%a=2hzH3U~453S~|Ow6W_NH?6TzRGm{ zn_MjjoHVN0*vD~0Ki{S0@1K@foEVvy#Hr9|22Y@E)6>)M17BYP^i$@#O%8jPm~8j%>+;K&FjF{kBv_t)o#>%+x5n9c~3_g5}W=8|`hL7CqSn$lLY5NCzw(046`bTz#P!{yJrXM_^m`!~Q^~ z_)|`}eH87fF@1REB}TtSw`vUnp*>W8nQ?0@|0-m7`D$g@9{Vq1e{+iUGZkP5u?hp} zY>W1_lAF@b>-9)~34TpVO7hs7cpsNlW!wQ$!o3??5>qn1ziY6G%x(k>cdK=9?G zQ2@{edY^Irj#9R;Z|BItD>Pu;FriY z_Ueht;-`!HPeVH}8lDvJVR z?2~hB2crOb4EK^qo1^@Q+OxFMLBOmFRP;SP^jCZ9<)F;d2`5!eogfw##$4W##kuFs zhxPPtA;0q4dOOu0|Lz|m$p-19cV6Y@O++E3;X|sC4-AjLI44_N_-E)qQAM_i-1n9H zasxX3a^yW7w?a|CpJIZI5PAlkY%R41AHX|c$KotZ+`tw2k1OBQMD8sgE)G#q6k4)s zLZZq2U;!Q$t@n2Q@DP=8JX=HtY~JE`%|yGfy11|~A%~aqs>%;+RXkCp4^GyWmP8~Z z)KFibT*#hZT}gt?_3EtAx5wJvB4Pl~9?n&a3=Mttuxml~*I5yscE3=8=4}5PDeHne!)GC|9zK^m%fjWo}wF$Thx2u)9pzZ4SRyLEPL+y`1y8@ z&zaE&^1H~bb8jK}F??aI_SwYleg4+RiI5!a_n$pUgL*E}1~83kvPI3=VXEuuLXrv! zX#5O9JN$2d4-818%~zS6E;U3eZ*OdFigPnEW17}LS33N8)ieH;d&=!GFz;0(66JNb z7y~XIUZ@8-xXxx=T}ggGNv$U;Mp3N?<(qCb4|@+&-TxHaHC?4oGdD;2ureE~MnwXR zY2+fUUS0jexG5xmvX;!9oZ5ZP&5ewV0s;ao{`UWtzMQX^Y+SHtl=biVLsrfj`+3Et z2BCo0_VUMJDiy{0;M_d8xQf^NSw9o~kbre2!>Lu%VxihB1c6(jXV_L-?cebJ-*5u& zAXUQpupDr{6KKV=Tz;8;)Za9L2XxuIn_OysiHpc&Cra1fj zBKD8f{Si8;S}FN`!aWH_!JMGa-vw5RFE_E_3*n{kPgMks%xrmS zHUef&5CzcKe>7aBdEUeGjYrj&#+i1IL5k(*kw9r?W>ylGN3|aWAL4omkPcY~D(wpWu&E7gS$brUb##vs zH8nN=H~5tpC={xOy3)o-qq`9-$pyg@1K#j=Q}}9AM`@6j^*@Rj0Phe)%lc`ZfJHUJ z!gbBqU1`kM-;3R(RZ~YnVPs|o3o<`F&Gq5KhmRi(>us@GfhXFFz8`H%s(=#R7ctWcTv@P^rvZ<=Rpm5^**P% zs)@7%v*jAp`+aoq>0!SC!Gmd4AiT~QB~qUEZoW@!qYE|AV!Y$ct%)96{ehXOK>aL) zqRCi9u^1=xad}xG6R|AgaMph5)Oi|LZPUrw@fa}x&G9~nBGt8LiL;#mA7ZVHGCe;0 zoHNPAD1c6kY>7w9Qls;smc;2KZ^3slyKMP-4-MoJc<$2O`ZC|{{2&valXPpf2&|tT z!p{o#%-^=!#CVW1e~YWH#zFQYgh_bsN4_4!CO4YhR<#;v1(ZlLYEdwG`Lc$t;jjDO z&Sn-lbBXS!{(6~gpAQ)L>uYyEgm`qr&M$D29igEDH`;oY@#WhrS(awl-4EGog>jp7 z=+AYs{ju|iw^7m2@e5Irkqf{J=PL za8?5jDudAux@uwJ)Kd}i-=geniWP$RImyv9E<~%epFg|lYy~VV{tEfu7Sr=OF6YYPVn&X)tDH4s~!HmHNYQm z+r>z^+7%R3O&+6jM~ITU~+{9P7fDyR#gLybhd8dGxdz& zNzIUb@nN&73Azk=wP7y_z};8 zUO$m3Dlrk)NT1YY*D8za@6;FqvbHM5-e4c7K@aKwh_T!75c0mDmhYYhZPw6;jzUd7a5g!%Wdh(_M~!xgvXcA1z>Gbdm{pwfkM8DAU(t z!bEljK0g59UDaxDA~$D_j{s7pkATf?5*`|k9CrVp5T~E%-2QZb>5@c5inFLZR*OR~Li zDTs%hg>SI|dRsX_B zKd)MO{pd$yT{yLaBl+~0>cfX^=s$7-x19ZX5xz}1Cd1T|jCS)e|VN}=C`N?xFnzTf# zx%s`Ql$NGu4t-p0U7h3S&y^-!PF7aio12@5ha?092um?(5>|=ejEvJ0<1d?%Y2W0& zg~7`U20VPMQ0aHw{X?e7!p@G_if|wK!q48K0_GHk-QM0FRGJv09OiXg0^oWsu!xIG zOAmKu)o-x6aSeqXxT_i%|zv5xlQercBGG#d~H|Dlxv>*e_<~<0G zS#km732?TpTsbV=>fz4+aB|ief4T1Fu%)HCCP!{#b4Z6n#9~=;IG88hX~neB>qjYo z(+=m;NJvOR-dbB*kEF0pPfor`M#u37+Q2%D?ZH~$V+HV*Ha0e5u=Nm9vl$J1VpdKB z53(cjn{-uHZcO(Xby6pq04+z=r#tu!De7D)>Q&WRYrx+f)}WvuBJ8^k|Gzt9?z`-Y zU*)dOexaQL^GT z3{b+KCAGTi#q?x_9{pr2?G1Z5XBSuxon$O|XIUJzeQTf>SX`U*>cpk0g)exIqkTps zSsnp@Vz6B!pOY`F2*@GHl)=(ROf_=tQgN!K*CxWuTIgFg?YgVW8Gd(p|Lu>AzIRS7-nY=uGtGBn){7G1?+ewRii6g?dD87kkj`M53 zy(nx5pcsH)2gNjXBPkd9LA2HCzJm8dj3Esv4>B{$J@`UKqgxCSuJq&+ zckIH2YZ(JFodx*QL8a85}#{eil9F%*z+z*MU-M9l;p9wwIkn)9aNQm{raTCwQTIsp|FeH*Q>+(P(f^Jr|{~D??dE!Er0gnVD_j)9wX@- zytH3Bw5@aP5b?Gum*5|7-&*o^Uv}!UlLO1T0(742Ai12__Ku4$yqihN{da*Tj;!dr;b{Dqc>bF{`9`sM#VMWt>ys`IZ6L z^R6xRAE^EHQu}8^>k1({HoHuRPX(?ArJ=FaLDa-$sP!notq$79eM^^atacl4+`lLv zte<2E=-O^>oGabp;^OTc9hn&!fR>b+oD8qGt*`%G79VAMX{m%?f0ro*m5>b%9=_&v zCM!GJ#F(weQ?;S({^odjeSLkmsOYrw5kpQZcYUF=1Lc}nF&scCIR`Gzg^50pcOUo0 zUY{x2{7%xiN~#N>aH8x8p;D7>4dhh~?|7Y7y1%|{^EzH?bTqgzwEOGx^bzpsk^fH@ zdPGA1bg|xS`3SR_ocMyyEXmuqL8+~(N(49`072aN08b&hs>DxP{c-EoqPi}K_vq@JV^%dI$nF7&7RRsd zI8!NRz206E(anQv@B|Gr(wv^m3VyL2QU!{sgLXZQX=_-o%dyf?*c;L+GsjW@%>v>; zw&xNFsR5>cR1fbY0rW8!?cVk&qcNqCa9)&FYbX3o{2geB1Nk#ObFpW`~7 zhPus+f9|=lc|5Nz>CLCJckrdC+6O`ijP~i?ihY|**jkhsK1(!&h zPt!sbMK9xAf-sK5FAf!|cY(&sMoqEQU~KxVO400nPH(lOX*jz_zl_@B) z0kHCK`L$D7Fv$2rhc$nYG8SmuZ-~75QV=0oQBhIt*$c9;u#gM-bbq;y5}SI5f#rGm zCsV+M84en5O`!7f%xhpC6<%CnP+t4-5D*D_#B2w~$77ZA76eU2S9MH~X9L#Sc$2oe zm2$E`o`5p~?31VMR1@36MM={hCO%8O|4IyA!vZ&|=X{ycuZkT^`r)_4*a$?owQ zi-EkbCO|eopvd9sH_AFZ6=W}es@|}s-0%J^U@^a@s_*Z+Qg%7atQ^ZrUo{!LV4eG25TbqowQ3G?m2U3r{u zRc?q8JjOkZPuIcA%z9*^-L-P_l61r9OmR_ty({O$=CV zUTR%#XEevcshIfU?*8uQG3DxCflsm0Z6vXdabuAZfeI6;u%kwJTi(}uZI-a4b`0fr z5=EP`YbK9^0NxlWa_6h5G(zTBN#Ty+yr@$e7`HNt03LEYiqrq|Xe zmM(i2gH)MfTp;xJ{~UAcx0acZTh?@-g4nImd?!p?^LNL^4wP`9`X8;%EjwI z2%+>|?|kigeU2sgse}%61qq-lXqHx)K3jBaN=Zq5Vp|ku(XU7PGBH2T`|;yP9v%eV zbradIEDU`1GYlU}44Ry}USA%ox?WH+f2{2D*tbpZRoqzch!EACvu$@LyOxhLR|#?j z-k&3n#E7ODclZq*x?Rbt9)pr6AqeF>V*Ccx;z-EUgunM$Ir8BT%PeH8^JJ=&P1;eq zzDFpfb69So6{hLa($eD2&iFGZ?(r+id7k#ZPbXQrO>|!NUx=hd+}?ql2)O})o$S~+ zj}XyLsN7`}H{so`V0VfWR%iC>^2sv&o**c482xT`ov>y~X1^kB#|61n~W%R`<}m_?drIrSS^sF6kjW&lHk94V05%Ps~9-&f6~op;mhqG2iSdh zk=3hD9O_NCrKgaQwQ(b`TW=$RgvvV{N_cCDdyX)$Ao(}f2W0|f8Mk!M3zhp}LuvIV1)()>7T6G7&yR2LZWA};^5wxM zz(d7%Kf}eu@?Q2Z@)9HwbBVby-cUWe;OKde{Y*-8UK-_7uGF`Wb>1oo5{|c(q+z8^ zQ2J)+PGtoj-{ z9iVjfoYGsT=mKi?7tty{Q74%6^z^es`_Z2q7Z(@Q(%+lica_z!U$sEu3kZ_21_5He z+l%KTDvG*Z9(jzfa1WVQ)S`gopp3KA8i5D6d|P zLCRZky2qF!FM#!0-Kc$8RV)pFi1lFIc{?o-%kbH33Sp@>x(q@?^lX>q2s190$f zm){R$LrPwB`xm2Tm%f^uQg#KW8$X^N9H6w^2L}E^(W24(K@pp7E~~5z>@8uBJuLf! zwV+q2eVhPGW0p}8-5=k-ht3`}t-Tu@$^T~Ad=bKwSyZq!;*WqTe$liR{&a=QH9q{s z944Ngejv#*VkKXO&s{^ax~!zc<8<};u&S#_s*q*_U^PhfdN|TRl}Y*>YL2`f-h2YVY&taMkQ3ceYisX#|La;SLL0q5+9TwvMU?Wgav-Iy$BP zApFK&%gEtebbDV2pWfr0pkHW@6Bb0oV}D?9;*rNI$MyXMKa>4z>$T!TD698FDZ35N zd()mJ8YIAZ&(X&wo%j|h!B{dP5`DF)(AJ!1!(x5zw2 z7>ai*&w+T-4B!fAmOZ|~6^45!fz5B0KMbYyDWeY*Zl+{K#zuMOrWNi;LlFf<=R}p#n zsn9Wu7y08yhv#9+1mqZyk<^@|;Jv%vV^2^YEGbEau`-K&2kFBT+dDgBwy?3W$tH8A zb%Mz*e#Zo)CibR*a|oX$Os3sD=ODQf5rMDIxAhrG zg1Xi6700C`vb#e9tDct@&qgq+N!-E455e1(c&8IV9dpIpOj&V>a zm{n!}BB!{Jt0Ak*Z{&+}a2}%XchXRaGJ-`+(#d$|?8Mh|g!SpekPqR$#1$Tuo8Y-Q z%lT)T^FL~Nb+FvXbI2eHY*7$59o^1NroepV+9!{hsR<9?L#MY3dF~}AUJcJ|pL@za zIC=#Jz7XMGtgZQDSWXR8c1#(Jg)W8$!#gBWGC@Z(1`#W{FQSx6p8Ydp#jXPtC2?6dUIEw^afTUO*dhZ=J`DdOQW z8kBxklRNKjk?bc*j#%br}64O8%L^NAG!-R#02M1qi*aG5tGXYTvybm*au{)f5mq-UB zKI6$@S@bX-$+2gzck9o{GpUOst4opK6ZDm;0s)kJ(>BUP!gVyVQpzUf3;$yDp>={@tgY^elY7Sao# z&8>3!MxXA`vU$#q)%qIvV2 z>5;MZR)Y8$vDaYiv;RK!E4+&Ekay7Bs~W_Et1*$+TT_2KuYD}!%TD^(GURsdea(2H zdp;+s1WxTKytGtNNB$)Z8lv$?q$zyGoV!vgHuF$Z5?5$J3-x;pV->#1*RBI0jWw$r z$Z%}o$Z=7F`g0*$kA0Y5L0}-(;^}I!)oy#hIn%{M$DV^XH9J)C=IoiWCKdre7D&|; zU6Z!nW4-SdzkfO!589JAQ;E$A|N9fOo*-zDxJ|{Wn(ukiOH{M^Sh?QwR=%&p|LKmy&pR0mCV|3XUNM$FJ$-4la2gsJ z8v_fZ#wW|MG@#_1QfCMUq^}nJ#s6n2Xu{4GbhlZYZ3M}Qz zJb`&h+rGh-M@0=gcRfp&%VP9^wA==37ed~lV?lsi)!uY5CTV_7o6UF@Iu41Pvyzh1 z8Jwz?7TE_Nkk!-mbfF+66*l!Is2>_Da{`BGZ|v{jWtlhhBByYp$g|YxB6J;anfg~2 zQCtQ~OyV2;MVu(f`!_@Y7c4I^CF9V_pC9}-e4rl}xHcSxotY=5?B3h_qbU^bFx_!0 zgnim(+=d>5yYYxejj$h)Wp!R5K!^aM1S;{MUVBr&ecGu&7x>f{RN@Hh6xv6!zpry#B|ff8`2ejN9(`(B*iLxoxoV=J}-jCjgvT+fZ}wWpUkLEMFB z=ty(4H?W}D=P}1Uj2WhLj`FPzUw!K@hT?u_b=9WMYc{D)VVRwzuE)k&cEq)1L)iEb zta~TpWvKUEY~LIDw>s~QFa*5M8oMHXmIHFad8MG3t8>-+9i}TUcPt11-YKhLtZNv1 zpC5142w)QG0aISKEMWuejN-g1X_b+gnM?2>D(dCM^SG=t5KAFr1vnu4F)d*pT+FC; z+N$M#EDgi$ruZ;_l@t~C(B$jIlF9Oiad!b z$U1H4R}+ZPuCnEkr%h4gphZer9Kn z^nQ#?7$^ZOo$NW?fy%}xeOLCWC$GL*@J7+Rc&afnPv_Ol*_YrKK9i2=RepLQ0y1|4 zpBbsk>glJqn7b!+;Evs%1l+BWNUZ;X6?i38rjGMARCg1F3WT2|M7^nbCp4ue)uacZVFkNt)J=Ulu+V#ui&@rdAN~f zpQ*ll#4ZwrL#KvC!0CKGxY}?pk*kgY7tVTLCGm8GQ|XnKa3W3tOzL^3lDOp{FU}Nd z?s^A=wnUz0BQhD9e1djeQPtW)fq6S;wN|DPK*G8&0a^!1eoRph#vUvf8@o ziR~}Q%#Wak`g%M&2#`FQI7s-H&a|z>6IzO8sIDu2#}!_s-SyJCw<(pheR2}Rq_3+> zLq{hruclZgSJX~B7@I^C) zdWpqK;L%6AIY1FnLp5wg_QTesuAtzHaOlxr7i-tfGnVI$k4zKqE5mZ0iEOHiY+jUn z5~LDKl%1hVAjD;SkSxQFZ%mTqrRGe*O)HP2@}Ci%jZo1~HDPNe624ulUbF$tst9NL zj;b6-HVwZYFMWj4oqDD!Wlm`ya)3`_mt16AkCpDV=EGUL3LeHCXJAFav}S-x zBK8$X+N}AhJU!p8y*^#4`1<;Cb2k7%($REo1qq3_zM!9izHV!s0X-4G^hiuod$(#h zI8)>`G%=6+Tkocd`uzxg>zs;f7A1N1VRMM`SCh!bEJ=bLH4O|7L}TaBs6Fs;N2t8` z>lR@vg}-lRi;M4gu7y$fcd^=9VNgTt1IoRX&8uq0`7Xl`6F>CBs*g%W-gfHhwOJg_ zE%vu!T_Y;a>>?d&c^!b?%8CCU$O~v@ai93ThZZH7Md&YJ^6&2U|FW^Os#@%@p~y!( zJaIaU8mkEpGnEY*9P(`N=C7q>Z;O~aZ{(L-Ov}t$!(0|yz6TKNZ$804+*BJ{elO+q zU)FxsgI}tmM);P%hJH%kL&$j`eAvhq9>1Ng4mtH-aiqh6SAp=!eeDikN7hM%s^_BwWL(2v7KL-e(U-X@S^OWIlWoYl5# z7Bu{~UjhPvOo6c3FF1dP!xdJ8)u7joIL)z_o8^_~$F=P(ARL^BPyvCc8nHnE0}&qe zpMj{F^8)e|f4n*FL64iItSnZc?^=OBAQAjphmr9$h+a8kp;(3DY-2Y&D7p=m48 z{Ay`A1EikEls;&p&^}Ge+3>9%UXt_ZG_8+Bi^`Al9HpWI9x)tO1pznkEz;>~sLU;Y zz#VCvsg^-K&HMLn*kZ)LXM93O9)6EIv)UQpzqutR4akK~8fXZ6x>xh7%PRif;7)1^ zettv*1gGVe=rngns7y`v&1$E98>L5_js=tWx_Wh>TDEmqFwLJl3D~tt4}X96TrCxi zV(i!1&yF4$PfT!|cD4DF5-lPrUZx6Ex4hm28DR5`df$peJn941htL1E5HEi}KMkE= zm~pqC$cH6%I;lLS2=xDyJ#i(F*7a!csm;qXk5D{MQaiDxAv%=TF5*CH-roa9OmZ8J zWC?@Ylk~j&(as*0;c6KeK7BSx?}Ub?ejxS_PdP{;KnQ>;1&> zCG1^?60)}AVU{1y)wJ6`QxkTt;~|GHuDRW1L)_Y$uApyVfI|2S5iKmBqen(XP4N!PWVuZu`YrwkI zjkY~Z`R14?Kq9R1m^;^~&1+p6@NSZmlYznsB)n0wDBr{c<6?euI?K(=Gk;>Uc}O%Q z8B%eJmr&-f;UK2w8_8_juio6hUn8RfR zQg-y<;-j1)!cZWf5y4mi5nuYdMH`PlHlsU;qx3DZ6mHkwKD&q}%BCsMl;JuT<8o+x zo5$U!?-!Se!?+v477joj&k8lrp|VXWSi`Bdzr=WdKNzs?At&mowZBoi9s63yON-_K z2X*BtX4Y;M`{1c*>wGnEBviD8J^1(UfJ#j%G9}->T_3?G|k128-g?SIqrZ)=OvsF!arwy?3|e3q~nVdBf|-dS+?17I<6 zQt@3YvR%EO+XQFXo#ulq^7UtWiUGdahJ`5Uo;_n?WyRqqmmh@)+p%X_(t2&j{DV%< z_0%=v?`k5`4V1RaXDU+Z1H0$!DS);m2$Z_We% zp5#|Q#MA|c2e0SiY_hWu>C+>SA%F6%#oOOv+4_+zA)sX6s+WHmlBp@mg!FX3i!C{Q z|ES)P5!9%{;^NcF4P3o$AlW}bu_87aU(w~Sqdz=}y3_Zoxy5-+SX%LLZ*O8rgOs;) zcSv+8PsQ?E|H1;1+>^^{64$`L*lr$t`S&Ox+Xg^RQBv7nW9aS!Vjy2z&i-Nwz9~`- zR)_-}wm9WX{st$g9}o*wHv4we&{TlA$S)aA5YHd$L8<)XDUa>bnHwo^bTz+zQD-rw z+?bB_SxIy`l@>e@FEEhPudZCFHk==IXv9Xx+vCF%p=ikX1}uN29J_WzWcQnh$TDCp+R@hNdRsbN zGKw)286Fv`y!JMg(rNWLZqxJp`;gyT@5a`lN$zZyGna)jej#Ce62Zt zckk;Io)>ldFR1t#QKAwJ$VRRDUr)Ab#pUju-ZiXmZNbsz=jH7kzccN!fmuIlWg_^k zM3WC>t0&ja9X5bFLaLlJG@+}NZ&Z&pdp`n<7~TPu0K&<9lQRo|KNJ7&4hnCaJocxo z03U65c-Unrm}`&%hAJv53b4KQfk-|OF*A{rH1vuN#+J$6q6!$)mF15s5bGPKy!D%* z*-Yld77hoN%!dd&cy9HEYUPzqa69so0!F9DH9X23CVpYR{{UXash*o*2S0a$@@MrN zJzLV&;Fuf%eyv|KG*HT){7gg(Xs30Z(K}}OIeWXK6e?dc66#0H1kjGd^L!+!?Uae4hys@-X3*1#HC-8f{!zd#A`}+$pp~*}2b|EW3c&B$FS7Jb&0f@0% z{JZY;FK0*eAqPN#l-;M$HpE%ELu|WCUk7Kc!G(0dfcdqvgz zKS9~4z3<})=^%t$y%}K-NgLTLeLzV_jG%PIBUm}O9n0Wpb2{J6Gqy$u?i0gRyGG90 zh!Nq49v>3icvxYjI@h}p$lj~J%-Tr1Hw=Q1_7u*0q-LlVn})%ZRo3YZd;{N~`aIn2 z_vZ8R#=t`;MX*fS*)_BLhEc{U@{(cJ;_bP=H{o-8kTA0&;g!DJ2)u7w9B)D z$7l_o{5Aas>%@RUr1`h8!M>o_e7Z>d=gpkzQQy!?^m`iOXN!<)4M||CFPY|mz$-5= zFDfdk{^vPGpiL!VA|d58Ihc-T3C+#T?RBUHd!)hvNp%|=lXf39EiHVzF@2yd1z+&+ z@LYMJD+2dWUSFQSgK23qjDvvL_XTO)0P;UXtr~RgQrn}_G&-tymV3Qs5%hem-X;Zh`i@rgNSrz!s%Ko6|3^TgL=Z)>ZxRS2r>x$cPKxe8@# z*6WBWF>1}NUeP)~)yfQK&lV&9fkz<{(0=i`xTW_~Vgz++q%7&Asj0x0$Js^X%#|Z% z*2-D52TE)g{@FtUuZ#k@)W(!UtAcV#tSPsr=Fb4T310im-qp@Lviw2z5e|2vF+t#; z0Kmt&Zne%1)6^VlGk-E{8ZIIL)`ZmXgx~xq-f3<8LEt?Xyf5OTQ`NZnT}O{%&K$AV zNP=k?D%l7#lt@tGWAr!R0wI?dTQ~LqJ@8i_X29}qQ5K;JP z#q)~2>j~D0Qib391Wg-ML9N?O2a`uqE9wd)O?`mdK@u|G)r?H}XU~xK-`@Y5_>^b4 z$_1^y2+qx9M&KI+5JNSiIHPuFQY7ubg^4=LY`2!>r?g1zTm5LPB{}(c zldco)HTt9&d#f&B-`zbF5As3C9&qFqQt<>UL?Ph?#Ymy9-8Uqp?I z1C=xQP2kA$ocx;a2^2#+DDd;{vWydXr9XaHb@pjHoc6BA`P%*L6Nm`Wyo_t23;O4c z!bzH4^HdH7qLlE9Xuuyq-{Pzjfc8t&e;^e^VnK6$nB9T_b@y10en&6A1)eH1*j#sU zuK*$v5X8Nfb7W>yl4QO$Z9ktw`&r?$7a`8q^2|C5b>EZ#v2AOv)=d&-+RAmQ1Ntc| zyBn+N!oI+1%=o5*<8lSz2dDZy3yK>)`w=ZesH+c8eyse1-B50b(IPWDdpIbovb~-9 zBpVvh7j}}&xXU9H81$_fX2ql0)0spq7&E?!96)u(7%rUpvx`69prj&xa6mkYk2@eJ$ zs=`QWmcrYSF8R8y;L5Q(mPPP+x_L?^P>=VS#n+qJUqs^=!4BLA<20S!K%63M^Z=WImYG3r_dW&Tm z+a75v+FHT$&EmP9Nhzr)_pqgp$}co-R6waqqWZ9H)4p*3$Tm2ymu5{QfqPpfGjRtv z`COIALTzJZigmOv3e9aH#jl3ryR#?v;%P)r(&zx^Di#?z9^hepdcHCBOP#EwTF!tm zXAr${v+mP^4;2+v3ca+A-J$!s;@KY|3a4r^Z2+*3aJLFVu8NF_EZbM%ggzzJ$l$>9 zCK1^OlnD+KZ{wrBm8hprHO`5;EWk2=)OY=Zm!d(c=Hh?<6VQv^$JTA4#z7!Bcz9?G z4~yzwVi`hi&W0I!lf(cy?ag*d(L1*41J^fp-d=Om-ycR5LvjuuBj((0KlKFC>v5WF zh3*AMj2;J4Y>g9d-AWuVV{FQW_Prn^63TmBiL}^?Hx(B%YSePFs@PsM3?l-JgK~bK zM{RJN-Fnd187^Jo=g3AfL2oB(nf^?^TwNQa_#`qM=R2Ojd*;0_fEX2rFMyOJODehJ zA;?47FhI0LXp!$|oM;bf%g2~iSM+3~%;(+=68^XPEUI<*eTTD<8+mV<&Drae!Yvem zJu7KYmYQNLUlBAA$R1`e&!x-Iiya>HCGzU@xm0_emAHS1pRCAyKmVs|gUy4x$6|ZL zqtk(34OS`rDs{ z7CXZ(TGMOqT-{6IjQ9K~9}DN`GK>OUyC{#&MNWdBQ(43!PauFa72q03^a7uodk!HX zGPITge9&lr5X!1>iT6j0BurV(b&b4=3Jy+eBUn4Q<1+1e!-&;24YdY8m1n1WruMH= z8YxO3e-D)+4>=uK)pLS$+?}y=19Y4_HiU|OY$x}G99{311F9UmZ^Y*UN3|=XO4YFa z{)t{es(`1dGH(OM1#9=NoT98P_Nu(6CigWEIzL)pGBqI!=rwh<<@W6VSz2n-XE4?E_Kexc{KwKa?5*wKDoOwzZAis;jGWRZd>bpi`!& zqeDs4OJJ0ckN}ieC1`F?RMB>Bq5n8(O6g`0@< z@>p=i`>V5uJVqpX zqx&x;Dk~T!I(OfgS&D6p@0&ubMFS+f-{mbMS@o~*56E+T0D&MBgPTCMezGL7#`K(VYivkM3vXDDjo5@rDNOKEKROz2kqa2kk1D`YgGx*lb&Z*1-L zRfaowPOM|{@$~?0b24CbBBFX&Qm*`Jc-6&iU|?8y_UZx5!3IQMSO2rw)|~8MrlZ2H z%mmQZn9E5+=v~D-d07@?Z90`&AH$`?TAxR*u`79bU%trz2&OB+f}2Z5-c?b~5wS-D zGJ*)!r61<;qZLnX--gh^$VWD4@F;4kE!fOn9TpHQZ4vt%E5}$lKdkf#VLiARw8tGh z`d}hJAlyQ!v=*hE<3}=wjxaJd##GUWE-q$L-w;gIVgY7~8@&C;IOyKHtlNXe;3!HXg(Q_M%LA8Z>n{t*&ss&j&Rp_g}P@uNFursGTP3_`SNmj`KOaC~>WH1W$BkVaqoZ@d++k zy}+<1W6L(eo-A0vI!Z0sKivTz?pUu3^kBfuab`9`D%fVf5zh?GTnFVxknMb{8#c{W zX#Mjxsr#i&Ch_oW-;Js~#b_p4rSS3b;pVd2;s+6L;dnKfgxN8DqF^?r!5;oIAK%cp zQSLEOh|t;T5f~b@B7TBsN+7kULPy=O!2Hi3@;Sph)v8}9Inx7Z{q4L zMXq<9-0y7EpxKkMB|Mbg2y<3ew4X2p z%(3odm?4Pv2p8i}Ih}!fb@%Tfa|qw zs<_^cBIzyhV2DzKtRAgg#$!f}0^-teB_~2XYK4qwV*BSxOTxwXkMy)d$9HDgx153= z(m(t_^0>I)*tr|-zJPo>OPaU_&^Ym*FGKRbkmWqw*jK$!O4x(grBJA!e2I6TBv~yO z{MoIgzzb?Nu@Vr#v}y;SZqyi<;HgTXx~OhD>yMp**^q0Z{3xgQuu^Z>-u^N9XNoO{ zCeSCPrEsxB9CUP~KiIfgWTgCrd1puw94?S@#|P?KQ@B-FbtMPqa7ax#1o!rU{|7nF z;x9Rl@(*loM8p_w1Muhmz~=07RWKJQM^kInR7{70JVnZiF@?g>XH3jkkXe)Hq9Jic zP+U~{bLFvwG@~)$Uucp;ttRebG4|#PENyoHgi6)~owNNXOw=qj&IxH@Y z^~Q|~qZbwA)Zcl;J!hD|iF>pT8k>rFV|dF-;FX|#z{(fiqxgouL5iq~H3`~Y8g9pQ zWhni^@2|hR=Bm(}Fs91P=v*iP3Ft=&7z1h0Hw;09Q_2bksZm2q9Gz(-v8Gw*yc}wG zpwYq8y4221*2QXWRIslB1~`R#JQSWYwzIx{zcxjnl@mlRN4)f0qT^k#9yR#)Re=KW3Yrr3Y^5-@XZDYxCEZDD1_cr0fNN(xTiAjvwTN5JmIS2~8 zl3p?W!1Peu#)EV{f3zwVkB^GP>67)7^-Qix+s{n~P||V-n2X$ulr8c7ii?%Fo?SMR zxu^5Q;Jb2lgu@fRBB@`!B)5KgAYhCTm9&COQaumEjDH+8=4vyNd?S{wdp+m1L@-K?%tfnR5x|; z+?-AWluwq&OBz&k1}Ne#R8kX*i|^l9E83hp!6;{0w0RZT8Q&x$q#H>B3WRjzsV506 z4O}gRK3DflX6f14ScyQI7V}r=4mz$W(t8FucosF8-5BZGu@1Hm)py23FXE zW}3wNa>*7}DyURa<_v2(OB5dR^prre;)LHMW3>;7^wsGoZ~m@8#_ND972)ofXkLvr zWsecPPoiLj%S3JUh& zT-ln=JJI=K!Wsp=(J6JzGUkRd>^Dd>kIS9uX=gae?c~E%>`4FfBym{JvD1&?gzNTO zTM-tDRZzMlC2t`AuPNqHy{Xi4IdU*z{kF>yrCRv~iWidH1WNCl*cv?iPTi4!(Az?< zdg-i$dKZmn$wbY!Zm(JsX}}yL6DltHXna}Qj&4%Lj(SvX2>rd_krMh2vj*wqvmgtj zx0m^q6La;IM(^a3&U1&{6Anq4a1--8--8tv3C*&}JTmg0TJ&p_V^Q;YISUl1j!V_Y zys{m#7_bkCaD0x{>&voW;Lo%nA;Pn7#RW0c8es2Lu_GtyxWy832~~6>*RsQgh%g&J zH8+Q2mtfC(@T6VDMQM@GU_%Ey!km)Uc&bZ0^CG&$DO1UBv24u9we6lFOgdlvvLI0_ zsUf6ht=q%{byz*Xz_B;(XSSev?2i&CiuyU8^YZZ5lS*6 zvRTi1Btbtx3M|4M-jO^#+l)> zwH1`AFOyJuwQxaKSxHV{#M<1;%~%I#+5FK@9o)^xla2^1PwpiW%FpNShsJ37S&2ma zi9vRYcF&YBGf9)0s+tHACu8RYmN&1)#UjJ=N9sP+aexAL(!Oaahw#o2gfMlOgs8J+ zMp)G7ol2F9zZ#EsGZ9HufBvF@MA^djm{-WESu%cvL!DSv(~_dZturKmuIZ?BjJW+M zZtbOliqDpEelwvsC&>+6ssko{e`3IqP;orZz>QfTEmJ4o?Y5DA?NIodQeGl!asI-T z6uY~a0-WhtYLi{|V}y3otX_;KcH4MjO4u>6^2n?A<3R%mbSUQ$SB*ry;R1M0Hw|x% z4@)XfCu`FYMsFM}ly$oJ0xH%&t;*iy$~c<9Kzl6#BW)xSOdbV~VS0A)%S56h#<;ke zRh?JtMF$3HkF`-pwftv&y|*84Q7B!RB%d}`C_iwdW{xInZuRV5;lo#o(_MVY$sBO4 z&H559oZ;rSqRg*y(}~z1i-P%JYnAl=@0s&%U3^knhDaFpmv^%Yt1JL}iP@3M7G;I9 zAs!i1Ou;R|D}ik9Cm-K4@VXj2ujYEt-_-VdM3QcvTzdP`2dV{f{6rEL1S{UTY zn{N$TX|Z4&Ifh$N34z|QOwe-T;t!8(c2}hDI{F-Y9uO_%hz#pQOlYjM#2{ZM2)CA6 z{2gQK?-;(;y`Rxz-ZpiVBr?BNAB>E2Qip9*P4|__=GMDdjo4#YS$rf6ZOGHcC9nCn z1Pf5+p#L`oRx9#w z8L!Yu_T@>s`(o%BecQ^Tb$&|Rn3$J7PC_3#rh>fG?#OQ+c{Z&)qCtvp@4qN+%V)nL zsoA7ErVJ%iPjR`-l3p0!Igme=f3O!GnrYU{7nd~Ckt zA>b~OB=CltLGVo$((m2#9QcziHW$+VScuuq9{ASf`(CnKBu_@OR7)%W^g7MPt1eXT z!=o2J3^ePnc-W+%sy68lBNRA46y>k>N4j4xy7%wxEMTdgyz9^On-a@ap&Uz1q0}0M zaZcz*ZB}BKrG12js(boC?rB+qkAK}0IYOh;{L2Ar_Hy7hO?`^Bz135MbkT=ROO{y` zA^lwgbVFPblFT0Q^cvOvYMspH5(+wznW7=R(IR6jsoSsnHll_#MIY>7fp&g83+Q&J zc4u-bSTySMwTpE%Yr$2_A=71Ol4Y;I{3^_jbCqAib`y$en2lDA{HSfFGfymm8&z#B z@W%9cVd)N*a`12U)kj>7yl=qX2MshsK{7jzvnc$yp{fF`6)w!*b&%qY8^C2R3R=>1bl~=l6Oo^?$s%nRGSyK>Jt;2?* z|1_`ew6s4f#C;kmPD*2Ii` zK52Xk* zuAkrR1roZNP3HC@d2(w0MQ$o)5+#!0f{-?}vNI{ylyJj}q__FWwPki?kY**NNpj)9 zk*xd=6SNyWt|1Mg!qG|cVxovlAV&J6oy6KlAtb(0>gQKl>GOVKb|fggTT#!lGcgZT zt`cDIk`^c8(RX4-h|Re&f``v95~ybCJY1TCS2KNH4BQae95%Pwc+q zG@MD|=<4O>R%0I7`6FRXp)!NT8f19YB9?1ySkrbJz)2)#(d&d_-PZ?xB79ogFN~Mu z%Ar6RM2r|57*yxZ5zE1Mt{Oy&Ko=C5(rJ{SzF6j7n94)7&Wn9b<`D^x4x?mNHmfem zr>3C@L9MA|>>!NVpmHL0$!qy^T^-}wtxBjEe`Km<4&%f{*XITv#ETNdtTyPOjk7Fl zs&d$!>f&~;QS;_gr~HdQSKE$#nip+6ZumyazqsV)o`^8dxR9Jh{@AF2c<_ezJ$4Ui z?aM1kYKmQ-1$ZMELfKR>>Oet46N@>i)jcRWzlA!(v@kMF01`v!tXt1prjC6bke0tt z(*$+n`L(gxv2ZKH5)l5*u5TX-SqR;8H^hrBs91PdVMJqpwt?N zPpTD>XxzsSNQy^eV-~zViV@UCeza3F>SXJls?}MCtYx~kXx6UT2-tA!z=1#C0@oV1 z)zS*aa&Fb&&>P91_IC087&7mKXzQC(g{L{3QdczaHk!R2Q6JHMz0p_=-TE0NCeCKE3@ri?r<6CSUVWBv3bHh&R zCqCU5INJEaol}bWW!SHIT_00X=%F1U7tbGVd=R)IuCarNzL!JEKXnDz-ITax^mE(0 zGoCCn9O#imMPk8AJ9AIqOho1o@ZjQKHn_-JNq0WH*tZ{hXW1!nDMm`HYpKqi`*Vkf z{u~ZeZOyN8bN+C^|E(V^nE%I0GD{jkR%@d?1)++{5`}47K1yDf4gW_TFNPAdo!xl5 zA88+omUGMJ@fY$MtCM|Za8$Lu^ei*({hTZ(+8Oxw1WpU59zP%T~(5fIESh8Ju0?tJhV^ouE`>?9NDWo zzB$?;i#7kVfi)f`*RVUDJ~ME!0g+=gq0PJ^cVlc)bXzmB`~N0Gg#5uRKLg2^lsG3( znyTF6`kvUX*fGN}E0aqX!pGrulLhZ|u=eKUzrl|m(O0zv;!*FM*6akl@g;HK4f1rNAjW%3@ydmxTsUWqryugZax)To^I`g!ND%0$yP$+ zFY2C?QQJG{>n5J3JS)l{ULODVaB`_^2FbY_uu!>YQKj_Szrb25hyw6RHmNgKDb zwJvfZGN}U|rYII}o|FYk;nv`k~HtdZoAggNNg-l9s**7?ADS=36 zz7d(R9>OW3B#DjFwfCxhu5@GGtD%4|gXc2B$q9k!2XKz@*+%jGrOCh9jWupyeKV4c zqQ%q^hLE5tqF-TpK7d?;?W&3QejGP(1gZblGR`Z#G=;-z;C&2H87HcXZP;4$OM<`0 zQ|iHE`Z1a5da+fR3M~Jms$UJI{sJZff^X&-y{hL l0hZkVe5K5Z0muEu7-e)ITXUNe2l)ITb!8o;ItA;9{{me)nh*d0 From 8b6103dd0f8522b756c0a5e3ac9201aedc00c004 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 1 Apr 2017 11:21:21 +0200 Subject: [PATCH 20/89] winpython 2017-01 --- md5_sha1.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/md5_sha1.txt b/md5_sha1.txt index 67ae0b7..0898ad2 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,22 @@ + +### WinPython 2017-01 release (April 1st, 2017) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +c4002c4766fba304d5c270ca958a686f | 24e5eead109445f3438c208e3fea523f04ab32b6 | 0bad313ed945ace0560dcb21e1ee800aeb151b8bdf7fea1bb6e4d701e194b03c | WinPython-64bit-2.7.13.1Zero.exe | 22 565 591 Bytes +143036c1115cc972053afecb0de7ac81 | da3671d7bfa09d0a3ef7b612334239e4bc36ed79 | ac3d276b18b522547bc04f759c3b7e8bfdf222d8a67b3edd847a800b8e2e1c4c | WinPython-32bit-2.7.13.1Zero.exe | 21 829 648 Bytes +1f25177464762c93e5016530be6f077a | 744fd55d860f4623307fa5e6bd36032bc1d4e831 | 9c8bcccf5b785b573c528835b09748f09b45e61be7b909af68472e9d9c6675ce | WinPython-32bit-3.4.4.7Zero.exe | 24 535 864 Bytes +bebe2ff787275aa8bfde91c559c56ce6 | d06d11db5dda38a8a047e128935cb722a65f087b | 333a4bfaf3287cd092a9b23f9f73dc6286d7a3703a0619fa5feee5ab35000d76 | WinPython-64bit-3.4.4.7Zero.exe | 25 264 458 Bytes +a2a6e0c3403a498a8fec340da78fecf3 | 38e3e278cb9aed00f8b819d6cd84c145ca99c020 | 7be3ec31b85800fe0473c37f500671e5558d74a6aa934717668dba84454db4a4 | WinPython-64bit-3.5.3.1Zero.exe | 23 695 977 Bytes +e9508c81d8828eecf83e4c9b3b6f5850 | 6f2c1b992282da944766c569876b4d61aa70011b | a062bf73fbaa70cb214a7550bb494338609dd6fca304d54cfa540d2ba37b638e | WinPython-32bit-3.5.3.1Zero.exe | 22 934 767 Bytes +48aad4de28d99f2050f813c4273de4df | 31d5101ee6d2ab2852e91f5ba6600fc81f954812 | 91e657c6e6c86dae68e2503aada8fe9b88f096e62600c0b7dfa25ffdce21a440 | WinPython-64bit-3.6.1.0Zero.exe | 24 079 365 Bytes +a7db287af744b8ad51254e66442b7d73 | baa07deed178b4c13100567093734cf5677a9034 | fdfb5eccbb5eaed4ca6c0d1604529fa7e84ab5d058eed172214e2d8f17fd87d7 | WinPython-32bit-3.6.1.0Zero.exe | 23 210 061 Bytes +c668fb1911339ebca21c9908233c72ba | 7a59b850a9482b26fa5794266d4ac7ad61249471 | 9d33f82b7bbd0521e9539f92a063aa05d052b2a6b735faa5e7b97ad711f7e3a6 | WinPython-64bit-3.5.3.1Qt5.exe | 327 166 275 Bytes +041ce6e764c5d9dcd1a708b29a216ded | dda67a0a9b63a9bf5cdb2a22ba211c0607d480a9 | 77960e28fcad39566b88c0af09d38a24ae45e83cb03458172e35d8b55279fc79 | WinPython-32bit-3.5.3.1Qt5.exe | 271 189 824 Bytes +3c95f1285fadad47dc47adbd4f6909cb | ed64f9f0bc1740093c6d8b64be7d110434f78f34 | aed26cb79160047220db276fb39c8cab9bb4c4c4345b4f806958ac91d3ea2821 | WinPython-64bit-3.6.1.0Qt5.exe | 326 413 150 Bytes +945b8896c565d2b208c2022577ea41d8 | a2b2a11a7e34d6643a9538dd8251fb107563beef | b91164cb0883172bdb3bbe15ee58f1be476005750a00adcf1be59e3b9895205e | WinPython-32bit-3.6.1.0Qt5.exe | 271 508 574 Bytes + + ### WinPython 2016-06 release (January 28th, 2017) MD5 | SHA-1 | SHA-256 | Binary | Size From 9ffbdca38710873799d7c9a621349e338d48a6f5 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 1 Apr 2017 11:33:00 +0200 Subject: [PATCH 21/89] alternative download for 2017-01 --- index.html | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/index.html b/index.html index 5894639..8106165 100644 --- a/index.html +++ b/index.html @@ -26,11 +26,21 @@

    Recent Releases

    +

    Release 2017-01 of April 1rst, 2017

    + +

    Highlights: IPython 5.1, Spyder-3.1.4dev, scipy-0.19.0, PyQt5-5.8.1, xlwings-0.10.4, WinPython-3.6.1 (Zero Version)

    + +

    Release 2016-06 of January 28th, 2017

    Highlights: Spyder-3.1.2, Matplotlib-2.0, WinPython-3.6 (Zero Version)

    @@ -45,15 +55,6 @@

    Recent Releases

  • Preview of WinPython 3.6.0.0 (***) Changelog, Packages and Downloads
  • -

    Release 2016-04 of August 28th, 2016

    - -

    Highlights: IPython 5.1, Spyder 3.0.0beta 5, PyQt5.7 (for Python3.5) (Zero Version)

    - -
    WinPython Small Logos
    From d51309da51b9c468ad0d7d0fabac2ae5bd7a5347 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 20 Aug 2017 13:15:25 +0200 Subject: [PATCH 22/89] publish --- index.html | 24 ++++++++++++------------ md5_sha1.txt | 14 ++++++++++++++ 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/index.html b/index.html index 8106165..5fc303a 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,16 @@

    Recent Releases

    +

    Release 2017-02 of August 19th, 2017

    + +

    Highlights: Spyder-3.2.1dev, numpy-1.13.1, pandas-0.20.3, cvxpy, pygame (Zero Version)

    + +

    Release 2017-01 of April 1rst, 2017

    Highlights: IPython 5.1, Spyder-3.1.4dev, scipy-0.19.0, PyQt5-5.8.1, xlwings-0.10.4, WinPython-3.6.1 (Zero Version)

    @@ -45,16 +55,6 @@

    Recent Releases

  • WinPython 3.6.0.1Qt5 (*) Changelog, Packages and Downloads
  • -

    Release 2016-05 of November 11th, 2016

    - -

    Highlights: Spyder 3.1.dev0, scipy-0.18.1, Pandas-0.19.1, scikit-learn-0.18.0 (Zero Version)

    - -
    WinPython Small Logos
    @@ -77,7 +77,7 @@

    Overview

  • Flexible:
    • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
    • -
    • These installations can be of different versions of Python (3.5/3.4/2.7/3.6/...) and different architectures (32bit/64bit)
    • +
    • These installations can be of different versions of Python (3.5/3.6/...) and different architectures (32bit/64bit)
  • Customizable:
      @@ -110,7 +110,7 @@

      Portable or not, the choice is yours!

      WinPython Small Logos
      - +
      WinPython Small Logos
      diff --git a/md5_sha1.txt b/md5_sha1.txt index 0898ad2..8a1510d 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,18 @@ +### WinPython 2017-02 release (August 19st, 2017) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +57f519f3a59d6f9a522d7895f6d93b73 | 63ee0e28c55d6dfa2f8b23d243d9dad316ec7d31 | a2686620242d28a63e5a8b19bc2bb8e23580a74342b41b9f9513892995ffa39d | WinPython-64bit-3.5.4.0Zero.exe | 24 639 906 Bytes +301209b81c1833e7fe22400e6e8ce23d | af1e6aa6a8815d927fa23d7b9585cf97dfba2264 | f366804990941728668aef6fb3ab447ee9fcf2f32adbcdac726fdf04a2672cbd | WinPython-32bit-3.5.4.0Zero.exe | 23 868 864 Bytes +53d9554d72c057e30cc3b4aecddd6dd2 | 7d46c27cd856d76b97d6bf0378278571cd78f76d | 784512b39bf9372f97c915ef963517730940f4987731d103863e1a662cc0286e | WinPython-64bit-3.6.2.0Zero.exe | 25 312 688 Bytes +bd17685f070f481a40dbb0a710ca5ae7 | a8a95caef67cb4862250000e084c75b252e54165 | 24b4c93d34e61bda891a3ff0c078a5541546e20d7959d4c8a195e6aa05a44c79 | WinPython-32bit-3.6.2.0Zero.exe | 24 567 330 Bytes +a84c043dc03494508cc94d24fc4e3307 | 1dde84ae43165e399fb89e6aba58055dbaf00ec2 | 9d0a4ff0d3e954e00f56d678bfdebc68f69f670af9a63ba45766ddbd56d64fbf | WinPython-32bit-3.5.4.0Qt5.exe | 319 995 571 Bytes +601da21869bf4b96d7335df6af606952 | bf7ea12ca43d1aaf433dbefc9d081239ffbec781 | 36fe03bb74e16d84af0632bb12dffd54dfb7963bd9431f81d09b828caa0f64aa | WinPython-64bit-3.5.4.0Qt5.exe | 384 171 045 Bytes +1576024f6d6e6b811f990ce15da1ec0f | d9f3f77d3849ec3b2d94be715c4116622f1b275c | 2800417b569785b5566d2be08f1b39a0d6458a42544e0ba1f2090b57a2338bd6 | WinPython-32bit-3.6.2.0Qt5.exe | 321 304 310 Bytes +b28b03d28c0ef6b543de40903190cce9 | 93b7819995cfc57038c6b9826a047bebd6d0a3d5 | e916f435a14bee4d8763e42c5d2aa1aecc78ac7c731307e15229f7c1abd260a3 | WinPython-64bit-3.6.2.0Qt5.exe | 379 864 857 Bytes + + ### WinPython 2017-01 release (April 1st, 2017) MD5 | SHA-1 | SHA-256 | Binary | Size From d93a90e8d76475c07b05f2e66da87afd2054519a Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 9 Nov 2017 21:26:02 +0100 Subject: [PATCH 23/89] WinPython 2017-03 --- index.html | 22 +++++++++++----------- md5_sha1.txt | 13 +++++++++++++ 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/index.html b/index.html index 5fc303a..8ff16a9 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,15 @@

      Recent Releases

      +

      Release 2017-03 of Nomember 7th, 2017

      + +

      Highlights: pandas-0.21.0, scipy-1.0, scikit_learn-0.19.1, statstmodels-20171031, matplotlib-2.1.0, spyder-3.2.4 (Zero Version)

      +

      Release 2017-02 of August 19th, 2017

      Highlights: Spyder-3.2.1dev, numpy-1.13.1, pandas-0.20.3, cvxpy, pygame (Zero Version)

      @@ -33,7 +42,7 @@

      Recent Releases

    • WinPython 3.5.4.0Qt5-64bit (*) Changelog, Packages and Downloads
    • WinPython 3.5.4.0Qt5-32bit (*) Changelog, Packages and Downloads
    • WinPython 3.6.2.0Qt5-64bit (*) Changelog, Packages and Downloads
    • -
    • WinPython 3.6.2.0Qt5-32bit (*) Changelog, Packages and Downloads
    • +
    • WinPython 3.6.2.0Qt5-32bit (*) Changelog, Packages and Downloads

    Release 2017-01 of April 1rst, 2017

    @@ -46,15 +55,6 @@

    Recent Releases

  • WinPython 3.6.1.0Qt5-32bit (*) Changelog, Packages and Downloads
  • -

    Release 2016-06 of January 28th, 2017

    - -

    Highlights: Spyder-3.1.2, Matplotlib-2.0, WinPython-3.6 (Zero Version)

    - -
    WinPython Small Logos
    @@ -110,7 +110,7 @@

    Portable or not, the choice is yours!

    WinPython Small Logos
    - +
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index 8a1510d..377a21b 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,16 @@ +### WinPython 2017-03 release (Nomelber 7th, 2017) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +886eb3266fcdea10d2218ffca3af5597 | 20cc45fdcbe76578035216ab9d2ba653ec7cc316 | 0ca0513559e2367802a32b1f5e7197f4e3c16fa0a0751b82f6536fcf4b559ed4 | WinPython-64bit-3.6.3.0Zero.exe | 25 487 989 Bytes +aa00cd2bf158844ef3b40fd82fd8129a | 2e8de508e937894060520cb2f1c928aa888aacf0 | 9f1fdac301a7498bf3ab29b48347fc438d204a00cb1b72f80cbfc804b42c9f3f | WinPython-32bit-3.6.3.0Zero.exe | 24 729 105 Bytes +8f479e76618466d2360fa7f2fb2ceca0 | 779467c0a1cfdcc184d1a650943605f55f297084 | a6aa991b5bf5c05f196e199f172a0ad293dccb831108bd6224e294d1176035f6 | WinPython-64bit-3.5.4.1Zero.exe | 24 740 850 Bytes +6d4f0c3873695568633a71b8f12b0ba2 | 55d0e526134860853a0bf28b8af5037d124d99dc | eb42bf161865158a9b7e340ed41d1c52de0b3a8cc2d2ba17ac6e8fba0af4f8fe | WinPython-32bit-3.5.4.1Zero.exe | 23 967 541 Bytes +5f3525c6a2623e72a3a117374b493c37 | 5f9627ae49cd6e547bd7fcfe929373ac1c48941f | 56259865127c3f802f1eca29528f2676317cad2fd6573ce516fc35b4441a1d3c | WinPython-32bit-3.6.3.0Qt5.exe | 333 420 078 Bytes +5dd0d1b50a851cb40d3afab68271ed83 | 595a7d75ed7d46bb0a35a13011ae4283438d9205 | a5efea23ede143fdacab60b8db95835de25c0173bd0d9fd53d5952648bde69b9 | WinPython-64bit-3.6.3.0Qt5.exe | 408 989 671 Bytes +201731794ab6289dcf8793cb6fea9193 | 15b05dd731cb7320434a738678cca53ec4117058 | e58b0c86fc4e6ae4fe3f9f467008fd4e3447b5f35b7ad689ab01cdc93733d19e | WinPython-32bit-3.5.4.1Qt5.exe | 332 268 796 Bytes +de5216300f2577ce1591eb8e022e166c | 8d90961cc867e0852e325edce27a59db599058af | e522c8adfbd9c967fa2f692d3c313fec1f0e53724b4651ea9e969228532a9586 | WinPython-64bit-3.5.4.1Qt5.exe | 413 530 256 Bytes + ### WinPython 2017-02 release (August 19st, 2017) From d353136c1a3119e62594c57fb788ec5599249fb8 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 8 Apr 2018 10:42:07 +0200 Subject: [PATCH 24/89] WinPython 2018-01 --- index.html | 33 +++++++++++++++++---------------- md5_sha1.txt | 19 ++++++++++++++++++- 2 files changed, 35 insertions(+), 17 deletions(-) diff --git a/index.html b/index.html index 8ff16a9..9510968 100644 --- a/index.html +++ b/index.html @@ -26,7 +26,17 @@

    Recent Releases

    -

    Release 2017-03 of Nomember 7th, 2017

    +

    Release 2018-01 of April 7th, 2018

    + +

    Highlights (**): pandas-0.22.0, jupyterlab-0.31.12 (beta 1) + nodejs-8.9.4, matplotlib-2.2.2, spyder-3.2.8 (Zero Version)

    + +

    Release 2017-03 of November 7th, 2017

    Highlights: pandas-0.21.0, scipy-1.0, scikit_learn-0.19.1, statstmodels-20171031, matplotlib-2.1.0, spyder-3.2.4 (Zero Version)

    -

    Release 2017-01 of April 1rst, 2017

    - -

    Highlights: IPython 5.1, Spyder-3.1.4dev, scipy-0.19.0, PyQt5-5.8.1, xlwings-0.10.4, WinPython-3.6.1 (Zero Version)

    - -
    WinPython Small Logos
    @@ -71,13 +71,13 @@

    Overview

  • Portable:
      -
    • Runs out of the box(*) on any Windows with 2GB Ram (Jupyter Notebook may require a recent browser)
    • -
    • The WinPython folder can be moved to any location (local, network, USB drive) with most of the application settings
    • +
    • Runs out of the box(*) on any Windows 8+ with 2GB Ram (Jupyter Notebook will require a recent browser)
    • +
    • The WinPython folder can be moved to any location (**) (local, network, USB drive) with most of the application settings
  • Flexible:
    • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
    • -
    • These installations can be of different versions of Python (3.5/3.6/...) and different architectures (32bit/64bit)
    • +
    • These installations can be of different versions of Python (3.5/3.6/3.7/...) and different architectures (32bit/64bit)
  • Customizable:
      @@ -106,11 +106,12 @@

      Portable or not, the choice is yours!

    That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

    (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2015 +

    (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 +

    (**) For best Winpython 2018-01 experience, it is recommanded to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython

    WinPython Small Logos
    - +
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index 377a21b..fd44dd2 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,21 @@ -### WinPython 2017-03 release (Nomelber 7th, 2017) +### WinPython 2018-01 release (April 7th, 2017) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +ae8d61916581f757c411346c755ba09f | 7200abf5f11cb4ef76888b3e663a8b52d20600d0 | 83cb7ccf519a7fffc0cf6b00f0cb2d45f8d4cbf55b6e9b463fcd2534fa6f450a | WinPython32-3.6.5.0Qt5.exe | 317 473 349 Bytes +929d6f61cd592d5f0740ea67277fd419 | b448b35890417fa6545b74b8cd283d0588ddf8f6 | cdf56107a0b106e8a34c3f5680521677c7798d5459135d3272053a0e8bd3e94b | WinPython64-3.6.5.0Qt5.exe | 404 091 675 Bytes +0a66b6218fee830f22b09038191c5f9f | 4cb2e0144a182343a129519b837daa6de0b728dc | 6b8b79ebbfb157bb9e2122e32568219669cffa0204849ed79eefe1e9bcaec0b2 | WinPython64-3.6.5.0Zero.exe | 25 804 714 Bytes +4c08bd23d397dbc4f69051138fa5c5f9 | b0326e3af9e7f56c948bb24dcba2ba8069abb51e | 35ecb4693bae593dd9faf80c53305591f0288195dd7f06730b30dd8b3db3774b | WinPython32-3.6.5.0Zero.exe | 25 048 565 Bytes +f116be1f949cf22cd60895ed54733c48 | c76394a458ca1cb620386e1ae40d549909c4175f | 207d38b1647f051346985c4bbbca9b7748608dadfde62c3601aa0a1b4cd30bb9 | WinPython32-3.5.4.2Qt5.exe | 323 997 902 Bytes +963db3e19fceeee05b4ccd355cb4fb44 | 788bd1df4f634bced5ce73d095eb01aea7489ba2 | bc34af4d3369fbc77d0baa44dd014ec4d10135a779f4459f2f54cda34b77229d | WinPython64-3.5.4.2Qt5.exe | 403 759 196 Bytes +563296cdb5594c5a52d599b4c55b4c58 | ac99b0f24bfa14f6d99360f50d19f4306c90c15e | 09abd8965566a4271161590da905068a7731535e98465038a005061e4b247856 | WinPython64-3.5.4.2Zero.exe | 25 158 692 Bytes +871756ac8f9a8014c231c7e8a8301137 | 6ecd7b2dbce14e844a325ee7e8ad2f3de1489124 | b5d90c5252a624117ccec8678862d6144710219737f06cd01deb1df963f639fd | WinPython32-3.5.4.2Zero.exe | 24 391 846 Bytes +e9e74772c3f8899d489871da0a003b80 | e84bfcbb8e3edd6f56061cbd4e5a8ded5cf23f5e | 9e0e4051e1ae1b8c331bbfeb8b12b4284c78d641df067636f3a872bd0c7ce7e9 | WinPython64-3.7.0.0Zerob4.exe | 26 362 351 Bytes +0eeb34c10164a1895e053de84b5497fc | 3f2dd7893a9f115f22bf0fd127c72c97d3abdc91 | 785b363fc28330fbd6a7be9a670651fbcf15a8ac0f2e6f12bff89164aa21d11d | WinPython32-3.7.0.0Zerob4.exe | 25 612 597 Bytes +a6bd15f484a9bf23dd65248240e4720d | 439185181ed709f9998f21fbd9f0f5f63e654755 | 0526a2d2f9a7e7bc31edf019830c705f145ea1f7f68b60c2918f224088bcb6fd | WinPython64-3.7.0.0b4.exe | 398 621 722 Bytes + + +### WinPython 2017-03 release (November 7th, 2017) MD5 | SHA-1 | SHA-256 | Binary | Size ---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- From 3dc012e0b575779ca0bbf352898b5608aa3d66b5 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 8 Apr 2018 10:52:50 +0200 Subject: [PATCH 25/89] missed the zero upgrade --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 9510968..28f297c 100644 --- a/index.html +++ b/index.html @@ -28,7 +28,7 @@

    Recent Releases

    Release 2018-01 of April 7th, 2018

    -

    Highlights (**): pandas-0.22.0, jupyterlab-0.31.12 (beta 1) + nodejs-8.9.4, matplotlib-2.2.2, spyder-3.2.8 (Zero Version)

    +

    Highlights (**): pandas-0.22.0, jupyterlab-0.31.12 (beta 1) + nodejs-8.9.4, matplotlib-2.2.2, spyder-3.2.8 (Zero Version)

    -

    Release 2017-02 of August 19th, 2017

    - -

    Highlights: Spyder-3.2.1dev, numpy-1.13.1, pandas-0.20.3, cvxpy, pygame (Zero Version)

    -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index fd44dd2..7bdcc28 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,18 @@ -### WinPython 2018-01 release (April 7th, 2017) +### WinPython 2018-02 release (July 21st, 2018) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +80703f394294aba5884a4b947d7ed812 | c9b452409ba5808b2f10b3ef94d9afafd57c726c | 3505eda2a3074c50fdb6afab002950de7e17aad5e7d8c5e8b707d4e42285971a | WinPython64-3.6.6.1Zerorc.exe | 26 221 961 Bytes +c7efe85fd3e45b0aa585c8fdc7500d1f | 9e1d9bd4cfffd81e119792855c188a5ad41f199d | f395723d0caaf91c0d18ddda19c90fafbe36277a53447366512567ea55ee4076 | WinPython32-3.6.6.1Zerorc.exe | 25 443 160 Bytes +4d3e138fd575bd5c47d45aec082f79bf | 5af2319d9d49142150d6a0418c01de7c75a995b9 | b8d3c236148e992ff1da78519b39c01c04de6c5bc7130de0c54ad8680ef6480e | WinPython32-3.6.6.1Qt5rc.exe | 340 056 628 Bytes +141524228c172dc6c6e3c2b33b8a6460 | e75d8342d3a226206316c0d38dfae793020e50e1 | 8d0dbde2563c081ae441eba56504e83686c462ba8f36951fe38aed7a2df2ce1b | WinPython64-3.6.6.1Qt5rc.exe | 434 905 324 Bytes +0b627e2a487d65588807f36be671799a | 632ce39bcf5b8c3bde46839cbfd3e3d354f11563 | d41732eb916e181c9e4b3d290a606668dbe27d75d96cc51350f5f4c69874290f | WinPython64-3.7.0.1Zerorc.exe | 26 897 832 Bytes +23eaaa72a21871e11897b93d1900b2fe | d5f7afa2f077af44bfc06c35b300956556d01293 | d0bb43ccb38b9f267f7b8967d57561cfcb9836eae4547ec68488bcfc1d76134a | WinPython32-3.7.0.1Zerorc.exe | 26 138 246 Bytes +d5924b31af8186bf35ca0ce9a67ff997 | 43d4ba28650d2bdde1ffcac7205665102ffb5bc3 | 44fe3c121cf534280a977155f30418c2d312bab3b1267bf4d330e1eef34e8fc0 | WinPython32-3.7.0.1rc.exe | 337 926 065 Bytes +3af2787fd6cddf0512b31dba18115a81 | 4d59ff304cadb3f34d957e162f3cad8a601e86e0 | 0a020b141c83ce8530006f680271a46b55ce1043fa94e49e49b19b18d9dbc107 | WinPython64-3.7.0.1rc.exe | 430 540 280 Bytes + + +### WinPython 2018-01 release (April 7th, 2018) MD5 | SHA-1 | SHA-256 | Binary | Size ---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- From 5fee84440fb0550f1a5b6e216df0093de78846d4 Mon Sep 17 00:00:00 2001 From: "C.A.M. Gerlach" Date: Sun, 29 Jul 2018 19:47:42 -0500 Subject: [PATCH 27/89] Update Spyder link to point to new website --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 3e615f8..1cea1ad 100644 --- a/index.html +++ b/index.html @@ -65,7 +65,7 @@

    Overview

    • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
        -
      • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, or IDLE
      • +
      • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, or IDLE
      • out-of-the-box working Compiler (Mingw64) for Python 3.4, fully integrated Cython and Numba! See included example
      • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
    • From dcaff421bb407cd78ace42295168315a0bef68d6 Mon Sep 17 00:00:00 2001 From: "C.A.M. Gerlach" Date: Sun, 29 Jul 2018 19:52:56 -0500 Subject: [PATCH 28/89] Update links to use HTTPS --- index.html | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 1cea1ad..b7c74df 100644 --- a/index.html +++ b/index.html @@ -1,7 +1,7 @@ - + "https://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> + @@ -63,10 +63,10 @@

      Overview

      WinPython Launcher Icons

      It is a full-featured (see our Wiki) Python-based scientific environment:

        -
      • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.): +
      • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
          -
        • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, or IDLE
        • -
        • out-of-the-box working Compiler (Mingw64) for Python 3.4, fully integrated Cython and Numba! See included example
        • +
        • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, or IDLE
        • +
        • out-of-the-box working Compiler (Mingw64) for Python 3.4, fully integrated Cython and Numba! See included example
        • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
      • Portable: From f028b64372036e1754e8add5663e4c7e1464980a Mon Sep 17 00:00:00 2001 From: "C.A.M. Gerlach" Date: Sun, 29 Jul 2018 19:53:13 -0500 Subject: [PATCH 29/89] Clean up blank spaces --- index.html | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/index.html b/index.html index b7c74df..a8ff1be 100644 --- a/index.html +++ b/index.html @@ -24,13 +24,13 @@

        Project Home is on Github, downloads page are on Sourceforge, Discussion group is on Google Groups, md5 and sha1 there

        - +

        Recent Releases

        Release 2018-02 of July 21st, 2018

        Highlights (**): Python-3.7.0, pandas-0.23.3, jupyterlab-0.32.1 (beta 2) + nodejs-8.11.2, scipy-1.1.0, spyder-3.3.0 (Zero Version)

          -
        • WinPython 3.6.6.1Qt5-64bit (*) Changelog, Packages and Downloads
        • or Github Downloads +
        • WinPython 3.6.6.1Qt5-64bit (*) Changelog, Packages and Downloads
        • or Github Downloads
        • WinPython 3.6.6.1Qt5-32bit (*) Changelog, Packages and Downloads
        • WinPython 3.7.0.1-64bit (*) Changelog, Packages and Downloads
        • WinPython 3.7.0.1-32bit (*) Changelog, Packages and Downloads
        • @@ -39,7 +39,7 @@

          Recent Releases

          Highlights (**): pandas-0.22.0, jupyterlab-0.31.12 (beta 1) + nodejs-8.9.4, matplotlib-2.2.2, spyder-3.2.8 (Zero Version)

          -
        • Flexible: +
        • Flexible:
          • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
          • These installations can be of different versions of Python (3.5/3.6/3.7/...) and different architectures (32bit/64bit)
          • @@ -93,7 +93,7 @@

            Overview

          • do your own version: a winpython-creator kit is made available for you
          WinPython Small Logos
          - +

          Portable or not, the choice is yours!

          WinPython is a portable application, so the user should not expect any integration into Windows explorer during installation. However, the WinPython Control Panel allows to "register" your distribution to Windows (see screenshot below).

          WinPython Register

          @@ -107,7 +107,7 @@

          Portable or not, the choice is yours!

          That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways!

          (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 -

          (**) For best Winpython 2018-01 experience, it is recommanded to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython +

          (**) For best Winpython 2018-01 experience, it is recommanded to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython

          WinPython Small Logos
          From ff810d62885eac2c4a714cf856dfa8fe9a96c0bd Mon Sep 17 00:00:00 2001 From: novel-yet-trivial Date: Tue, 31 Jul 2018 16:09:35 -0700 Subject: [PATCH 30/89] Fix small typo. --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 3e615f8..386873d 100644 --- a/index.html +++ b/index.html @@ -107,7 +107,7 @@

          Portable or not, the choice is yours!

          That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways!

          (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 -

          (**) For best Winpython 2018-01 experience, it is recommanded to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython +

          (**) For best Winpython 2018-01 experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython

          WinPython Small Logos
          From 00f896a278729a797ff947382483f45761379964 Mon Sep 17 00:00:00 2001 From: "C.A.M. Gerlach" Date: Fri, 3 Aug 2018 02:17:39 -0500 Subject: [PATCH 31/89] Revert erronious change to XML namespace declaration --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index a8ff1be..e98cfcf 100644 --- a/index.html +++ b/index.html @@ -1,7 +1,7 @@ - + From cd3c2c8765cebcf9c48ed9f88045e329ac80261a Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 1 Sep 2018 17:59:34 +0200 Subject: [PATCH 32/89] simpler link to vc_redist --- index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 63148e0..11d0443 100644 --- a/index.html +++ b/index.html @@ -106,9 +106,9 @@

          Portable or not, the choice is yours!

        That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

        (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 +

        (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit) -

        (**) For best Winpython 2018-01 experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython +

        (**) For best Winpython 2018-01 and later experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython

        WinPython Small Logos
        From b447ba9b96c01a00c6fe93bbe6f2a6bc051a6446 Mon Sep 17 00:00:00 2001 From: stonebig Date: Wed, 5 Sep 2018 20:27:49 +0200 Subject: [PATCH 33/89] WinPython 2018-03 final --- images/winpython_launchers.png | Bin 29989 -> 28891 bytes index.html | 21 ++++++++++----------- md5_sha1.txt | 14 ++++++++++++++ 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/images/winpython_launchers.png b/images/winpython_launchers.png index d2a3684b2576ae4a2722ba37e28db714521a7e28..aa3de3ee9a7aae303bc7cad0c6ee8a16a557b5c4 100644 GIT binary patch literal 28891 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

        %;;p<&~bbR$7!~H~ry?<%9n4!V|s+Hw-rO zd;PHQ7$)@yhCiMp7%$udzRaZ?tdvN9Mf8X=Et>>kR%YzUXq@1Mi`YsTuHMiMUq^LM zTgD`9KLWN`ggSWl`tUtAFnj;Fg+NR@Sr_TwXZJ@1ehVF3Py+4 z;DF*~1o;%RJjN`0m3W;*tU;wY3PRJFDpT~B5J|Ne1QdL7ShMr>j;tZfmGy!m3?~8L zO+q8U>vDh=SUByTsHFPG4HG9n{TFP%401-cG7Jf5M&vegaXz&`*qy;5V%e98wq<>N zogB7Y+~o-qJnuq484h&Pa+*L**KBcX(x@}L!19+cGlCesK^1li&d4RFzGkpocQ}*K zIAP667B=`WS|bc?5-xXOd8;#QMh+VUoig(6XY z8ha~ll&4XLN^L;qf)O(wQx2__MisO~#{qBmzKCf1gwYG&TFT{BT=jl+#N@~|>yG2r zmZi|!DzodEQ-KD1tXy_X*{O(quN37cZ1nUMsb~r6@tI6kcal%kGZ3-=iS;YYZy0Jk~ibptD;c}+SCeQNA zZ6?z{4bh-q*Xb~)NM%&aU~slfkH!6SLGUjn+YdJ^rF=gcT0bHpw%1tBty8x2fn_3X zHBs1%`daT{+rE^gDI8}AQaYqw3m51ra(}gmUwQL+W6?>SC{jD9t-)Etq~iQ~(U_tD zi17%6s;x@V7>`b`!DQa;`RU%jOM|7<7ToGm7{j(5AOTB81XsU7F^RSqG@zKh`UhT8 zbqT{sP>g`$gx!KUqy25)JjW~krX#w)!lU6ny-$SjQMAY(f7TrbM3V-QZs3@dhVu)( z+FDfmuY4o}I{B~4zgHsVI@9a2*oJ74RZ1nl`5mc5*n9iM;F0RjCrc@}=;J#I0{o-i zXW#u0bzInqE)_V_e;oLxs<|GZqAmzll(IZ?n#3Mrrwj3BUK3ybvrm(U22>u6*NKD{ zSnx5$#S^BD?zCN5D{ZA7$Ah1vi0>YJ?&I-}`SKs$HfJ^n-C}tz^uYybK zp!2+qh2K96RU4mJJR4VXdxIm=lnlI};FCinX*k3O#^2SsU=A8H%3Y|Wn|xB@dv4ju z*KlNg5ppjY`>fNI28wZBlBLwkX0f}-YpM+hae{NucrUs7!zTwF z>cuL=0Bf1c!Bi1TWlS9+<2PB7`*o6;B`%Uq*CctfW|$_hlOdp9Wo(df{wk&D@QVlv z?B7{a{Tr|FUdGhtiO67O1?(ofYEhsdJMAv&?mZ+#Ic>s#>fV`jW;T!Bk_~~=J?$ue z&QG5V#pxYB=|Trbqvx)RwSnTs3cO`k|9+L?ZZ(5+Kku+09ECG!jPH6%X;6lZW55w! zUQS4n$xs+;boW~rLa6S-fy*>QNpk~)knMr0M8pVL-?KPZ*Pz~Y2PMGhgVg$cY9Af% z0gRdsn&_GT+{DTTzdLCowGf$Y_8XEO3g35h$}xC@&0LION1u>~wCM8fN0s7woKQ(GyI8URq@RfBrJ5PSqG&u)tXv)kzR z3yOaJ3D|8qYsD4=ss8asGjx7h-?5|*ajv(7HCwh(C8{Esk+P13H6yV=(+Sn`=VB3P zdwpaWbg3eP1b8K~X)=Wo^JgXhbr`HB;D_X-y@PD~Zb61Mt3iqYKKD(kJX!P}PRKUm zpz~*JFrk8g@9!@4rRVr&lq+VaV6wpX^jR%gCS^NSjCIyAG68?Ln#>L2!@e!-d@0;UYDm znjT3wng?=L^tBNE3-^tuM^3Z6*jI7l#!{=u6K3smnuXRhcn1ZPK@WZDY9+#(+n<5H z(`Bu)EPnXqRD}~1wpGSMxH>v=iOf9@S9?yO+QwIRcXQNsxrSB7PzM>SUhX%2Rg8yS zqVCtrk6EZ81gBIH(r2!N?lhm1GOmXDVIA@Hw1pZWzbw#-Ne(q&b5dWdKa@`J6WOx>x~8euDei277?a~vjFTIr5+Hfa%SnZ zicNVRzlF zi7y#T^>A!K|GWFxce($L9;XQepd02&_p}&jC6X?rpb687DT_@5Abl;ul+RvG64{mo zlL3;_^M0Tfe!Vw@_~e@BL)-@KRg+yckTc*4_-&%OeYvxH5$Sz{O2kVj(u+DS^c%-;D&!nUEO9L=p93^ zQb#X4V;*)m!ta|mUo@4&=Uu2oBobd3C0P}fq54#DpJm7Asa1|Lc$XS&P$HS}Eq4*> zp>-q8rHf6i8Z-K}Af*^{eYbD@Hw`EbFu#T$T~lgambJ1=kJ|&qyh;saFSS1qCn*Td}vKwjbVs(HpIh9YqIz5dUr z>Ghr8kk>go-#hed(gnve43+*+UUQ9zOmo*?l3k_&8W-pKjl@7n`AnhL`{WD0sMi}=F2FIo}P(pBJpGLX`w>fnHA zgD^@c&e@=qCZK^d!8Zo&j@5IG1ZCwrk-y7od;5v-ep?UR3%3q99kq17;gsFI*jcg; z2XEYXfxuDM6PW}zRkR7dZ`^rRzdFqek;&w^FHgmMAm`#16=NI;@fh~K6CCL^jGqS_ z#f$IwyI52NQnX*BRFu9_*}i>-KWHbP?&3n*rv^mtImrzWFt~_9bV~l?fcz)U$0o%` z>~~WMM)`!U?}P581iP$DSlM6hovxP-f-s|m%^J2oX&qmS4(aHc)r@^OA-2ibqR?{` z@bB@}5e4aGR*>CQ$%wa|d?G$XytyMCeCB;yLByr;=E&RAUy|0?w zyXw!#86pr?nJ+SyA>>@@N#3|fxY0Cs9Ci;Ys z9M{MoI@R1(48c|g2)H@E=5!hE?X?15&1U%%q5PST9>|l%lJ$f(JWhoeUzCfia2lu>0aQ*x$W@T3k=UVK?BCLWL$J$cB5IQ)b*(6?L`+(|zL z8ryXJyqs-3ZLEcDkyg%5vAQ{&LFmC)P)HM`AMDX-jMsf;)wj(-Xl+K%g{;P6(<+4M z^IZzhmg*E~zg_Ogoj?|8WY;EG1`*(6e4gQia_@K=5+k85R185vwK6n3@a30ErNZLA z4`ll{_yoe9^)_UcJ}dDwBLx@EWjpvto~G;xZgkFtgUGcz z*X-Ob>uTZS-~_4D%$^AkGbcuv6U7hNMOPBn_NWp*bA3sh*gt~DbS zK@%;^7w%PwhF`68H+%Aclr4WChhQN2<&i57fY^f|Rc%GIh1#^@D55CoB|L~zEBrdA z5`{0s`(XzU6952R{uu?(aprS4@hKxdn*UJCZKSs z(K0A2gfRlDaNHbcgp2c?5F-Ic1RTK^zawMX46Hr1E0G89{!oBo?%G(2X>E=L_UQs} z9-l^6ppuh&#OmWBwsW@K6@~jyKUC05I>rR+y1NkqIN2@l7}Nn(sym#$AWSTQ)w6Sg zpyIT@Ov$~iOLC4?V@eHbDRP@E@~`1VVF!kxZhIdn^tyaZwE!|+56EnLUol#r$Tz1Qe@i@RS@Wx7=DA4S_lX^4>S7>|kw5sSvyWPtzPf-LAo8H~sr5O}js%1)r z8W>hzpVqQmLYv75fmPr46#Ru$qKNsj7^J4)m)IRWFDud#2yZRy{Xl3~An9dZ&--#Z zsVU+izhGtj%*sn=1G-4=KE$0_B{a51w_8Raz<35%rGzjGNNGLk0<9-*o3m-d#^ZC& zTJF*SG>@Gi1;TJ(1CdQ!a$gY-eO4m0W!b8@xsHhy7=G7fe>rMM-1v&IV?x#&5yvxb z=FeeK))vrsRGKj==`y|Ij#E?XnsJD0tGen8S9ANAwXxxG{{n(pOhuFA*;Bf9M(v8# zjzJ9bU~&%=oCyPZL(0bQrX{9VaC|L@UX*N-S!9{(qYSE=A+CQvAj{iHb=a5Ev7fRd z*tGbItDtr6?OL;aW#zaNJdiOa0D$xWe;In^za-ksj->G5iBY-m0i7aYWz^=O6$QO5 zryegnh7&`U+qC)bEaWQY%+AlI@+PZ=v=FySfM|S(q|t6Jh%-LfB^xp0w}g7e>^FK} z1ZIqPs&!+IBkvw&K6qNbMx`qJP`xH#Jl^Sx&(!mq@$07hQBmY#grEH55fh~$bPY?T z6oA42ouqqY0DGOo+bUt9#>)fjQ1z$xCmoPyUgYcsXK|Rc02*INZzGN7#^$oCCP!gg zXYy@*C+i+iSfk;0iamTKSAoWP^+z8Jzn?8phznjA=(T53^;Jdki2r&|r%zm6rV6e( z=?})Ga$}BNrmu4~KwYZbm#kO9vCk;!6L{c$lds1)O!{p~E`|*q@>#)JIZA|FScPA+ zuIr}VIfqtXkMu%BoIls0vlG5qGiEZ3I7=AsQ_n4yj-MefxJ<;+S59?sNLc}B&m<=m3o;Nq{m1d4bC{*3ARIt znhT}qOl#|C2u9jJ1cXUG!9hHVL_U=?`B#S9W^N0T0aA7YJF&|)=b!<{d&xd1U+;(6 zWShMzD7D@#zDR4^B^`qAja& zTpzZziRv{;&I?go%}HvO)VfV+EVyoDimmB zGbuNeJCs=AHk9Ca^a({bQjhR@((AS0o2F+{8zVG1QpV_HNvnx#4#=EWa|^hsK}`Xf z2p+F7YuV4`YcFlqfE8UMqq3>Q~Q*;qF;X6kNwDdf!3}CAKZEW8kww z{A=Tb00%2T;3wQ@AQ01Ti`%pAByeq3=zOIfF4I)!=kG3IPO7kLB^?s zoT7ZXGng)L+zh7hcpCEozP7*9$xge}@1HtJ6ZTqM7dErvEy+*(>Osy;gTSWjFGH^o zQ1BkJ66!Iu*JV(bJu?a0F+#PN_N}^3%P;n46nB5i&SahVfW9gFbQ{8@6m9vI8MB~oGxanH%t07Xvt_-tZENL-7IeQ8TL7?ck8jstR4Zp zUc81qENl-~GMgq*XPu~Iv5EvpbHVDtO#_Ga;6Y4gj8!#!aK6;JW#6t6nK_Q*F-1RS zza*1K*n7NB?@x67J3=Y$*WYC-qw$@A&^lFo{8rBfu< z^iMw;2CM0t5Wmof#upqWE!E{`Gkzw*GZn8@W7R+Qq`&eYFv&3?ChI_Y-(A^voGQo} z^!vOfnY+F=Gvn`nn!2r9n74mHrXmW2LY(YB-303N;v}*8A?u`6<@TY%d+qhb9T>#M zFzd}|5wT>h1R&tkjALuEAF4f={dHP}FEV?O_w=>;h!|id90bM;ih)+Qnp{txpRc|h zi>weIk%Z~rHhLadZOlfOUumE&U$1?N>X^Lbi!4k7*1R$Xj4dUCJhNUux|ub%NuMwD zRs1nQ_(jmRzDGK9&d*n}WaetX+IUJI>=`LCgAFDXZejt&v<6Rw1NUI>%;aQpf+*RX zSxJRZ#n=7&>UU29E%9{LTkL6@)oeOPN<1!h!K1qjtTbWcYj0Lp^d`r;c~E3^xZB_t z3(ebR;(MTtCtQ|pQj?f2`cS}IxmO#mK5^dm|ZhJ|6#-zf7Sz#%DeGWpE1&`@?~ZlQQyany$miyN#xEyHr+jKWUd= zXt`A}Np$;YUFvLJ}lI6(pcta9uy3I@n-^4@p7; z$(}VrzWa7xEz17bo~|=+pTc}PGuYSFE9`K?_ILi;=UbAtU-v-xXyqtT=A=Gu82PcW ztT}{vXe{e0c544VAA6BSFsk+{D&vM&s``%`j921<&6tprP;>4(1S~le#EbYv2iPKvzEGCeTQ7uRuA?X3D0_vU&IU|Z**TC%=Vj4zKPeOty&26%EWf`jE8klX?*uz7mZ_3$zfU% zIes=2n^T8bzZB|bx{+2TZ0*RPW7n_U&L-kHe|__ouPfD$4JG$+j+wn1l z=6|YqC^8QVZ*6Y+QQ|cb0C-R|?d-~XcD@rDW=X$gHQ1wB6YR$c5k z+QIPaM*-><04B2tsXSHy!;mF~j9?Yi0j3@o$Zb z0o38v=p?%l=#V-O$G;}y&8MD+(wN9nhRxq^rlqssa(ECd^Gw2Pmr-iv^)Vo3JO~w1 z=4`!E8=np?om2CY5{E-V3kpEgW>3KdZ;rvb{FUHvvLRX5^=g0PS@*^!Uw1j6nZ-i1 zfD<%Be=m1eH(uJ_MJlRcyABaqzYtv?z*s-9TYu2E&Q+cw-(ljnY7BHHD$TypVyXV> zggTPgl(`TqXI8ln^wzdRL)}f2Y|&IG;CR8eP_PHxgentlM|%|rI`e#rTKwVARhKpV zGt!LHJh4`7397yCUOdkb2}a1YkCa2RN6^-ADl73NQg5l{kAjMGUP*zk;2rorCD&Ot zK#C6*^_yULCBs)G^A-jRs~gdm7GX2@b6kGDhb>h*#x$D!kHBF6&55J0bo{*V**g;- z%qm3?Z=CP5dxM$^nvZb@$J(MMIfNhv(A+_A6eXU`yfwGMOec5^bT4cD!Cn=$x%tJ` z-e=@kXbigSrpnK$yISJy<;(}Xt24MLrxRx8N$w;R>n~I5esh?qlqn7j5q>_GfGFmg zn^uRKMeSovplG|GVcMH~S^|i^n}k34f>}=k|I-qQ-Zu;e582}5Jn6B()lYEDqji&E zSFO%`g^S4Ya#@(u9?RGEzc(qY-#f58_5S`<_*1S5c&K?$iYKZj)Kj+#dsDOd5se%# z7ITO?(X1^3O>tQsWZ>1G>2m8s4v`muMu7rjopoQ9j%L8U(3RXqFXsfNrlxcZ&D04lNb!)lbs$BT%mk+TkD4X_D;9V(^-< zSHyhIUD)H@^p;M zq;Fyg_0o3iZkGv;?RldNX%#6~B?%G#QwLr~Ka+imjweL;6t${dmKeQLm8O^Vl>YcC zMAVD}&iABmndg~ho+w}a?pcZp-hZIxDfk78u#mu{4Jt#^k}|B@8%vKS5pWI>)V<_3 zy6B7El9w;cyiIH)*Y81IacG>4zlpJ4Y5Y=`hV^rB=+^^>l~8&}#H35gmj`jlDB?ow znEelU7LJi*BBZ*yx{cQT((g&xjY5+A?#lh)vS>ex9($Y-03_%JEUuRufXRoOJ>gDI zSrpw4UbTk;xZp|{s3i&&+Wn_I1!KWdZf;zV!|t64`(-P#);6v6g?)5Uat(tEI&}hv z5(GmWci8~xK3K*HY2e&1%muXrBu>umnG>%>_+D%&F-#>F|=Aflr;DfH>#KSOL zwZH`oQ}p}HfmayL`IBh=louth8*5c9PdMYf`;2K$ML_y`5HMQ@Vzy2F%s&lJEyZtm zKdW89+9f6!Y^LF8vh+9#oxjeGzcj)md+ z`Hy3|f#eUGUn0pb_sOJh2ZN2qJf($F(J4H_w&MR^ZEqD6*SCEOCqzil;O_1;?(Xh{ zV8I=N2WbeJ#@*c|I0TnKkl@z11q)6GXx#4Rch0$Ao&SCK>OR~m`e9e~-mKMg?zP66 zbIdWPDS8K%R5pJAM_0+1eHNxj)kR!sc>Q~Tu@xHncBnc>GrVqb`mWeDb3_ZpuokHKzP`OV4JU&&V0?V#YLJ< z1BH-FZjLjUa1L4%KNoie@;H2NsG+xTcX#LJPi9<;pa=l=Xk#!${zjomtp3+9i2Ub}FMs(AP>}`**4T;RXgxZ*{z`6e zv6ViR-MT&E@DV#mjJTGX9|20 zl~;MAVPagOm=IdT7;F5b>}>Eh4E9F!Lm8EK&d!&T{Y`oz?bhR z%avXFAcnjX&e!TE2KfweoC)ShH450*4Pp+y57#@CvDO0l>D+etCO<<>D{x*VR5T3A z@cQZL6_5joh3~~VUw(}+VNR-9t~#WXK%VWR1$!p5en86AnUZEP{QVpVUZm+}Ktegr zG$;u#H5Q-U;P72WU`tIs@*w?F)0oO(g)s!ZB{9bPmZ<>?^pBKNxO%W3FN#G>N1?bRN3OMsVAj*BH! z50=b3ug5kvye9O95A0d)f*bJnS=b<#evcRdsuB%$MHk{4%>CJwF)sCfVsQ`d=Y9^J z$ie}~ON6F3lNk8mQ(n*(5~H@AAFonC{rDz?QZRBd08==-3`k!9#zhF;AaLuZK$T z3Wwko22F9^DVguz0JS=wYG+&k;c`~fVxW!=GGnk9Heg_jO@-Xme0Kx!rXZBox^?r$ zIzF2UVY7M)h+&JRL_8l0DSS4Bp84>+nekO-)YHm{i7TU&YN_U1qg}tS&grCiVrufD zy|eUD(ON}fKw`i=p@TgU;4uTozu`duMUI=Vq29da5_W0`%O+IKK{RW0)t$U8fSD*) zy~C7QJfaVfVNx&~Yk593+|M`Sz84T6`z;sX6|+ybuw~P|qB?JB{3@3Uz(-pvk#>Po zRE7j20A^1{!HF{xZ;~L z(kFfqfe=W{Y}F+BP92Tt<%G&nMg~CtWi#3(oJB+<{!t(s)4K+rYVo~x3F--5WHo3e zZ_FdbOx)~IBPgoWtC!(z4<@`kec;UCf*BUTS2Fos;l0_chOPM6JWv_Qcxxg|&HdR* zyPC);0L&I(Rqm2Vt#i_m-keQL!D+U%UPZd=7GDlw2g0U}reH}UVJkx;uJW5ZxI*GUFGgHL$l z=$NG(5!(5`=&tR;N7~G>@uAxggb-{8B-%QF43Av!BY(R{Aqn$LU>d(742y1~S@%<` z6j$Jzz3mNo#J!#*R!gK@u|0%Kr_#6NLnDe|)qrxmmjRGH4QgYC81`eJ+l@Vj+_c-LvmlFvJGx5Z|kMR>aSXrB^9 z1PbcC%L`Ue&N2EZARjQvfyrCWcK4RMWTqG4D>p>dx2jV7XCLCNIOmib9;$m3IVBN| z1IecfVsB!`Xh*cZ!bipYvjF31ZwR%u4S`% zD}&d`4b_hS>zgp5(+OPH!>f}`Q$a!vGwTit&2d{v%ZPDJO?n`pB$Stz*P6%j2Y<9z za%nP_Q1Sqk;H~PZAHd*StEG>B1*mb@G%H(@LN%$W_X&f9CA@fbHOg3E;eZqhIF_hkNp7& zcIws_{U$I57FN*KR)fuXWgl=d*fh39mKX&~A#!WkAIdI$yk-`|tGREsPrFk( zlM7`!g2uD^mzhkoua-^A5SEmO`he90K%c2w)YK#8jNHd(n|*b-a$sNGwv83>+d}X( zXrgukwD9UsFan4pS&oYoq&v&lFo*9Fo%`*2)nK1;e?}jUwx68M?WVbUw|IPyv4V!n z*<3l*DxiiIxB595I}o}v6NQ%M<$l#A7j-^)+mCu9G-CL+xDu^oy3dwkT2|`>0+G;Nr`67k%jCtKcnR&w~q4)0>nu`fc zM~)~cGnO@bmzI`(dz;ZZ$;w>wAEJJTmCh;7RT-YYjEqz|W{{XZC;Z?vVr@z8)ddx+ z0qEg_2*8KyDN(o2fQfrX>=$G9n}j%E_>$D5sZEq|j6cvQV=R9j3a01z`J85lSi)vf zzxQoYa#nw-*<9_kAoixpicAoTqjmErNmQe;WI-0Gb^8+0=!L-mdx=l#XP##XDu||c zgJO~VxL?+zFG2I&WE~e*c~ib@iD~Q68(4c~{7-OZ>VA7VIWb6c4DKy4b z5zY+NV0L|MidUii2N3d`76Fm#Ei6OwNjDjQ-!1dqb|zT6+K7bP7CKS?q;_GyP?x`? z9)R#Fc&gD8whG@QCHtPlYQ+B(K}m$r(jEnVmjwWBcfQn^~mShd+i+D$xtD+y996Isn_?x$s)5v>LTdaO4v$cyvu?i(= zzm(oP3V+ckK}-9Xf)YLLxNP)mqRt^f)N;(B#jVwQn25ucFd=3)jk z)f^F);&EJdo<&gV0AO?&qU=lK9lq?1AM)+F>L)cr)~a-Ad78bzZ+MI`sW!h%HmQnnfBOBg?5+OA9Hz@EN0ma$9J8f`NMEOALiN z1z~BKmfSrARg~rJF!c=8@YT;;ZXhPhr6D!!yx)0QeFFm#M69nSzlv)A1W4t~2=ZvO z8l#Nb<(4dGtm{1VM=(*=j|GWB2m~ zjE_jDjtU@_#%9z+8OFpxm4AM+0|3_kJ$5azqIBHz0mj_ze#|SM1lVt!Sikp*%foVU zY*PG!;r)ydnT}r+r|I4h{BeqS^8$V;Xet%p1>>Qa%rUkRe!V_jkHLtlWVUwXAO@WJ z%(ieNo}pE;|iYy*|PCQnMq}-tmK^AJn`(~WWF?I*f;Mk^Z$L8W(JZ6v*N%raYWBGY7rCTwR2;HxgAMTM}Izs*@!?#pP{*)_=0bjRW+42WvBi{gpd zUN0@I$Rt}@ROkgCv4=)Qqg;^33wnAYN^5>e-#lUtjkYmYx=Js2Inr|uqZXC4*}pAo`8 z6fWfb8u_LyMfGod_%PL%LAkQ!gbo~2>^5s)6+zN*hwBa!T$q2L?@)b&69|{XTx}@_ zodx2-;~Ph3^hdaVBmwm-EyS55N3wXDkt&MlZc>2tgb3)vn3d5>$aIh?s61duBSNKf z;lApamyAQX^i$hn6riIj%j7ip^zo3SWjt|LufE_rsW$+hjN`-HK&{Zj;vH6nNO4XI z9sM6%OQYRDbrsY?4qFg|S%$y7t@S(zN+p@ClFSSOsdJGg4*%LU{L>qTm9HB}5g^Iq zC4;?x{?S^PU`AX5`7P@ZctXVHQ6a87IRwKMESrx$x+Ph!hmXl;UU2z_QMLXr{s&bV z_t*)Ew+2bKHF*Et%}qhewDr-wh33HnU1DONnXA4^{SJSm;xj~->Xt`jw_ejmS=b4G zE|@iGb?^$l`X{n;DQnVc#{#|ve)Zy_*>u9l6D4s7b$N#(4evGS-)?dfUYa%m2ooNPEgGVS)btkr zB_c7^c|-t|N-~e*s+*UKi~o$((-bMGl>tI{W!^+pH#ku#THP)?WqdB4!f0!TRF)}w zp3Q-)e+d9#oMKlpA*}ilYgY(G#UNso7O3H-ks%8s?d7b?sz!oyk z3u;aLHaD6hYK$_NCy?kqgzD{Oz;~qYxV&T#q!q#4S)gYDPxq%o97J=XXHBk znSn7eF`sAYVc;|xz+N6wygEqaY;0^8Qn1JBc)(ndKpGFb@u`?EvX-)-N~&mBS3F3k z<3t}8QYv!wP9X-~KbJL5=^vxH%d>_<6ula13}K|uf_o@art1T&1|)I?DOYV3DakZ1 zfI=gMN%*AC_Ou+cF^H4q=T#D*<=cFYpdkEnC#)mr+Z)(rW6Xdq)Zo+PH1Ap5a=|_c z$a_TL=pRxYXHmqk0qhqjkJHbtO2(Y&_e|ljlaXBaF-bV6Ui>?+Mp+A(r#C;!M+&YW zysdt5!c!aXhlWu^Zi)!3$L|@#CvLJ4hu1~3y85>q6sMzPTv3HXSzi_)}qS zUU->7tL)P1gsqm{!-m^o_PxhHJ8F-_JPSPbmvz1k?@;G7vYCFTkFQPoNndi)e6cGO zpKZ`rFKfJhPNgiNT{l;PT|Y9PMlJyuD^}evE*s54-Ew~%zr7M&WqB2Gyr#Yx+vN?@ zvg~g00{5KCtN8)=Mlt(ruC63oc7Jair_~t5h#VQ0d4i?H#y5po4*`%WSb=xesgr1> zu<$IhP}Fx8RNZCpIAC^&eQ2=G(^r|k^4OgaSJGxyg)wDx+^XP8A9e%4*f30|MLF4B z&FAYK0TB^XujBrAaZ|Q1oCOmt-lL#wUNDEURPTd19a%^^JgysHkXE-Gw2I z@AVo?y-Eie3gf}zMuf?R)XtrBWvBcVKPxB&of6YJz<-o|L;uSRsuava$$Cc9o|lk! ztW@YWJ|(cj+|wzjhP4OuDy4<~M{%b^+|V!{-kq_X2guIb9K~(1>>38Hib7F+y+OssXIta&i0tJvaUO57e1|i}eqY&* zH=}%1{>AI^wiNOgSsmdN91jndA@d*6WnlRM0RbB;i^U(+du^MQles5OrmraNGHAU&MQCNyhI|nC1k&q3~XKPZ6GKmY8Bus0jwGu)bARdC*_KzY>zzJYL_< z$b^}gGffD->PVm`f`vu~|Efr*AaD9u1uIo@JSE}Imt!t)yo4hEOpaPD8GPiqbR5Ws z%zVm-1cff-zY!l&8rGYeuxUh|C2oDbhWKZ^K}=kZ*Ii>`>sdVKvtizTAaW4Ss%#GD zWhrpi3T+)x!;`QeU(kG!2(}V&vxizFwyrNmu;@3Ah)83kZBe&7uLR&B6Ujxn9=$^= zt9AVAL?yGNL87Ib9SDf+#uw<0|IWw`anFCVU6z|oR-e^oT7SuviMkw;p~@DPP3ELA z{rJHmzKP+p+dZ{J6{$q&fXPc^SBcVLLTUl+{v|##2a4ORwaQbgFnW%jGSWYMo&(5uL#a+(uSTv;KBXM$$bv%X{YqrsEb;;Y16-XiVzrQ^pnP}&cwANsbjurJ1mi20ag6k#0GR?jK?<}kcxp6AV>QOw_ec_+6) zhDc7c@L=4NOuG6JNYrl(L?V;a4%(IPUay~D5eJ&VC{Ntm8)azgClp1vcNyMV>nJCr z>H?3q1azLFdyW>C2L*AY6Js@$Q04Y{q{PL`iOMXvjO0i;rDP6v*TpROKXGk&tW91| z0@Edj&Ww;oMki@)8qB?7-A2_gBc-I7M;^R1pl+l72mOGa1D6__hnebKlz_I2p5T78MGZxbl(vctW+5XZ%=Z zqRMt3X;A~iuQyTewfucye@rnTg%JvRwPJoa3CLR8hfJ4@fBcQ1QWww# z@+4sWO5EQ;uPW8?Ia2EwoJ2Jd^8#8^LdJtX{50P)TH?FhC)CKkq%Zgeon%qN z59-ZsY?!Qm7@sbXzn-m>{73ZpTHl1v^NeC_gG1V)6h|V zZV~_AX@l2^V>?T%`GSl5x4X_La(WoqP~X{cP23Dk=u^ve85%2xv_#s&lQfODzO`d} zbHlagY>-n=1M<#B-^uMYFp6ov z*_qh!-alHVYV%7`X=c_*%F4MFBK#rutoF`#4C(YoMacsSLbu}Cz6X88g{QT>FFu9Q*r;z3O zHPNN4PM#OToc{uavDKZS1@}TrPDSa`l)!4z8gt+5y?xAXPLtQ1fEm(K3!4R5nxL${ zus@L?>q*_WzqN3$vZ?j7o(HoD>ccj!t^S0_zflk9u5QBm7m`_>=p#OkrT3O}e&&yQ z=(l46^G>i2*m3VvcxsLQ{xhKZYHJ^dzeT#w9A0UPusb^nR4mY9?SknP5NaCg+Slww zUX%PEqbVI1tiGX$s42VE;ECIFZJ0T0s@=@T+e9(`P)UEnADt+|A)z@^Chv(VtxcAeE!*BSxx)h(bV=j^4r033;OqyG;w78)jlBw|dcrp9- zi|hI+^bftmU)>y`88STTVr@|gZWMMY2W9CSeF6>{4FcbnSd#X+8?qul$ZL!BXj<&O z&Y#m}*1xZUr-0TN9#nR)6z>@Gb_DNX6;8$s{ZriUp#zDbSMIuoU6Y$5HYisbp6_4J zcDMp2@4vGi(N$chUKw`lB{GP{DI5{TgNA+Ug!&~0Rbg~1e)PCez3F_U9Y=}o-wvP;mEjJk`wkAzN81oPGz&?p z{@k&2b*1gq8@N`RtqtyGMO-Xr-4F^mZC_iDbzgC(daU-)5s2`@nCU4 zJ1So_oVht7pEyt?BBObbIG}n^H#~mvCM)JtXtZUPd$%um&`to|MDw!9o^pD}+CIyr zr8RPcvoGC8w9~Z4V*?*x!jtm0(TdJTLvyx^ z+=}!u`e3wu_n|YMofeaF5s4GMtC{&T>H_b&=NCEWKs<#i<~GVTe2aeJkO|2a!+eO8 zu2JT-h+6DPh%@O_SLUi~or zZRfI>NocF*wv|sW{2KovDR@Jih22Yehr)ipGf~<6hB&HHlT|lG-M9Guz-aLeXOm)6 zba}qFgJ%;KXrl=7TmZ=TXd|O`V*e zGWQ#Nc){S!n?9=-extQA!rc$`q!(H4Th3h_0M}ilMEFf4*~fmwY{6eD#tg>TduBI3 zYEhN0#X_3j-{x0OA}6q)r#G>lNNH}c6D_z6tW!a?VG9VI+rd|v8m>Nm&$W}}kvY4(7J03tor6Yn z_LZgvre$5N+F>?D>~murnY2^P>SUjVRN%*T$$9T^=oPOnyzu;A%Tip^{RNs7hD)LS zevo?god1_XbF1Keh>Km*|4ZaGn zYUkk0`L*_@5G>>Mt_^X7<0&oO7-{)UktF;PV(#clgX>kb&DFx7kOOViUtDfg|F-KM zXiN6~U|8!OQznOwz&=I!KX2lK(*k)oyV8X?UikiEEvg${(H=6Z6+5ihJi+ff)BL#J z+gnEDn!Q^M+&Il0`il%&`z^n#2TS3@HqTeLAlH9Crg4iG=*V#!U?icvPh*Bg&>mZB zT>s|6HMzUf)SlQoPV+H6xo!P619&4=-yRN({M)bQQ`dmvoWp05X3O|zpbLq9ztIo# z<7r>Pee;arCjLFA8f+MWFsIp{ox?`+F=;{fR>FsZ2Q|uFwg2k(@vn{{O4-5xffoNX z966=_A8-N?%*W6?hj7($$;9`+7_=O1CO6w;CXfjex=^x%2{E7#*c{9FuqmcI2z=|h zJcLk1k1hxByvDIS=Yl6TN16qi;Ac>jtgY7(>iZlo#``-A^13m5v0Q3es&_@qPkGwx z)zUYCoP36*FgloPZv@%7s-3-|h!&&r99~E#fz|0%@*f)ES*zQ8Dz3cgu%TQRWJHO)Z`4N)RF4-IAj@bDjA$ODnmcRE*b7okuPkK?PeGZLRyqr5$igR2f5&Zdb zDx~!+*AWwJUNCwGE4sFBmBStpE@^HL8C$n*NEYNb3 zlSOUhpyICoB_-)dwETw(R>kw8q|I9$Rw>^d7Xy58HdYj&CG2s<4|IMlvwkX<6+GW6 zv_5!`4G&LmsOWzsxRkuVwML7_c~JK346RaB*4v!x4Dfbc>i`&W!O1FOEm^CB^qI^m@4Z~6JWdrlj#3R?fOlxy9P|jN z%CDfY>V}~Y#WCP>Hl=pP`!_cl%IK1N1T_bWtUaVTc-B8;2zwV8v46ZMSsuutAc zFQo6n#&3>ZoeeRn_vbXC6)&s%Tw4fvcsO6YSTtk5>PQg9>8w;Dp=d}_BY8bOGvC5+FqOwp z;2%YF{Q%!jO8GW~Pmz!har+{mS*=N2ku8~oXt7cMsj*JQrc&OSW;4O!5ak6Z_v?2M zWuxYb!APZIo5P1?#pL4+i$i4Xie1NF`>>Uf_nd@O-=-VMaJj-fW{o_obI*i(?ZHD5P`=ylUXfsFX)b^Jg|b==%_*Yk zzx(KzWeF2(%e|++tiH-t2E!Uue4_ZylcE#6-5}$Z?F0BH0h5=60UPyt=jBbjO3CNg z>QqdUHb@wGtNp!Jnq%WNq_m!~-PLPpkr+{n)y=u1Wy50p{j2H&p~RlWU7pkEqLLs} zdr^2v*bV1$6Z~&1sX+SIXJ$F2W|9)u9Yj$KsNR;P*Xz(Oa zc5uv-Z`%raX#Yra^5d{Ikv_I`-Dp?wto(Z|CxFdENmf$kI&^i%m0BL8=0~P8Yje?A zkBoH-y6zaBi*M*qL5Ulh;yL|pw%$SjuEwAj$z)9XL8?NWa-pzzSt@>>Wha_(<980T2;I~Nz#J~GRvLe|{|`nR5=_+DBL6b5&H&fmDnNi%@lw2dDMW{N#|=i*KwAKEs0 z69Lo&E@Jz_Jjh?UX@+{FikB|W3`C=WFKGPsyDI99_}Ri=!K~Jb;BJA+6;F@2Zof!B z7^Z2KY1$2^$yiI;nNh(*rb!1uW(sbE6h^J)c3<*yxb*NE=$}4X{E*MiYFt_bPa9?} z!WrRWVNg=iah%HU)TRf-!AhU`uuEC*_7qc34G>ljvIZ>5=zF3}@i%_9#Ln**DyD;)h>eg{6k zo4R!O2BAvF+k0`HJxPg2&LUbl|L8>y#oPVay&|@Wv$ka!P1x5#qSSD<(X|Wjr}^f; z15K%@teM!1Q6~=XIu(`XKa4z?0r-mq7p&1vz`|7zpr};R1qxh^i4KTml@v~j9V1Cg z;p0R7?fLet-caC&kbESLM0Zk4p1zUta1`)o@TII&w2NJA111Q1um5yfqxBSr-D#M~S`A(LYx{JI-3EFKTN4`WH-?mr@4FZ8*UIh^M_y}5 zEL}lUK{@my$X!ea2}*oSPd_`c=1EcbTfsKVdWsTAUXUg$C%MZmf7DPpNkwb!KTZhP zyVgvJ+gj_Ot}>u#B&5{HDkhZ=QJ9Qz$&B{S;s=b-<;e)3^Nw$`3k%#CfTLZ12_2!& z%Ju)T_0B?<^+eCr5-!j9Z9bXUwq^O;v>|E5GQ|7PlUQ3At4H-7n5E!bm7zw}^Pjjs;z}>@b)G~)Yo`$~71BikB%aZRS0z!#^K6WE*EtU=+uqVlM z{`2op%vb-zsqqrHEP_x~4o|BoJjZ~i_$kEa+9 WWa%eK0U8oMlb2SJs*?B^_`d*gF_cgM literal 29989 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 T$(yz*;mm*5ekN%v9~Nn}B!`2fsGY@Ts} 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 F{{SApwO9ZE diff --git a/index.html b/index.html index 11d0443..e52c0ba 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,15 @@

        Recent Releases

        +

        Release 2018-03 of September 4th, 2018

        + +

        Highlights (**): pandas-0.23.4, scikit-learn-0.19.2, spyder-3.3.1, jupyterlab-0.34.7 , rise-5.4.1, idlex-1.18 (Zero Version)

        +

        Release 2018-02 of July 21st, 2018

        Highlights (**): Python-3.7.0, pandas-0.23.3, jupyterlab-0.32.1 (beta 2) + nodejs-8.11.2, scipy-1.1.0, spyder-3.3.0 (Zero Version)

        @@ -45,16 +54,6 @@

        Recent Releases

      • WinPython 3.6.5.0Qt5-32bit (*) Changelog, Packages and Downloads
      • WinPython 3.7.0.0b4-64bit (alpha) Changelog, Packages and Downloads
      -

      Release 2017-03 of November 7th, 2017

      - -

      Highlights: pandas-0.21.0, scipy-1.0, scikit_learn-0.19.1, statstmodels-20171031, matplotlib-2.1.0, spyder-3.2.4 (Zero Version)

      - -
      WinPython Small Logos
      @@ -65,7 +64,7 @@

      Overview

      • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
          -
        • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, or IDLE
        • +
        • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, Pyzo, IDLEX or IDLE
        • out-of-the-box working Compiler (Mingw64) for Python 3.4, fully integrated Cython and Numba! See included example
        • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
      • diff --git a/md5_sha1.txt b/md5_sha1.txt index 7bdcc28..ad65a8d 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,17 @@ +### WinPython 2018-03 release (September 4th, 2018) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +679852dbe4bf6fb6f1cd3a7ef4c86b6e | 015c3d5c73df2d0aeebc6a42069ef9946b76115d | e7feac807631eb7322ea36d74bb772f95c96457c4558464ed530d5d715ec8ac7 | WinPython64-3.6.6.2Zero.exe | 26 630 364 Bytes +52da5df585f22a8914ae28e546f47b88 | 8c61e07b04e5eee28eaf8ed7144e715c7aa761f1 | 29c48621b7c0fd5c3513de40aaafb4795cdc1a47505aa5cc646a2b7f7c6f9b10 | WinPython32-3.6.6.2Zero.exe | 25 849 187 Bytes +aa669b7df34a54c2c42b0465e348df3b | c66713cca61decc1500ab60d9512d8ba1d4dd227 | 2b5d5aa7c0bf288d78dd2301aac452283c10d812ea740ab650758a977c48d696 | WinPython64-3.7.0.2Zero.exe | 27 381 406 Bytes +8912499b9aa9c64d92e2eab365be969d | 2fb481e9c38b8d1d044b95715c1148a8e830a9c0 | 3bc6873c7a8f8c089af2454604659a6cbc7f47ddddef0aceb3c20d63e957d855 | WinPython32-3.7.0.2Zero.exe | 26 624 401 Bytes +b3aedab0181ad08f632fb28df71b9a49 | a07cfe78abf719140c575e92d98b7ade752d3e84 | af9301f4748f7443732c6fc2ecab0e25e0109d5fda623d686e4371d015eb7be3 | WinPython32-3.6.6.2Qt5.exe | 347 624 370 Bytes +159fae86751818d33e3eed31a05816c3 | 9991caa408d0586da166ad25f08378236ab3ac13 | 0007085df58ad4e5749e6d3fc43ce49688ca15a77abea615d36770b2f7ec1ba3 | WinPython64-3.6.6.2Qt5.exe | 450 695 273 Bytes +f617411f8f984bd0196ec87c0f520418 | 50a469ce62f061d656c352cf8cf798089f7c093d | 4516e09e671d027d50f0c160ad9d2fe8528f610970d38a20093fbdcc731b0735 | WinPython32-3.7.0.2.exe | 345 558 531 Bytes +2387a9084bf49e1bdc90f5106c8d2a11 | 948bdfaf4e281e08916415f5013ea4451d84fde7 | 506376156017929982179381bf449841fb17041f0d95ea03ed4c8add871e8f45 | WinPython64-3.7.0.2.exe | 444 632 820 Bytes + + ### WinPython 2018-02 release (July 21st, 2018) MD5 | SHA-1 | SHA-256 | Binary | Size From b7734062e58b215e325d552471a0b4b2fdc318df Mon Sep 17 00:00:00 2001 From: stonebig Date: Mon, 5 Nov 2018 21:19:19 +0100 Subject: [PATCH 34/89] winpython 2018-04 --- index.html | 21 +++++++++++---------- md5_sha1.txt | 14 ++++++++++++++ 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/index.html b/index.html index e52c0ba..ee468b9 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,16 @@

        Recent Releases

        +

        Release 2018-04 of November 4th, 2018

        + +

        Highlights (**): Ipython-7.7.1, scikit-learn-0.20.0, bokeh-1.0.0, jupyterlab-0.35.3 (Zero Version)

        + +

        Release 2018-03 of September 4th, 2018

        Highlights (**): pandas-0.23.4, scikit-learn-0.19.2, spyder-3.3.1, jupyterlab-0.34.7 , rise-5.4.1, idlex-1.18 (Zero Version)

        @@ -35,6 +45,7 @@

        Recent Releases

      • WinPython 3.7.0.2-64bit (*) Changelog, Packages and Downloads
      • WinPython 3.7.0.2-32bit (*) Changelog, Packages and Downloads
      +

      Release 2018-02 of July 21st, 2018

      Highlights (**): Python-3.7.0, pandas-0.23.3, jupyterlab-0.32.1 (beta 2) + nodejs-8.11.2, scipy-1.1.0, spyder-3.3.0 (Zero Version)

      @@ -44,16 +55,6 @@

      Recent Releases

    • WinPython 3.7.0.1-64bit (*) Changelog, Packages and Downloads
    • WinPython 3.7.0.1-32bit (*) Changelog, Packages and Downloads
    -

    Release 2018-01 of April 7th, 2018

    - -

    Highlights (**): pandas-0.22.0, jupyterlab-0.31.12 (beta 1) + nodejs-8.9.4, matplotlib-2.2.2, spyder-3.2.8 (Zero Version)

    -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index ad65a8d..e7bd413 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,17 @@ +### WinPython 2018-04 release (November 4th, 2018) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +b5700d3ddda8f7b83655a1ec4cf420bd | efab36a7596fd6ecd034260b2fef6b4da41d2e4d | e52e2606f3a2f7d79fd9eac0701b144efe0832ecdcf7c5a2f3bf3aebba4e70c6 | Winpython64-3.6.7.0Zero.exe | 27 698 479 Bytes +12efc1e0ef3efe14181bf0dc90a3541d | 356f8c9a8e012b01bffbbbe4aa3c92deb66c85cf | 8b6b22f36aecb80ce8b13212deb4bbba0e9a902ddd081d7c6288cf0f44e419be | Winpython32-3.6.7.0Zero.exe | 26 917 304 Bytes +952c151a674b394137a4b47f7df2b5a5 | 81d51e7a0ad83f0da67be89b247c07ba9ed93f21 | 4e81abd373c089cd9b6687393bb3d179e6792a97d8f088f77d35b9067f118c0f | Winpython64-3.7.1.0Zero.exe | 28 355 587 Bytes +956a310ef3d120909f590d6cdf0ac080 | 5cc176132d3fcdf35cad959e403953fa212a17a3 | a09c79c7630278f831d257c03bab99f76d3a0e23f8b4362a3e1e2495a3aa088f | Winpython32-3.7.1.0Zero.exe | 27 613 204 Bytes +4b1e1a32e432d788796a3d5487516325 | 30dfdc38d24c7137092b21990baf570aeb571e76 | b89f1ad387b88bd7c2e1ebaf7491ec5635f8feabaf81cd08053aa959f45a8abb | Winpython32-3.6.7.0Qt5.exe | 373 972 047 Bytes +72b0612de9fdc341e87f01d9ca7b230f | 0564417d257dd409fba6027f39150d372cf10a11 | 910cccc217c03a63afa1e77cc0082eedff1c4bbec23221950bbfaa509bf8e525 | Winpython64-3.6.7.0Qt5.exe | 488 347 626 Bytes +8967b1ee84d26b4611c14125d4e4539a | 265ade8190cd9928f668c742bff1dda5c59ab162 | 152fdd8ec34f123a14ddf0f74f8f9038ef9ba2676bf60954fa8bf9afdd73ec4a | Winpython32-3.7.1.0.exe | 371 975 740 Bytes +838280aad034a0f083b6356cb3249867 | 25dd42f33f28f2390c4a19018234eba23d20b20f | e95de8d6b90c217d6a71d831367b6f94eb76ddc855f041ea1e029b081aba107e | Winpython64-3.7.1.0.exe | 483 284 117 Bytes + + ### WinPython 2018-03 release (September 4th, 2018) MD5 | SHA-1 | SHA-256 | Binary | Size From 986fd1402504c84bb43f2056e06261b2cbadb48e Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 9 Mar 2019 18:32:51 +0100 Subject: [PATCH 35/89] WinPython 2019-01 The last one for Python-3.6 --- index.html | 30 +++++++++++++++++------------- md5_sha1.txt | 18 ++++++++++++++++++ 2 files changed, 35 insertions(+), 13 deletions(-) diff --git a/index.html b/index.html index ee468b9..c82621c 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,20 @@

    Recent Releases

    +

    Release 2019-01 of March 9th, 2019

    + +

    Highlights (**): Pandas-0.24.1, Scipy-1.2.1, Cartopy-0.17.0, Numpy-1.16.2, Pytorch-1.0.1, Tensorflow-1.13.1, PyQt5-5.12.1 or PySide2-5.12.1 (Zero Version)

    + +

    Release 2018-04 of November 4th, 2018

    Highlights (**): Ipython-7.7.1, scikit-learn-0.20.0, bokeh-1.0.0, jupyterlab-0.35.3 (Zero Version)

    @@ -46,16 +60,6 @@

    Recent Releases

  • WinPython 3.7.0.2-32bit (*) Changelog, Packages and Downloads
  • -

    Release 2018-02 of July 21st, 2018

    - -

    Highlights (**): Python-3.7.0, pandas-0.23.3, jupyterlab-0.32.1 (beta 2) + nodejs-8.11.2, scipy-1.1.0, spyder-3.3.0 (Zero Version)

    - -
    WinPython Small Logos

    Overview

    @@ -77,7 +81,7 @@

    Overview

  • Flexible:
    • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
    • -
    • These installations can be of different versions of Python (3.5/3.6/3.7/...) and different architectures (32bit/64bit)
    • +
    • These installations can be of different versions of Python (3.6/3.7/3.8...) and different architectures (32bit/64bit)
  • Customizable:
      @@ -106,14 +110,14 @@

      Portable or not, the choice is yours!

    That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

    (*) For recent WinPython, Windows 7/8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit) +

    (*) For recent WinPython, Windows 8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit)

    (**) For best Winpython 2018-01 and later experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython

    WinPython Small Logos
    - +
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index e7bd413..eef341b 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,21 @@ +### WinPython 2019-01 release (March 9th, 2019) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +af0fd4452aab6f0603b843a7cc7cb53d | 0c5f289c7a6d0eec248a903d3ca0876c06f22c1f | acfc2933071b3514de206485770512957f3119630585225571215ea5c0ba53b1 | Winpython64-3.6.8.0Zero.exe | 27 034 990 Bytes +d2bd491428e22391cd19732a91d88720 | ce111ba013b922bbf34a4afc82abc572003624c4 | c20024700be85f01f8607f10e40cb696a330039f2564c831ace43442506530cf | Winpython32-3.6.8.0Zero.exe | 26 310 310 Bytes +81f83854f547a7b25a56cbfe87f0c3b7 | 5fac410215bd22c3fe33cf2881309620b5f4d72f | 33060b8180e7ce536256874ddf97e383cae22cc3f3b1de3e1b000d899c140b31 | Winpython64-3.7.2.0Zero.exe | 27 758 006 Bytes +36776779b8859e857a9358c88137d2c5 | 7298cbd1e215547011541ce06c7aeccf526cf1c3 | e24c4d4f183f478cba9104ddeac9b44a4908642c7ddab80fe452323e22c7ac75 | Winpython32-3.7.2.0Zero.exe | 26 973 857 Bytes +f84c018a0c231507f678f6bf9340daa8 | b17dbedd7ec048a6a230a223c0a9e180d23cb7ef | c9519148f6e996859b0d920ac6dd99085a988e17970b0a893617a14260bdd41d | Winpython32-3.6.8.0Ps2.exe | 437 574 028 Bytes +16d95f14986a858af494d785445dc440 | 74c093422e21ac8f1b2aca91e61935f229c86384 | d722554b10b7e1700bf61978a61fd2d119d6ca12a3c6e869251df8a2f1e7e617 | Winpython64-3.6.8.0Ps2.exe | 588 383 206 Bytes +be41162fc1c39045117b5bd37dbab906 | 8346324a3affe6769f1139d53c46b399af4d3ee1 | 98792584383137adc870735b7d5a2df49a635bc00e4fdb7548ea15df0ab29394 | Winpython32-3.7.2.0Ps2.exe | 435 553 800 Bytes +1f7a3dfe1b0f9f5974367173282399ec | b9341e05ec1ab10faf3cfb84276cb6f1f1c5fa23 | 172955fc63eea8abd602712f3417407e760fde174b350052b68a55e52a4777e4 | Winpython64-3.7.2.0Ps2.exe | 586 713 948 Bytes +3f8b942d2fc50990864c2a454435687a | 39ebd5ea0f11b5576ce800774883265b767f3439 | 2f8d7a10aeabf8ab01e2c8f2d180c4807a797403ebb2cc66ae551e371cb92f9d | Winpython32-3.6.8.0Qt5.exe | 432 998 123 Bytes +e54a87bbdc927bd87b24fc1a416996cf | 839f55db8c1048cdbfc65aa783e225e78ccd1420 | a52cf78226c344f61ec01ce335c310fff3aff8d80ce98b864d3f2da4f692ea04 | Winpython64-3.6.8.0Qt5.exe | 582 123 214 Bytes +fda526fd1fc4c08f95f7f3fc0e8dd164 | 3feff603c664ab923180de77bd964117f80cbd22 | 40a80d2fba1348da785bd97ee8de4e69c554c3d9dcd632b623a0f12e3ddb5ec0 | Winpython32-3.7.2.0.exe | 431 047 193 Bytes +cba20b030f2e87d0f4a61696e19ae933 | e5b63f0d52909f46abb55a821cbe6ebbd1c34824 | 3fb3ece2ba20fa903f15b642f5749a4517c2557788801197a981eea11ec21865 | Winpython64-3.7.2.0.exe | 580 357 926 Bytes + + ### WinPython 2018-04 release (November 4th, 2018) MD5 | SHA-1 | SHA-256 | Binary | Size From 03f51a4449cd7abcf384822562bb89efb1a35c9e Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 20 Jul 2019 11:45:00 +0200 Subject: [PATCH 36/89] WinPython 2019-02 --- index.html | 19 ++++++++++--------- md5_sha1.txt | 12 ++++++++++++ 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/index.html b/index.html index c82621c..09c52df 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,16 @@

    Recent Releases

    +

    Release 2019-02 of July 19th, 2019

    + +

    Highlights (**): Jupyterlab-1.0.2, Qt5-5.13, statsmodels-0.10.0, Scipy-1.3.0, scikit-learn-0.21.2, Matplotlib-3.1.1, Altair-3.1.0, PyTorch-1.1.0, Tensorflow-1.14.0 (Zero Version)

    + +

    Release 2019-01 of March 9th, 2019

    Highlights (**): Pandas-0.24.1, Scipy-1.2.1, Cartopy-0.17.0, Numpy-1.16.2, Pytorch-1.0.1, Tensorflow-1.13.1, PyQt5-5.12.1 or PySide2-5.12.1 (Zero Version)

    @@ -50,15 +60,6 @@

    Recent Releases

  • WinPython 3.7.1.0-32bit (*) Changelog, Packages and Downloads
  • -

    Release 2018-03 of September 4th, 2018

    - -

    Highlights (**): pandas-0.23.4, scikit-learn-0.19.2, spyder-3.3.1, jupyterlab-0.34.7 , rise-5.4.1, idlex-1.18 (Zero Version)

    -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index eef341b..c723f4d 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,15 @@ +### WinPython 2019-02 release (July 19th, 2019) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +4df0d37fc7a8b6673d0b142882cf9330 | 37f30a0d382fbe171ad086b3548b12a306a0b410 | 2e92da91ddbbb739cf1d21ea670bc53d1f599ea5d1a690422af93b796e590aa9 | Winpython64-3.7.4.0Zero.exe | 27 832 170 Bytes +bed6b3373598a3c37f7475afc7204a43 | 396d76e0c656e857a48d8735eecc2b51c030e840 | c49459e3b397192df7e613c55860604c8470a53c068b037478d9ebfd992c7856 | Winpython32-3.7.4.0Zero.exe | 26 861 943 Bytes +3c33f533c7aa79e9e92f98473b38887d | d35671ebd4415c7c9d0623848f4c3d4b2f413e83 | 0a53bba8d413278317fa5d5a886973123cad9b2ba837a979b4337464c74fad6a | Winpython32-3.7.4.0.exe | 460 260 504 Bytes +d4e03077d3945ae2a86b6d11a1ca89a3 | 6dd5652d817c12adf14b45e65b8bfa9e7803a4f3 | 34fbc2dd199a577eedd3ed122d8eba06a60f21a8a69975dfcc3e2b8da1aba11f | Winpython32-3.7.4.0Ps2.exe | 466 081 704 Bytes +3ff8ce4646d24305d1fcae58c54eeabd | 2bff4d814cd0b5a25fd13e050d02172074f77ce5 | 6c5c3a3b941fa17d92f9a3fb1459ba53298f0ab73098df734e961b59323eb9b0 | Winpython64-3.7.4.0Ps2.exe | 654 300 203 Bytes +f630753b3f1b7740429e3d8b5afbb5a2 | bb4e779c7446ef3437956868574d8618bf155c5e | 5701b68128a69926f8b7a136fc3e3b1e0b64b07e6ccb21d1995db3d879617a49 | Winpython64-3.7.4.0.exe | 646 472 863 Bytes + + ### WinPython 2019-01 release (March 9th, 2019) MD5 | SHA-1 | SHA-256 | Binary | Size From adb169063a6c1a8048f29d05a413cb371f282ef9 Mon Sep 17 00:00:00 2001 From: stonebig Date: Tue, 23 Jul 2019 22:10:11 +0200 Subject: [PATCH 37/89] correcting a shamefull error https://github.com/winpython/winpython.github.io/issues/68 --- index.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index 09c52df..0023559 100644 --- a/index.html +++ b/index.html @@ -30,10 +30,10 @@

    Recent Releases

    Highlights (**): Jupyterlab-1.0.2, Qt5-5.13, statsmodels-0.10.0, Scipy-1.3.0, scikit-learn-0.21.2, Matplotlib-3.1.1, Altair-3.1.0, PyTorch-1.1.0, Tensorflow-1.14.0 (Zero Version)

    Release 2019-01 of March 9th, 2019

    From edec4a713d787105408beaa376749e90d025926e Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 28 Sep 2019 13:09:32 +0200 Subject: [PATCH 38/89] WinPython 2019-03 --- index.html | 21 +++++++++++---------- md5_sha1.txt | 13 +++++++++++++ 2 files changed, 24 insertions(+), 10 deletions(-) diff --git a/index.html b/index.html index 0023559..9e5a11c 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,17 @@

    Recent Releases

    +

    Release 2019-03 of September 28th, 2019

    + +

    Highlights (**): Pandas-0.25.1, Jupyterlab-1.1.4, Qt5-5.13.1, Scipy-1.3.1, scikit-learn-0.21.3, Altair-3.2.0, Torch-1.2.0, winrt-1.0.19128.1, a VSCode portable version (Zero Version)

    + +

    Release 2019-02 of July 19th, 2019

    Highlights (**): Jupyterlab-1.0.2, Qt5-5.13, statsmodels-0.10.0, Scipy-1.3.0, scikit-learn-0.21.2, Matplotlib-3.1.1, Altair-3.1.0, PyTorch-1.1.0, Tensorflow-1.14.0 (Zero Version)

    @@ -50,16 +61,6 @@

    Recent Releases

  • WinPython 3.7.2.0Ps2-32bit (*) Changelog, Packages and Downloads
  • -

    Release 2018-04 of November 4th, 2018

    - -

    Highlights (**): Ipython-7.7.1, scikit-learn-0.20.0, bokeh-1.0.0, jupyterlab-0.35.3 (Zero Version)

    - -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index c723f4d..fe32860 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,16 @@ +### WinPython 2019-02 release (September 28th, 2019) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +8453a58d431d4824f06f7c1f42f1a194 | 13a5e9f009cbb43df1264db628849550b60da12c | ec97e69de4d01f7c70278be2e7abd91a2ade757878c4d93dbdef7d4fb2acba05 | Winpython64-3.7.4.1Zero.exe | 27 992 617 Bytes +b6d678ce29a01531142cc89057ef42db | 7d614de4165d12fe0126b9416ed2d6efc10f3c28 | e6e6c85cb6145dc6b3a6868033cd48a4386eddd55ed2ced6940ffbc8622ed7be | Winpython32-3.7.4.1Zero.exe | 27 007 964 Bytes +9e0e19a4fe1ca7cc33fee7ca60b52aa6 | 311f26c61f47b239359e24f925d96f45af2601d3 | fc6c4d52c97cd99830d05ebc33a3e651b329100f36898576823ffa75eb989e2e | Winpython32-3.7.4.1.exe | 457 812 318 Bytes +686cc31200c753ca864f276b9798ac13 | e0f20a68957e5e7e33fd06c7c06591a08b88ea9d | f385737eb6c60460a976adc7d1e9a169cf49425f9851f75789cf3ecabb5d7cd4 | Winpython64-3.7.4.1.exe | 644 778 229 Bytes +e754a306df6221c2a4f0745c9f7ea03f | db497a3c5fb3be5b6d29a701f07fb55a57be2222 | a73cb4097375a0c06023c97c861710058b93a1f1a4de870fb86c7cd25db69eaf | Winpython32-3.7.4.1Ps2.exe | 463 541 946 Bytes +cf00fb30e5a3c58fa8a61fb20bc18f3a | 99f88506d36855da5da49a5498b26f75dfad0fd3 | a9410fb4d0d6b1b6eafc9f00fae4826b0c7a439a865cfa883ea045e6fc81e3c1 | Winpython64-3.7.4.1Ps2.exe | 651 989 170 Bytes +8d53722ae27d3812def1f57e8d093828 | e47293233505e84723753e304cc8fe1654bceb4c | 9cfbe3920170ac5223f3f37b3cb819492f269ecabeedc4b10be59fae810626f2 | Winpython64-3.7.4.1cod.exe | 635 420 068 Bytes + + ### WinPython 2019-02 release (July 19th, 2019) MD5 | SHA-1 | SHA-256 | Binary | Size From ea724a958e6abbf1861fb60c010a00053daf5b0d Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 29 Sep 2019 12:58:05 +0200 Subject: [PATCH 39/89] change "edit" to "tag" --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 9e5a11c..0b6cf62 100644 --- a/index.html +++ b/index.html @@ -30,7 +30,7 @@

    Recent Releases

    Highlights (**): Pandas-0.25.1, Jupyterlab-1.1.4, Qt5-5.13.1, Scipy-1.3.1, scikit-learn-0.21.3, Altair-3.2.0, Torch-1.2.0, winrt-1.0.19128.1, a VSCode portable version (Zero Version)

      -
    • WinPython 3.7.4.1-64bit (*) Changelog, Packages and Downloads
    • or Github Downloads +
    • WinPython 3.7.4.1-64bit (*) Changelog, Packages and Downloads
    • or Github Downloads
    • WinPython 3.7.4.1-32bit (*) Changelog, Packages and Downloads
    • WinPython 3.7.4.1Ps2-64bit (*) Changelog, Packages and Downloads
    • WinPython 3.7.4.1Ps2-32bit (*) Changelog, Packages and Downloads
    • From f15e5d329fcd2903d40430cc7d1bb5133fc5fd82 Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 24 Oct 2019 17:22:34 +0200 Subject: [PATCH 40/89] adding Python-3.8 to 2019-03 release --- index.html | 5 ++++- md5_sha1.txt | 14 +++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 0b6cf62..e0a9c60 100644 --- a/index.html +++ b/index.html @@ -26,7 +26,7 @@

      Recent Releases

      -

      Release 2019-03 of September 28th, 2019

      +

      Release 2019-03 of September 28th, 2019 (+ WinPython-3.8 branch of October 23rd 2019)

      Highlights (**): Pandas-0.25.1, Jupyterlab-1.1.4, Qt5-5.13.1, Scipy-1.3.1, scikit-learn-0.21.3, Altair-3.2.0, Torch-1.2.0, winrt-1.0.19128.1, a VSCode portable version (Zero Version)

      Release 2019-02 of July 19th, 2019

      diff --git a/md5_sha1.txt b/md5_sha1.txt index fe32860..3eba615 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,6 @@ -### WinPython 2019-02 release (September 28th, 2019) + + +### WinPython 2019-03 release (September 28th, 2019) MD5 | SHA-1 | SHA-256 | Binary | Size ---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- @@ -10,6 +12,16 @@ e754a306df6221c2a4f0745c9f7ea03f | db497a3c5fb3be5b6d29a701f07fb55a57be2222 | a7 cf00fb30e5a3c58fa8a61fb20bc18f3a | 99f88506d36855da5da49a5498b26f75dfad0fd3 | a9410fb4d0d6b1b6eafc9f00fae4826b0c7a439a865cfa883ea045e6fc81e3c1 | Winpython64-3.7.4.1Ps2.exe | 651 989 170 Bytes 8d53722ae27d3812def1f57e8d093828 | e47293233505e84723753e304cc8fe1654bceb4c | 9cfbe3920170ac5223f3f37b3cb819492f269ecabeedc4b10be59fae810626f2 | Winpython64-3.7.4.1cod.exe | 635 420 068 Bytes +Late complement (WinPython-3.8.0.0, October 19th, 2020) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +58202f1f7d04e81ba83edaf4b1c30970 | 17281a168b2d2855fa0d1e94220e16cd2fb0fc6f | 5882665af26d91a5eb5e5bcf37578d2ddb822f23c75cb5408ea7f8c5f6a73ab0 | Winpython64-3.8.0.0dot.exe | 23 708 759 Bytes +39efc06b286a3fb0c7338e3ffe78e2b0 | cb923c1d62c7a61e8187f0edde1eba43253ccdd7 | 701265ef5fb43739f1e649a156f8b8bd4ccde8632dcd16a33a6f7e63ac8a05c7 | Winpython32-3.8.0.0dot.exe | 22 637 174 Bytes +80b75bcc66235f11133788a3e06308fd | dfeca5ec0c831c4b29361ae53a07a1585e2a3f86 | e4e1162f0084dbb9434f5e12160236abfda482bf589ffbcaa360bf244fa98125 | Winpython32-3.8.0.0.exe | 433 866 399 Bytes +7c7681af65e6513f3a7dab0e880903a5 | ed58e72379afd20171ee98cf32f68dcef62bd99c | fd1c5061f59c078bf212e9fb6d5a68261b958cb4b93800303d47b4c0c6a5e17c | Winpython64-3.8.0.0.exe | 510 423 691 Bytes +8f532bb2022828cebce4b6b4f2289141 | dbf728b43e4202160929b576b0629c7812df32dc | 3e936616d1f83ccef9a3549647b5b6baa6eda918c18380b7bdac399d608dbf09 | Winpython64-3.8.0.0cod.exe | 588 818 158 Bytes + ### WinPython 2019-02 release (July 19th, 2019) From 5f15c1119391abe3ca3c2328c9a00a075d097363 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 27 Oct 2019 09:49:51 +0100 Subject: [PATCH 41/89] Revamping Welcome page to make it more explicit trying to answer https://github.com/winpython/winpython/issues/784 --- index.html | 66 ++++++++++++++++++++++++++++++++---------------------- 1 file changed, 39 insertions(+), 27 deletions(-) diff --git a/index.html b/index.html index e0a9c60..b38837f 100644 --- a/index.html +++ b/index.html @@ -22,46 +22,55 @@

      The easiest way to run Python, Spyder with SciPy and friends out of the box on any Windows PC, without installing anything!

      -

      Project Home is on Github, downloads page are on Sourceforge, Discussion group is on Google Groups, md5 and sha1 there

      +

      Projet Home is on Github, downloads pages are on Sourceforge and Github, md5-sha , Discussion Group

      Recent Releases

      -

      Release 2019-03 of September 28th, 2019 (+ WinPython-3.8 branch of October 23rd 2019)

      +

      Release 2019-03 of September 28th, 2019

      -

      Highlights (**): Pandas-0.25.1, Jupyterlab-1.1.4, Qt5-5.13.1, Scipy-1.3.1, scikit-learn-0.21.3, Altair-3.2.0, Torch-1.2.0, winrt-1.0.19128.1, a VSCode portable version (Zero Version)

      +

      Highlights (*): Pandas-0.25.1, Jupyterlab-1.1.4, Qt5-5.13.1, Scipy-1.3.1, scikit-learn-0.21.3, Altair-3.2.0, Torch-1.2.0, winrt-1.0.19128.1, a VSCode portable version

      Release 2019-02 of July 19th, 2019

      -

      Highlights (**): Jupyterlab-1.0.2, Qt5-5.13, statsmodels-0.10.0, Scipy-1.3.0, scikit-learn-0.21.2, Matplotlib-3.1.1, Altair-3.1.0, PyTorch-1.1.0, Tensorflow-1.14.0 (Zero Version)

      +

      Highlights (*): Jupyterlab-1.0.2, Qt5-5.13, statsmodels-0.10.0, Scipy-1.3.0, scikit-learn-0.21.2, Matplotlib-3.1.1, Altair-3.1.0, PyTorch-1.1.0, Tensorflow-1.14.0 (Zero Version)

      Release 2019-01 of March 9th, 2019

      -

      Highlights (**): Pandas-0.24.1, Scipy-1.2.1, Cartopy-0.17.0, Numpy-1.16.2, Pytorch-1.0.1, Tensorflow-1.13.1, PyQt5-5.12.1 or PySide2-5.12.1 (Zero Version)

      +

      Highlights : Pandas-0.24.1, Scipy-1.2.1, Cartopy-0.17.0, Numpy-1.16.2, Pytorch-1.0.1, Tensorflow-1.13.1, PyQt5-5.12.1 or PySide2-5.12.1 (Zero Version)

      @@ -117,12 +126,15 @@

      Portable or not, the choice is yours!

      (*) For recent WinPython, Windows 8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit) -

      (**) For best Winpython 2018-01 and later experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython +

      (*) For best Winpython 2018-01 and later experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython + +

      (**) Since WinPython 2019-02, all installers are just 7zip auto-extracts. +

      WinPython Small Logos
      - +
      WinPython Small Logos
      From a1a83fd0dca6c05aafe10798528d92615c5ec417 Mon Sep 17 00:00:00 2001 From: Ian Mayo Date: Thu, 31 Oct 2019 11:28:05 +0000 Subject: [PATCH 42/89] Correct typo in one of first words on page --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index b38837f..cda1d89 100644 --- a/index.html +++ b/index.html @@ -22,7 +22,7 @@

      The easiest way to run Python, Spyder with SciPy and friends out of the box on any Windows PC, without installing anything!

      -

      Projet Home is on Github, downloads pages are on Sourceforge and Github, md5-sha , Discussion Group

      +

      Project Home is on Github, downloads pages are on Sourceforge and Github, md5-sha , Discussion Group

      Recent Releases

      From ba4d798e45ec3fa291929e94b6ddf8dfa8f51eed Mon Sep 17 00:00:00 2001 From: stonebig Date: Mon, 23 Dec 2019 13:57:17 +0100 Subject: [PATCH 43/89] WinPython 2019-04 RC --- md5_sha1.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/md5_sha1.txt b/md5_sha1.txt index 3eba615..33b7c15 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,17 @@ +### WinPython 2019-04 release (RC, December 23rd, 2019) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +e19742c5787384d11b387fcc862427bb | 5ef1466afd82a7c696e468a593b555e23a8fa3b7 | 632273a65fcf5dd565f8a1187bf596bd54adb0d973cbf224bfbfb658e5e8e155 | Winpython64-3.7.6.0dotrc.exe | 23 080 378 Bytes +2c28927c14948b09d4f5b46ff17360c2 | 85afbe3991ed81b66cb853d5fa93b18158d40979 | f51b34dbcfa02040901fafad734b232d3f0686bcfd6d0937a35b3b65aa13b5d3 | Winpython32-3.7.6.0dotrc.exe | 22 119 015 Bytes +c6b45ca478090c9f5338cad389cf3b27 | 6ca5db67ec097164f1493f96fb46f77810992f1d | 28163863368c7f63ff5a1cd0a3e7c2544757e7607c54057df5110eefba6d2561 | Winpython64-3.8.1.0dotrc.exe | 23 775 397 Bytes +ea69741f3871b4ad9e5934b481c6caaf | 3258c8bac69e10e0b4665d0ffc53d56265f1214e | 489ff4437d5bfece1adaa6917637c6c5eca69e58185493f0ff9dcd2edd5b5bb0 | Winpython32-3.8.1.0dotrc.exe | 22 706 735 Bytes +788a41c4afb1a17576291de3f30dfe2d | 917a1e8bdb1ef080ca916d3baca83682649f3009 | e523d55a4bbe85d55f45958b7ea5078d56a9aee6772687bee68ba223ad3f7fdd | Winpython64-3.7.6.0rc.exe | 679 764 546 Bytes +48485fece0e487462e1f839573b7ca9f | 9d606d9fcf492fa0cf6c98ff521298158f68c0c7 | 8fa6751fabbaef9a820516e0a6cfac7a10b1ad1a5db2d8d639f9cbba80afe8d1 | Winpython64-3.8.1.0rc.exe | 555 895 371 Bytes +5c1376fb69c95b25bc922d44e7e99525 | 2e12e332b359c725e694af9b47a87f3d6abd1c1e | eab496d6f7f2489068e80e0dd4956ca37e8160979d30f4bf555578a21421b811 | Winpython64-3.7.6.0codrc.exe | 670 015 108 Bytes +65d3cf6b30aa41f41c46dba95f9c1e63 | b854ec4021addd6134b390320593ce189f60dd85 | 58eb64fcf18086bacffaa281a8251624476a4ad64bd12bb9583fe898e103feab | Winpython64-3.8.1.0codrc.exe | 639 199 517 Bytes + ### WinPython 2019-03 release (September 28th, 2019) From 97e6fb6a32b2b9e5316fe72afce13a73006602de Mon Sep 17 00:00:00 2001 From: stonebig Date: Tue, 24 Dec 2019 17:27:07 +0100 Subject: [PATCH 44/89] WinPython 2019-04 RC, adding 'ps2' Pyside2 flavor --- md5_sha1.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/md5_sha1.txt b/md5_sha1.txt index 33b7c15..29e7a10 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -11,6 +11,8 @@ ea69741f3871b4ad9e5934b481c6caaf | 3258c8bac69e10e0b4665d0ffc53d56265f1214e | 48 48485fece0e487462e1f839573b7ca9f | 9d606d9fcf492fa0cf6c98ff521298158f68c0c7 | 8fa6751fabbaef9a820516e0a6cfac7a10b1ad1a5db2d8d639f9cbba80afe8d1 | Winpython64-3.8.1.0rc.exe | 555 895 371 Bytes 5c1376fb69c95b25bc922d44e7e99525 | 2e12e332b359c725e694af9b47a87f3d6abd1c1e | eab496d6f7f2489068e80e0dd4956ca37e8160979d30f4bf555578a21421b811 | Winpython64-3.7.6.0codrc.exe | 670 015 108 Bytes 65d3cf6b30aa41f41c46dba95f9c1e63 | b854ec4021addd6134b390320593ce189f60dd85 | 58eb64fcf18086bacffaa281a8251624476a4ad64bd12bb9583fe898e103feab | Winpython64-3.8.1.0codrc.exe | 639 199 517 Bytes +2ba700bc5a91b159d1c6a4ff6af5ca6e | b8c614a14a6fccc6abb3b50b443dc5ca9387f60e | 45301054ee2259af24c95bab99e46dbf79d802968ba89a03bac283b559e13b35 | Winpython64-3.7.6.0Ps2rc.exe | 686 746 033 Bytes +41bb00ff023375152086935601c010a1 | 63381cb9fd89a6b975f33a96b2dbf8bde7387a8b | 9820619d590df78054fc75e86e25e0f4faa74a55c92281a580b327d588cc04fa | Winpython64-3.8.1.0Ps2rc.exe | 572 780 385 Bytes ### WinPython 2019-03 release (September 28th, 2019) From b60717d2aff757da67d04732889cb842cf7552b0 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 28 Dec 2019 09:05:26 +0100 Subject: [PATCH 45/89] re-tag WinPython 2019-04 RC as final --- md5_sha1.txt | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/md5_sha1.txt b/md5_sha1.txt index 29e7a10..a53476d 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,18 +1,18 @@ -### WinPython 2019-04 release (RC, December 23rd, 2019) +### WinPython 2019-04 release (December 23rd, 2019) MD5 | SHA-1 | SHA-256 | Binary | Size ---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- -e19742c5787384d11b387fcc862427bb | 5ef1466afd82a7c696e468a593b555e23a8fa3b7 | 632273a65fcf5dd565f8a1187bf596bd54adb0d973cbf224bfbfb658e5e8e155 | Winpython64-3.7.6.0dotrc.exe | 23 080 378 Bytes -2c28927c14948b09d4f5b46ff17360c2 | 85afbe3991ed81b66cb853d5fa93b18158d40979 | f51b34dbcfa02040901fafad734b232d3f0686bcfd6d0937a35b3b65aa13b5d3 | Winpython32-3.7.6.0dotrc.exe | 22 119 015 Bytes -c6b45ca478090c9f5338cad389cf3b27 | 6ca5db67ec097164f1493f96fb46f77810992f1d | 28163863368c7f63ff5a1cd0a3e7c2544757e7607c54057df5110eefba6d2561 | Winpython64-3.8.1.0dotrc.exe | 23 775 397 Bytes -ea69741f3871b4ad9e5934b481c6caaf | 3258c8bac69e10e0b4665d0ffc53d56265f1214e | 489ff4437d5bfece1adaa6917637c6c5eca69e58185493f0ff9dcd2edd5b5bb0 | Winpython32-3.8.1.0dotrc.exe | 22 706 735 Bytes -788a41c4afb1a17576291de3f30dfe2d | 917a1e8bdb1ef080ca916d3baca83682649f3009 | e523d55a4bbe85d55f45958b7ea5078d56a9aee6772687bee68ba223ad3f7fdd | Winpython64-3.7.6.0rc.exe | 679 764 546 Bytes -48485fece0e487462e1f839573b7ca9f | 9d606d9fcf492fa0cf6c98ff521298158f68c0c7 | 8fa6751fabbaef9a820516e0a6cfac7a10b1ad1a5db2d8d639f9cbba80afe8d1 | Winpython64-3.8.1.0rc.exe | 555 895 371 Bytes -5c1376fb69c95b25bc922d44e7e99525 | 2e12e332b359c725e694af9b47a87f3d6abd1c1e | eab496d6f7f2489068e80e0dd4956ca37e8160979d30f4bf555578a21421b811 | Winpython64-3.7.6.0codrc.exe | 670 015 108 Bytes -65d3cf6b30aa41f41c46dba95f9c1e63 | b854ec4021addd6134b390320593ce189f60dd85 | 58eb64fcf18086bacffaa281a8251624476a4ad64bd12bb9583fe898e103feab | Winpython64-3.8.1.0codrc.exe | 639 199 517 Bytes -2ba700bc5a91b159d1c6a4ff6af5ca6e | b8c614a14a6fccc6abb3b50b443dc5ca9387f60e | 45301054ee2259af24c95bab99e46dbf79d802968ba89a03bac283b559e13b35 | Winpython64-3.7.6.0Ps2rc.exe | 686 746 033 Bytes -41bb00ff023375152086935601c010a1 | 63381cb9fd89a6b975f33a96b2dbf8bde7387a8b | 9820619d590df78054fc75e86e25e0f4faa74a55c92281a580b327d588cc04fa | Winpython64-3.8.1.0Ps2rc.exe | 572 780 385 Bytes +e19742c5787384d11b387fcc862427bb | 5ef1466afd82a7c696e468a593b555e23a8fa3b7 | 632273a65fcf5dd565f8a1187bf596bd54adb0d973cbf224bfbfb658e5e8e155 | Winpython64-3.7.6.0dot.exe | 23 080 378 Bytes +2c28927c14948b09d4f5b46ff17360c2 | 85afbe3991ed81b66cb853d5fa93b18158d40979 | f51b34dbcfa02040901fafad734b232d3f0686bcfd6d0937a35b3b65aa13b5d3 | Winpython32-3.7.6.0dot.exe | 22 119 015 Bytes +c6b45ca478090c9f5338cad389cf3b27 | 6ca5db67ec097164f1493f96fb46f77810992f1d | 28163863368c7f63ff5a1cd0a3e7c2544757e7607c54057df5110eefba6d2561 | Winpython64-3.8.1.0dot.exe | 23 775 397 Bytes +ea69741f3871b4ad9e5934b481c6caaf | 3258c8bac69e10e0b4665d0ffc53d56265f1214e | 489ff4437d5bfece1adaa6917637c6c5eca69e58185493f0ff9dcd2edd5b5bb0 | Winpython32-3.8.1.0dot.exe | 22 706 735 Bytes +788a41c4afb1a17576291de3f30dfe2d | 917a1e8bdb1ef080ca916d3baca83682649f3009 | e523d55a4bbe85d55f45958b7ea5078d56a9aee6772687bee68ba223ad3f7fdd | Winpython64-3.7.6.0.exe | 679 764 546 Bytes +48485fece0e487462e1f839573b7ca9f | 9d606d9fcf492fa0cf6c98ff521298158f68c0c7 | 8fa6751fabbaef9a820516e0a6cfac7a10b1ad1a5db2d8d639f9cbba80afe8d1 | Winpython64-3.8.1.0.exe | 555 895 371 Bytes +5c1376fb69c95b25bc922d44e7e99525 | 2e12e332b359c725e694af9b47a87f3d6abd1c1e | eab496d6f7f2489068e80e0dd4956ca37e8160979d30f4bf555578a21421b811 | Winpython64-3.7.6.0cod.exe | 670 015 108 Bytes +65d3cf6b30aa41f41c46dba95f9c1e63 | b854ec4021addd6134b390320593ce189f60dd85 | 58eb64fcf18086bacffaa281a8251624476a4ad64bd12bb9583fe898e103feab | Winpython64-3.8.1.0cod.exe | 639 199 517 Bytes +2ba700bc5a91b159d1c6a4ff6af5ca6e | b8c614a14a6fccc6abb3b50b443dc5ca9387f60e | 45301054ee2259af24c95bab99e46dbf79d802968ba89a03bac283b559e13b35 | Winpython64-3.7.6.0Ps2.exe | 686 746 033 Bytes +41bb00ff023375152086935601c010a1 | 63381cb9fd89a6b975f33a96b2dbf8bde7387a8b | 9820619d590df78054fc75e86e25e0f4faa74a55c92281a580b327d588cc04fa | Winpython64-3.8.1.0Ps2.exe | 572 780 385 Bytes ### WinPython 2019-03 release (September 28th, 2019) From 47dc5113d43f28792c86ffe5fb38582e98e46e58 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 28 Dec 2019 10:01:20 +0100 Subject: [PATCH 46/89] publish WinPython 2019-04 --- index.html | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/index.html b/index.html index cda1d89..d711aba 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,27 @@

      Recent Releases

      +

      Release 2019-04 of December 23rd, 2019

      + +

      Highlights (*): Pandas-0.25.3, Scipy-1.4.1, scikit-learn-0.22.0, Numpy-1.17.4, Torch-1.3.0, Tensorflow_cpu-2.1.0rc1, VSCode-Python-2019.11.50794, Qt-5.14.0

      + +

      Release 2019-03 of September 28th, 2019

      Highlights (*): Pandas-0.25.1, Jupyterlab-1.1.4, Qt5-5.13.1, Scipy-1.3.1, scikit-learn-0.21.3, Altair-3.2.0, Torch-1.2.0, winrt-1.0.19128.1, a VSCode portable version

      From 6b87911a2f7bc3fab0cf070d2b88c9bde8caac29 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 28 Mar 2020 09:52:07 +0100 Subject: [PATCH 47/89] WinPython 2020-01 --- index.html | 37 ++++++++++++++++++++++--------------- md5_sha1.txt | 14 ++++++++++++++ 2 files changed, 36 insertions(+), 15 deletions(-) diff --git a/index.html b/index.html index d711aba..4f071a2 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,27 @@

      Recent Releases

      + +

      Release 2020-01 of March 26th, 2020

      + +

      Highlights (*): Spyder-4.1.1, Jupyterlab-2.0.1, VSCode-1.43.1, Numpy-1.18.2, Pandas-1.0.3, Matplotlib-3.2.1, Bokeh-2.0.0

      + + +

      Release 2019-04 of December 23rd, 2019

      Highlights (*): Pandas-0.25.3, Scipy-1.4.1, scikit-learn-0.22.0, Numpy-1.17.4, Torch-1.3.0, Tensorflow_cpu-2.1.0rc1, VSCode-Python-2019.11.50794, Qt-5.14.0

      @@ -79,21 +100,7 @@

      Recent Releases

    • WinPython 3.7.4.0Ps2-64bit Changelog, Packages and Downloads
    • WinPython 3.7.4.0Ps2-32bit Changelog, Packages and Downloads
    - -

    Release 2019-01 of March 9th, 2019

    - -

    Highlights : Pandas-0.24.1, Scipy-1.2.1, Cartopy-0.17.0, Numpy-1.16.2, Pytorch-1.0.1, Tensorflow-1.13.1, PyQt5-5.12.1 or PySide2-5.12.1 (Zero Version)

    - - +
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index a53476d..46e68b0 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,18 @@ +### WinPython 2020-01 release (March 26th, 2020) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +c965268a26fe5a93e929154c596dc831 | 0aab5fef1c15eb460164e40f8dc1eb6491c5b00c | 8004297d2d583d844e3b1bd67bd5367de79086bcc76a1544a4cf010d81b6be8b | Winpython64-3.7.7.0dot.exe | 23 141 445 Bytes +10c4919ffc342d0fcf5d76f37986cc42 | 0ccea60fb426661b63554289249d1507dc8a04c0 | 64303eb2a2c9c3e207a26ad8d5a0c88d51b6f24e241e84e38c2061b92a1a715a | Winpython32-3.7.7.0dot.exe | 22 136 373 Bytes +646577652d24f274b375c79b3c3a2150 | 9f9745112234cdd65a0428e2e9e3bc4eeeb1723c | f625d4f658902b0f1d5845f3fe6ed911b6f751e5f5c5948bfcfe74d57470e4d4 | Winpython64-3.8.2.0dot.exe | 23 854 995 Bytes +5f53ae5152f6c522cb1b25164167febd | 5d99b263227219bd527eec6d5544af8057c62330 | b45d8154579114c8934640e114f508921ef1b48f3e7ce10b4d65f9edec1c0a40 | Winpython32-3.8.2.0dot.exe | 22 783 110 Bytes +20348d6dce7d10808d052abfdf8af1de | 98afa57668a0b38dd202b628ce6347633a607be8 | 97ddd3467450e1f328e546b1d1059874e8a41163c9c3fa59fe50d0c61ef74b99 | Winpython64-3.7.7.0.exe | 691 801 924 Bytes +cffdc3ec5a8a4672c3f7434c0afa4083 | a92cc482c2ee17c4397cb02c8614823d2e4d1a1f | a4591069de67993b232174f28e5cdfc9217f25dc3d87ee01e54dbb3503cf573e | Winpython64-3.8.2.0cod.exe | 656 189 440 Bytes +a87368bb97cd76e254ecbbdc178a396f | 9d5ac2449a37ec1ab4500c3b77a2c04cc2ca9d03 | 5f44a8f40c0037e467280caf28377c5d8ff59800a4e07ec8b07feb8304f3e659 | Winpython64-3.8.2.0.exe | 620 414 873 Bytes +f81ca9424c9aa4749e2fa4dbeb04ded6 | 1ced6da8e401b659411201232a4b136a474cbd1a | f62ec5de7d343300b074d78575f97a92126f36ef08902b325534554c3c259569 | Winpython64-3.7.7.0cod.exe | 674 653 688 Bytes + + ### WinPython 2019-04 release (December 23rd, 2019) MD5 | SHA-1 | SHA-256 | Binary | Size From 437ca93ae95437b32b17de00cf4f6bb65acc546c Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 28 Mar 2020 10:03:01 +0100 Subject: [PATCH 48/89] clean-up WinPython 2019-02 and add vscode icon --- images/winpython_launchers.png | Bin 28891 -> 31554 bytes index.html | 18 ++++-------------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/images/winpython_launchers.png b/images/winpython_launchers.png index aa3de3ee9a7aae303bc7cad0c6ee8a16a557b5c4..2b293b14fbea7840122f052a29153117ed4d0138 100644 GIT binary patch literal 31554 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

    %;;p<&~bbR$7!~H~ry?<%9n4!V|s+Hw-rO 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 WWa%eK0U8oMlb2SJs*?B^_`d*gF_cgM diff --git a/index.html b/index.html index 4f071a2..6e6e23f 100644 --- a/index.html +++ b/index.html @@ -91,28 +91,18 @@

    Recent Releases

  • WinPython64-3.8.0.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
  • -

    Release 2019-02 of July 19th, 2019

    - -

    Highlights (*): Jupyterlab-1.0.2, Qt5-5.13, statsmodels-0.10.0, Scipy-1.3.0, scikit-learn-0.21.2, Matplotlib-3.1.1, Altair-3.1.0, PyTorch-1.1.0, Tensorflow-1.14.0 (Zero Version)

    - -
    WinPython Small Logos

    Overview

    -

    WinPython is a free open-source portable distribution of the Python programming language for Windows 7/8/10 and scientific and educational usage.

    +

    WinPython is a free open-source portable distribution of the Python programming language for Windows 8/10 and scientific and educational usage.

    WinPython Launcher Icons

    It is a full-featured (see our Wiki) Python-based scientific environment:

    • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
      • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, Pyzo, IDLEX or IDLE
      • -
      • out-of-the-box working Compiler (Mingw64) for Python 3.4, fully integrated Cython and Numba! See included example
      • +
      • fully integrated Cython and Numba! See included example
      • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
    • Portable: @@ -123,7 +113,7 @@

      Overview

    • Flexible:
      • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
      • -
      • These installations can be of different versions of Python (3.6/3.7/3.8...) and different architectures (32bit/64bit)
      • +
      • These installations can be of different versions of Python (3.7/3.8/3.9...)
    • Customizable:
        @@ -162,7 +152,7 @@

        Portable or not, the choice is yours!

        WinPython Small Logos
        - +
        WinPython Small Logos
        From 09747f3e08b4eb0f5123afbf8279729252b4b738 Mon Sep 17 00:00:00 2001 From: stonebig Date: Wed, 8 Apr 2020 22:18:19 +0200 Subject: [PATCH 49/89] per caution, suggesting windows 10 users may have to do it too https://github.com/winpython/winpython/issues/828 --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 6e6e23f..85e4248 100644 --- a/index.html +++ b/index.html @@ -142,7 +142,7 @@

        Portable or not, the choice is yours!

      That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

      (*) For recent WinPython, Windows 8 users may have to install Microsoft Visual C++ Redistributable for Visual Studio 2017 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit) +

      (*) For recent WinPython, Windows 8..10 users may have to install missing system DLL Microsoft Visual C++ Redistributable for Visual Studio 2017..2019 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit)

      (*) For best Winpython 2018-01 and later experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython From b8145ae4607f97e02ba740f7fcc865374574f311 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 26 Apr 2020 19:49:04 +0200 Subject: [PATCH 50/89] make the missing DLL problem of WinPython 2020-01 more obvious --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 85e4248..bc35b52 100644 --- a/index.html +++ b/index.html @@ -27,7 +27,7 @@

      Recent Releases

      -

      Release 2020-01 of March 26th, 2020

      +

      Release 2020-01 of March 26th, 2020 (this release may require from Windows 10 users a missing system DLL, see (*) )

      Highlights (*): Spyder-4.1.1, Jupyterlab-2.0.1, VSCode-1.43.1, Numpy-1.18.2, Pandas-1.0.3, Matplotlib-3.2.1, Bokeh-2.0.0

        From 5d384bc24379926637c6dad7823767f6172754ba Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 30 May 2020 22:34:00 +0200 Subject: [PATCH 51/89] update frontpage to WinPython 2020-02 --- index.html | 49 +++++++++++++++++++++++-------------------------- md5_sha1.txt | 14 ++++++++++++++ 2 files changed, 37 insertions(+), 26 deletions(-) diff --git a/index.html b/index.html index bc35b52..efb6707 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,25 @@

        Recent Releases

        +

        Release 2020-02 of May 30th, 2020

        + +

        Highlights (*): Spyder-4.1.3, Jupyterlab-2.1.1, VSCode-1.45.1, scikit_learn-0.23.1, Cartopy-0.18.0, Trio-0.15.1

        + +

        Release 2020-01 of March 26th, 2020 (this release may require from Windows 10 users a missing system DLL, see (*) )

        Highlights (*): Spyder-4.1.1, Jupyterlab-2.0.1, VSCode-1.43.1, Numpy-1.18.2, Pandas-1.0.3, Matplotlib-3.2.1, Bokeh-2.0.0

        @@ -40,10 +59,10 @@

        Recent Releases

        WinPython 3.8 Downloads (**) via SourceForge and Github (not available for Python 3.8 : Tensorflow, Cartopy)

        -
      • WinPython64-3.8.1.0dot = Python 3.8 64bit only : Changelog, Packages
      • -
      • WinPython32-3.8.1.0dot = Python 3.8 32bit only : Changelog, Packages
      • -
      • WinPython64-3.8.1.0 = Python 3.8 64bit + PyQt5 + Spyder : Changelog, Packages
      • -
      • WinPython64-3.8.1.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
      • +
      • WinPython64-3.8.2.0dot = Python 3.8 64bit only : Changelog, Packages
      • +
      • WinPython32-3.8.2.0dot = Python 3.8 32bit only : Changelog, Packages
      • +
      • WinPython64-3.8.2.0 = Python 3.8 64bit + PyQt5 + Spyder : Changelog, Packages
      • +
      • WinPython64-3.8.2.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
      @@ -68,28 +87,6 @@

      Recent Releases

    • WinPython64-3.8.1.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
    -

    Release 2019-03 of September 28th, 2019

    - -

    Highlights (*): Pandas-0.25.1, Jupyterlab-1.1.4, Qt5-5.13.1, Scipy-1.3.1, scikit-learn-0.21.3, Altair-3.2.0, Torch-1.2.0, winrt-1.0.19128.1, a VSCode portable version

    -
      -

      WinPython 3.7 Downloads (**) via SourceForge and Github

      - -
    • WinPython64-3.7.4.1Zero = Python 3.7 64bit only : Changelog, Packages
    • -
    • WinPython32-3.7.4.1Zero = Python 3.7 32bit only : Changelog, Packages
    • -
    • WinPython64-3.7.4.1 = Python 3.7 64bit + PyQt5 + Spyder : Changelog, Packages
    • -
    • WinPython32-3.7.4.1 = Python 3.7 32bit + PyQt5 + Spyder : Changelog, Packages
    • -
    • WinPython64-3.7.4.1Ps2 = Python 3.7 64bit + Pyside2 : Changelog, Packages
    • -
    • WinPython32-3.7.4.1Ps2 = Python 3.7 32bit + Pyside2 : Changelog, Packages
    • -
    • WinPython64-3.7.4.1cod = Python 3.7 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
    • - -

      WinPython 3.8 Downloads (**) via SourceForge and Github (added October 23rd, 2019)

      (please note that some Packages are not yet available for Python 3.8 : Torch, Tensorflow, Cartopy)

      - -
    • WinPython64-3.8.0.0dot = Python 3.8 64bit only : Changelog, Packages
    • -
    • WinPython32-3.8.0.0dot = Python 3.8 32bit only : Changelog, Packages
    • -
    • WinPython64-3.8.0.0 = Python 3.8 64bit + PyQt5 + Spyder : Changelog, Packages
    • -
    • WinPython32-3.8.0.0 = Python 3.8 32bit + PyQt5 + Spyder : Changelog, Packages
    • -
    • WinPython64-3.8.0.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
    • -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index 46e68b0..ed93669 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,18 @@ +### WinPython 2020-02 release (May 30th, 2020) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +fb9550ee520688bbe8c559d3a17641ac | 0f24ebd349abe4a927601aed5085bc1ef29bc5d7 | 3a19dc2afcfb5e9ed1f6b6c863ce01f62fab26214e79cdd11d01077a4d058949 | Winpython64-3.7.7.1dotrc.exe | 23 261 081 Bytes +066085dede3b0797c4b6f9412c596905 | 1b5a0f0720faf979f2568265e4cdb11558321374 | 6aa39bf8792a2853b245418085618e035ac4c290e20823bc3d678c4bd87defc9 | Winpython32-3.7.7.1dotrc.exe | 22 254 422 Bytes +fe02b8ce4f614e4523afe2242c567feb | 4b443ecef9c4ef457d11900f90074da6f6056dbf | 6f10ce63a2043c86d08264cdfdcb5fa8dad498d546765df1c392839ecc89bbdf | Winpython64-3.8.3.0dotrc.exe | 24 135 998 Bytes +43cb7be6ca370880df2363e354df3e52 | c45540722d62236b292e96c21588386c74100d20 | 9fcaba999cef828afa82f2b25fac5f198170134480a656796c86752ab57a6b3f | Winpython32-3.8.3.0dotrc.exe | 23 108 507 Bytes +474a18ef346f6cda4bd6f2c177b2e92c | d14b5f498123c7661dcd517e2806ddd6a3022786 | 9fdc53fdb468c9c5837eb7513cbee3efcb7d791b9744ffee10370556087af05c | Winpython64-3.7.7.1.exe | 736 749 968 Bytes +077ac421e193f643f4154bee96e78711 | 435dbb4f8ef95bc2e10548c129123ace2ea4691d | cdf73828d7fbf6fa8717fd5b9e7126fb10fb7c4a6e1783814f63390bdca96a0c | Winpython64-3.8.3.0.exe | 728 591 527 Bytes +4e7b04514d6f20ddfe8474aa0715c2f8 | c990b3852e824a966fd99ccd831b83026c7aabdd | 8a7a16d4337cdc2533eea2e1f9b922d4f1263a907889f7e615e33bcf252aae30 | Winpython64-3.7.7.1cod.exe | 666 455 987 Bytes +3094ac83518fcf037f29f6199b801e6e | 91cc5c5888ba2ecf7fc1cb014a63224dc5a47360 | f3870e8570b5f3e31821756089af1237859a6db8a971c1fea14a560d4c85a314 | Winpython64-3.8.3.0cod.exe | 658 361 818 Bytes + + ### WinPython 2020-01 release (March 26th, 2020) MD5 | SHA-1 | SHA-256 | Binary | Size From 0d9c1536cb608a86600c097b82812113f7d79fd2 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 22 Aug 2020 12:37:14 +0200 Subject: [PATCH 52/89] WinPython 2020-03 --- index.html | 43 ++++++++++++++++++++----------------------- md5_sha1.txt | 12 ++++++++++++ 2 files changed, 32 insertions(+), 23 deletions(-) diff --git a/index.html b/index.html index efb6707..0855133 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,26 @@

    Recent Releases

    +

    Release 2020-03 of August 22nd, 2020

    + +

    Highlights (*): Spyder-4.1.4, Jupyterlab-2.2.4, VSCode-1.48.0, Numpy-1.19.1+mkl, SciPy-1.5.2

    + +

    WinPython 3.9 Downloads (**) via SourceForge and Github

    + +
  • WinPython64-3.9.0.1dotrc = Python 3.9 64bit only : Changelog, Packages
  • +
  • WinPython32-3.9.0.1dotrc = Python 3.9 32bit only : Changelog, Packages
  • +
  • WinPython64-3.9.0.1codrc = Python 3.9 64bit + VSCode : Changelog, Packages
  • + + +

    Release 2020-02 of May 30th, 2020

    Highlights (*): Spyder-4.1.3, Jupyterlab-2.1.1, VSCode-1.45.1, scikit_learn-0.23.1, Cartopy-0.18.0, Trio-0.15.1

    @@ -65,29 +85,6 @@

    Recent Releases

  • WinPython64-3.8.2.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
  • - -

    Release 2019-04 of December 23rd, 2019

    - -

    Highlights (*): Pandas-0.25.3, Scipy-1.4.1, scikit-learn-0.22.0, Numpy-1.17.4, Torch-1.3.0, Tensorflow_cpu-2.1.0rc1, VSCode-Python-2019.11.50794, Qt-5.14.0

    - - -
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index ed93669..ab24d1a 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,15 @@ +### WinPython 2020-03 release (August 22nd, 2020) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +5f0c7164cd1dcd2128b626cea1871c71 | 0756ccbd5fd1659b7c03f423d7054a2495439087 | 418d78bb2227c6cc5d1da4898bf5092aad581b9ea00786531fdcae5912f3c935 | Winpython64-3.8.5.0dot.exe | 24 781 402 Bytes +63acb8be789d36f20eee047481c991f2 | 1f0584fe9879f9570277ab12c74bf9cf79ddd5e4 | 06bbbd837a71eca6b6d8f2d40657be2d3ba49f71700a779c9eacbd62d1b2794b | Winpython32-3.8.5.0dot.exe | 23 624 688 Bytes +f4a5c3e064555f5dbfa3762cfec1812b | 8eb2eeaf2dd7420cb057df6fa669b1a69308a0f1 | 89443c56b44a0ee3827bf38cf3d4d67202098d7d3b42c2c45e80d498c656b919 | Winpython64-3.8.5.0.exe | 718 696 511 Bytes +576199aca38c18e68590d3706320f357 | a95d571d20a5b03aaad68338cd8bffeeca8ceb2f | d9056790e68ed8a548ada97c259f532f7be8f29e1c4142c4b31e2105710bdf75 | Winpython64-3.8.5.0cod.exe | 743 880 821 Bytes +6302b292f6e8c8e28c926d7ae7d0f3ce | e8e20f9b5a9e4d73cb1da6d488275e48d086c680 | 8755f55b85027eeda873ec987896a94dba6f627f0568f5b9515999c93bbb638c | Winpython64-3.9.0.1dotrc.exe | 25 376 125 Bytes +a165e0254b16cac3264979300814c47e | 71f72f27a53da7cb60942b2f271970a00dc3300b | a6403721b015baf5c3a2fd2e2650e3b50d2ff938333e67790cc10375efe57951 | Winpython32-3.9.0.1dotrc.exe | 24 217 658 Bytes +4e37f0e452f4b5baf30ec1789747ba59 | 3de50334d1a17c59f26d050d21f6742489bbe12c | ab40846960e8e57db8b43fa330d69fada99eda778408edf16e8a2e84b8e4a8c3 | Winpython64-3.9.0.1codrc.exe | 635 162 253 Bytes + ### WinPython 2020-02 release (May 30th, 2020) From 2eca8b4c81a6ad46262dffbea0dc7021c6a41a2b Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 1 Nov 2020 13:03:18 +0100 Subject: [PATCH 53/89] WinPython 2020-04 --- index.html | 26 +++++++++++++++++++++++--- md5_sha1.txt | 14 ++++++++++++++ 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 0855133..1dfb698 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,26 @@

    Recent Releases

    +

    Release 2020-04 of October 31st, 2020

    + +

    Highlights (*): Spyder-4.1.5, Jupyterlab-2.2.9, VSCode-1.50.0, Numpy-1.19.2+mkl, SciPy-1.5.3, PyQt5-Tools

    + +

    Release 2020-03 of August 22nd, 2020

    Highlights (*): Spyder-4.1.4, Jupyterlab-2.2.4, VSCode-1.48.0, Numpy-1.19.1+mkl, SciPy-1.5.2

    @@ -38,7 +58,7 @@

    Recent Releases

  • WinPython32-3.8.5.0dot = Python 3.8 32bit only : Changelog, Packages
  • WinPython64-3.8.5.0 = Python 3.8 64bit + PyQt5 + Spyder : Changelog, Packages
  • WinPython64-3.8.5.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
  • - +

    WinPython 3.9 Downloads (**) via SourceForge and Github

  • WinPython64-3.9.0.1dotrc = Python 3.9 64bit only : Changelog, Packages
  • @@ -138,7 +158,7 @@

    Portable or not, the choice is yours!

    (*) For recent WinPython, Windows 8..10 users may have to install missing system DLL Microsoft Visual C++ Redistributable for Visual Studio 2017..2019 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit) -

    (*) For best Winpython 2018-01 and later experience, it is recommended to have Winpython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython +

    (*) For best Winpython 2018-01 and later experience, it is recommended to have WinPython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython

    (**) Since WinPython 2019-02, all installers are just 7zip auto-extracts. @@ -146,7 +166,7 @@

    Portable or not, the choice is yours!

    WinPython Small Logos
    - +
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index ab24d1a..d85c1f1 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,17 @@ +### WinPython 2020-04 release (October 31st, 2020) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +b1963e34837b4ffd5496dcac8b6b9beb | 2d47f86c2cfc9f5770876adae65b93b99e680287 | 93cc3db75dffb4d56b9f64af43294f130f2c222a66de7a1325d0ce8f1ed62e26 | Winpython64-3.9.0.2dot.exe | 25 480 579 Bytes +0c9c8211e49527fffab9a03d4535aa9f | 05933a1c33122d0bfa74fa2f0786f4dc88c3f570 | c53d31cd58a36bac36aa44fc7e7583b14fb3d9a381611e984184e0ad8d5303a9 | Winpython32-3.9.0.2dot.exe | 24 334 442 Bytes +9e10b031c98510d4d1ba7e89d80138ab | d1ff73b4138dca68619755680568a5eef977a307 | 9202fcb89683c9ca1d5018d91f1be712c9a0df75f7f7e8ce8e0fc7a117ebc0a6 | Winpython64-3.8.6.0dot.exe | 25 007 720 Bytes +5cb03444326d884c2ac2254012e1b2aa | 52267451702a4e016bd521536fd7aa04b54d8d33 | 16b5bb3f7b9e0a688106e7fa131ca752ac0d0a34c8e564fe45ffa5c340d9f51f | Winpython32-3.8.6.0dot.exe | 23 857 445 Bytes +fbc1f2af5f4df131bc18f2471cfe8035 | ec548abcde5da8ad3246c6018f47a5d17ea31e28 | d1457a5732825d0717f54e45e9d1f8ea890974e317d0b797a99b5d70b59d6839 | Winpython64-3.8.6.0cod.exe | 816 551 869 Bytes +3f06233c878562dfb65235e7fa285719 | 138af3c212cd16698380a0ba957d5cea758594e5 | 3852a7ff115107d0bdfb6d2450c3bc4c84247dc990b939e641282a085625d32d | Winpython64-3.8.6.0.exe | 756 873 470 Bytes +660054fd98f07bc111bebd77153b38a4 | 06b85fc842fde323cf8b3497ed59c9b9078dd49b | 067b51ab3ea704d56223acaf4064cc10c728058b84228d35aa8ef4aaa8edb962 | Winpython64-3.9.0.2.exe | 658 459 194 Bytes +dbb6120ad9407485f2a1dc2b8357bfc7 | 1bcab1336d04e7dab6a54fcc8919be155ead0752 | 73325ed4426db50179b32d63ae8f65d300bb50c87d7417aaaa3e33bdf9836250 | Winpython64-3.9.0.2cod.exe | 805 236 702 Bytes + + ### WinPython 2020-03 release (August 22nd, 2020) MD5 | SHA-1 | SHA-256 | Binary | Size From 0b767b96facbe6d7e548687587e54f7f3325cf9a Mon Sep 17 00:00:00 2001 From: bnjmnp Date: Sun, 8 Nov 2020 15:49:36 +0100 Subject: [PATCH 54/89] fix WinPython 3.9 GitHub download link for the 31st october release --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 1dfb698..3635614 100644 --- a/index.html +++ b/index.html @@ -39,7 +39,7 @@

    Recent Releases

  • WinPython64-3.8.6.0 = Python 3.8 64bit + PyQt5 + Spyder + Pytorch: Changelog, Packages
  • WinPython64-3.8.6.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
  • -

    WinPython 3.9 Downloads (**) via SourceForge and Github

    +

    WinPython 3.9 Downloads (**) via SourceForge and Github

  • WinPython64-3.9.0.2dot = Python 3.9 64bit only : Changelog, Packages
  • WinPython32-3.9.0.2dot = Python 3.9 32bit only : Changelog, Packages
  • From ab992119b79513b0a0aebbf351110122aa16931e Mon Sep 17 00:00:00 2001 From: stonebig Date: Mon, 28 Dec 2020 20:22:57 +0100 Subject: [PATCH 55/89] WinPython 2020-05 --- index.html | 21 +++++++++++++++++++++ md5_sha1.txt | 14 ++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/index.html b/index.html index 3635614..7b818ea 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,27 @@

    Recent Releases

    +

    Release 2020-05 of December 28st, 2020

    + +

    Highlights (*): Spyder-4.2.1, VSCode-1.52.1, Pandas-1.1.5, scikit_learn-0.24.0, SciPy-1.5.4, Numpy-1.19.4+mkl

    + + +

    Release 2020-04 of October 31st, 2020

    Highlights (*): Spyder-4.1.5, Jupyterlab-2.2.9, VSCode-1.50.0, Numpy-1.19.2+mkl, SciPy-1.5.3, PyQt5-Tools

    diff --git a/md5_sha1.txt b/md5_sha1.txt index d85c1f1..a786af8 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,17 @@ +### WinPython 2020-05 release (December 28st, 2020) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +0b1c9b43c03767fda4656ed240aa42df | 2ecd8996fce3d25d6d8fccf43f8576438ba1eeee | 87d5e586a52113b7d28f613e0c70a4973f659649e3ca5aae2cfe139dc1162f22 | Winpython64-3.8.7.0dot.exe | 25 345 933 Bytes +53334a80740c60d9f6a6a1094e984b3b | 184728336d7a2df25f81e63f5130953b7e4fcc20 | 8f5e054486ec5ce0cbd834221881bb5018e391d61dbe60dba156433088e7a1e7 | Winpython32-3.8.7.0dot.exe | 24 270 449 Bytes +8f81b3417f2082a4ae80b5dcaabfd10c | 4d64a3f1b98904e5c9bab6f3f80a7894d597fbbe | 687585ca7a546e9e393802d11fa505468adcf5aff844019dc0f396dfc3dab562 | Winpython64-3.8.7.0.exe | 762 745 203 Bytes +1bba03d0d796b02e273e9e6d56483349 | 8e9a1066cbd06292056e1ddc8bd58f2e798f4aef | d17e9f0b837d1f9d63909ff39b7c44545b79268affd0ac848fd8f05af57745ea | Winpython64-3.8.7.0cod.exe | 815 119 173 Bytes +6fe21b99f8536182e33f958a407248b1 | c42334b4ae1cd3871e7cbfbbca19b828a2c2cedc | 5a9044f51ba20fa443163013765889c5c1f13e747cf018ac9c2b2c629112762d | Winpython64-3.9.1.0dot.exe | 25 779 527 Bytes +1fcec7ae0f6e0ed075d1f288905d8e93 | 5754ed0de9c19af18fac1944a6f56eb7be12c18a | cef2b71ea5ed1272d11d3b837b8fa9e6f80bc653ee958aa126d1fcb272ba16b7 | Winpython32-3.9.1.0dot.exe | 24 710 010 Bytes +715c4a0ebfad9f227958f0c179fb4642 | 0b9c1ba15e94c0f77ff1b41762b9783543ccfcac | 7ecdb34ba326925096e6179277a3b0d031f19898731ec16f44fe9aecebca3dba | Winpython64-3.9.1.0cod.exe | 805 932 757 Bytes +792f2e4540b08ac3ef202e8086c8781e | 3312dae22ced6d80a1272735a810fb2cd8339ff8 | 2ed6a095513587b18c61ec0e20610a96cdc6f419507c38f73a2538f2e11b5412 | Winpython64-3.9.1.0.exe | 754 649 487 Bytes + + ### WinPython 2020-04 release (October 31st, 2020) MD5 | SHA-1 | SHA-256 | Binary | Size From 402f26450320476a4e7bfc732c64461283ed4ce9 Mon Sep 17 00:00:00 2001 From: stonebig Date: Wed, 10 Mar 2021 20:33:22 +0100 Subject: [PATCH 56/89] pushing sha-256 --- md5_sha1.txt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/md5_sha1.txt b/md5_sha1.txt index a786af8..d66631a 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,17 @@ + +### WinPython 2021-01 release (March 10th, 2021) + +MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|---------------------------------|------------------- +79445bb4d2accdef4edd5f3e2ae95244 | fc364e5e9e5f01c779dc9b04dfa6d016b1e9d761 | c1b5145178ad589e1da0314de415162d275bbaa4cc70a210f2c0c40393c46fda | Winpython64-3.8.8.0dot.exe | 25 171 579 Bytes +c1214db758d35c04ac3f458638fcd457 | bb223d77295d418bb5b758eb66e247f9dc8ec36e | d727c8354a2903a725db12d326f2dfd27628b64e5b9b58f6d2193265e5f6c408 | Winpython32-3.8.8.0dot.exe | 24 026 354 Bytes +ced8e9d1f21ebadd1e53cca9c0970e3a | 4f2a5e342e9e541eb8fd6177b53b759ddf5f8490 | b680565c1ec5cc2667e84ed930c02a2d255fbc3c666e968d8d0cd16a017b66b0 | Winpython64-3.8.8.0.exe | 759 606 316 Bytes +68103129d080d43d24541371a7d62098 | 50a0e61988fd1def21c0c6e9bcae9363c606d1b8 | ee68be4d0c2db402c52ee0d3f2eafc14f57d12d4be2616334aa2b78e63f45378 | Winpython64-3.9.2.0dot.exe | 25 617 319 Bytes +85cdf9dd4cd79dd7e93aa037f46c338e | 7fdb0e1a9a258a589548b12c63519b4916317c33 | 2ff6b8977163d6df6e8d73365a937dea017b2aaebc8455c00ba661642aa053fa | Winpython32-3.9.2.0dot.exe | 24 476 905 Bytes +3dcd0d81ab36f893864422895a10d5f7 | 728062114e325ffb27359ec935f4ddaeb45668d8 | 01445bb331fdfeb19f0223a3b9c1435e6b539ef85560990ca9ab352910f8d87e | Winpython64-3.9.2.0.exe | 757 863 140 Bytes +680a27020d82e1ae1f9960757f14abf9 | 10983a22c64f2fadb49c1c207b9585083bc67f95 | 967d32778aa2951fcbec8d621bf50955273687ae547c8d3e6b2e9dec40044d6a | Winpython64-3.9.2.0cod.exe | 816 061 586 Bytes + + ### WinPython 2020-05 release (December 28st, 2020) MD5 | SHA-1 | SHA-256 | Binary | Size From df2fb400dd9c2cb9e0e591d4e7e691ab717bd3c7 Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 11 Mar 2021 22:17:36 +0100 Subject: [PATCH 57/89] WinPython 2021-01 --- index.html | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/index.html b/index.html index 7b818ea..5814f04 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,26 @@

    Recent Releases

    +

    Release 2021-01 of March 10th, 2021

    + +

    Highlights (*): Spyder-4.2.3, Jupyterlab-3.0.9, VSCode-1.54.1.0, Pandas-1.2.3, SciPy-1.6.1, Numpy-1.20.1+mkl

    + + +

    Release 2020-05 of December 28st, 2020

    Highlights (*): Spyder-4.2.1, VSCode-1.52.1, Pandas-1.1.5, scikit_learn-0.24.0, SciPy-1.5.4, Numpy-1.19.4+mkl

    @@ -107,25 +127,6 @@

    Recent Releases

  • WinPython64-3.8.3.0cod = Python 3.8 64bit + PyQt5 + Spyder + VSCode : Changelog, Packages
  • -

    Release 2020-01 of March 26th, 2020 (this release may require from Windows 10 users a missing system DLL, see (*) )

    - -

    Highlights (*): Spyder-4.1.1, Jupyterlab-2.0.1, VSCode-1.43.1, Numpy-1.18.2, Pandas-1.0.3, Matplotlib-3.2.1, Bokeh-2.0.0

    - -
    WinPython Small Logos
    From 7e598ff7ed670b352f7026fe1235f853f651480d Mon Sep 17 00:00:00 2001 From: stonebig Date: Wed, 21 Apr 2021 13:46:51 +0200 Subject: [PATCH 58/89] WinPython 2021-02 --- index.html | 21 ++++++++++++++++++++- md5_sha1.txt | 12 ++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 5814f04..f8c0dae 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,25 @@

    Recent Releases

    +

    Release 2021-02 of April 21th, 2021

    + +

    Highlights (*): Spyder-5.0.1, VSCode-1.55.2.0, Jupyterlab_git-0.30.0, Matplotlib-3.4.1, Panel-0.11.3, Voila-0.2.9

    + +

    Release 2021-01 of March 10th, 2021

    Highlights (*): Spyder-4.2.3, Jupyterlab-3.0.9, VSCode-1.54.1.0, Pandas-1.2.3, SciPy-1.6.1, Numpy-1.20.1+mkl

    @@ -188,7 +207,7 @@

    Portable or not, the choice is yours!

    WinPython Small Logos
    - +
    WinPython Small Logos
    diff --git a/md5_sha1.txt b/md5_sha1.txt index d66631a..c232e79 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,15 @@ +### WinPython 2021-02 release (April 21th, 2021) + + MD5 | SHA-1 | SHA-256 | Binary | Size +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|------------------- +48d1597080832664e542d0850ed9ee2b | 5c9e5a41751eb36d5514361d9cc922efc9b593dc | d097af2074a0c3fcf3ebf87ae106b55fe73be8e576fbcf4e90fc3592b4dd104d | Winpython64-3.8.9.0dot.exe | 25 315 497 Bytes +d89baf440aa361e07a5c639a80c4c067 | c584af284a0551792283ad998a48243886e56ebd | 9ae5f7600a6b01cd67c5ffda6087f12c9b5eeded2e9365eebe79571e6f1db022 | Winpython32-3.8.9.0dot.exe | 24 166 205 Bytes +f8bfa05033a173f1cf69e6da02f1f2c6 | 605683f96f34f3c73226a9f72f2d6d375c4ebef2 | 15920bda9c73deb1ec237d991dcf3d9ceca3997d9d0ee0f08214d093c1c5997a | Winpython64-3.9.4.0dot.exe | 25 769 399 Bytes +e58347849b4e8f271796a7ca5260a242 | bec9c5cb2d99ff960d2a4c389ed685ebdc975115 | c3cc442c171214293c7f062f9fe2e35f5b890961989927564a78b71534f5e584 | Winpython32-3.9.4.0dot.exe | 24 616 116 Bytes +dbb76613b25a167420c3ac8415643c95 | 28408e1eb3db432591f758607270fc3b84e0f579 | 440c5c299b678a10ee84331f83928b1ac63853cb044773210033287c7350652a | Winpython64-3.8.9.0.exe | 765 143 976 Bytes +e2426523baecbe7c8ed95a1cf5f773d7 | 43d860ebfeba0f8c6e0bbc11bbc6e0b35dd4168d | 1074dead96e3ffb39dd2376266ff96ed0fab77af0ec75458ef5f9661e0f349d1 | Winpython64-3.9.4.0.exe | 765 080 556 Bytes +c74c93f38e1f151d1a940c54367ff0bc | d2a064c13e96b5b42d6d9185fe4cf6fad743fccb | e9c353d84c21559313fac550d0fd9f8a73dbc82c5f2257999fc7d4ba140b79b6 | Winpython64-3.9.4.0cod.exe | 824 500 864 Bytes + ### WinPython 2021-01 release (March 10th, 2021) From 1685c88d69057e421bc7e8c31445409878203424 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 4 Jul 2021 14:41:25 +0200 Subject: [PATCH 59/89] WinPython 2021-03 --- index.html | 23 +++++++++++++++++++++++ md5_sha1.txt | 15 +++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/index.html b/index.html index f8c0dae..43f8b3c 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,29 @@

    Recent Releases

    +

    Release 2021-03 of July 4th, 2021

    + +

    Highlights (*): numpy-1.21.0+mkl, scipy-1.7.0, scikit_learn-0.24.2, Pandas-1.2.5, Matplotlib-3.4.2, fastai-2.4

    + + +

    Release 2021-02 of April 21th, 2021

    Highlights (*): Spyder-5.0.1, VSCode-1.55.2.0, Jupyterlab_git-0.30.0, Matplotlib-3.4.1, Panel-0.11.3, Voila-0.2.9

    diff --git a/md5_sha1.txt b/md5_sha1.txt index c232e79..7f01baf 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,18 @@ +### WinPython 2021-03 release (July 4th, 2021) + + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +fa2715d98015019192ebf728f253ae9c | ba4f263ef533df404f7c8cc0b47a6eb78f429bfa | 489ab15c35336cdac32b88a5282d7b5631af74afba34ac6cee3ac475ffd7c7dd | Winpython64-3.7.10.0dotPyPy.exe | 25 763 221 Bytes | 8758c48b8c74ba3621989b9abf2ddcfcd38049de21512ffcc9ae2688156508c9 +819d5da22c5b2f025eba789ea3edf725 | 4e67187e3bf949ee7ab85d7fbc873f2ac7691c5a | 959d3f7a29134ec758a048217c3bee1010dd1322c98f2452b853796360b748fd | Winpython64-3.7.10.0PyPy.exe | 486 605 762 Bytes | a686ffa27b8cfe96aa227cec7ca1ace5da744ea969dfbdbc76c96f2c9c63d514 +2f730858920f12c65991b7f7490bbdd2 | f26b443eaad4727c3e765af85e08081772e48bed | 7e95875b3217429b54939d45d69f87b6f2013a6cbd2e08b52429b466785bdba2 | Winpython64-3.8.10.0dot.exe | 25 375 720 Bytes | 96ef274f4691a66386d173d873e187259729773cb8e3ef6dc224b82493ca6759 +6033a8688e3e10c7f2000b1529683abe | 289f45be877469c8237f373b62eaa280f739ed10 | f63295ee104790e80ca1a7e67274d57f1a22aa33dce5850bd9f3464b709739d6 | Winpython32-3.8.10.0dot.exe | 24 217 953 Bytes | a1946929a4d5c3d58e4413aa43131eefd14db6bb0291c9cd29a161940adabe21 +dc35b0436535d39166fbc97d0915d22a | a62f1ce23f4569a995368b31599f67a9ab308a69 | 01f2a00265110a51f1fc91a058f1698aef1ef9a1b70f4e6d09f2c9fdccf6edf8 | Winpython64-3.9.5.0dot.exe | 25 839 482 Bytes | 020906ab69e829447cfaa8058863636e4af22e35288ad94081c2416db676d71a +5fd4f594ce5219db3c1269cc79d5f0b6 | bcba1b841afeb476a171af4342703ec962ef247e | 5dc6715618e58944668c28525b2dc7aeacc1a38d9a7df75070ee639e10429b05 | Winpython32-3.9.5.0dot.exe | 24 682 542 Bytes | 87638c83b59a952a71fcaa90aa834634b39c08cea4130342be04635e5cb368ba +dc35b0436535d39166fbc97d0915d22a | a62f1ce23f4569a995368b31599f67a9ab308a69 | 01f2a00265110a51f1fc91a058f1698aef1ef9a1b70f4e6d09f2c9fdccf6edf8 | Winpython64-3.9.5.0dot.exe | 25 839 482 Bytes | 020906ab69e829447cfaa8058863636e4af22e35288ad94081c2416db676d71a +5fd4f594ce5219db3c1269cc79d5f0b6 | bcba1b841afeb476a171af4342703ec962ef247e | 5dc6715618e58944668c28525b2dc7aeacc1a38d9a7df75070ee639e10429b05 | Winpython32-3.9.5.0dot.exe | 24 682 542 Bytes | 87638c83b59a952a71fcaa90aa834634b39c08cea4130342be04635e5cb368ba +1783b1eb3e7d124e481898db5c94aeff | ed1476a8122ab2b65cc5b31e5de6691c39da6f15 | 9a2f25ee58a35656a06bafeddba87c47de28cf11931cdbafe0ebd5b5a4eac2d5 | Winpython64-3.9.5.0.exe | 790 159 865 Bytes | dd5d79c6e306597d51b57f87aabb725028eecf5f3018d2ef6644327bca8604cf + + ### WinPython 2021-02 release (April 21th, 2021) MD5 | SHA-1 | SHA-256 | Binary | Size From 8b6bd1d9d1df8bf90a4e7d2cffbf7e7b02ea15ca Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 25 Sep 2021 20:45:19 +0200 Subject: [PATCH 60/89] new Spyder icons --- images/winpython_launchers.png | Bin 31554 -> 32242 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/images/winpython_launchers.png b/images/winpython_launchers.png index 2b293b14fbea7840122f052a29153117ed4d0138..2da02a98b4673c7ebddab6d8ce957071901742ad 100644 GIT binary patch literal 32242 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 literal 31554 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 Date: Thu, 11 Nov 2021 11:15:13 +0100 Subject: [PATCH 61/89] WinPython 2021-04 --- index.html | 38 +++++++++++++++++++++++++++++++++----- md5_sha1.txt | 15 +++++++++++++++ 2 files changed, 48 insertions(+), 5 deletions(-) diff --git a/index.html b/index.html index 43f8b3c..7dc8ca4 100644 --- a/index.html +++ b/index.html @@ -27,22 +27,50 @@

    Recent Releases

    +

    Release 2021-04 of November 11th, 2021

    + +

    Highlights (*): Jupyterlab-3.2.2, Spyder-5.1.5, numpy-1.20.3+mkl, scipy-1.7.2, scikit_learn-1.0.1, Pandas-1.3.4, Matplotlib-3.5.0pre, Pyside6-6.2.1, dash-2.0.0, streamlit-1.1.0

    + + +

    Release 2021-03 of July 4th, 2021

    Highlights (*): numpy-1.21.0+mkl, scipy-1.7.0, scikit_learn-0.24.2, Pandas-1.2.5, Matplotlib-3.4.2, fastai-2.4

      -

      WinPython 3.7 Downloads (**) via SourceForge and Github

      +

      WinPython 3.7 Downloads (**) via SourceForge and Github

      -
    • WinPython64-3.7.10.0dot = pypy3.7-v7.3.5 64bit only : Changelog, Packages
    • -
    • WinPython64-3.7.10.0 = pypy3.7-v7.3.5 64bit + Jupyterlab : Changelog, Packages
    • +
    • WinPython64-3.7.10.0dotPyPy = PyPy3.7-v7.3.5 64bit only : Changelog, Packages
    • +
    • WinPython64-3.7.10.0PyPy = PyPy3.7-v7.3.5 64bit + Jupyterlab : Changelog, Packages
    • -

      WinPython 3.8 Downloads (**) via SourceForge and Github

      +

      WinPython 3.8 Downloads (**) via SourceForge and Github

    • WinPython64-3.8.10.0dot = Python 3.8 64bit only : Changelog, Packages
    • WinPython32-3.8.10.0dot = Python 3.8 32bit only : Changelog, Packages
    • -

      WinPython 3.9 Downloads (**) via SourceForge and Github

      +

      WinPython 3.9 Downloads (**) via SourceForge and Github

    • WinPython64-3.9.5.0dot = Python 3.9 64bit only : Changelog, Packages
    • WinPython32-3.9.5.0dot = Python 3.9 32bit only : Changelog, Packages
    • diff --git a/md5_sha1.txt b/md5_sha1.txt index 7f01baf..3bc672e 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,18 @@ +### WinPython 2021-04 release (November 11th, 2021) + + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +b2730089191fee7efbc5fb01307b63ba | 7c2d4d980192e9f956db1e29850900b281d6f214 | dc2b8d5d054030588df3d7ecff4505c329bddbf32e713963e1267a0bbc5473f2 | Winpython64-3.7.12.0dotPyPy.exe | 25 440 506 Bytes | 2ad472aa11411fbccd0221f1742ecd13506e68b707acf3b18bbdd73421926ff2 +263d70e3d3b2042c69eba55ed0ca357c | a0cc975834c6e68c1a153d2decb2c60c80232219 | dc99e68f40b811ca18ec2dd62ac4719f46c53ab27d13a3f9169f1089883d9a75 | Winpython64-3.7.12.0PyPy.exe | 535 097 313 Bytes | 434892d86f1a483bd8eff1235e66adc0f9532e9aa12a5aabcbedb487c804ba06 +bbc219fe630c0927ddd87edc33544e2a | b71ce97dc21f9adef7c8d9e9191a860a734353ca | 5536619fef39a114e188f89cbd5dca61a47d84927bf2b13208c09f1bc5bd9984 | Winpython64-3.8.12.0dotPyPy.exe | 26 974 875 Bytes | 4596fa15564f7dd12e5b52e9b0538ebf4957d0d63bde04ebe9859bf2e6b30bb3 +ecf9ab4dd5d6e72013fd0203d179f6c4 | f2bb62184b77d372868712cf6103969f04098778 | e0d9e4a3499f11ee9e858c76b9c29d26c083dc6e8bf062642a142ec2760c5788 | Winpython64-3.9.8.0dot.exe | 26 488 781 Bytes | e1d9bdc6b07b5c01241d6dd4b36d402837a84d0210222477fc9cf3e02e39875c +4b4106fa925b5f88bd4ecc148474473e | a96bec8eeb0242ea2dbfd8d6c400f8d810d878d2 | 1999e317b227a42e4cb78bb81f8a9e085ff9b4442143bedd0ad3436374e1766a | Winpython32-3.9.8.0dot.exe | 25 351 074 Bytes | 5649f6c702136cee993d97ff504c1b6811d4c2a0fbe0ffb920af9a62767a462d +f4c61e49cf67e742a654350feca548bd | e12a018686e01dcf21264265090f7d74b026f0dc | 71293ed6d029b74de1883046270f0d354e7272a65cab5acb7ca729b51e6abe06 | Winpython64-3.9.8.0.exe | 826 270 488 Bytes | 3f46fe687ac82706b857be1c1ee12eb735ae4e55661ab2cb84e7a0c4de463411 +4a1c75708ab3a0bc269f61495cf2086a | dd6dcc90e5af0dd151f0dc8c3253b39d86afb149 | 8f1db900eff72d2bcd75e08780775ee519d28d4a2fbc4afeab191215c9802fd3 | Winpython64-3.10.0.1dot.exe | 26 364 268 Bytes | cf6618c2bd7f2fd18279fd055c24d7fe71fa054a6243ed40eb6805fe4bf445b2 +386050017b6df8ad50b9460bbb50bdcd | 13d92080bcafe3020a12856cdca7c2fbc226fec2 | a6a30c4bd70b30e2aff5e0d77daf6906881fce4889e73d4725cac2a1ae5b1f2b | Winpython32-3.10.0.1dot.exe | 25 160 853 Bytes | c8d1ddd64012faa271ef074a7e69cd2b7ff87d3b9f4bf8e360468c6795da280b +698582e3ee1a23c6052add65f105e7f6 | 2267409221d8f252bfbbea8855b5fdbb0a92c1dd | 42ace86f9b6b4ef54d9dc69cf166cad07a1c0ac163f7340cc4e890562a47bd79 | Winpython64-3.10.0.1.exe | 633 012 843 Bytes | 36864b305d4ef9beb5b84731d8bd31dccfd526e72984525d90868728bc2e982e + + ### WinPython 2021-03 release (July 4th, 2021) MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 From 6c9f0a33e4a022c18fd0da6aa8421c7df7e4d8a3 Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 12 Nov 2021 20:16:44 +0100 Subject: [PATCH 62/89] WinPython 2021-04 post1 corrected Winpython64-3.9.8.0post1.exe correct bad istory and package link for WinPythondotPyPy-64bit-3.8.12.0 --- index.html | 4 ++-- md5_sha1.txt | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 7dc8ca4..c692a86 100644 --- a/index.html +++ b/index.html @@ -39,13 +39,13 @@

      Recent Releases

      WinPython 3.8 Downloads (**) via SourceForge and Github

      -
    • WinPython64-3.8.12.0dotPyPy = PyPy3.8-v7.3.7 64bit only : Changelog, Packages
    • +
    • WinPython64-3.8.12.0dotPyPy = PyPy3.8-v7.3.7 64bit only : Changelog, Packages
    • WinPython 3.9 Downloads (**) via SourceForge and Github

    • WinPython64-3.9.8.0dot = Python 3.9.8 64bit only : Changelog, Packages
    • WinPython32-3.9.8.0dot = Python 3.9.8 32bit only : Changelog, Packages
    • -
    • WinPython64-3.9.8.0 = Python 3.9.8 64bit + PyQt5 + Spyder + Pytorch : Changelog, Packages
    • +
    • WinPython64-3.9.8.0post1 = Python 3.9.8 64bit + PyQt5 + Spyder + Pytorch : Changelog, Packages
    • WinPython 3.10 Downloads (**) via SourceForge and Github

      diff --git a/md5_sha1.txt b/md5_sha1.txt index 3bc672e..78c86d5 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -12,6 +12,10 @@ f4c61e49cf67e742a654350feca548bd | e12a018686e01dcf21264265090f7d74b026f0dc | 71 386050017b6df8ad50b9460bbb50bdcd | 13d92080bcafe3020a12856cdca7c2fbc226fec2 | a6a30c4bd70b30e2aff5e0d77daf6906881fce4889e73d4725cac2a1ae5b1f2b | Winpython32-3.10.0.1dot.exe | 25 160 853 Bytes | c8d1ddd64012faa271ef074a7e69cd2b7ff87d3b9f4bf8e360468c6795da280b 698582e3ee1a23c6052add65f105e7f6 | 2267409221d8f252bfbbea8855b5fdbb0a92c1dd | 42ace86f9b6b4ef54d9dc69cf166cad07a1c0ac163f7340cc4e890562a47bd79 | Winpython64-3.10.0.1.exe | 633 012 843 Bytes | 36864b305d4ef9beb5b84731d8bd31dccfd526e72984525d90868728bc2e982e + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +c92d2e3d003bc28ad8c5a98c8d2ab3d1 | de8c6cbab635d5d6adae740f203de4fb0f701f58 | 2f25e5f539668044ae30155318c3dbf9d23e2cf38f29b9598f3b08daa390e267 | Winpython64-3.9.8.0post1.exe | 843 570 185 Bytes | 15b50f9e7ec2cef4e3f6730c3715ff1b627f954ed050f1348deae121ea9efdfc + ### WinPython 2021-03 release (July 4th, 2021) From afed7524ef177a131f4567877584540d6906b0b0 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 29 Jan 2022 13:17:29 +0100 Subject: [PATCH 63/89] WinPython 2021-05 --- index.html | 27 ++++++++++++++++++++++++--- md5_sha1.txt | 13 +++++++++++++ 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index c692a86..90f539c 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,27 @@

      Recent Releases

      +

      Release 2021-05 of January 25th, 2022

      + +

      Highlights (*): Jupyterlab-3.2.8, Spyder-5.2.2, numpy-1.21.5+mkl, Pandas-1.4.0, Matplotlib-3.5.0, Pyside2-5.15.2.1, Numba-0.55.0, Wasmer-1.1.0

      + + +

      Release 2021-04 of November 11th, 2021

      Highlights (*): Jupyterlab-3.2.2, Spyder-5.1.5, numpy-1.20.3+mkl, scipy-1.7.2, scikit_learn-1.0.1, Pandas-1.3.4, Matplotlib-3.5.0pre, Pyside6-6.2.1, dash-2.0.0, streamlit-1.1.0

      @@ -49,9 +70,9 @@

      Recent Releases

      WinPython 3.10 Downloads (**) via SourceForge and Github

      -
    • WinPython64-3.10.10.0dot = Python 3.9.10 64bit only : Changelog, Packages
    • -
    • WinPython32-3.10.10.0dot = Python 3.9.10 32bit only : Changelog, Packages
    • -
    • WinPython64-3.10.10.0 = Python 3.9.10 64bit + Pyside6 + Jupyterlab : Changelog, Packages
    • +
    • WinPython64-3.10.0.0dot = Python 3.10.0 64bit only : Changelog, Packages
    • +
    • WinPython32-3.10.0.0dot = Python 3.10.0 32bit only : Changelog, Packages
    • +
    • WinPython64-3.10.0.0 = Python 3.10.0 64bit + Pyside6 + Jupyterlab : Changelog, Packages
    diff --git a/md5_sha1.txt b/md5_sha1.txt index 78c86d5..29de3ef 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,16 @@ +### WinPython 2021-05 release (January 25th, 2022) + + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +f89ffddb6baafd0cda00639cb27be51f | 7e7b86b05a8ba04b5eee1d8c7be580350fd6af18 | 3e7668eb8206b5e63ce52aef2f81c3513e51614acc9b8b7447e7c7af183f56cb | Winpython64-3.11.0.0dota4.exe | 27 320 030 Bytes | 09d2caa336aa0b19230b1ce60eb16570d67b299a51de08a401f334b90752958d +b129f1cce35343fd96f824fc19a25f23 | 4c0c25c08f738341879143e37ce15bb162be23d3 | aeb1a08b0e0d80f1c3088fae1069f3a913da00dffe3be7b25800257c137ac51b | Winpython64-3.10.2.0dot.exe | 26 265 889 Bytes | 394b0687284e41239356407d572eca23d76e97014c2f78371d17396fa8f4f7f7 +875470e76953b37ddfe1f0c8f2489ad9 | 2a8c0431c86998c3f7339ef50d8d270abe7824a8 | d762e9c74016947d50451fd14033927c861bbc1801ad02a86f727f1503ebe59a | Winpython32-3.10.2.0dot.exe | 25 034 027 Bytes | 3b45eeb727bb1dfed5ed732c8f7646e7246ff6e75c06ded62ace85b2e7af115a +27c7f5ba309c75d4156472f94df5f999 | e96cabce38ddc6178575127281f4f2ab5cdee0ad | c7d41083435940906998f07f4d2abfad27108b7854653d4e41c0e329e32c55b0 | Winpython64-3.9.10.0dot.exe | 26 475 751 Bytes | 78d302debbc4488d992f5594bd469b2a86ff9bf8bbbf09f25658e1f32f2bc1cf +03150fc86fd56d8d067721100fd2a097 | 1c72ea2134ca71edf346cff60f64db81fbc4d94b | 497f9b4d1d3bebc3606c94911673b843dda3f0b226876b7240982e3e874bb52f | Winpython32-3.9.10.0dot.exe | 25 358 253 Bytes | 91ba91f6999331d2bd902cdf29141bffd18d31dc159d943cbcf6b46dc57ca3bd +54c3befe8eca7c62ae453fa497228ce2 | f2c867670e877bd7d22077d1761cfcb4a00f8d22 | 09d197889b86062e9090fdc716bd16f5f604290cec3c68a0444eb7cd18f24f93 | Winpython64-3.9.10.0.exe | 857 520 123 Bytes | 82c08f19ef5fc7232c5bae5deef042d2b09f61835cd713a61bc97e8b109e2b6e +ea78ad02b6ac45e9025c9340836fc3d6 | 7db8d4d2e2c04fb4b41731d6287a3b2a02edec6b | 26f057ccbad8b9dd5b42a18ba2dc8d3a8c2a8a9cbd6d199239e956d361540790 | Winpython64-3.10.2.0.exe | 710 798 132 Bytes | 2e9270f58bbc55044301b94a47a900181b3830ba6bc074a2d2a45c6bd822a34d + + ### WinPython 2021-04 release (November 11th, 2021) MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 From 1980927bdd5b91eb49c6ead208fe95e634eab825 Mon Sep 17 00:00:00 2001 From: firai Date: Mon, 14 Feb 2022 20:06:28 +0800 Subject: [PATCH 64/89] Fix 2021-05 Python & Pyside component versions --- index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/index.html b/index.html index 90f539c..0f5a941 100644 --- a/index.html +++ b/index.html @@ -41,9 +41,9 @@

    Recent Releases

    WinPython 3.10 Downloads (**) via SourceForge and Github

    -
  • WinPython64-3.10.2.0dot = Python 3.9.10 64bit only : Changelog, Packages
  • -
  • WinPython32-3.10.2.0dot = Python 3.9.10 32bit only : Changelog, Packages
  • -
  • WinPython64-3.10.2.0 = Python 3.9.10 64bit + Pyside6 + Jupyterlab : Changelog, Packages
  • +
  • WinPython64-3.10.2.0dot = Python 3.10.2 64bit only : Changelog, Packages
  • +
  • WinPython32-3.10.2.0dot = Python 3.10.2 32bit only : Changelog, Packages
  • +
  • WinPython64-3.10.2.0 = Python 3.10.2 64bit + Pyside2 + Jupyterlab : Changelog, Packages
  • From 9a663576b1aa2dfca0112196d2501a1a3cdbc107 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 7 May 2022 17:09:23 +0200 Subject: [PATCH 65/89] WinPython 2022-01 --- index.html | 22 +++++++++++++++++++++- md5_sha1.txt | 12 ++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 0f5a941..8c1e4b1 100644 --- a/index.html +++ b/index.html @@ -26,6 +26,26 @@

    Recent Releases

    + +

    Release 2022-01 of May 3rd, 2022

    + +

    Highlights (*): Jupyterlab-3.3.4, Spyder-5.3.0, Pandas-1.4.2, Pyside6 for PyPy

    +

    Release 2021-05 of January 25th, 2022

    @@ -47,7 +67,7 @@

    Recent Releases

    - +

    Release 2021-04 of November 11th, 2021

    Highlights (*): Jupyterlab-3.2.2, Spyder-5.1.5, numpy-1.20.3+mkl, scipy-1.7.2, scikit_learn-1.0.1, Pandas-1.3.4, Matplotlib-3.5.0pre, Pyside6-6.2.1, dash-2.0.0, streamlit-1.1.0

    diff --git a/md5_sha1.txt b/md5_sha1.txt index 29de3ef..659d6f2 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,15 @@ +### WinPython 2022-01 release (May 3rd, 2022) + + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +95e819597c5818a4fcff147b9ce6a99e | 0fa05795b825fcf1da40cd663232c7d5f08cbf3c | 1392f19ebe51faeeaf361f0712356b94a0c18333fc37998425c76791efc99fd8 | Winpython64-3.10.4.0dot.exe | 27 238 910 Bytes | 7fe53ff86b66b3507672ff95186feeea858e352bdbc46b1618532ef2ec355b97 +154ed6d36a666e4183730bbc7bdba523 | c7a999cca14ff66748c9dcc4d14e0927bc13a795 | 644c435bdc234d9b7e5fa4f34cc30d16bc0ee7cae46377da8f3d264d38c37263 | Winpython32-3.10.4.0dot.exe | 26 014 914 Bytes | b86f14bee5517f351959b0a65f44e0c2bb05312e4a7b0f18ee213e0fcfcc8ae2 +9bd5be2f6871b5160296f750f9e09d94 | 9ebd35edf2fbadec4c1aaf8bfa17fa80265b6eeb | 478372b1cffad26ddba5fcb00635be441a1936fdeeb2956d5790d0867c5e46fd | Winpython64-3.8.12.2dotPyPy.exe | 27 085 897 Bytes | 61c8cdbb6c40b9cd3a3e1f8ecb3ad157d3066de68ec3d497f9f62e1ddb0ef7c9 +15e69aeac0aee7c8371874da08e36350 | e8d8a241d1a887e80ebd4fd4dd67bd29ea23979a | 0a379c8a8d09ff083fd9a7b5cdb30d60d4446efaefdccae71f67f0602222f636 | Winpython64-3.10.4.0blas.exe | 588 926 769 Bytes | 28b4bccc46179eebf971a59f0b8aca97f894ad9cc14a359c6170c14bfafea31a +5759ac25156174ee1ad02afa2991357c | ba495c787ec432eb572124d96b4773102d4ce274 | c4f2ac9b326df4b9c2dcf31edd8bb1f5329cd2c7e5ba4c6fbab8fcdc019e2132 | Winpython64-3.10.4.0.exe | 805 194 942 Bytes | 9d2f7256bca12bbc540a514f7948dcebb5ddf5d366f581caa4abd8e37f2da02a +6d9714a923f6e96350e9a5a29bc2be22 | 5becd78d61872bfa6dc4452d6ec3cfd5fcd4ae70 | 975fd43430f7373246731dc5eae1549944c1755f4de077aacd9d2d8af6d2d241 | Winpython64-3.8.12.2PyPy.exe | 672 300 425 Bytes | fc9552d0cb3dafef09aa95ce7cf8326163631e0ead0623a018b8430efb555305 + + ### WinPython 2021-05 release (January 25th, 2022) MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 From 4ae491fc0c4233d06360a26c7249db069a3d07ed Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 16 Jul 2022 12:18:26 +0200 Subject: [PATCH 66/89] WinPython 2022-02 --- index.html | 20 +++++++++++++++++++- md5_sha1.txt | 11 +++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 8c1e4b1..8d8c5f4 100644 --- a/index.html +++ b/index.html @@ -27,7 +27,25 @@

    Recent Releases

    -

    Release 2022-01 of May 3rd, 2022

    +

    Release 2022-02 of July 16th, 2022

    + +

    Highlights (*): Jupyterlab-3.4.3, Spyder-5.4.0.dev0, Pandas-1.4.3, Numpy-1.22.4+mkl, Torch-1.12.0

    + +

    Release 2022-01 of May 3rd, 2022

    Highlights (*): Jupyterlab-3.3.4, Spyder-5.3.0, Pandas-1.4.2, Pyside6 for PyPy

      diff --git a/md5_sha1.txt b/md5_sha1.txt index 659d6f2..72420c1 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,14 @@ +### WinPython 2022-02 release (July 16th, 2022) + + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +0a6824610fea353dd638eb2a95fc32fc | dfde708115660a5c8cb02e75ea4599b5cb02c4df | ad3f373507c3d2f3d4464b8357e8de158759a9c15a91c18a60dece81982e5f69 | Winpython64-3.10.5.0dot.exe | 27 366 561 Bytes | 7488af117f2bca3479dca8ca7b00f0d51a5ed16b034b355407865e7dbc3a5e9d +072485b4db8bf86e0809243686f88640 | 467f4a6e771c214cf96b5319c6a11ce1af28657c | 56c80896ee47518e50aaa3e406b74c061ca9c2df7af1dc08ac2aa7ffae9ba7d9 | Winpython32-3.10.5.0dot.exe | 26 137 156 Bytes | 79b0e1178a48489eb27a9ead064a56084e1ac4b693a27a24ee5052ee79f25969 +6c63a617ecd37584cb879a0616c52a9c | 04739dd7269fdd308b77396640f93ae0fb633d23 | d764a44195a82a3ced78ec6ac1a813ac359e42d7cfc4b3cde56332c5e9dadbe7 | Winpython64-3.10.5.0.exe | 813 643 148 Bytes | 042dbe458c7a35b7d5eb339fbbe1223ba3c63bc5f1775c8ca9229772c162fb26 +1d709a4594cef7bae442a7d3fe4c8b72 | 65ea889e2b1ccf2d41c6050c1c04c1c17523c6aa | 9d6bf90b7a26e0841f27e4132723cb15d706a8adcdfc93cf7dcdbc57eddc1339 | Winpython64-3.8.12.3dotPyPy.exe | 27 105 401 Bytes | cd0692219f5383ecf8d19a721362003cf90b1ed5faee4b9fb6da305e16fce601 +ec3492f2154b9de3a5c4f0e8f3e08f2a | 731b7417a60c24d01084b94efbc79994eee6b14f | 1823a9947e86d1482bc61c0ff8b17b761b53dc6814d9c263ad37a22b6ac3c819 | Winpython64-3.8.12.3PyPy.exe | 674 355 022 Bytes | a0ec9711c3fc550bf2b6d3c03b6712af76988cfe65ce35ead23fadd447be57e7 + + ### WinPython 2022-01 release (May 3rd, 2022) MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 From e5abff5ac4046739a15fc4efb237e50a71521988 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 16 Jul 2022 12:26:50 +0200 Subject: [PATCH 67/89] fixing uncorrect links --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 8d8c5f4..dc957e8 100644 --- a/index.html +++ b/index.html @@ -33,7 +33,7 @@

      Recent Releases

        -

        WinPython 3.8 Downloads (**) via SourceForge and Github

        +

        WinPython 3.8 Downloads (**) via SourceForge and Github

      • WinPython64-3.8.12.3dot = PyPy3.8-v7.3.9 64bit only : Changelog, Packages
      • WinPython64-3.8.12.3 = PyPy3.8-v7.3.9 64bit + PySide6 : Changelog, Packages
      • From 1fa60f8461d91e3f7c8d82deeb7d973fe5b9fd14 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 30 Jul 2022 16:15:10 +0200 Subject: [PATCH 68/89] fix incorrect typed links and year .... reported in https://github.com/winpython/winpython/issues/1090 --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index dc957e8..5b8fe12 100644 --- a/index.html +++ b/index.html @@ -38,7 +38,7 @@

        Recent Releases

      • WinPython64-3.8.12.3dot = PyPy3.8-v7.3.9 64bit only : Changelog, Packages
      • WinPython64-3.8.12.3 = PyPy3.8-v7.3.9 64bit + PySide6 : Changelog, Packages
      • -

        WinPython 3.10 Downloads (**) via SourceForge and Github

        +

        WinPython 3.10 Downloads (**) via SourceForge and Github

      • WinPython64-3.10.5.0dot = Python 3.10.5 64bit only : Changelog, Packages
      • WinPython32-3.10.5.0dot = Python 3.10.5 32bit only : Changelog, Packages
      • From 4232f25720af2da58432ce0560212127f47fe90c Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 4 Aug 2022 21:49:51 +0200 Subject: [PATCH 69/89] wrong link to WinPython 3.10.5 Download --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 5b8fe12..c143a10 100644 --- a/index.html +++ b/index.html @@ -38,7 +38,7 @@

        Recent Releases

      • WinPython64-3.8.12.3dot = PyPy3.8-v7.3.9 64bit only : Changelog, Packages
      • WinPython64-3.8.12.3 = PyPy3.8-v7.3.9 64bit + PySide6 : Changelog, Packages
      • -

        WinPython 3.10 Downloads (**) via SourceForge and Github

        +

        WinPython 3.10 Downloads (**) via SourceForge and Github

      • WinPython64-3.10.5.0dot = Python 3.10.5 64bit only : Changelog, Packages
      • WinPython32-3.10.5.0dot = Python 3.10.5 32bit only : Changelog, Packages
      • From 172e54361412487e3840ebfcc2a0f57b3dc6533c Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 6 Nov 2022 12:00:30 +0100 Subject: [PATCH 70/89] WinPython 2022-03 --- index.html | 21 ++++++++++++++++++++- md5_sha1.txt | 11 +++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index c143a10..6cb9d19 100644 --- a/index.html +++ b/index.html @@ -27,7 +27,26 @@

        Recent Releases

        -

        Release 2022-02 of July 16th, 2022

        +

        Release 2022-03 of October 30th, 2022

        + +

        Highlights (*): Jupyterlab-3.5.0, Pandas-1.5.1, Numpy-1.23.4, Seaborn-0.12.1, Panel-0.14.1, Duckdb-0.5.1

        + +

        Release 2022-01 of May 3rd, 2022

        +

        Highlights (*): Jupyterlab-3.4.3, Spyder-5.4.0.dev0, Pandas-1.4.3, Numpy-1.22.4+mkl, Torch-1.12.0

          diff --git a/md5_sha1.txt b/md5_sha1.txt index 72420c1..efcecb2 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,14 @@ +### WinPython 2022-03 release (October 30th, 2022) + + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +ddcfebb483561e19c7ea36678d456ae4 | dd216a3d392e91c4fddb5a0754350b67a96334c5 | bd454f8df90d6ea6405780e6da71decb96ddfbbb0a5d5a33461203a7a5995651 | Winpython64-3.10.8.0dot.exe | 27 466 400 Bytes | 7fe08bb7d40660226e18fd32a68264aca7985d7983d4eff9bcebd05ae3ff8517 +151b9df707bccb9a480b0d05d4248e18 | 41571505425d9a44faadc0e4c5d4a6964ec472c0 | 8d383bca244ab1b19d258aae73c334975337e3f05dd44f75accbaa22bd899734 | Winpython32-3.10.8.0dot.exe | 26 248 844 Bytes | 1de63e569cc827eaa8f481eedaeab65457c63c2108462cb90e8554d1adacb7cb +ac435f86d6a6fa48c423fcb8260a2e30 | 33519c39ba5660c14662c35a09a2fa707b2f3ccd | bba6f7c6c59a3c58400e8a131dca645cc2240be4a41c3042433c8f01e5a4154d | Winpython64-3.10.8.0.exe | 677 301 325 Bytes | 020e8096eccb8a4e91adb46adbe0e9db97725c3c9a26427579fb239c0c0ded7c +e3e9ab1d123445a12e9e0095f87a8fa7 | 5c2d24aabbb11dba9bc87bb39d63d0d7770c43b3 | 7f288344ece6fa07d23915cab90c35a50d16a4a5aa3c624c3e925f5b9f903ebc | Winpython64-3.11.0.1dot.exe | 24 378 166 Bytes | 91e7727fa7c669d566f2e1147531396e3d57b2a35b45619add416b0cdbb2369f +16126719208df4f0c3210d0a339a5720 | ec155373f96c331b71ec7e63c8f9b37457b92ec2 | 98c4046930b16e79fcd33a742c15cc868cf14388793105864d69e50718320029 | Winpython64-3.11.0.1.exe | 527 837 583 Bytes | 6f732e253db5a44b8400ebbcc7e570d8123c38e3773ee92550e154f2da415ce5 + + ### WinPython 2022-02 release (July 16th, 2022) MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 From 436c132228531b7731acd5b8748a59c744d938f2 Mon Sep 17 00:00:00 2001 From: stonebig Date: Tue, 24 Jan 2023 22:29:01 +0100 Subject: [PATCH 71/89] Winpython 2022-04 + old link fix --- index.html | 22 ++++++++++++++++++++-- md5_sha1.txt | 11 +++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index 6cb9d19..6971f03 100644 --- a/index.html +++ b/index.html @@ -27,7 +27,25 @@

          Recent Releases

          -

          Release 2022-03 of October 30th, 2022

          +

          Release 2022-04 of January 22nd, 2023

          + +

          Highlights (*): Spyder-5.4.2, Ipython-8.7.0, Torch-1.13.1, Polars-0.15.6, Duckdb-0.6.0

          + +

          Release 2022-03 of October 30th, 2022

          Highlights (*): Jupyterlab-3.5.0, Pandas-1.5.1, Numpy-1.23.4, Seaborn-0.12.1, Panel-0.14.1, Duckdb-0.5.1

            @@ -45,7 +63,7 @@

            Recent Releases

          • WinPython64-3.11.0.1 = Python 3.11.0 64bit with PyQt5 + Spyder + Torch : Changelog, Packages
          -

          Release 2022-01 of May 3rd, 2022

          +

          Release 2022-02 of July 16th, 2022

          Highlights (*): Jupyterlab-3.4.3, Spyder-5.4.0.dev0, Pandas-1.4.3, Numpy-1.22.4+mkl, Torch-1.12.0

          diff --git a/md5_sha1.txt b/md5_sha1.txt index efcecb2..5feb373 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,14 @@ +### WinPython 2022-04 release (January 22nd, 2023) + + MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|------------------------------------------------------------------ +5d6c22345a952affe1266a92abf14ceb | 7ba4581efb578247ba3ee2d998162135e3ef83b3 | 7c61728acb13954ba862348116676c30617aec8fc45536fa882c9b0dd9278eda | Winpython64-3.10.9.0dot.exe | 27 467 759 Bytes | b1a6760c984ccdbd13df31c742bf6dbb2b5246f617781f313e2db843dc6d89ff +ba3268df9d7e5206dee6b7a42dbab8a7 | 214ebb0110df945f37be8ff884447103b69d7d70 | 49738ff219cd23cd1e96afaf2a6b8eabdcdb04575167dd46e1f132e946821326 | Winpython32-3.10.9.0dot.exe | 26 249 584 Bytes | 3e39907400b728719093edb0a67213da956f243caeaaf13842faeab1b0ee9235 +46a26e25ca6524ebaabfa04b390d3b91 | da52d4ab1bdf923aaf36f69f5d8eeb057e8eab84 | 1577b72582c04fb43f2353c17d09c41f927f8a4994f33a2a6689e2558ade0204 | Winpython64-3.11.1.0dot.exe | 24 404 166 Bytes | e5fa479d2d5948f0e399c08bcfe30ed088dc10d726ba2406ec22c5d65a6769f3 +8e3fb06b4ae8e3741207bd650b62df15 | 3a2600c37217d9be245ec67f1a1154af282424d6 | 6d265a1b795d3a444a8890db114f8cd7153b41378a02bd21cb2bcd5ba431c4e3 | Winpython64-3.10.9.0.exe | 683 571 740 Bytes | 3cef6ad93ef127063b24b112c7a4e9437878033e0dee486c5d80991c964ee860 +8ba6cb889fba7bd208a36cdd123dbcb6 | aa63897b18bb8bb35b236a1068501552290c24f8 | 7664b45097ab206828a9c1de7b03c14d622dc2bb94733075c62a6174c2252698 | Winpython64-3.11.1.0.exe | 562 936 337 Bytes | 024c570acf8bd6a0f5ce6fad784ff6791323f984c911a81523da485bcc9432ae + + ### WinPython 2022-03 release (October 30th, 2022) MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 From c362acb0a370111281b269750bb69a53c257e246 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 4 Feb 2023 11:44:51 +0100 Subject: [PATCH 72/89] latest ... Windows 7 news --- index.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 6971f03..42c1424 100644 --- a/index.html +++ b/index.html @@ -311,6 +311,8 @@

          Overview

          • Runs out of the box(*) on any Windows 8+ with 2GB Ram (Jupyter Notebook will require a recent browser)
          • The WinPython folder can be moved to any location (**) (local, network, USB drive) with most of the application settings
          • +
          • Last WinPython version that is said to still work on Windows 7 should be WinPython64-3.8.9.0
          • +
        • Flexible:
            @@ -344,7 +346,7 @@

            Portable or not, the choice is yours!

          That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! -

          (*) For recent WinPython, Windows 8..10 users may have to install missing system DLL Microsoft Visual C++ Redistributable for Visual Studio 2017..2019 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit) +

          (*) For recent WinPython, Windows 8..11 users may have to install missing system DLL Microsoft Visual C++ Redistributable for Visual Studio 2017..2019 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit)

          (*) For best Winpython 2018-01 and later experience, it is recommended to have WinPython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython From 45d7e7308fb991d85d91add4258a337c6860a0e6 Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 25 May 2023 20:57:15 +0200 Subject: [PATCH 73/89] WinPython 2023-01 final --- index.html | 18 ++++++++++++++++++ md5_sha1.txt | 11 +++++++++++ 2 files changed, 29 insertions(+) diff --git a/index.html b/index.html index 42c1424..179ff42 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,24 @@

          Recent Releases

          +

          Release 2023-01 of May 25th, 2023

          + +

          Highlights (*): a full WinPython-3.11, Spyder-5.4.3, Panel-1.0.2, Torch-2.0.2, Polars-0.17.11, Duckdb-0.8.0

          +

          Release 2022-04 of January 22nd, 2023

          Highlights (*): Spyder-5.4.2, Ipython-8.7.0, Torch-1.13.1, Polars-0.15.6, Duckdb-0.6.0

          diff --git a/md5_sha1.txt b/md5_sha1.txt index 5feb373..59f3d27 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,14 @@ +### WinPython 2023-01 release (May 25th, 2023) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +783fdac252e27e5e6d73091d384793ab | 336f18cf77a98089ca8cdfad6978b62e9bcc13dd | d227bbbff3fad5be3eb80a82364fb135d5bb644a0467ea4c2083e8e1bdda12d5 | Winpython64-3.10.11.0dot.exe | 27 575 827 Bytes | 4fdb57837b04bda64c526471391a21c994c6667b89af0697f71c414122b3b6b8 +3909fb74d2d47085ebc2d7a0a35c5cc1 | ce6fba0cfde554b1c9efb8526c86746ef4e77873 | b0b3fd72fc6043aee6698ea22e55aa8dfe74828ce9cc1a198d925de83ba3188d | Winpython32-3.10.11.0dot.exe | 26 327 225 Bytes | bceb8e1d38d63e6679b3bc8e48ce07a7e41d50de2cc19e9976b1e3c63ed3e04f +49853641436d13124bdc2f410900f4e5 | 82826e62931df18ddd548f929d3bc55d5a3d9446 | 400323ac0593b38557d274011469722d5abde9c2a0f7d7f8bea3948214163134 | Winpython64-3.11.3.0dot.exe | 24 565 218 Bytes | 038a32947edc0c9689f3f22e294b585cc98fbc40386a543b746164ae0c5fa860 +87f4cc2f3d09dd7410b271ea4b956213 | ce251010a2eb94a781f33ac9363fb5e32fceba7c | 9cb8b6e898e4c6e0d40f26103bf69f6a68fe5b6614289877c9532c317f9f3884 | Winpython64-3.10.11.0.exe | 712 648 485 Bytes | fe61017c2d1f82871a9416a0d739bd835c231f6c662fcc5ae270acc29d45b2c1 +e1f5fd5851c4739478bae21918a03444 | c4ed610a064a18960e59f983509eac72ace2ad50 | 4579950067238e0510449da6bd40452a9a9c75a5ee5d48cd405528b6b3b8904e | Winpython64-3.11.3.0.exe | 756 217 260 Bytes | 0fa376f25ceeafee58ce4a33ff23cf66b974eb8596cebb73f7674009604b63e9 + + ### WinPython 2022-04 release (January 22nd, 2023) MD5 | SHA-1 | SHA-256 | Binary | Size | SHA3-256 From c6ae75574691758bec1a9646c054af68885203da Mon Sep 17 00:00:00 2001 From: stonebig Date: Mon, 29 May 2023 17:34:10 +0200 Subject: [PATCH 74/89] WinPython 2023-01 post1 two tiny fixes --- index.html | 18 ++++++++++++++++++ md5_sha1.txt | 11 +++++++++++ 2 files changed, 29 insertions(+) diff --git a/index.html b/index.html index 179ff42..de08aa8 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,24 @@

          Recent Releases

          +

          Release 2023-01 post1 of May 27th, 2023

          + +

          Highlights (*): two fixes versus 2023-01 : WinPython Control Panel and upgrade to toolz-0.12.0

          +

          Release 2023-01 of May 25th, 2023

          Highlights (*): a full WinPython-3.11, Spyder-5.4.3, Panel-1.0.2, Torch-2.0.2, Polars-0.17.11, Duckdb-0.8.0

          diff --git a/md5_sha1.txt b/md5_sha1.txt index 59f3d27..c2b641b 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,14 @@ +### WinPython 2023-01 post1 release (May 27th, 2023) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +a7fe7f5ded089dcf9a201ee78dfeeb6f | 88f5b5a3fa2467173b2fe7c992a6a51ae6bc388b | ec9345932a86101f15b6171fc261b5a7dca1d71095f6e87fe88ec8bdd099b030 | Winpython64-3.10.11.1dot.exe | 27 575 243 Bytes | 63b780813da7f44b1780c844aea23a45492b04e398a191ea96d66bd21903aa4c +5e9b5296702ee5a940934d50b34a1c4f | 162d9493d0a51b4eb0538359fb9bcc4d80784f62 | 7f1bded910ba7815c3e8fc3a5142a9722513967a323cf013d24380a0909090da | Winpython32-3.10.11.1dot.exe | 26 334 232 Bytes | 869728880d39a73f95ae93d3a95a07e57aba03f7671fbe37c029d752027cf3ee +0e88475fabee48a8a6131be13d49b1c0 | c4241cfa5d0a5ffca6fb7a34856379598f8e6439 | 057c85cd548018d2642ff7ee84eca976ccf3e87ce23748ceec8058e5ed7fff15 | Winpython64-3.11.3.1dot.exe | 24 571 543 Bytes | d262eaebdd0e3f2dce678b9766f21acbc35826d820d8cd283035434fefb4d899 +00abd0eb20b2a864559fa33e1e102795 | 3eadd097ccf89d7bb1583a0ffbe9d3504379eb19 | e692bff303a55cefdb71bf6086f2989b276074a59b3da569c5adc948e36ae248 | Winpython64-3.10.11.1.exe | 712 268 931 Bytes | b8a5c6bacaca9f3a36e0e70a12d4d4e4ebeef9fea4b5cc2c699e50422bb2e220 +f553004fdd1bbe93640f0c6bdd59b2ac | 1ed286c1738b98a679dcd078910415895beca8f2 | 4bc2c603ed1e0c2c075293c0a65e5262556e713958559c7f61b97d5a66a1334d | Winpython64-3.11.3.1.exe | 756 264 155 Bytes | 7c76c4f26f6fe10b5087833ee8a29ae353ab7788a0ad825485dbe58334cf4452 + + ### WinPython 2023-01 release (May 25th, 2023) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From e92f1f506215290dd65b0d66e98bcad943d261f9 Mon Sep 17 00:00:00 2001 From: stonebig Date: Wed, 31 May 2023 22:17:42 +0200 Subject: [PATCH 75/89] redo WinPython64-3.10.11.1.exe broken archive --- md5_sha1.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/md5_sha1.txt b/md5_sha1.txt index c2b641b..f8ce296 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -5,8 +5,8 @@ a7fe7f5ded089dcf9a201ee78dfeeb6f | 88f5b5a3fa2467173b2fe7c992a6a51ae6bc388b | ec9345932a86101f15b6171fc261b5a7dca1d71095f6e87fe88ec8bdd099b030 | Winpython64-3.10.11.1dot.exe | 27 575 243 Bytes | 63b780813da7f44b1780c844aea23a45492b04e398a191ea96d66bd21903aa4c 5e9b5296702ee5a940934d50b34a1c4f | 162d9493d0a51b4eb0538359fb9bcc4d80784f62 | 7f1bded910ba7815c3e8fc3a5142a9722513967a323cf013d24380a0909090da | Winpython32-3.10.11.1dot.exe | 26 334 232 Bytes | 869728880d39a73f95ae93d3a95a07e57aba03f7671fbe37c029d752027cf3ee 0e88475fabee48a8a6131be13d49b1c0 | c4241cfa5d0a5ffca6fb7a34856379598f8e6439 | 057c85cd548018d2642ff7ee84eca976ccf3e87ce23748ceec8058e5ed7fff15 | Winpython64-3.11.3.1dot.exe | 24 571 543 Bytes | d262eaebdd0e3f2dce678b9766f21acbc35826d820d8cd283035434fefb4d899 -00abd0eb20b2a864559fa33e1e102795 | 3eadd097ccf89d7bb1583a0ffbe9d3504379eb19 | e692bff303a55cefdb71bf6086f2989b276074a59b3da569c5adc948e36ae248 | Winpython64-3.10.11.1.exe | 712 268 931 Bytes | b8a5c6bacaca9f3a36e0e70a12d4d4e4ebeef9fea4b5cc2c699e50422bb2e220 f553004fdd1bbe93640f0c6bdd59b2ac | 1ed286c1738b98a679dcd078910415895beca8f2 | 4bc2c603ed1e0c2c075293c0a65e5262556e713958559c7f61b97d5a66a1334d | Winpython64-3.11.3.1.exe | 756 264 155 Bytes | 7c76c4f26f6fe10b5087833ee8a29ae353ab7788a0ad825485dbe58334cf4452 +d68cc41f43bf17e95ed32c5a2ebef8ed | 21b772df6eaa191c667d4ac1d01d630050b39bcd | 94bc3e43fbc8b9789c51739a5155e1f3ee73b9a0e91287be9740b04d728c43d2 | Winpython64-3.10.11.1.exe | 712 604 591 Bytes | c1b18d8fd9e58e3d847c22c91b1f055805b0e8861bc2d17ce951e970cf40ba73 ### WinPython 2023-01 release (May 25th, 2023) From b9772b59c9224cd92948e41f62bc781078e0525b Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 15 Jul 2023 20:47:41 +0200 Subject: [PATCH 76/89] WinPython 2023-02 --- index.html | 11 +++++++++++ md5_sha1.txt | 8 ++++++++ 2 files changed, 19 insertions(+) diff --git a/index.html b/index.html index de08aa8..dae3ce6 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,17 @@

          Recent Releases

          +

          Release 2023-02 of July 15th, 2023

          + +

          Highlights (*): Python-3.11.4, pandas-2.0.2, SQLalchemy-2.0.15, Jupyterlab-3.6.5, opencv_python, qrcode, python_barcode

          +

          Release 2023-01 post1 of May 27th, 2023

          Highlights (*): two fixes versus 2023-01 : WinPython Control Panel and upgrade to toolz-0.12.0

          diff --git a/md5_sha1.txt b/md5_sha1.txt index f8ce296..5178ec8 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,11 @@ +### WinPython 2023-02 release (July 15th, 2023) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +83b5c99aa9303f93c06241928a1ef51c | 8c28ab41e68f53faa081530324c26dbe7b028935 | 09dacbf391adb11ace34eb90cd02ae3fc3749df612b8a1fd288e7e5c47bc1973 | Winpython64-3.11.4.0dot.exe | 31 541 585 Bytes | ea780b4c7781dda507a09fa7ef856fe58b2f49959f849f3f1a01106d5fda35fe +6d9f7fed5327257aa86be3b7caa6916d | 11dbfa8c2ec1d225bdb0c6f19f75d62c12e640c4 | 193233967bd2b6a6cd705ac3b17dac9c4864ae8e56744a2b89caed91f2fb6f05 | Winpython64-3.11.4.0.exe | 785 746 334 Bytes | feba52aca59c85f8efce1ee58fd28c052f7505966728268481f9405956e70f41 + + ### WinPython 2023-01 post1 release (May 27th, 2023) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From 4cdeeb5114ce0bb0a230dbe67cfab684a60b4aad Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 28 Sep 2023 20:06:20 +0200 Subject: [PATCH 77/89] WinPython 2032-03 --- index.html | 16 +++++++++++++++- md5_sha1.txt | 11 ++++++++++- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index dae3ce6..21b23de 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,19 @@

          Recent Releases

          +

          Release 2023-03 of September 28th, 2023

          + +

          Highlights (*): Python-3.11.5, Jupyterlab-4.0.6, Numba-1.25, pandas-2.1.1, scipy-1.11.1, scikit_learn-1.3.1, Poetry

          + +

          Release 2023-02 of July 15th, 2023

          Highlights (*): Python-3.11.4, pandas-2.0.2, SQLalchemy-2.0.15, Jupyterlab-3.6.5, opencv_python, qrcode, python_barcode

          @@ -37,7 +50,8 @@

          Recent Releases

        • WinPython64-3.11.4.0dot = Python 3.11.4 64bit only : Changelog, Packages
        • WinPython64-3.11.4.0 = Python 3.11.4 64bit with PyQt5 + Spyder + Torch : Changelog, Packages
        • -
        +
      +

      Release 2023-01 post1 of May 27th, 2023

      Highlights (*): two fixes versus 2023-01 : WinPython Control Panel and upgrade to toolz-0.12.0

      diff --git a/md5_sha1.txt b/md5_sha1.txt index 5178ec8..c6450e6 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,12 @@ +### WinPython 2023-03 release (September 28th, 2023) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +e7c9bbe0480296192a087475214d82d0 | c1d70b0602357614f993975ebff149cb8db4d56b | 9399d24addcfa14450b408c1988b0350f4e9d58ab2ae9a2445b9dab6484f4fae | Winpython64-3.11.5.0dot.exe | 25 139 984 Bytes | 368c68f07f5717ec69523f0d0ca3d3de97394c489baa74301a2ad498a767c43e +c6a63eca7bb0ed59612781cb508ce4a7 | 0a1f13fac46a9457ca26144cedc2b6d981ba5d9b | 5b053362706b2cb9561ebd064570813dafc99598b7c7d9473e7361313b820178 | Winpython64-3.11.5.0.exe | 790 793 444 Bytes | 21a9014a64ed7f4ab8668599d744ee54a14893e62f6ad9b5a394ce7b96040d6b +9fe0fd44b0f33c4d23739245c5b491af | 24d47348cf722c79ba354b854733c4e2d808cc83 | 0b2037660064589dd73a58ac17f44d9e657cfc5fcea92cec9223185243a0a3bc | Winpython64-3.11.5.0mkl.exe | 789 143 611 Bytes | c09c0831480e2da584509fa8e2a2ea9a98d87e84eebf5eb8f9061e8ec9b82e31 + + ### WinPython 2023-02 release (July 15th, 2023) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 @@ -542,7 +551,7 @@ ebf731a31cd779b9a9e9df2b0a37ed9f | 296ba7018a3b3168d8296390ac4a01d3dd23dab2 | wi 6d203d40558aebcc80cbef0ef5503aa1 | 7f6477ae92fbecf57497e57628a873bcce14f7cf | winpython-32bit-3.4.3.5.exe | 226 997 189 Bytes 2b9b518146b7f7f010ef1d4ef9691849 | 2b382f36cf8f2144d610748e36fa052839433e98 | winpython-64bit-2.7.10.2.exe | 278 219 513 Bytes f383793798e1899531bf11c33e47cf5b | acaa8e0b62e6741d7d699ea9961ee0cc640c8323 | winpython-32bit-2.7.10.2.exe | 223 506 901 Bytes -2b6b44ac91847974eaf78df69b35b590 | e9cb4b45e850aefa71721d1f866a4f08fd1399b1 | winpython-64bit-3.4.3.5qt5.exe | 286 088 943 Bytes +2b6b44ac91847974eaf78df69b35b590 | e9cb4b45e850aefa71721d1f866a4f08fd1399b1 | winpython-64bit-3.4.3.5qt5.exe | 286 088 943 Bytes From b03dad257615d58859dcc509c64be2e239f9cb06 Mon Sep 17 00:00:00 2001 From: stonebig Date: Thu, 7 Dec 2023 20:00:17 +0100 Subject: [PATCH 78/89] WinPython 2023-04 --- index.html | 22 +++++++++++++++++++++- md5_sha1.txt | 10 ++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 21b23de..38d8cae 100644 --- a/index.html +++ b/index.html @@ -25,11 +25,31 @@

      Github, downloads pages are on Sourceforge and Github, md5-sha , Discussion Group

      +

      Recent Releases

      + +

      Release 2023-04 of December 7th, 2023

      + +

      Highlights (*): Python-3.11.6, Numpy-1.26, Spyder-5.5.0, Torch-2.1.1, hatch-1.7.0, keras-3.0.0

      + + +

      Recent Releases

      Release 2023-03 of September 28th, 2023

      -

      Highlights (*): Python-3.11.5, Jupyterlab-4.0.6, Numba-1.25, pandas-2.1.1, scipy-1.11.1, scikit_learn-1.3.1, Poetry

      +

      Highlights (*): Python-3.11.5, Jupyterlab-4.0.6, Numpy-1.25, pandas-2.1.1, scipy-1.11.1, scikit_learn-1.3.1, Poetry

        WinPython 3.11 Downloads (**) via SourceForge and Github

        diff --git a/md5_sha1.txt b/md5_sha1.txt index c6450e6..bcf79d8 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,13 @@ +### WinPython 2023-04 release (December 7th, 2023) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +caee336c14ba1f26fcd4c927cead6324 | bf8dd90cb0ce5eed6c673becf2b1175a0775f08f | f9a0d61aa67bc227cc52980de59a412fefa1a046fb77eceb8a968c395461ddeb | Winpython64-3.11.6.0dot.exe | 25 119 557 Bytes | d755b391350b37da3d03b19f824f1943cea94d9942f58f2188c3b40d6f473a1a +a3806b2346de8795572c36c0dd5d57c7 | c03a02245b93ac2925ff64ee83ea85e6910ee923 | eb7faa7ccdbfa4ef0f4e3eb575272ce13d997bdbc57758672ebbe80a7f1845dc | Winpython64-3.11.6.0.exe | 826 835 174 Bytes | 72a8c156b77f94477155c8c6c83149ddd6c553e3def82f0ab50e91e614012e09 +a41642f31097e07f07181eee31737f0b | bc533b5d8d74a91de86ae19a83f70f4c7817fb66 | 2afffd563b0fc5c7a49b3a3d3500a9a624e4e03fe8b616cae808027916babcb3 | Winpython64-3.12.0.1dotb5.exe | 24 095 700 Bytes | 42e9d9801bc26454f60ef530278ac02f08d90911c990991e13f91da08462fec5 +73c01e518a3da0d338fb14be0c67c52c | 7dfbee2cb84686fb88e75a8d453fc41b60d222cb | 2d55dc7bed91858629bafeba5d5e703b51f45c46dc12044dea7f9f709269fdce | Winpython64-3.12.0.1b5.exe | 571 171 632 Bytes | f8aaa787d763e4e350b618cbd19401c49c5197d18b6b1348669df5b41ca10aff + + ### WinPython 2023-03 release (September 28th, 2023) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From 2a92d2cbfb141eb20eff11ab52157c8e6e1191b9 Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 16 Feb 2024 19:14:29 +0100 Subject: [PATCH 79/89] WinPython 2024-01 --- index.html | 30 ++++++++++++++++++++++++------ md5_sha1.txt | 10 ++++++++++ 2 files changed, 34 insertions(+), 6 deletions(-) diff --git a/index.html b/index.html index 38d8cae..027f654 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,24 @@

        Recent Releases

        +

        Release 2024-01 of February 16th, 2024

        + +

        Highlights (*): Python-3.11.8, Python-3.12.2, ortools-9.8.3296, Pandas-2.2.0, Scipy-1.12.0, Torch-2.2.0

        + + +

        Release 2023-04 of December 7th, 2023

        Highlights (*): Python-3.11.6, Numpy-1.26, Spyder-5.5.0, Torch-2.1.1, hatch-1.7.0, keras-3.0.0

        @@ -34,10 +52,10 @@

        Recent Releases

        WinPython 3.11 Downloads (**) via SourceForge and Github

        -
      • WinPython64-3.11.6.0dot = Python 3.11.4 64bit only : Changelog, Packages
      • -
      • WinPython64-3.11.6.0 = Python 3.11.4 64bit with PyQt5 + Spyder + Torch : Changelog, Packages
      • +
      • WinPython64-3.11.6.0dot = Python 3.11.6 64bit only : Changelog, Packages
      • +
      • WinPython64-3.11.6.0 = Python 3.11.6 64bit with PyQt5 + Spyder + Torch : Changelog, Packages
      • -

        WinPython 3.12 Beta Downloads (**) via SourceForge and Github

        +

        WinPython 3.12 Beta Downloads (**) via SourceForge and Github

      • WinPython64-3.12.0.1b5dot = Python 3.12.0 64bit only : Changelog, Packages
      • WinPython64-3.12.0.1b5 = Python 3.12.0 64bit with PyQt5 + Spyder : Changelog, Packages
      • @@ -54,9 +72,9 @@

        Recent Releases

        WinPython 3.11 Downloads (**) via SourceForge and Github

        -
      • WinPython64-3.11.5.0dot = Python 3.11.4 64bit only : Changelog, Packages
      • -
      • WinPython64-3.11.5.0 = Python 3.11.4 64bit with PyQt5 + Spyder + Torch : Changelog, Packages
      • -
      • WinPython64-3.11.5.0mkl = Python 3.11.4 64bit with PyQt5 + Spyder + Mkl : Changelog, Packages
      • +
      • WinPython64-3.11.5.0dot = Python 3.11.5 64bit only : Changelog, Packages
      • +
      • WinPython64-3.11.5.0 = Python 3.11.5 64bit with PyQt5 + Spyder + Torch : Changelog, Packages
      • +
      • WinPython64-3.11.5.0mkl = Python 3.11.5 64bit with PyQt5 + Spyder + Mkl : Changelog, Packages
      diff --git a/md5_sha1.txt b/md5_sha1.txt index bcf79d8..58aa3f4 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,13 @@ +### WinPython 2024-01 release (February 16th, 2024) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +877ec60c399af16b81885ea09f4ab319 | 175e026ef524f159cb94036f335755930a3b6d4e | 54c501574df21c3c1883fda4f5e8ff73883ede72844ae6700252143ecc024d47 | Winpython64-3.11.8.0dot.exe | 25 322 382 Bytes | c868b5976becb0db6783a6a8891e039970a33363aab698dd2ede6422925344b3 +93bdc7f442726cbb2980f9ee0cdc049b | f3170aef504fc5e51412b9a40eecfcf73d0d28e5 | 0fa1bad92e7287632ce6c32c263c694b109b714b5d12e56063b2cd4281a71f7c | Winpython64-3.11.8.0.exe | 905 449 468 Bytes | 5820c15f3952a41bcac5981c1c76d15b570c36ced59481e80a45ee2e9af48878 +ffcd3178f8ef2f354f78e08b608926ea | a135f7d26a513924ab55004b3ff6e37ac38d0040 | 50438ca67201125b4be2c278741864b2d40aaeb403849b7abd1805c819e89473 | Winpython64-3.12.2.0dot.exe | 24 295 793 Bytes | 1350fc5fd40e35ceef94b0c8038c2676761b0cc86309f9219e89d23d94b293be +3c72f207183a74869193e473a32fdb8d | 86eaecd38e3be6fa8f4d8b62adf255a1c508dcc2 | 98a93eab929bb13cf6db5b6200ba1fedeff591960da5d4462a48b6b0add9cd55 | Winpython64-3.12.2.0.exe | 884 893 890 Bytes | 097289bcce2594c1c6b69c749a9554c0b4fc43d8af8508ba5a01bc68aea9822f + + ### WinPython 2023-04 release (December 7th, 2023) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From 7e7aa215c1a25ed93fc3067673ec3b5c69e00b12 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 13 Apr 2024 19:15:04 +0200 Subject: [PATCH 80/89] Pre-WinPython 2024-02 refresh --- images/controlpanel01-new.png | Bin 0 -> 36332 bytes images/winpython_launchers-new.png | Bin 0 -> 27237 bytes images/wppm_register_new.png | Bin 0 -> 28320 bytes index.html | 19 +- index_old.html | 462 +++++++++++++++++++++++++++++ 5 files changed, 471 insertions(+), 10 deletions(-) create mode 100644 images/controlpanel01-new.png create mode 100644 images/winpython_launchers-new.png create mode 100644 images/wppm_register_new.png create mode 100644 index_old.html diff --git a/images/controlpanel01-new.png b/images/controlpanel01-new.png new file mode 100644 index 0000000000000000000000000000000000000000..6c15223c56f0596e30ba3e66688aedb9ebf534ce GIT binary patch literal 36332 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 literal 0 HcmV?d00001 diff --git a/images/winpython_launchers-new.png b/images/winpython_launchers-new.png new file mode 100644 index 0000000000000000000000000000000000000000..62d63d4f2911a7aed7646108610da9784b19eab1 GIT binary patch literal 27237 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 PsDI?8RivsUOoRU)(X@vj literal 0 HcmV?d00001 diff --git a/images/wppm_register_new.png b/images/wppm_register_new.png new file mode 100644 index 0000000000000000000000000000000000000000..167665c53e90a203ccfc4699812af4b1540c317b GIT binary patch literal 28320 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 B+uQ&E literal 0 HcmV?d00001 diff --git a/index.html b/index.html index 027f654..cebe92e 100644 --- a/index.html +++ b/index.html @@ -61,9 +61,6 @@

      Recent Releases

    • WinPython64-3.12.0.1b5 = Python 3.12.0 64bit with PyQt5 + Spyder : Changelog, Packages
    - - -

    Recent Releases

    Release 2023-03 of September 28th, 2023

    @@ -396,13 +393,13 @@

    Recent Releases

    WinPython Small Logos

    Overview

    -

    WinPython is a free open-source portable distribution of the Python programming language for Windows 8/10 and scientific and educational usage.

    -

    WinPython Launcher Icons

    +

    WinPython is a free open-source portable distribution of the Python programming language for Windows 10/11(***) and scientific and educational usage.

    +

    WinPython Launcher Icons

    It is a full-featured (see our Wiki) Python-based scientific environment:

    • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
        -
      • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, Pyzo, IDLEX or IDLE
      • +
      • interactive data processing and visualization using Python with Spyder and JupyterLab/IPython, or IDLE
      • fully integrated Cython and Numba! See included example
      • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
    • @@ -416,7 +413,7 @@

      Overview

    • Flexible:
      • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
      • -
      • These installations can be of different versions of Python (3.7/3.8/3.9...)
      • +
      • These installations can be of different versions of Python (3.7/.../3.12)
    • Customizable:
        @@ -434,8 +431,8 @@

        Overview

        WinPython Small Logos

        Portable or not, the choice is yours!

        -

        WinPython is a portable application, so the user should not expect any integration into Windows explorer during installation. However, the WinPython Control Panel allows to "register" your distribution to Windows (see screenshot below).

        -

        WinPython Register

        +

        WinPython is a portable application, so the user should not expect any integration into Windows explorer during installation. However, the WinPython Control Panel or WinPython Package Manager allows to "register" your distribution to Windows (see screenshot below).

        +

        WinPython RegisterWinPython Register

        Registering your WinPython installation will:

        • associate file extensions .py, .pyc and .pyo to Python interpreter
        • @@ -451,11 +448,13 @@

          Portable or not, the choice is yours!

          (**) Since WinPython 2019-02, all installers are just 7zip auto-extracts. +

          (***) WinPython up to 2020-02 may still work for Windows 7 (report of 2021-02 working for some case do also exist) +

          WinPython Small Logos
          - +
          WinPython Small Logos
          diff --git a/index_old.html b/index_old.html new file mode 100644 index 0000000..027f654 --- /dev/null +++ b/index_old.html @@ -0,0 +1,462 @@ + + + + + + WinPython + + + + + +
          +

          Project Home is on Github, downloads pages are on Sourceforge and Github, md5-sha , Discussion Group

          +

          + +

          Recent Releases

          + +

          Release 2024-01 of February 16th, 2024

          + +

          Highlights (*): Python-3.11.8, Python-3.12.2, ortools-9.8.3296, Pandas-2.2.0, Scipy-1.12.0, Torch-2.2.0

          + + + +

          Release 2023-04 of December 7th, 2023

          + +

          Highlights (*): Python-3.11.6, Numpy-1.26, Spyder-5.5.0, Torch-2.1.1, hatch-1.7.0, keras-3.0.0

          + + + +

          Recent Releases

          + +

          Release 2023-03 of September 28th, 2023

          + +

          Highlights (*): Python-3.11.5, Jupyterlab-4.0.6, Numpy-1.25, pandas-2.1.1, scipy-1.11.1, scikit_learn-1.3.1, Poetry

          + + +

          Release 2023-02 of July 15th, 2023

          + +

          Highlights (*): Python-3.11.4, pandas-2.0.2, SQLalchemy-2.0.15, Jupyterlab-3.6.5, opencv_python, qrcode, python_barcode

          + + +

          Release 2023-01 post1 of May 27th, 2023

          + +

          Highlights (*): two fixes versus 2023-01 : WinPython Control Panel and upgrade to toolz-0.12.0

          + +

          Release 2023-01 of May 25th, 2023

          + +

          Highlights (*): a full WinPython-3.11, Spyder-5.4.3, Panel-1.0.2, Torch-2.0.2, Polars-0.17.11, Duckdb-0.8.0

          + +

          Release 2022-04 of January 22nd, 2023

          + +

          Highlights (*): Spyder-5.4.2, Ipython-8.7.0, Torch-1.13.1, Polars-0.15.6, Duckdb-0.6.0

          + +

          Release 2022-03 of October 30th, 2022

          + +

          Highlights (*): Jupyterlab-3.5.0, Pandas-1.5.1, Numpy-1.23.4, Seaborn-0.12.1, Panel-0.14.1, Duckdb-0.5.1

          + +

          Release 2022-02 of July 16th, 2022

          + + +

          Highlights (*): Jupyterlab-3.4.3, Spyder-5.4.0.dev0, Pandas-1.4.3, Numpy-1.22.4+mkl, Torch-1.12.0

          + +

          Release 2022-01 of May 3rd, 2022

          + +

          Highlights (*): Jupyterlab-3.3.4, Spyder-5.3.0, Pandas-1.4.2, Pyside6 for PyPy

          + + +

          Release 2021-05 of January 25th, 2022

          + +

          Highlights (*): Jupyterlab-3.2.8, Spyder-5.2.2, numpy-1.21.5+mkl, Pandas-1.4.0, Matplotlib-3.5.0, Pyside2-5.15.2.1, Numba-0.55.0, Wasmer-1.1.0

          + + + +

          Release 2021-04 of November 11th, 2021

          + +

          Highlights (*): Jupyterlab-3.2.2, Spyder-5.1.5, numpy-1.20.3+mkl, scipy-1.7.2, scikit_learn-1.0.1, Pandas-1.3.4, Matplotlib-3.5.0pre, Pyside6-6.2.1, dash-2.0.0, streamlit-1.1.0

          + + + +

          Release 2021-03 of July 4th, 2021

          + +

          Highlights (*): numpy-1.21.0+mkl, scipy-1.7.0, scikit_learn-0.24.2, Pandas-1.2.5, Matplotlib-3.4.2, fastai-2.4

          + + + +

          Release 2021-02 of April 21th, 2021

          + +

          Highlights (*): Spyder-5.0.1, VSCode-1.55.2.0, Jupyterlab_git-0.30.0, Matplotlib-3.4.1, Panel-0.11.3, Voila-0.2.9

          + + +

          Release 2021-01 of March 10th, 2021

          + +

          Highlights (*): Spyder-4.2.3, Jupyterlab-3.0.9, VSCode-1.54.1.0, Pandas-1.2.3, SciPy-1.6.1, Numpy-1.20.1+mkl

          + + + +

          Release 2020-05 of December 28st, 2020

          + +

          Highlights (*): Spyder-4.2.1, VSCode-1.52.1, Pandas-1.1.5, scikit_learn-0.24.0, SciPy-1.5.4, Numpy-1.19.4+mkl

          + + + +

          Release 2020-04 of October 31st, 2020

          + +

          Highlights (*): Spyder-4.1.5, Jupyterlab-2.2.9, VSCode-1.50.0, Numpy-1.19.2+mkl, SciPy-1.5.3, PyQt5-Tools

          + + +

          Release 2020-03 of August 22nd, 2020

          + +

          Highlights (*): Spyder-4.1.4, Jupyterlab-2.2.4, VSCode-1.48.0, Numpy-1.19.1+mkl, SciPy-1.5.2

          + + + +

          Release 2020-02 of May 30th, 2020

          + +

          Highlights (*): Spyder-4.1.3, Jupyterlab-2.1.1, VSCode-1.45.1, scikit_learn-0.23.1, Cartopy-0.18.0, Trio-0.15.1

          + + + +
          WinPython Small Logos
          + +

          Overview

          +

          WinPython is a free open-source portable distribution of the Python programming language for Windows 8/10 and scientific and educational usage.

          +

          WinPython Launcher Icons

          +

          It is a full-featured (see our Wiki) Python-based scientific environment:

          +
            +
          • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.): +
              +
            • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, Pyzo, IDLEX or IDLE
            • +
            • fully integrated Cython and Numba! See included example
            • +
            • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
            • +
          • +
          • Portable: +
              +
            • Runs out of the box(*) on any Windows 8+ with 2GB Ram (Jupyter Notebook will require a recent browser)
            • +
            • The WinPython folder can be moved to any location (**) (local, network, USB drive) with most of the application settings
            • +
            • Last WinPython version that is said to still work on Windows 7 should be WinPython64-3.8.9.0
            • + +
            +
          • Flexible: +
              +
            • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
            • +
            • These installations can be of different versions of Python (3.7/3.8/3.9...)
            • +
            +
          • Customizable: +
              +
            • The integrated WinPython Package Manager (WPPM) helps installing, uninstalling or upgrading Python packages
            • +
            • It's also possible to install or upgrade packages using pip from the WinPython command prompt
            • +
            • A configuration file allows you to set environment variables at runtime
            • +
          • +
          +

          WinPython is something different from other Python Distributions (see historic motivation and concept):

          +
            +
          • non-invasive: WinPython lives entirely in its own directory, without any OS installation
          • +
          • customizable: add your missing packages, zip the WinPython directory and give it to your students
          • +
          • do your own version: a winpython-creator kit is made available for you
          • +
          +
          WinPython Small Logos
          + +

          Portable or not, the choice is yours!

          +

          WinPython is a portable application, so the user should not expect any integration into Windows explorer during installation. However, the WinPython Control Panel allows to "register" your distribution to Windows (see screenshot below).

          +

          WinPython Register

          +

          Registering your WinPython installation will:

          +
            +
          • associate file extensions .py, .pyc and .pyo to Python interpreter
          • +
          • register Python icons in Windows explorer
          • +
          • add context menu entries Edit with IDLE and Edit with Spyder for .py files
          • +
          • register WinPython as a standard Python distribution (standard Python Windows installers will see WinPython in Windows registry)
          • +
          + That is exactly what the official Python installer would do to your machine: in other words, you can have it both ways! + +

          (*) For recent WinPython, Windows 8..11 users may have to install missing system DLL Microsoft Visual C++ Redistributable for Visual Studio 2017..2019 (vc_redist_x86.exe for WinPython 32bit, vc_redist_x64.exe for Winpython 64bit) + +

          (*) For best Winpython 2018-01 and later experience, it is recommended to have WinPython base directory path smaller than 37 characters. example: C:\Users\xxxxxxxx\Downloads\WinPython + +

          (**) Since WinPython 2019-02, all installers are just 7zip auto-extracts. + + +

          +
          WinPython Small Logos
          +
          + +
          WinPython Small Logos
          + + + From ee9ad48e73bc096b1ce9a48dc0f63324fcb16e3d Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 19 Apr 2024 12:53:32 +0200 Subject: [PATCH 81/89] WinPython 2024-02 final --- index.html | 12 ++++++++++++ md5_sha1.txt | 9 +++++++++ 2 files changed, 21 insertions(+) diff --git a/index.html b/index.html index cebe92e..6baa811 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,18 @@

          Recent Releases

          +

          Release 2024-02 of April 19th, 2024

          + +

          Highlights (*): Python-3.12.3, Jupyterlab-4.1.5, Spyder-5.5.4, Numpy-1.26.4, Duckdb-0.10.1, Keras-3.1.1

          + +

          Release 2024-01 of February 16th, 2024

          Highlights (*): Python-3.11.8, Python-3.12.2, ortools-9.8.3296, Pandas-2.2.0, Scipy-1.12.0, Torch-2.2.0

          diff --git a/md5_sha1.txt b/md5_sha1.txt index 58aa3f4..fe309be 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,12 @@ +### WinPython 2024-02 release (April 19th, 2024) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +54849ef5c9184836c9a2a302a94d3533 | 2bbd296947c11e024850b54cfe81d33f6bcba8c7 | beef54eba558559255a73e59ae1986e8d06a6b12b55e78645ab42b4d6974e124 | Winpython64-3.12.3.0dot.exe | 24 145 153 Bytes | 25b1156596aa8d6bb4dd7be5a8ac83cd6f5dabab09cfd0497575cc808edcd29f +b370dd44d87f8c60d6b5ffab78359d98 | b2ebae84570a8882006bf9f976e14fedfdbe5dd8 | 45d5ab340920f291a3497be30f05bb059d05ca15f5882f58fa943abf956de1ea | Winpython64-3.12.3.0.exe | 894 147 283 Bytes | 258b2e67e81f7e79b345d5a4131345db19a7cbe04af462cbf67e1f6f13f9374a +544001aa7c8fbdfb9c3378f39a7d7749 | 7a5fa99bde2d46b7a2e00e8b63041dcbd6db7974 | 6ed92865e5b9a900c9a50c17a0d31aa013c71ca362788a21376b41d49dd21894 | Winpython64-3.13.0.0dota6.exe | 24 506 401 Bytes | 61e48b2fead528afe71f057186dbadac036061b1a775f656922553b6c9961b7d + + ### WinPython 2024-01 release (February 16th, 2024) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From 4ffb0cf8d2efc726bb3514b4a7cc32ea7510e733 Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 19 Apr 2024 20:17:05 +0200 Subject: [PATCH 82/89] add a 32bit wheel I'm weak, but it's ok. --- index.html | 1 + md5_sha1.txt | 1 + 2 files changed, 2 insertions(+) diff --git a/index.html b/index.html index 6baa811..b791e99 100644 --- a/index.html +++ b/index.html @@ -36,6 +36,7 @@

          Recent Releases

        • WinPython64-3.12.3.0dot = Python 3.12.3 64bit only : Changelog, Packages
        • WinPython64-3.12.3.0 = Python 3.12.3 64bit with PyQt5 + Spyder : Changelog, Packages
        • +
        • WinPython64-3.12.3.0dot = Python 3.12.3 32bit only : Changelog, Packages
        diff --git a/md5_sha1.txt b/md5_sha1.txt index fe309be..d9d3af9 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -5,6 +5,7 @@ 54849ef5c9184836c9a2a302a94d3533 | 2bbd296947c11e024850b54cfe81d33f6bcba8c7 | beef54eba558559255a73e59ae1986e8d06a6b12b55e78645ab42b4d6974e124 | Winpython64-3.12.3.0dot.exe | 24 145 153 Bytes | 25b1156596aa8d6bb4dd7be5a8ac83cd6f5dabab09cfd0497575cc808edcd29f b370dd44d87f8c60d6b5ffab78359d98 | b2ebae84570a8882006bf9f976e14fedfdbe5dd8 | 45d5ab340920f291a3497be30f05bb059d05ca15f5882f58fa943abf956de1ea | Winpython64-3.12.3.0.exe | 894 147 283 Bytes | 258b2e67e81f7e79b345d5a4131345db19a7cbe04af462cbf67e1f6f13f9374a 544001aa7c8fbdfb9c3378f39a7d7749 | 7a5fa99bde2d46b7a2e00e8b63041dcbd6db7974 | 6ed92865e5b9a900c9a50c17a0d31aa013c71ca362788a21376b41d49dd21894 | Winpython64-3.13.0.0dota6.exe | 24 506 401 Bytes | 61e48b2fead528afe71f057186dbadac036061b1a775f656922553b6c9961b7d +8f965ddbd46ee44db5ca0b72f5ccd39b | 3504989b7c72cce964ffc0876e1a9798c2b17cf7 | 400a36ceb32275dd7b5d095daf3a10e2545f755e55ab3b157b490024322b07ef | Winpython32-3.12.3.0dot.exe | 22 887 489 Bytes | d6875c01b3564721220cc16646a263ffc713cb462eaf37c92dec828c83818ba8 ### WinPython 2024-01 release (February 16th, 2024) From 0b93b7a758610b950b4e342dce6d21de3384ce4a Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 22 Jun 2024 12:29:30 +0200 Subject: [PATCH 83/89] WinPython 2024-03 final --- index.html | 17 +++++++++++++++++ md5_sha1.txt | 11 +++++++++++ 2 files changed, 28 insertions(+) diff --git a/index.html b/index.html index b791e99..ab21f7c 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,23 @@

        Recent Releases

        +

        Release 2024-03 of June 22nd, 2024

        + +

        Highlights (*): Python-3.12.4, Python-3.13.0b2 free-threading, Jupyterlab-4.2.2, Scipy-1.13.1, scikit_learn-1.5.0, Duckdb-1.0.0

        + +

        Release 2024-02 of April 19th, 2024

        Highlights (*): Python-3.12.3, Jupyterlab-4.1.5, Spyder-5.5.4, Numpy-1.26.4, Duckdb-0.10.1, Keras-3.1.1

        diff --git a/md5_sha1.txt b/md5_sha1.txt index d9d3af9..04a7c92 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,14 @@ +### WinPython 2024-03 release (June 22th, 2024) + + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +ea2f0d6a1e44c2b08b1706541e0588e1 | 5f04216632e3f5f0ecd58d634efbdde11dc7e3c0 | 0b2bd40fec6c15eb61f113262d9d2dc0a957282dfcb89a017140e06ad932e1d2 | Winpython64-3.12.4.1dot.exe | 24 167 661 Bytes | f66f57d3994f32fc5e2274b79c740fc98560977cd0a698c596ceebf347b76c4f +bf2fb1452b011b1a729c5682f9883e7f | 9549c5d16fbfee8669e7b923d8dbfec32cf6b204 | 08903f02514f59c891e3d56d3ff0d092a7d8571daf66237a5a2c2698068981ec | Winpython64-3.12.4.1.exe | 906 901 445 Bytes | adcc4a1c104e3b9c529c5c4fa86d8edf49caf18aa3fce641210bb752d1a18bfb +b944d4a32b2973f378cee4cab958d621 | a7ed44fb8fd1cda710dadf1f0d181cc78df91c34 | b4cb7a28284eb36ab0abffc9c751e2302e40430af0af930c365816e33c84a528 | Winpython64-3.13.0.0dotb2b.exe | 24 443 923 Bytes | d131db5b89594380c4b653d30fdda1a7d2344c86715d47d52c6bfe1761c39913 +38e87ff395374b09f90bdd4868a996b0 | a0421a5f41ac6e6a69629f4f0d2258f3f219ce23 | 08f9a6f75816045d26e38babbde4a04c7da36b7f07863332548fb586a59bcd4b | Winpython64-3.13.0.0freeb2b.exe | 30 644 666 Bytes | aa877cc35e9e47450991d569277fe203708857be231baaa0149f78ddf7110545 + + ### WinPython 2024-02 release (April 19th, 2024) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From c49dd4c8de84321465ff79b33911f8d94db83e81 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 14 Sep 2024 09:14:24 +0200 Subject: [PATCH 84/89] WinPython 2024-04 final --- index.html | 21 ++++++++++++++++++++- md5_sha1.txt | 14 +++++++++++++- 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index ab21f7c..dec21f2 100644 --- a/index.html +++ b/index.html @@ -27,7 +27,26 @@

        Recent Releases

        -

        Release 2024-03 of June 22nd, 2024

        +

        Release 2024-04 of September 14th, 2024

        + +

        Highlights (*): Python-3.11.9, Python-3.12.6, Python-3.13.0.1rc2, Numpy-2.0.1, Scipy-1.14.1, Torch-2.4.1, a slim version

        +

        Release 2024-03 of June 22nd, 2024

        Highlights (*): Python-3.12.4, Python-3.13.0b2 free-threading, Jupyterlab-4.2.2, Scipy-1.13.1, scikit_learn-1.5.0, Duckdb-1.0.0

          diff --git a/md5_sha1.txt b/md5_sha1.txt index 04a7c92..6bb1975 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,5 +1,17 @@ -### WinPython 2024-03 release (June 22th, 2024) +### WinPython 2024-03 release (September 14th, 2024) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +d3a0d99078b70e13b50b8c693ac23cc5 | 7b1e3f6ea970bddca752bd9ca9088ea30d869f96 | 47d8fb81b0402a61d31cd41f6e4f1a4fe0ee34fc4de781bbc0f23b2835b348f7 | Winpython64-3.11.9.0dot.exe | 25 830 003 Bytes | 353952b8317754ef4370a2502a99db84f4b4ee2df681e09f40e06dd90e72ac36 +1e903de80669230c7f9f571a3e8a6253 | 281f573e62a727bbf916f36cd8c627db20372635 | 5e1c9e8eedac716c4808075aace1863f74f67d4f8c78a77b4cc2e4d13c51a8c6 | Winpython64-3.12.6.0dot.exe | 24 376 540 Bytes | 7f903ca6b2c616596f5e9fa27dac0a9634b5fe23291b7e1ca8a05a99985846ca +2dbb301939001f07a115a2fd9252f721 | ce347726b7150cdd045928ef6b33194f70041d56 | 1f5532eceb35df957cd974d4650b35f8560f4499bcfbfd2d76c520658210ae21 | Winpython64-3.12.6.0slim.exe | 629 924 055 Bytes | d0c66369d569c8dafdfdb190501073b097049f916753feccf0baa4154564de06 +1665f6854db2c662173b0af67a6c5c08 | 655f9435c4e145a056fb265d9ccdb786240b7d0d | dbd0fcf0997295d44068878521bad4063748765fc4921a9ca40df15f6ac050a3 | Winpython64-3.12.6.0.7z | 887 408 957 Bytes | 351910364b96ef945ee26f87ebccdaa463712f5c5bb287c11d506ff526d7bc43 +b1ad8631fa563fc44593022d31404a6d | 7a7e7536299b3c561b856a3215e3e542056ef927 | e5b7fe7970903f0207836299ebac57c2dc6d7a95e6dbd9b7e9a25fd24fd157dd | Winpython64-3.13.0.1dotrc2.exe | 24 642 967 Bytes | e19c8a9273a458ed38d88e749a0d7d265098d50f2c79105128391593e6dcc905 +a4b43f8e4a7ce78ffd3ee865e37e1ec3 | 793650e4f33c2d247bf91dc29b2d3b8fddc95831 | 8e58df9400d4e713f2f51794f3f13d683e366d1f5438499bdd352139268a640c | Winpython64-3.13.0.1freerc2.exe | 33 311 716 Bytes | 07778110c64e4531281597e121084cba1a6f2d25ce2f28537567d6cdfcda6d36 + + +### WinPython 2024-03 release (June 22th, 2024) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 ---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- From 1d68b567a5c06b10cf12475bc7c2e1f73c05a242 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 14 Sep 2024 18:15:22 +0200 Subject: [PATCH 85/89] two typos --- index.html | 2 +- md5_sha1.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/index.html b/index.html index dec21f2..8099e46 100644 --- a/index.html +++ b/index.html @@ -29,7 +29,7 @@

          Recent Releases

          Release 2024-04 of September 14th, 2024

          -

          Highlights (*): Python-3.11.9, Python-3.12.6, Python-3.13.0.1rc2, Numpy-2.0.1, Scipy-1.14.1, Torch-2.4.1, a slim version

          +

          Highlights (*): Python-3.11.9, Python-3.12.6, Python-3.13.0rc2, Numpy-2.0.1, Scipy-1.14.1, Torch-2.4.1, a slim version

            WinPython 3.11 Downloads (**) via SourceForge and Github

            diff --git a/md5_sha1.txt b/md5_sha1.txt index 6bb1975..975ae48 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,4 +1,4 @@ -### WinPython 2024-03 release (September 14th, 2024) +### WinPython 2024-04 release (September 14th, 2024) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From 17b7d99514987ed264661bdaa9774c8def2c3273 Mon Sep 17 00:00:00 2001 From: stonebig Date: Fri, 3 Jan 2025 14:19:28 +0100 Subject: [PATCH 86/89] WinPython 2024-05 final same as rc --- index.html | 24 +++++++++++++++--- index_old.html | 68 ++++++++++++++++++++++++++++++++++++++++++-------- md5_sha1.txt | 15 +++++++++++ 3 files changed, 94 insertions(+), 13 deletions(-) diff --git a/index.html b/index.html index 8099e46..3050e4a 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,22 @@

            Recent Releases

            +

            Release 2024-05 of January 3rd, 2025

            + +

            Highlights (*): Python-3.12.8, Python-3.13.1, Numpy-2.1.3, scipy-1.14.1, numba-0.61.0rc3, jupyterlab-4.3.4, scikit-learn-1.6.0

            +

            Release 2024-04 of September 14th, 2024

            Highlights (*): Python-3.11.9, Python-3.12.6, Python-3.13.0rc2, Numpy-2.0.1, Scipy-1.14.1, Torch-2.4.1, a slim version

            @@ -43,10 +59,12 @@

            Recent Releases

            WinPython 3.13 Downloads (**) via SourceForge and Github

            -
          • WinPython64-3.13.0.1rc2 = Python 3.13.1rc2 64bit only : Changelog, Packages
          • -
          • WinPython64-3.13.0.1rc2 = Python 3.13.1rc2 64bit only : Changelog, Packages
          • +
          • WinPython64-3.13.0.1rc2 = Python 3.13.0rc2 64bit only : Changelog, Packages
          • +
          • WinPython64-3.13.0.1rc2 = Python 3.13.0rc2 64bit only : Changelog, Packages
          • -

          Release 2024-03 of June 22nd, 2024

          +
        + +

        Release 2024-03 of June 22nd, 2024

        Highlights (*): Python-3.12.4, Python-3.13.0b2 free-threading, Jupyterlab-4.2.2, Scipy-1.13.1, scikit_learn-1.5.0, Duckdb-1.0.0

          diff --git a/index_old.html b/index_old.html index 027f654..8099e46 100644 --- a/index_old.html +++ b/index_old.html @@ -27,6 +27,55 @@

          Recent Releases

          +

          Release 2024-04 of September 14th, 2024

          + +

          Highlights (*): Python-3.11.9, Python-3.12.6, Python-3.13.0rc2, Numpy-2.0.1, Scipy-1.14.1, Torch-2.4.1, a slim version

          +

          Release 2024-03 of June 22nd, 2024

          + +

          Highlights (*): Python-3.12.4, Python-3.13.0b2 free-threading, Jupyterlab-4.2.2, Scipy-1.13.1, scikit_learn-1.5.0, Duckdb-1.0.0

          + + +

          Release 2024-02 of April 19th, 2024

          + +

          Highlights (*): Python-3.12.3, Jupyterlab-4.1.5, Spyder-5.5.4, Numpy-1.26.4, Duckdb-0.10.1, Keras-3.1.1

          + +

          Release 2024-01 of February 16th, 2024

          Highlights (*): Python-3.11.8, Python-3.12.2, ortools-9.8.3296, Pandas-2.2.0, Scipy-1.12.0, Torch-2.2.0

          @@ -61,9 +110,6 @@

          Recent Releases

        • WinPython64-3.12.0.1b5 = Python 3.12.0 64bit with PyQt5 + Spyder : Changelog, Packages
        - - -

        Recent Releases

        Release 2023-03 of September 28th, 2023

        @@ -396,13 +442,13 @@

        Recent Releases

        WinPython Small Logos

        Overview

        -

        WinPython is a free open-source portable distribution of the Python programming language for Windows 8/10 and scientific and educational usage.

        -

        WinPython Launcher Icons

        +

        WinPython is a free open-source portable distribution of the Python programming language for Windows 10/11(***) and scientific and educational usage.

        +

        WinPython Launcher Icons

        It is a full-featured (see our Wiki) Python-based scientific environment:

        • Designed for scientists, data-scientists, and education (thanks to NumPy, SciPy, Sympy, Matplotlib, Pandas, pyqtgraph, etc.):
            -
          • interactive data processing and visualization using Python with Spyder and Jupyter/IPython, Pyzo, IDLEX or IDLE
          • +
          • interactive data processing and visualization using Python with Spyder and JupyterLab/IPython, or IDLE
          • fully integrated Cython and Numba! See included example
          • connectors (cffi, odbc, rpy2, scilab2py, requests, ...) for advanced users
        • @@ -416,7 +462,7 @@

          Overview

        • Flexible:
          • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
          • -
          • These installations can be of different versions of Python (3.7/3.8/3.9...)
          • +
          • These installations can be of different versions of Python (3.7/.../3.12)
        • Customizable:
            @@ -434,8 +480,8 @@

            Overview

            WinPython Small Logos

            Portable or not, the choice is yours!

            -

            WinPython is a portable application, so the user should not expect any integration into Windows explorer during installation. However, the WinPython Control Panel allows to "register" your distribution to Windows (see screenshot below).

            -

            WinPython Register

            +

            WinPython is a portable application, so the user should not expect any integration into Windows explorer during installation. However, the WinPython Control Panel or WinPython Package Manager allows to "register" your distribution to Windows (see screenshot below).

            +

            WinPython RegisterWinPython Register

            Registering your WinPython installation will:

            • associate file extensions .py, .pyc and .pyo to Python interpreter
            • @@ -451,11 +497,13 @@

              Portable or not, the choice is yours!

              (**) Since WinPython 2019-02, all installers are just 7zip auto-extracts. +

              (***) WinPython up to 2020-02 may still work for Windows 7 (report of 2021-02 working for some case do also exist) +

              WinPython Small Logos
              - +
              WinPython Small Logos
              diff --git a/md5_sha1.txt b/md5_sha1.txt index 975ae48..330882e 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,18 @@ +### WinPython 2024-05 release (January 3rd, 2025) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +3378af265aefee3129171e3165448cfb | cfa99a4fed09996492fd72e2a0d8a441a46050b3 | 2727f61b2702232337a46e39c006f24bd1084395cdf27d076c55d39756c406cc | Winpython64-3.12.8.0dot.exe | 23 442 531 Bytes | efde9241b8922abab035f388e1125069a43bb9d3d48ec5d1667b7d81b4d47061 +139c4bbd020a3082ba164c3e7d32ef59 | a09a8a71047e2b0a5c4f39585249de862c279130 | fabb3f7af4e00fd1b45874d37a63ed2239f62c0935834aa91b83645ba04cd7ba | Winpython64-3.12.8.0dot.7z | 23 227 496 Bytes | 186585ae19af5abf541f88a2a7d6acccc894565280c4e5ca93afdff408160a97 +6e72ee9a3e348c2b3babb90762e85e29 | 65e1f774b02f20c8d386c058a3ed1f797a22d20e | c4c59403370e62169bbeba06f140f0da76b2ee5a5a51ebcfdb3d3ad663b2688a | Winpython64-3.12.8.0slim.exe | 672 113 338 Bytes | 219537f13844cdae7ecc4d00053830e7572a66b46b7f4cdc2c41b6131e6213c9 +07fcf9589f8470a53abfa0320d77ba2a | 3c24c434e4b95d131ef4b6b9703cbaf2a96d41c3 | c872dcb59302af13ce098e6904dff8fe778cd950b8219189d8634bade609bdbb | Winpython64-3.12.8.0slim.7z | 671 899 744 Bytes | 7111b4bf2ee2497296ab0d022606fbcad7d291f8ff10a0cf768dfc44a42423f4 +2d60b1a863fed5cf63d7430d0904a461 | e2a2838cecec6bdeb9d48b998e1b41b362649063 | 338a117a537b9b061314fc38f1a957c34b851d8399edc9705261810da6f2e167 | Winpython64-3.13.1.0dot.exe | 25 157 185 Bytes | 09ec69f4e2e2487b6636cb5f4b242091f9c1b0f9b1c3b2e78b2d4fa0fee0c56d +7699b8f3727548585c17fa806dfc4d14 | 6e5cc08f958f3c92674a18451a3e1d2a6e49894b | 582985c573c900d1120fc0eae54290c607e578eb055679673170f9ef943c13a2 | Winpython64-3.13.1.0dot.7z | 24 942 148 Bytes | da0233c851631a8d12c86e0d6781e092d562874d8a7c1b337ccd1fac7c235efb +db2769c756bc3eb4bd40a941dc667d72 | 5bfcc0492025b606681563c3c73d8b2e5b415313 | 47b9a4ce75efb29d78dda80716d6c35f9a13621efd3a89ef8242a114ef8001a3 | Winpython64-3.13.1.0dot.zip | 39 640 324 Bytes | 1c37c1a2f32e43770f6d105948d7866acd5331c1a19b1c70c5d276604db2a45c +efe121af4dca37595c871fec340a2bda | 44e6d681f5c6ffb7f1e1fef27ecd800cf04d0fff | ed86375c2d6a9de8bddf9889058e299f50ea26432e00e9a74d1d20771e388c55 | Winpython64-3.13.1.0slim.exe | 600 808 320 Bytes | 9f2ed14f54002545e6999321bb981ccb74e280b6786fa289aba7bc09877d71a9 +a24d30ebbf06848279f3a46ed60d42d7 | 982e4c1eb1fcb03432ac4f5eac0d252a9fd65776 | 87fb127b075f0de76f854da6e17bc02819e093cd6b87f7a94d4831c7c490a286 | Winpython64-3.13.1.0slim.7z | 600 593 165 Bytes | 882600d3c84c9734cdace8f1445c60777a91b6678541ee6755b816509ecfb234 + + ### WinPython 2024-04 release (September 14th, 2024) From 9753978f26e7fdeee63617eadc8b0a315d7536d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=AD=E4=B9=9D=E9=BC=8E?= <109224573@qq.com> Date: Tue, 7 Jan 2025 15:44:26 +0800 Subject: [PATCH 87/89] fix typo --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index 3050e4a..b1372e0 100644 --- a/index.html +++ b/index.html @@ -90,7 +90,7 @@

              Recent Releases

            • WinPython64-3.12.3.0dot = Python 3.12.3 64bit only : Changelog, Packages
            • WinPython64-3.12.3.0 = Python 3.12.3 64bit with PyQt5 + Spyder : Changelog, Packages
            • -
            • WinPython64-3.12.3.0dot = Python 3.12.3 32bit only : Changelog, Packages
            • +
            • WinPython32-3.12.3.0dot = Python 3.12.3 32bit only : Changelog, Packages
            From 8f738f05001f947f01ef4242b66ad2cca89e710a Mon Sep 17 00:00:00 2001 From: stonebig Date: Sat, 1 Mar 2025 18:32:35 +0100 Subject: [PATCH 88/89] 2025-01 final --- index.html | 18 +++++++++++++++++- md5_sha1.txt | 19 +++++++++++++++++++ 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 3050e4a..f8afa07 100644 --- a/index.html +++ b/index.html @@ -26,7 +26,23 @@

            Recent Releases

            - + +

            Release 2025-01 of March 1st, 2025

            + +

            Highlights (*): Python-3.12.9, Python-3.13.2, scipy-1.15.1, numba-0.61.0, jupyterlab-4.3.5, scikit-learn-1.6.1

            +

            Release 2024-05 of January 3rd, 2025

            Highlights (*): Python-3.12.8, Python-3.13.1, Numpy-2.1.3, scipy-1.14.1, numba-0.61.0rc3, jupyterlab-4.3.4, scikit-learn-1.6.0

            diff --git a/md5_sha1.txt b/md5_sha1.txt index 330882e..a5e7b0a 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,22 @@ +### WinPython 2025-01 release (March 1st, 2025) + + MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|--------------------|----------------------------------------------------------------- +8aef7e46e862e543d38bed851d0d6505 | fe32d81a13bfd830b5c2820eb9f545ea2dc3302d | 2bcb5bda5d6d27ffce3cccadd772599d534edcbcbca7cb59124e015b3919db68 | Winpython64-3.12.9.0dot.zip | 38 280 444 Bytes | 9f2a468504c56bfb28fec03e47c6526b546098801f21e5137a58dd302838cc6d +b6fdc51ec5aa7cc449e3e31ab4750899 | f623dc942a6e572a078a2cc71ddc0532d6fd7aef | bf240df0e6ba72499dbea42ba4638264bb777f4d59822df0033f421a342c5188 | Winpython64-3.12.9.0dot.7z | 23 093 610 Bytes | db09d389d7ac6a8e2cfb5369ad910ffcf60ee673894f0ad0a94386409f1d582c +39dcdd15299ac9a0aa068290432b6c89 | 80c48b7a91446019c1444b85be1124e8b27b9393 | bf1be605dffa97207ab108d9d8dcab2f51c597fc31bebb5e6067811c93402fd3 | Winpython64-3.12.9.0dot.exe | 23 308 650 Bytes | b4f20a6d870c99628fed5fa070ef4bf9312fabc91be926267ec9b9919d1f2353 +e5c92eca86d5063d7c927b87ca7a979a | eabb5add549cda18e7405c8dbe64f163ab92aa05 | 13a08f3bd516558ebca224bb44cc61d763e679b821a1bf240a700a093e7d47fc | Winpython64-3.12.9.0slim.7z | 616 678 094 Bytes | ddcb6f9118e3e2522e920049cb44d82fdcd8e48bfe5f7a30faf1706742971951 +688a2be695eda8f59d0cc690326d1299 | d9e9ddaea543964d9e9743aec86ee7b342f5480f | 02936d96bb488d111136dce11b08afa189b51f57f59d8d0e7068bea2a5fa67c0 | Winpython64-3.12.9.0slim.exe | 616 892 419 Bytes | bcb6fdccc898a2d70d0f8ba7f80d9a056062fcc5d4cc78845dc979ee46e9292e +6a8d945c058d9fb08b78235bbf8d7ae6 | bcbf848ed72de9b4595ee44faeec15a084408c06 | 0f984ca5dfc195a265a8b547be43891caed9a8770ba8a13b6f87b45990f12704 | Winpython64-3.13.2.0dot.zip | 39 737 933 Bytes | 10008fb4a9193332a1cf5a0d180e503d3860a708a3add9a021c1b23c72ac767a +51617e557c70a78f70153b92c784ea69 | 217e21a9292ede8ddc50f4628a0a031c2320be3b | 069f4a9a32b713f27d5a8f8ffccf2658580eeea7df7120b414b3fd74e7fc099e | Winpython64-3.13.2.0dot.7z | 24 777 973 Bytes | b2e6ae219ea69c5f212534cd8a52e0c2bf0506b272b643be5884a52251da4125 +7f509cb8aba38aa748b35014ef7d8c1c | a37826beb8474d678e6dac8d263c3062055e1050 | ecba739bd41459656b632306f316da73980bae84e62b540f14c03affb8ac2d93 | Winpython64-3.13.2.0dot.exe | 24 993 013 Bytes | 4f51cba5d6533bbe59367f925649da08c008cf40aaa564a1ee9134799311b83e +6486a208002d34492af762d33e51c058 | bd1af3dbd687ed1797ac61a85df74f25efb1578b | dcdcb0608d74333bfb987219150f418b0c9637328703a5c12786ad1e24d5485b | Winpython64-3.13.2.0slim.7z | 621 789 094 Bytes | 112a12e15435b200c22055407553879554e3487bed5118468ee2cd6a3c56fff2 +04b8e6e1dc61e2871b5cf522c76ab471 | 7d66dd128689ae80dbfdb589604572bdf204fc9b | 865c54d31aec95f3138b934a4c0a4ff440ac7a27d82b1a9667c61a80ec4d764f | Winpython64-3.13.2.0slim.exe | 622 004 549 Bytes | fd1ad38146a6323be31c7a35aa39c31dd26b6c3d9328da97b71c6a3dcea622f9 +99a59eda2bf37dfab76bcffcae9cd3a7 | 77df69ec8875a7733c60ce2f0d78ced356d7b4c9 | fc66c242a6fe975dd85c764bd1068ad944440684a2bdc8599c2e5a13b5ca29cd | Winpython64-3.14.0.0dota5b.zip | 40 495 265 Bytes | 8344a7e9a40d15d12fe6e3682b86a72ff512136d4cdc65ebca321cd3283c088e +a0a66a0d00aeefcc185327999fd044c8 | 501888e481f95f824ca7e3160ea117f4f302385e | 92a9a6da1faef872ade0905cf01471831da54ff628b722a4e1d5b4d2a9338f8c | Winpython64-3.14.0.0dota5b.7z | 25 110 864 Bytes | 38275cae601dbbd83fba9591930c893e71b7ea7a8333b2acc0a5a2bde85001bb +91d3e6ebb32677e6ed9674f5e91fc538 | 931baf8ea70e052e4d87d7dc89d8cdb9c3c277e2 | e4933634b52e0b4ae498ddd1302ecf2ccb8b3de95df8af5120f9f298c2b64d3d | Winpython64-3.14.0.0dota5b.exe | 25 325 904 Bytes | fe50cdcb5328813d783cf92b0b2bb16ef6330d7f45d6888fab1f0fcc208c1b16 + + ### WinPython 2024-05 release (January 3rd, 2025) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 From 020d989fbbf01500924adf3caa53c38607ab85f5 Mon Sep 17 00:00:00 2001 From: stonebig Date: Sun, 4 May 2025 12:08:37 +0200 Subject: [PATCH 89/89] WinPython 2025-02 final --- index.html | 25 +++++++++++++++++++++---- md5_sha1.txt | 18 ++++++++++++++++++ 2 files changed, 39 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index f8afa07..9d34732 100644 --- a/index.html +++ b/index.html @@ -27,6 +27,23 @@

            Recent Releases

            +

            Release 2025-02 of May 4th, 2025

            + +

            Highlights (*): Python-3.12.10, Python-3.13.3, numpy-2.2.4, duckdb-1.2.2, jupyterlab-4.4.1, spyder-6.0.5, a requirement with hash-256

            + +

            Release 2025-01 of March 1st, 2025

            Highlights (*): Python-3.12.9, Python-3.13.2, scipy-1.15.1, numba-0.61.0, jupyterlab-4.3.5, scikit-learn-1.6.1

            @@ -39,7 +56,7 @@

            Recent Releases

            WinPython 3.13 Downloads (**) via SourceForge and Github

            -
          • WinPython64-3.13.2.0 = Python 3.13.2 64bit only : Changelog, Packages
          • +
          • WinPython64-3.13.2.0dot = Python 3.13.2 64bit only : Changelog, Packages
          • WinPython64-3.13.2.0slim = Python 3.13.2 64bit only : Changelog, Packages
          @@ -496,7 +513,7 @@

          Overview

        • Flexible:
          • You can install as many WinPython distributions as you want on the same machine: each one is isolated and self-consistent
          • -
          • These installations can be of different versions of Python (3.7/.../3.12)
          • +
          • These installations can be of different versions of Python (3.7/.../3.13+)
        • Customizable:
            @@ -518,7 +535,7 @@

            Portable or not, the choice is yours!

            WinPython RegisterWinPython Register

            Registering your WinPython installation will:

              -
            • associate file extensions .py, .pyc and .pyo to Python interpreter
            • +
            • associate file extensions .py and .pyc to Python interpreter
            • register Python icons in Windows explorer
            • add context menu entries Edit with IDLE and Edit with Spyder for .py files
            • register WinPython as a standard Python distribution (standard Python Windows installers will see WinPython in Windows registry)
            • @@ -537,7 +554,7 @@

              Portable or not, the choice is yours!

              WinPython Small Logos
              - +
              WinPython Small Logos
              diff --git a/md5_sha1.txt b/md5_sha1.txt index a5e7b0a..2ab82bc 100644 --- a/md5_sha1.txt +++ b/md5_sha1.txt @@ -1,3 +1,21 @@ +### WinPython 2025-02 release (May 4th, 2025) + +MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256 +---------------------------------|------------------------------------------|------------------------------------------------------------------|-----------------------------------|----------------------|----------------------------------------------------------------- +b5a3814f26dade2f6ee9acf983427a8e | b3826baea1606868628128bab5527e3600342fbf | 517eff0673658da3f2da64a28afbd7733fb91807f7d074d3a9e9e6c0eb1dd523 | Winpython64-3.12.10.0dot.7z | 23 076 535 Bytes | e3e4b8b944e79cf20dea5e7691c24485a5b68bb70d34df6edfb181fd499b0335 +6f354778174e04fdb4c4c28c7a543f31 | 5d1bd5bd76dcb0e61df1a268e4ce47f56acbfe6f | b6d196d72ce443ccfbdb5a640f5645a7ade742092fddde65d73755c4eba89a1d | Winpython64-3.12.10.0dot.exe | 23 291 575 Bytes | 785f61ee3821d772bdbff037f86a4229d707c97d97f2508e8cdd03f81c1a8436 +431e37ef366ebe9ae30fa7fb162bb314 | 32965a55a8bc119b96875c542d9a08c6f4ed9b75 | bcb2a87ef210076ff4507a4a644bfb82daa0c2361e7945e5cb7de161450460f6 | Winpython64-3.12.10.0dot.zip | 38 334 544 Bytes | ab0b83f09299291a36298754a445429964f610f507b18e484f6bdf572880acbe +6e7131129ff75dd4e8832f7be131dcc3 | 4d6c5b10d4b3044b9a70597fcd4fd34cd5e2b2a8 | 294c287c4a9918c730d26188e2dc34e97a92431c83515165f04c2ea8d33f0c1d | Winpython64-3.12.10.0slim.7z | 624 548 662 Bytes | f0b952a2fe29837783b69dcb4259369ee5c1d40a3220ad0b4dd82b1668322973 +3cefa92f927471aeef6c1fa3b7911166 | 1699db6b9c44b605c9f2031201bb58a46a260f0e | 3ea3368ca0e9182c03e8e0bc38b65c5398dd4f8aee7ccf5ab38d5a9226af6b9a | Winpython64-3.12.10.0slim.exe | 624 763 614 Bytes | 8584e33e01025ce04d0e429f2c08c7fe94576901aabf030341b21e0837ed5966 +95c7326579dbd4a16cb2f5b56a141673 | f28906c1e3e4ba073f0363a4e35326f9e8090ce1 | 13abddd4cc2702be56b672c868d0d1bc085e80748dc7d7e9315ab4080f157f3b | Winpython64-3.13.3.0dot.7z | 24 839 744 Bytes | 1cb42e1ea66116bc0e7804fb44bb519140d5a5acc9bb63c650ef38dc138ca0bb +bccca9b3e79dfbc13d14837e3ba85c9b | 41c805812b778ccaf3781701264b23e6c9908069 | a6b1882b8eff8a44782bfeec7e5228826ebd38c4234e10ba38a52a85860c41d0 | Winpython64-3.13.3.0dot.exe | 25 054 784 Bytes | eea4a48f72d3ca7e784e86883ef2b46cd48a75fd68321c1088e9ed8c11ad47bd +06a5eb8fa4f7447ad63b7e214b126fd7 | 80ab8340798a318c09ffe07a77a920d5d1eda2b7 | f7ef5a6cfe23b7f39f87c128594fc6c7f73f42f9516a0b828dac0da187af68ec | Winpython64-3.13.3.0dot.zip | 39 870 933 Bytes | a4f9a910f55c5efdbb843874384d5295ff3b3a45d27cab63f74d2f215f9d798c +40e207597ddecd78f60e8474d8dc3c81 | 5e4df5e04424a754b33e4a63f4ae31d0a65eb0a5 | 0ee4eaa17ed86fbcb9e861989e08c85dcf13ca1ef067c52f4fc8b68dd7836c46 | Winpython64-3.13.3.0slim.7z | 629 049 097 Bytes | f275d41a374ff5f3b75decbe65cd52a54c1ac8157edeb62f377dfa2278201ccb +312a8e7fa70b5b58e44f69c1066687a8 | 12e992d1e40fb04c0e7fe367a983dc27ef88b151 | 9abfd2a54ba314dfe573792a573ad31a43e63765f7b77c2002849086a1a47c5e | Winpython64-3.13.3.0slim.exe | 629 265 120 Bytes | 87fc9b086fae8a07b234fcced8b428cd0c3367a9ff068cd3c28b661813c94cab +588e3a1a7ddc461f528270a302a3b667 | a77e443c86c1d21c9a177193e69847efa6346373 | 060046dc83030a639d50396f403a28556ebbd87495bb14045b21118e6cff4c4b | requirement_hash.WinPython64-3.12.10..0slim.txt | 78 133 Bytes | 54d3902407c7c935d83681796585e24d80478f68d22d62ff500d4072ab0385b0 +fb5edb31a3f1e0e7f43eb810f5dd4032 | c6c043e8ec9c7af50eb2d297a91c1b87d3bc7074 | 225500ba0b3aea779b24f7b17bece53250b24380390685bac5ae6c5804f68367 | requirement_hash.WinPython64-3.13.3.0slim.txt | 78 125 Bytes | 1b3d8ff70b049c368ae848d69331faf2ceb19ddc6821ec3549e5511ecac7f393 + + ### WinPython 2025-01 release (March 1st, 2025) MD5 | SHA-1 | SHA-256 | Binary | Size | blake2b-256