Browse Source

New upstream version 0.16.1

Jelmer Vernooij 8 years ago
parent
commit
b34ce656df

+ 7 - 0
NEWS

@@ -1,3 +1,10 @@
+0.16.1	2016-12-25
+
+ BUG FIXES
+
+  * Fix python3 compatibility for dulwich.contrib.release_robot.
+    (Jelmer Vernooij)
+
 0.16.0	2016-12-24
 
  IMPROVEMENTS

+ 1 - 1
PKG-INFO

@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: dulwich
-Version: 0.16.0
+Version: 0.16.1
 Summary: Python Git Library
 Home-page: https://www.dulwich.io/
 Author: Jelmer Vernooij

+ 1 - 1
dulwich.egg-info/PKG-INFO

@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: dulwich
-Version: 0.16.0
+Version: 0.16.1
 Summary: Python Git Library
 Home-page: https://www.dulwich.io/
 Author: Jelmer Vernooij

+ 1 - 0
dulwich.egg-info/SOURCES.txt

@@ -70,6 +70,7 @@ dulwich/contrib/__init__.py
 dulwich/contrib/paramiko_vendor.py
 dulwich/contrib/release_robot.py
 dulwich/contrib/swift.py
+dulwich/contrib/test_release_robot.py
 dulwich/contrib/test_swift.py
 dulwich/contrib/test_swift_smoke.py
 dulwich/tests/__init__.py

+ 1 - 1
dulwich/__init__.py

@@ -22,4 +22,4 @@
 
 """Python implementation of the Git file formats and protocols."""
 
-__version__ = (0, 16, 0)
+__version__ = (0, 16, 1)

+ 1 - 0
dulwich/client.py

@@ -905,6 +905,7 @@ class SSHVendor(object):
     """A client side SSH implementation."""
 
     def connect_ssh(self, host, command, username=None, port=None):
+        # This function was deprecated in 0.9.1
         import warnings
         warnings.warn(
             "SSHVendor.connect_ssh has been renamed to SSHVendor.run_command",

+ 22 - 3
dulwich/contrib/release_robot.py

@@ -1,3 +1,22 @@
+# release_robot.py
+#
+# Dulwich is dual-licensed under the Apache License, Version 2.0 and the GNU
+# General Public License as public by the Free Software Foundation; version 2.0
+# or (at your option) any later version. You can redistribute it and/or
+# modify it under the terms of either of these two licenses.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# You should have received a copy of the licenses; if not, see
+# <http://www.gnu.org/licenses/> for a copy of the GNU General Public License
+# and <http://www.apache.org/licenses/LICENSE-2.0> for a copy of the Apache
+# License, Version 2.0.
+#
+
 """Determine last version string from tags.
 
 Alternate to `Versioneer <https://pypi.python.org/pypi/versioneer/>`_ using
@@ -39,7 +58,7 @@ def get_recent_tags(projdir=PROJDIR):
     refs = project.get_refs()  # dictionary of refs and their SHA-1 values
     tags = {}  # empty dictionary to hold tags, commits and datetimes
     # iterate over refs in repository
-    for key, value in refs.iteritems():
+    for key, value in refs.items():
         obj = project.get_object(value)  # dulwich object from SHA-1
         # check if object is tag
         if obj.type_name != 'tag':
@@ -60,7 +79,7 @@ def get_recent_tags(projdir=PROJDIR):
             ]
 
     # return list of tags sorted by their datetimes from newest to oldest
-    return sorted(tags.iteritems(), key=lambda tag: tag[1][0], reverse=True)
+    return sorted(tags.items(), key=lambda tag: tag[1][0], reverse=True)
 
 
 def get_current_version(pattern=PATTERN, projdir=PROJDIR, logger=None):
@@ -107,4 +126,4 @@ if __name__ == '__main__':
         projdir = sys.argv[1]
     else:
         projdir = PROJDIR
-    print get_current_version(projdir=projdir)
+    print(get_current_version(projdir=projdir))

+ 39 - 0
dulwich/contrib/test_release_robot.py

@@ -0,0 +1,39 @@
+# release_robot.py
+#
+# Dulwich is dual-licensed under the Apache License, Version 2.0 and the GNU
+# General Public License as public by the Free Software Foundation; version 2.0
+# or (at your option) any later version. You can redistribute it and/or
+# modify it under the terms of either of these two licenses.
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# You should have received a copy of the licenses; if not, see
+# <http://www.gnu.org/licenses/> for a copy of the GNU General Public License
+# and <http://www.apache.org/licenses/LICENSE-2.0> for a copy of the Apache
+# License, Version 2.0.
+#
+
+"""Tests for release_robot."""
+
+import re
+import unittest
+
+from dulwich.contrib.release_robot import PATTERN
+
+
+class TagPatternTests(unittest.TestCase):
+
+    def test_tag_pattern(self):
+        test_cases = {
+            '0.3': '0.3', 'v0.3': '0.3', 'release0.3': '0.3', 'Release-0.3': '0.3',
+            'v0.3rc1': '0.3rc1', 'v0.3-rc1': '0.3-rc1', 'v0.3-rc.1': '0.3-rc.1',
+            'version 0.3': '0.3', 'version_0.3_rc_1': '0.3_rc_1', 'v1': '1',
+            '0.3rc1': '0.3rc1'
+        }
+        for tc, version in test_cases.items():
+            m = re.match(PATTERN, tc)
+            self.assertEqual(m.group(1), version)

+ 1 - 1
setup.py

@@ -9,7 +9,7 @@ except ImportError:
     from distutils.core import setup, Extension
 from distutils.core import Distribution
 
-dulwich_version_string = '0.16.0'
+dulwich_version_string = '0.16.1'
 
 include_dirs = []
 # Windows MSVC support