Hello community,

here is the log from the commit of package python3-setuptools for 
openSUSE:Factory checked in at 2015-03-16 06:57:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python3-setuptools (Old)
 and      /work/SRC/openSUSE:Factory/.python3-setuptools.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python3-setuptools"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python3-setuptools/python3-setuptools.changes    
2015-03-05 18:15:58.000000000 +0100
+++ 
/work/SRC/openSUSE:Factory/.python3-setuptools.new/python3-setuptools.changes   
    2015-03-16 06:57:22.000000000 +0100
@@ -1,0 +2,58 @@
+Sun Mar 15 21:18:36 UTC 2015 - [email protected]
+
+- update to version 14.3:
+  * Issue #254: When creating temporary egg cache on Unix, use mode
+    755 for creating the directory to avoid the subsequent warning if
+    the directory is group writable.
+
+- changes from version 14.2:
+  * Issue #137: Update "Distribution.hashcmp" so that Distributions
+    with None for pyversion or platform can be compared against
+    Distributions defining those attributes.
+
+- changes from version 14.1.1:
+  * Issue #360: Removed undesirable behavior from test runs,
+    preventing write tests and installation to system site packages.
+
+- changes from version 14.1:
+  * Pull Request #125: Add "__ne__" to Requirement class.
+  * Various refactoring of easy_install.
+
+-------------------------------------------------------------------
+Sun Mar  8 17:20:31 UTC 2015 - [email protected]
+
+- update to version 14.0:
+
+  * Bootstrap script now accepts "--to-dir" to customize save
+    directory or allow for re-use of existing repository of setuptools
+    versions. See Pull Request #112 for background.
+
+  * Issue #285: "easy_install" no longer will default to installing
+    packages to the "user site packages" directory if it is itself
+    installed there. Instead, the user must pass "--user" in all
+    cases to install packages to the user site packages.  This
+    behavior now matches that of "pip install". To configure an
+    environment to always install to the user site packages, consider
+    using the "install-dir" and "scripts-dir" parameters to
+    easy_install through an appropriate distutils config file.
+
+-------------------------------------------------------------------
+Fri Mar  6 19:31:12 UTC 2015 - [email protected]
+
+- update to version 13.0.2:
+  * Issue #359: Include pytest.ini in the sdist so invocation of
+    py.test on the sdist honors the pytest configuration.
+
+- changes from version 13.0.1:
+  * Re-release of 13.0. Intermittent connectivity issues caused the
+    release process to fail and PyPI uploads no longer accept files
+    for 13.0.
+
+- changes from version 13.0:
+  * Issue #356: Back out Pull Request #119 as it requires Setuptools
+    10 or later as the source during an upgrade.
+  * Removed build_py class from setup.py. According to 892f439d216e,
+    this functionality was added to support upgrades from old
+    Distribute versions, 0.6.5 and 0.6
+
+-------------------------------------------------------------------

Old:
----
  setuptools-12.4.tar.gz

New:
----
  setuptools-14.3.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python3-setuptools.spec ++++++
--- /var/tmp/diff_new_pack.trwiRR/_old  2015-03-16 06:57:23.000000000 +0100
+++ /var/tmp/diff_new_pack.trwiRR/_new  2015-03-16 06:57:23.000000000 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           python3-setuptools
-Version:        12.4
+Version:        14.3
 Release:        0
 Url:            http://pypi.python.org/pypi/setuptools
 Summary:        Easily download, build, install, upgrade, and uninstall Python 
packages

++++++ setuptools-12.4.tar.gz -> setuptools-14.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/.gitignore 
new/setuptools-14.3/.gitignore
--- old/setuptools-12.4/.gitignore      2015-03-03 23:47:07.000000000 +0100
+++ new/setuptools-14.3/.gitignore      1970-01-01 01:00:00.000000000 +0100
@@ -1,16 +0,0 @@
-# syntax: glob
-bin
-build
-dist
-include
-lib
-distribute.egg-info
-setuptools.egg-info
-.coverage
-.tox
-CHANGES (links).txt
-*.egg
-*.py[cod]
-*.swp
-*~
-.hg*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/.hgignore 
new/setuptools-14.3/.hgignore
--- old/setuptools-12.4/.hgignore       2015-03-03 23:47:07.000000000 +0100
+++ new/setuptools-14.3/.hgignore       1970-01-01 01:00:00.000000000 +0100
@@ -1,16 +0,0 @@
-syntax: glob
-bin
-build
-dist
-include
-lib
-distribute.egg-info
-setuptools.egg-info
-.coverage
-.tox
-CHANGES (links).txt
-*.egg
-*.py[cod]
-*.swp
-*~
-.git*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/.hgtags new/setuptools-14.3/.hgtags
--- old/setuptools-12.4/.hgtags 2015-03-04 17:07:53.000000000 +0100
+++ new/setuptools-14.3/.hgtags 1970-01-01 01:00:00.000000000 +0100
@@ -1,197 +0,0 @@
-1010d08fd8dfd2f1496843b557b5369a0beba82a 0.6
-4d114c5f2a3ecb4a0fa552075dbbb221b19e291b 0.6.1
-41415244ee90664042d277d0b1f0f59c04ddd0e4 0.6.2
-e033bf2d3d05f4a7130f5f8f5de152c4db9ff32e 0.6.3
-e06c416e911c61771708f5afbf3f35db0e12ba71 0.6.4
-2df182df8a0224d429402de3cddccdb97af6ea21 0.6.5
-f1fb564d6d67a6340ff33df2f5a74b89753f159d 0.6.6
-71f08668d050589b92ecd164a4f5a91f3484313b 0.6.7
-445547a5729ed5517cf1a9baad595420a8831ef8 0.6.8
-669ed9388b17ec461380cc41760a9a7384fb5284 0.6.9
-669ed9388b17ec461380cc41760a9a7384fb5284 0.6.9
-ac7d9b14ac43fecb8b65de548b25773553facaee 0.6.9
-0fd5c506037880409308f2b79c6e901d21e7fe92 0.6.10
-0fd5c506037880409308f2b79c6e901d21e7fe92 0.6.10
-f18396c6e1875476279d8bbffd8e6dadcc695136 0.6.10
-e00987890c0b386f09d0f6b73d8558b72f6367f1 0.6.11
-48a97bc89e2f65fc9b78b358d7dc89ba9ec9524a 0.6.12
-dae247400d0ca1fdfaf38db275622c9bec550b08 0.6.13
-2b9d9977ea75b8eb3766bab808ef31f192d2b1bc 0.6.14
-51a9d1a1f31a4be3107d06cf088aff8e182dc633 0.6.15
-3f1ff138e947bfc1c9bcfe0037030b7bfb4ab3a5 0.6.16
-9c40f23d0bda3f3f169686e27a422f853fa4d0fa 0.6.17
-9c40f23d0bda3f3f169686e27a422f853fa4d0fa 0.6.17
-4bbc01e4709ea7425cf0c186bbaf1d928cfa2a65 0.6.17
-4bbc01e4709ea7425cf0c186bbaf1d928cfa2a65 0.6.17
-0502d5117d8304ab21084912758ed28812a5a8f1 0.6.17
-74108d7f07343556a8db94e8122221a43243f586 0.6.18
-611910892a0421633d72677979f94a25ef590d54 0.6.19
-a7cf5ae137f1646adf86ce5d6b5d8b7bd6eab69f 0.6.20
-c4a375336d552129aef174486018ed09c212d684 0.6.20
-de44acab3cfce1f5bc811d6c0fa1a88ca0e9533f 0.6.21
-1a1ab844f03e10528ae693ad3cb45064e08f49e5 0.6.23
-1a1ab844f03e10528ae693ad3cb45064e08f49e5 0.6.23
-9406c5dac8429216f1a264e6f692fdc534476acd 0.6.23
-7fd7b6e30a0effa082baed1c4103a0efa56be98c 0.6.24
-6124053afb5c98f11e146ae62049b4c232d50dc5 0.6.25
-b69f072c000237435e17b8bbb304ba6f957283eb 0.6.26
-469c3b948e41ef28752b3cdf3c7fb9618355ebf5 0.6.27
-fc379e63586ad3c6838e1bda216548ba8270b8f0 0.6.28
-4f82563d0f5d1af1fb215c0ac87f38b16bb5c42d 0.6.29
-7464fc916fa4d8308e34e45a1198512fe04c97b4 0.6.30
-17bc972d67edd96c7748061910172e1200a73efe 0.6.31
-b1a7f86b315a1f8c20036d718d6dc641bb84cac6 0.6.32
-6acac3919ae9a7dba2cbecbe3d4b31ece25d5f09 0.6.33
-23c310bf4ae8e4616e37027f08891702f5a33bc9 0.6.34
-2abe1117543be0edbafb10c7c159d1bcb1cb1b87 0.6.35
-c813a29e831f266d427d4a4bce3da97f475a8eee 0.6.36
-be6f65eea9c10ce78b6698d8c220b6e5de577292 0.6.37
-2b26ec8909bff210f47c5f8fc620bc505e1610b5 0.6.37
-f0d502a83f6c83ba38ad21c15a849c2daf389ec7 0.6.38
-d737b2039c5f92af8000f78bbc80b6a5183caa97 0.6.39
-9b2e2aa06e058c63e06c5e42a7f279ddae2dfb7d 0.7b1
-0a783fa0dceb95b5fc743e47c2d89c1523d0afb7 0.6.40
-ad107e9b4beea24516ac4e1e854696e586fe279d 0.6.41
-f30167716b659f96c5e0b7ea3d5be2bcff8c0eac 0.6.42
-8951daac6c1bc7b24c7fb054fd369f2c5b88cdb3 0.7b2
-35086ee286732b0f63d2be18d9f26f2734586e2d 0.6.43
-63e4eb2d61204f77f9b557201a0efa187b05a611 0.7b3
-73aa98aee6bbc4a9d19a334a8ac928dece7799c6 0.6.44
-53b4ac9a748aa28893aaca42c41e5e99568667bb 0.7b4
-ddca71ae5ceb9b14512dc60ea83802c10e224cf0 0.6.45
-7f2c08e9ca22023d1499c512fccc1513813b7dc4 0.7
-024dd30ed702135f5328975042566e48cc479d7d 0.7.1
-d04c05f035e3a5636006fc34f4be7e6c77035d17 0.7.2
-d212e48e0cef689acba57ed017289c027660b23c 0.7.3
-74c6c12268059986f9cc0b535399594f1d131201 0.8b1
-85640475dda0621f20e11db0995fa07f51744a98 0.7.4
-b57e5ba934767dd498669b17551678081b3047b5 0.6.46
-dd5bbc116c53d3732d22f983e7ca6d8cfabd3b08 0.7.5
-512744f3f306aea0fdde4cfd600af8b2d6e773e7 0.8b2
-8af9839a76407eebf3610fcd3e7973f1625abaa2 0.8b3
-ee2c967017024197b38e39ced852808265387a4b 0.6.47
-48d3d26cbea68e21c96e51f01092e8fdead5cd60 0.7.6
-5b3c7981a02b4a86af1b10ae16492899b515d485 0.8b4
-cae9127e0534fc46d7ddbc11f68dc88fd9311459 0.6.48
-1506fa538fff01e70424530a32a44e070720cf3c 0.7.7
-5679393794978a1d3e1e087472b8a0fdf3d8423c 0.8b5
-26f59ec0f0f69714d28a891aaad048e3b9fcd6f7 0.8b6
-f657df1f1ed46596d236376649c99a470662b4ba 0.6.49
-236de1de68b14230036147c7c9e7c09b215b53ee 0.7.8
-979d598822bc64b05fb177a2ba221e75ee5b44d3 0.8b7
-e3d70539e79f39a97f69674ab038661961a1eb43 0.8
-3078b1e566399bf0c5590f3528df03d0c23a0777 0.9
-9e5a8f734662dd36e6fd6e4ba9031d0e2d294632 0.9.1
-37444bb32e172aaacbc0aeafdf5a778ee471723d 0.9.2
-3e9d2e89de3aa499382d6be2ec8b64d2a29f7f13 0.9.3
-1aef141fc968113e4c521d1edf6ea863c4ff7e00 0.9.4
-88e3d6788facbb2dd6467a23c4f35529a5ce20a1 0.9.5
-acc6c5d61d0f82040c237ac7ea010c0fc9e67d66 0.9.6
-19965a03c1d5231c894e0fabfaf45af1fd99f484 0.9.7
-e0a6e225ad6b28471cd42cfede6e8a334bb548fb 0.9.8
-7b91ff93a30ef78634b7bb34f4a6229a5de281ee 1.0b1
-aba16323ec9382da7bc77c633990ccb3bd58d050 1.0b2
-8a98492f0d852402c93ddbbf3f07081909a9105f 1.0b3
-c385fdf1f976fb1d2a6accc9292d8eca419180fa 1.0
-d943b67fe80dbd61326014e4acedfc488adfa1c9 1.1
-2e42e86546100c9f6845b04eb31b75c5add05f78 1.1.1
-462fe5ccd8befeb2a235e8295d6d73eb3a49cc78 1.1.2
-ddf3561d6a54087745f4bf6ea2048b86195d6fe2 1.1.3
-f94c7e4fa03077e069c1c3cef93ead735559e706 1.1.4
-d9bb58331007ee3f69d31983a180f56b15c731c3 1.1.5
-5e426bdeb46b87e299422adc419f4163b6c78d13 1.1.6
-cc9b19cd0ec64e44308a852e9b9fdc6026ea2e46 1.1.7
-4c7dc4ae2440ae3e9ba26b4a12ffca3407e7030d 1.2b1
-77921bbe3931caf40474dc36e55d3d541981c749 1.2
-19873119647deae8a68e9ed683317b9ee170a8d8 1.3
-a197b626075a8c2e393a08c42a20bd2624a41092 1.3.1
-076b472a9e3f840021e9d5509878337e6e5fcd89 1.3.2
-0d1bdb99a535a2c7ed4edd37141fb0b54348b713 1.4b1
-a13f8c18ce742bc83c794b9eea57980cb94ae18a 1.4
-9a5f26d7df8ef779cb5f40cc0389343fb4c61365 1.4.1
-274cb3beba4f22d5f461b0578b6d56e171d94f2e 1.4.2
-0bb1df93c2eaa50e95ccfce18208b0cca20ebae3 2.0
-bbdba51e1bc1779728ed351529252f73543ace65 2.0.1
-5a62ac60ba31d249db1cfcff31d85ca26421be6d 2.0.2
-c49c651997ebec3b40b71139e8a6a6a15c62c848 2.1
-b5be6c2b828cb92d27f52fccc725ce86a37e9ce0 2.1.1
-ab1c2a26e06f2a2006e8e867e4d41ccf1d6cf9b2 2.2b1
-caab085e829f29679d0e47430b2761af6b20fc76 2.1.2
-39f7ef5ef22183f3eba9e05a46068e1d9fd877b0 2.2
-faba785e9b9e05ba890d0851ef1f3287c32fcac2 3.0b1
-8e8c50925f18eafb7e66fe020aa91a85b9a4b122 3.0
-cd9e857476ac70515f7436f846b593f696ac672d 3.0.1
-bad1f30ee0dfa7a2af4f428d06f62efa39ca48db 3.0.2
-47224d55ddc6bb08c1d17a219f124d0d9c524491 3.1
-07c459bea1c58ff52e0576fc29c1865d18a83b09 3.2
-b306e681a945406833fb297ae10241e2241fc22b 3.3
-78c8cfbe3e1017d1653c48f7306b2c4b4911bf1a 4.0b1
-5cb90066d98700e6d37a01d95c4a2090e730ae02 3.4
-e39de2d3eb774b70c023a1151758213cc9ed2178 3.4.1
-369f6f90f69683702cc0b72827ccf949977808b0 3.4.2
-06a56e063c327b0606f9e9690764279d424646b2 3.4.3
-0917d575d26091a184796624743825914994bf95 3.4.4
-98f29d521c3a57bae0090d2bc5597d93db95b108 3.5
-254d8c625f4620993ce2d2b21212ba01cf307fe6 3.5.1
-572201d08eadc59210f6f0f28f9dc79f906672d3 3.5.2
-e94e768594a1405efde0b79cc60549dd8a4cda9a 3.6
-292dfca15d33e72a862d044183a6ad7c06862a19 3.7b1
-49bd27eebf212c067392796bb2d0fa6d8e583586 3.7
-2fa97c06cc013a9c82f4c1219711e72238d5b6e6 3.8
-9b422fc0b8b97cdb62f02d754283f747adef7f83 3.7.1
-40744de29b848f0e88139ba91d645c08a56855e9 3.8.1
-84d936fd18a93d16c46e68ee2e39f5733f3cd863 5.0
-871bd7b4326f48860ebe0baccdaea8fe4f8f8583 5.0.1
-95996b713722376679c3168b15ab12ea8360dd5f 5.0.2
-3a948b6d01e3449b478fcdc532c44eb3cea5ee10 5.1
-f493e6c4ffd88951871110858c141385305e0077 5.2
-1f9505cfd7524ce0c83ab31d139f47b39c56ccbe 5.3
-baae103e80c307008b156e426a07eb9f486eb4f0 5.4
-ba3b08c7bffd6123e1a7d58994f15e8051a67cb7 5.4.1
-7adcf1397f6eccb9e73eda294343de2943f7c8fb 5.4.2
-68910a89f97a508a64f9f235dc64ad43d4477ea0 5.5
-949a66af4f03521e1404deda940aa951418a13d2 5.5.1
-a1fc0220bfa3581158688789f6dfdc00672eb99b 5.6
-37ed55fd310d0cd32009dc5676121e86b404a23d 5.7
-67550a8ed9f4ef49ee5a31f433adbf5a0eaeccf9 5.8
-755cbfd3743ffb186cdf7e20be8e61dbdaa22503 6.0
-bc6655b4acf205dd9f25c702955645656077398a 6.0.1
-1ae2a75724bbba56373784f185a7f235ed0f24a4 6.0.2b1
-01271e84e5125fcc4f0f368a6e21116a5722953c 6.0.2
-7ea80190d494a766c6356fce85c844703964b6cc 6.1
-df26609c2f614f5fc9110342e4003ee8bd95cf84 7.0
-850a5c155c48b6ecfbb83b961586ea359b561522 8.0b1
-7ea0e7498e4ddbf63b6929ee83c75a9207996b08 8.0
-1af3a5f24f7dd4e51d117f701918052b7de65c99 8.1b1
-d62bf4e407b3b9b5bedcc1396a9ba46f35571902 8.0.1
-1c03d512e39d5cfd711ae3ed7e316769f427e43b 8.0.2
-6c3467488123ce70b1dd009145a02f51fb78cdcc 8.0.3
-2c467afffe9fe1e14618b576fac6b4f7c412a61e 8.0.4
-3f87370b6863e5a4e831b394ef1a58e0e97a4336 8.1
-995f6d9651312cd481ca1e5ddb271cbdd0474c57 8.2
-efbe39dae0aba9a7db399f6442758ae94e315c93 8.2.1
-cd14b2a72e51c7d13873ab6c2041f901b1a7a1cd 8.3
-0eee586a153f068142c1a0df4bc2635ed2c1a1cc 9.0b1
-921e60a0f9067311571fde9ccf2f35223159d9f6 8.4
-0d7b9b63d06ab7f68bc8edd56cb2034e6395d7fc 9.0
-fa069bf2411a150c9379d31a04d1c3836e2d3027 9.0.1
-3ed27d68d3f41bb5daa2afecfa9180d5958fe9d3 9.1
-0c4d18a747a6d39bff8e194a58af949a960d674a 10.0
-4c41e2cdd70beb0da556d71f46a67734c14f2bc2 10.0.1
-26b00011ec65b8f7b4f3d51078ec0a694701a45c 10.1
-651d41db58849d4fc50e466f4dc458d448480c4e 10.2
-1f5de53c079d577ead9d80265c9e006503b16457 10.2.1
-b4b92805bc0e9802da0b597d00df4fa42b30bc40 11.0
-6cd2b18f4be2a9c188fa505b34505b32f4a4554b 11.1
-feb5971e7827483bbdeb67613126bb79ed09e6d9 11.2
-a1a6a1ac9113b90009052ca7263174a488434099 11.3
-1116e568f534ad8f4f41328a0f5fa183eb739c90 11.3.1
-55666947c9eb7e3ba78081ad6ae004807c84aede 12.0
-747018b2e35a40cb4b1c444f150f013d02197c64 12.0.1
-a177ea34bf81662b904fe3af46f3c8719a947ef1 12.0.2
-bf8c5bcacd49bf0f9648013a40ebfc8f7c727f7b 12.0.3
-73dcfc90e3eecec6baddea19302c6b342e68e2fa 12.0.4
-01fbfc9194a2bc502edd682eebbf4d2f1bc79eee 12.0.5
-7bca8938434839dbb546b8bfccd9aab7a86d851e 12.1
-5ff5c804a8fa580cff499ba0025ff2e6a5474fd0 12.2
-8d50aac3b20793954121edb300b477cc75f3ec96 12.3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/.travis.yml 
new/setuptools-14.3/.travis.yml
--- old/setuptools-12.4/.travis.yml     2015-03-03 23:47:07.000000000 +0100
+++ new/setuptools-14.3/.travis.yml     1970-01-01 01:00:00.000000000 +0100
@@ -1,15 +0,0 @@
-language: python
-python:
-  - 2.6
-  - 2.7
-  - 3.2
-  - 3.3
-  - 3.4
-  - pypy
-# command to run tests
-script:
- # update egg_info based on setup.py in checkout
- - python bootstrap.py
-
- - python setup.py test --addopts='-rs'
- - python ez_setup.py --version 12.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/CHANGES.txt 
new/setuptools-14.3/CHANGES.txt
--- old/setuptools-12.4/CHANGES.txt     2015-03-03 23:49:50.000000000 +0100
+++ new/setuptools-14.3/CHANGES.txt     2015-03-15 14:41:53.000000000 +0100
@@ -3,6 +3,76 @@
 =======
 
 ----
+14.3
+----
+
+* Issue #254: When creating temporary egg cache on Unix, use mode 755
+  for creating the directory to avoid the subsequent warning if
+  the directory is group writable.
+
+----
+14.2
+----
+
+* Issue #137: Update ``Distribution.hashcmp`` so that Distributions with
+  None for pyversion or platform can be compared against Distributions
+  defining those attributes.
+
+------
+14.1.1
+------
+
+* Issue #360: Removed undesirable behavior from test runs, preventing
+  write tests and installation to system site packages.
+
+----
+14.1
+----
+
+* Pull Request #125: Add ``__ne__`` to Requirement class.
+* Various refactoring of easy_install.
+
+----
+14.0
+----
+
+* Bootstrap script now accepts ``--to-dir`` to customize save directory or
+  allow for re-use of existing repository of setuptools versions. See
+  Pull Request #112 for background.
+* Issue #285: ``easy_install`` no longer will default to installing
+  packages to the "user site packages" directory if it is itself installed
+  there. Instead, the user must pass ``--user`` in all cases to install
+  packages to the user site packages.
+  This behavior now matches that of "pip install". To configure
+  an environment to always install to the user site packages, consider
+  using the "install-dir" and "scripts-dir" parameters to easy_install
+  through an appropriate distutils config file.
+
+------
+13.0.2
+------
+
+* Issue #359: Include pytest.ini in the sdist so invocation of py.test on the
+  sdist honors the pytest configuration.
+
+------
+13.0.1
+------
+
+Re-release of 13.0. Intermittent connectivity issues caused the release
+process to fail and PyPI uploads no longer accept files for 13.0.
+
+----
+13.0
+----
+
+* Issue #356: Back out Pull Request #119 as it requires Setuptools 10 or later
+  as the source during an upgrade.
+* Removed build_py class from setup.py. According to 892f439d216e, this
+  functionality was added to support upgrades from old Distribute versions,
+  0.6.5 and 0.6.6.
+
+----
 12.4
 ----
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/MANIFEST.in 
new/setuptools-14.3/MANIFEST.in
--- old/setuptools-12.4/MANIFEST.in     2015-03-03 23:47:08.000000000 +0100
+++ new/setuptools-14.3/MANIFEST.in     2015-03-07 05:08:50.000000000 +0100
@@ -9,3 +9,4 @@
 include MANIFEST.in
 include launcher.c
 include msvc-build-launcher.cmd
+include pytest.ini
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/Makefile new/setuptools-14.3/Makefile
--- old/setuptools-12.4/Makefile        2015-03-03 23:47:08.000000000 +0100
+++ new/setuptools-14.3/Makefile        1970-01-01 01:00:00.000000000 +0100
@@ -1,7 +0,0 @@
-empty:
-       exit 1
-
-update-vendored:
-       rm -rf setuptools/_vendor/packaging
-       pip install -r setuptools/_vendor/vendored.txt -t setuptools/_vendor/
-       rm -rf setuptools/_vendor/*.{egg,dist}-info
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/PKG-INFO new/setuptools-14.3/PKG-INFO
--- old/setuptools-12.4/PKG-INFO        2015-03-04 17:07:59.000000000 +0100
+++ new/setuptools-14.3/PKG-INFO        2015-03-15 14:47:12.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: setuptools
-Version: 12.4
+Version: 14.3
 Summary: Easily download, build, install, upgrade, and uninstall Python 
packages
 Home-page: https://bitbucket.org/pypa/setuptools
 Author: Python Packaging Authority
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/ez_setup.py 
new/setuptools-14.3/ez_setup.py
--- old/setuptools-12.4/ez_setup.py     2015-03-03 23:47:08.000000000 +0100
+++ new/setuptools-14.3/ez_setup.py     2015-03-15 13:19:20.000000000 +0100
@@ -30,8 +30,9 @@
 except ImportError:
     USER_SITE = None
 
-DEFAULT_VERSION = "12.4"
+DEFAULT_VERSION = "14.3"
 DEFAULT_URL = "https://pypi.python.org/packages/source/s/setuptools/";
+DEFAULT_SAVE_DIR = os.curdir
 
 
 def _python_cmd(*args):
@@ -132,7 +133,7 @@
 
 def use_setuptools(
         version=DEFAULT_VERSION, download_base=DEFAULT_URL,
-        to_dir=os.curdir, download_delay=15):
+        to_dir=DEFAULT_SAVE_DIR, download_delay=15):
     """
     Ensure that a setuptools version is installed.
 
@@ -306,7 +307,8 @@
 
 def download_setuptools(
         version=DEFAULT_VERSION, download_base=DEFAULT_URL,
-        to_dir=os.curdir, delay=15, downloader_factory=get_best_downloader):
+        to_dir=DEFAULT_SAVE_DIR, delay=15,
+        downloader_factory=get_best_downloader):
     """
     Download setuptools from a specified location and return its filename.
 
@@ -359,19 +361,30 @@
         '--version', help="Specify which version to download",
         default=DEFAULT_VERSION,
     )
+    parser.add_option(
+       '--to-dir',
+       help="Directory to save (and re-use) package",
+       default=DEFAULT_SAVE_DIR,
+    )
     options, args = parser.parse_args()
     # positional arguments are ignored
     return options
 
 
+def _download_args(options):
+       """Return args for download_setuptools function from cmdline args."""
+       return dict(
+               version=options.version,
+               download_base=options.download_base,
+               downloader_factory=options.downloader_factory,
+               to_dir=options.to_dir,
+       )
+
+
 def main():
     """Install or upgrade setuptools and EasyInstall."""
     options = _parse_args()
-    archive = download_setuptools(
-        version=options.version,
-        download_base=options.download_base,
-        downloader_factory=options.downloader_factory,
-    )
+    archive = download_setuptools(**_download_args(options))
     return _install(archive, _build_install_args(options))
 
 if __name__ == '__main__':
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/pkg_resources/__init__.py 
new/setuptools-14.3/pkg_resources/__init__.py
--- old/setuptools-12.4/pkg_resources/__init__.py       2015-03-03 
23:47:08.000000000 +0100
+++ new/setuptools-14.3/pkg_resources/__init__.py       2015-03-15 
14:33:26.000000000 +0100
@@ -2448,8 +2448,8 @@
             self.precedence,
             self.key,
             _remove_md5_fragment(self.location),
-            self.py_version,
-            self.platform,
+            self.py_version or '',
+            self.platform or '',
         )
 
     def __hash__(self):
@@ -2907,6 +2907,9 @@
             self.hashCmp == other.hashCmp
         )
 
+    def __ne__(self, other):
+        return not self == other
+
     def __contains__(self, item):
         if isinstance(item, Distribution):
             if item.key != self.key:
@@ -2955,14 +2958,14 @@
         os.makedirs(dirname)
 
 
-def _bypass_ensure_directory(path, mode=0o777):
+def _bypass_ensure_directory(path):
     """Sandbox-bypassing version of ensure_directory()"""
     if not WRITE_SUPPORT:
         raise IOError('"os.mkdir" not supported on this platform.')
     dirname, filename = split(path)
     if dirname and filename and not isdir(dirname):
         _bypass_ensure_directory(dirname)
-        mkdir(dirname, mode)
+        mkdir(dirname, 0o755)
 
 
 def split_sections(s):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/setup.py new/setuptools-14.3/setup.py
--- old/setuptools-12.4/setup.py        2015-03-04 16:10:35.000000000 +0100
+++ new/setuptools-14.3/setup.py        2015-03-07 05:08:51.000000000 +0100
@@ -28,7 +28,6 @@
     exec(ver_file.read(), main_ns)
 
 import setuptools
-from setuptools.command.build_py import build_py as _build_py
 
 scripts = []
 
@@ -49,20 +48,6 @@
 
 console_scripts = list(_gen_console_scripts())
 
-
-# specific command that is used to generate windows .exe files
-class build_py(_build_py):
-    def build_package_data(self):
-        """Copy data files into build directory"""
-        for package, src_dir, build_dir, filenames in self.data_files:
-            for filename in filenames:
-                target = os.path.join(build_dir, filename)
-                self.mkpath(os.path.dirname(target))
-                srcfile = os.path.join(src_dir, filename)
-                outf, copied = self.copy_file(srcfile, target)
-                srcfile = os.path.abspath(srcfile)
-
-
 readme_file = io.open('README.txt', encoding='utf-8')
 
 with readme_file:
@@ -132,7 +117,6 @@
         "egg_info.writers": [
             "PKG-INFO = setuptools.command.egg_info:write_pkg_info",
             "requires.txt = setuptools.command.egg_info:write_requirements",
-            "setup_requires.txt = 
setuptools.command.egg_info:write_setup_requirements",
             "entry_points.txt = setuptools.command.egg_info:write_entries",
             "eager_resources.txt = setuptools.command.egg_info:overwrite_arg",
             "namespace_packages.txt = 
setuptools.command.egg_info:overwrite_arg",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/setuptools/command/easy_install.py 
new/setuptools-14.3/setuptools/command/easy_install.py
--- old/setuptools-12.4/setuptools/command/easy_install.py      2015-03-03 
23:47:09.000000000 +0100
+++ new/setuptools-14.3/setuptools/command/easy_install.py      2015-03-07 
05:40:30.000000000 +0100
@@ -152,12 +152,9 @@
     create_index = PackageIndex
 
     def initialize_options(self):
-        if site.ENABLE_USER_SITE:
-            whereami = os.path.abspath(__file__)
-            self.user = whereami.startswith(site.USER_SITE)
-        else:
-            self.user = 0
-
+        # the --user option seemst to be an opt-in one,
+        # so the default should be False.
+        self.user = 0
         self.zip_ok = self.local_snapshots_ok = None
         self.install_dir = self.script_dir = self.exclude_scripts = None
         self.index_url = None
@@ -203,15 +200,20 @@
         )
 
     def delete_blockers(self, blockers):
-        for filename in blockers:
-            if os.path.exists(filename) or os.path.islink(filename):
-                log.info("Deleting %s", filename)
-                if not self.dry_run:
-                    if (os.path.isdir(filename) and
-                            not os.path.islink(filename)):
-                        rmtree(filename)
-                    else:
-                        os.unlink(filename)
+        extant_blockers = (
+            filename for filename in blockers
+            if os.path.exists(filename) or os.path.islink(filename)
+        )
+        list(map(self._delete_path, extant_blockers))
+
+    def _delete_path(self, path):
+        log.info("Deleting %s", path)
+        if self.dry_run:
+            return
+
+        is_tree = os.path.isdir(path) and not os.path.islink(path)
+        remover = rmtree if is_tree else os.unlink
+        remover(path)
 
     def finalize_options(self):
         if self.version:
@@ -240,18 +242,7 @@
             self.config_vars['userbase'] = self.install_userbase
             self.config_vars['usersite'] = self.install_usersite
 
-        # fix the install_dir if "--user" was used
-        # XXX: duplicate of the code in the setup command
-        if self.user and site.ENABLE_USER_SITE:
-            self.create_home_path()
-            if self.install_userbase is None:
-                raise DistutilsPlatformError(
-                    "User base directory is not specified")
-            self.install_base = self.install_platbase = self.install_userbase
-            if os.name == 'posix':
-                self.select_scheme("unix_user")
-            else:
-                self.select_scheme(os.name + "_user")
+        self._fix_install_dir_for_user_site()
 
         self.expand_basedirs()
         self.expand_dirs()
@@ -346,6 +337,21 @@
 
         self.outputs = []
 
+    def _fix_install_dir_for_user_site(self):
+        """
+        Fix the install_dir if "--user" was used.
+        """
+        if not self.user or not site.ENABLE_USER_SITE:
+            return
+
+        self.create_home_path()
+        if self.install_userbase is None:
+            msg = "User base directory is not specified"
+            raise DistutilsPlatformError(msg)
+        self.install_base = self.install_platbase = self.install_userbase
+        scheme_name = os.name.replace('posix', 'unix') + '_user'
+        self.select_scheme(scheme_name)
+
     def _expand_attrs(self, attrs):
         for attr in attrs:
             val = getattr(self, attr)
@@ -438,7 +444,7 @@
             self.pth_file = None
 
         PYTHONPATH = os.environ.get('PYTHONPATH', '').split(os.pathsep)
-        if instdir not in map(normalize_path, [_f for _f in PYTHONPATH if _f]):
+        if instdir not in map(normalize_path, filter(None, PYTHONPATH)):
             # only PYTHONPATH dirs need a site.py, so pretend it's there
             self.sitepy_installed = True
         elif self.multi_version and not os.path.exists(pth_file):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/setuptools-12.4/setuptools/tests/test_easy_install.py 
new/setuptools-14.3/setuptools/tests/test_easy_install.py
--- old/setuptools-12.4/setuptools/tests/test_easy_install.py   2015-03-03 
23:47:10.000000000 +0100
+++ new/setuptools-14.3/setuptools/tests/test_easy_install.py   2015-03-15 
03:37:32.000000000 +0100
@@ -154,77 +154,74 @@
 @pytest.mark.usefixtures("setup_context")
 class TestUserInstallTest:
 
-    @mock.patch('setuptools.command.easy_install.__file__', None)
-    def test_user_install_implied(self):
-        easy_install_pkg.__file__ = site.USER_SITE
-        site.ENABLE_USER_SITE = True # disabled sometimes
-        #XXX: replace with something meaningfull
+    # prevent check that site-packages is writable. easy_install
+    # shouldn't be writing to system site-packages during finalize
+    # options, but while it does, bypass the behavior.
+    prev_sp_write = mock.patch(
+        'setuptools.command.easy_install.easy_install.check_site_dir',
+        mock.Mock(),
+    )
+
+    # simulate setuptools installed in user site packages
+    @mock.patch('setuptools.command.easy_install.__file__', site.USER_SITE)
+    @mock.patch('site.ENABLE_USER_SITE', True)
+    @prev_sp_write
+    def test_user_install_not_implied_user_site_enabled(self):
+        self.assert_not_user_site()
+
+    @mock.patch('site.ENABLE_USER_SITE', False)
+    @prev_sp_write
+    def test_user_install_not_implied_user_site_disabled(self):
+        self.assert_not_user_site()
+
+    @staticmethod
+    def assert_not_user_site():
+        # create a finalized easy_install command
         dist = Distribution()
         dist.script_name = 'setup.py'
         cmd = ei.easy_install(dist)
         cmd.args = ['py']
         cmd.ensure_finalized()
-        assert cmd.user, 'user should be implied'
+        assert not cmd.user, 'user should not be implied'
 
     def test_multiproc_atexit(self):
-        try:
-            __import__('multiprocessing')
-        except ImportError:
-            # skip the test if multiprocessing is not available
-            return
+        pytest.importorskip('multiprocessing')
 
         log = logging.getLogger('test_easy_install')
         logging.basicConfig(level=logging.INFO, stream=sys.stderr)
         log.info('this should not break')
 
-    def test_user_install_not_implied_without_usersite_enabled(self):
-        site.ENABLE_USER_SITE = False # usually enabled
-        #XXX: replace with something meaningfull
+    @pytest.fixture()
+    def foo_package(self, tmpdir):
+        egg_file = tmpdir / 'foo-1.0.egg-info'
+        with egg_file.open('w') as f:
+            f.write('Name: foo\n')
+        return str(tmpdir)
+
+    @pytest.yield_fixture()
+    def install_target(self, tmpdir):
+        target = str(tmpdir)
+        with mock.patch('sys.path', sys.path + [target]):
+            python_path = os.path.pathsep.join(sys.path)
+            with mock.patch.dict(os.environ, PYTHONPATH=python_path):
+                yield target
+
+    def test_local_index(self, foo_package, install_target):
+        """
+        The local index must be used when easy_install locates installed
+        packages.
+        """
         dist = Distribution()
         dist.script_name = 'setup.py'
         cmd = ei.easy_install(dist)
-        cmd.args = ['py']
-        cmd.initialize_options()
-        assert not cmd.user, 'NOT user should be implied'
-
-    def test_local_index(self):
-        # make sure the local index is used
-        # when easy_install looks for installed
-        # packages
-        new_location = tempfile.mkdtemp()
-        target = tempfile.mkdtemp()
-        egg_file = os.path.join(new_location, 'foo-1.0.egg-info')
-        with open(egg_file, 'w') as f:
-            f.write('Name: foo\n')
-
-        sys.path.append(target)
-        old_ppath = os.environ.get('PYTHONPATH')
-        os.environ['PYTHONPATH'] = os.path.pathsep.join(sys.path)
-        try:
-            dist = Distribution()
-            dist.script_name = 'setup.py'
-            cmd = ei.easy_install(dist)
-            cmd.install_dir = target
-            cmd.args = ['foo']
-            cmd.ensure_finalized()
-            cmd.local_index.scan([new_location])
-            res = cmd.easy_install('foo')
-            actual = os.path.normcase(os.path.realpath(res.location))
-            expected = os.path.normcase(os.path.realpath(new_location))
-            assert actual == expected
-        finally:
-            sys.path.remove(target)
-            for basedir in [new_location, target, ]:
-                if not os.path.exists(basedir) or not os.path.isdir(basedir):
-                    continue
-                try:
-                    shutil.rmtree(basedir)
-                except:
-                    pass
-            if old_ppath is not None:
-                os.environ['PYTHONPATH'] = old_ppath
-            else:
-                del os.environ['PYTHONPATH']
+        cmd.install_dir = install_target
+        cmd.args = ['foo']
+        cmd.ensure_finalized()
+        cmd.local_index.scan([foo_package])
+        res = cmd.easy_install('foo')
+        actual = os.path.normcase(os.path.realpath(res.location))
+        expected = os.path.normcase(os.path.realpath(foo_package))
+        assert actual == expected
 
     @contextlib.contextmanager
     def user_install_setup_context(self, *args, **kwargs):
@@ -245,26 +242,6 @@
             self.user_install_setup_context,
         )
 
-    def test_setup_requires(self):
-        """Regression test for Distribute issue #318
-
-        Ensure that a package with setup_requires can be installed when
-        setuptools is installed in the user site-packages without causing a
-        SandboxViolation.
-        """
-
-        test_pkg = create_setup_requires_package(os.getcwd())
-        test_setup_py = os.path.join(test_pkg, 'setup.py')
-
-        try:
-            with contexts.quiet():
-                with self.patched_setup_context():
-                    run_setup(test_setup_py, ['install'])
-        except IndexError:
-            # Test fails in some cases due to bugs in Python
-            # See https://bitbucket.org/pypa/setuptools/issue/201
-            pass
-
 
 @pytest.yield_fixture
 def distutils_package():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/setuptools/version.py 
new/setuptools-14.3/setuptools/version.py
--- old/setuptools-12.4/setuptools/version.py   2015-03-03 23:47:11.000000000 
+0100
+++ new/setuptools-14.3/setuptools/version.py   2015-03-15 13:19:20.000000000 
+0100
@@ -1 +1 @@
-__version__ = '12.4'
+__version__ = '14.3'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/setuptools.egg-info/PKG-INFO 
new/setuptools-14.3/setuptools.egg-info/PKG-INFO
--- old/setuptools-12.4/setuptools.egg-info/PKG-INFO    2015-03-04 
17:07:56.000000000 +0100
+++ new/setuptools-14.3/setuptools.egg-info/PKG-INFO    2015-03-15 
14:47:09.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: setuptools
-Version: 12.4
+Version: 14.3
 Summary: Easily download, build, install, upgrade, and uninstall Python 
packages
 Home-page: https://bitbucket.org/pypa/setuptools
 Author: Python Packaging Authority
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/setuptools.egg-info/SOURCES.txt 
new/setuptools-14.3/setuptools.egg-info/SOURCES.txt
--- old/setuptools-12.4/setuptools.egg-info/SOURCES.txt 2015-03-04 
17:07:59.000000000 +0100
+++ new/setuptools-14.3/setuptools.egg-info/SOURCES.txt 2015-03-15 
14:47:11.000000000 +0100
@@ -1,11 +1,6 @@
-.gitignore
-.hgignore
-.hgtags
-.travis.yml
 CHANGES.txt
 DEVGUIDE.txt
 MANIFEST.in
-Makefile
 README.txt
 bootstrap.py
 conftest.py
@@ -17,7 +12,6 @@
 release.py
 setup.cfg
 setup.py
-tox.ini
 _markerlib/__init__.py
 _markerlib/markers.py
 docs/Makefile
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/setuptools.egg-info/entry_points.txt 
new/setuptools-14.3/setuptools.egg-info/entry_points.txt
--- old/setuptools-12.4/setuptools.egg-info/entry_points.txt    2015-03-04 
17:07:56.000000000 +0100
+++ new/setuptools-14.3/setuptools.egg-info/entry_points.txt    2015-03-15 
14:47:09.000000000 +0100
@@ -54,7 +54,6 @@
 entry_points.txt = setuptools.command.egg_info:write_entries
 namespace_packages.txt = setuptools.command.egg_info:overwrite_arg
 requires.txt = setuptools.command.egg_info:write_requirements
-setup_requires.txt = setuptools.command.egg_info:write_setup_requirements
 top_level.txt = setuptools.command.egg_info:write_toplevel_names
 
 [setuptools.installation]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/setuptools-12.4/tox.ini new/setuptools-14.3/tox.ini
--- old/setuptools-12.4/tox.ini 2015-03-03 23:47:11.000000000 +0100
+++ new/setuptools-14.3/tox.ini 1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-[tox]
-envlist = py26,py27,py31,py32,py33,py34
-[testenv]
-deps=pytest
-commands=py.test {posargs}

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to