Browse Source

Merge pull request #4458 from docker/bump-1.11.1

Bump 1.11.1
Joffrey F 8 years ago
parent
commit
fa90e4e555
6 changed files with 23 additions and 9 deletions
  1. 8 0
      CHANGELOG.md
  2. 1 1
      compose/__init__.py
  3. 4 7
      compose/config/config.py
  4. 5 0
      docker-compose.spec
  5. 1 1
      script/run/run.sh
  6. 4 0
      tests/unit/config/config_test.py

+ 8 - 0
CHANGELOG.md

@@ -1,6 +1,14 @@
 Change log
 ==========
 
+1.11.1 (2017-02-09)
+-------------------
+
+### Bugfixes
+
+- Fixed a bug where the 3.1 file format was not being recognized as valid
+  by the Compose parser
+
 1.11.0 (2017-02-08)
 -------------------
 

+ 1 - 1
compose/__init__.py

@@ -1,4 +1,4 @@
 from __future__ import absolute_import
 from __future__ import unicode_literals
 
-__version__ = '1.11.0'
+__version__ = '1.11.1'

+ 4 - 7
compose/config/config.py

@@ -186,11 +186,6 @@ class ConfigFile(namedtuple('_ConfigFile', 'filename config')):
         if version == '3':
             version = V3_0
 
-        if version not in (V2_0, V2_1, V3_0):
-            raise ConfigurationError(
-                'Version in "{}" is unsupported. {}'
-                .format(self.filename, VERSION_EXPLANATION))
-
         return version
 
     def get_service(self, name):
@@ -479,7 +474,7 @@ def process_config_file(config_file, environment, service_name=None):
         'service',
         environment)
 
-    if config_file.version in (V2_0, V2_1, V3_0):
+    if config_file.version in (V2_0, V2_1, V3_0, V3_1):
         processed_config = dict(config_file.config)
         processed_config['services'] = services
         processed_config['volumes'] = interpolate_config_section(
@@ -495,7 +490,9 @@ def process_config_file(config_file, environment, service_name=None):
     elif config_file.version == V1:
         processed_config = services
     else:
-        raise Exception("Unsupported version: {}".format(repr(config_file.version)))
+        raise ConfigurationError(
+            'Version in "{}" is unsupported. {}'
+            .format(config_file.filename, VERSION_EXPLANATION))
 
     config_file = config_file._replace(config=processed_config)
     validate_against_config_schema(config_file)

+ 5 - 0
docker-compose.spec

@@ -37,6 +37,11 @@ exe = EXE(pyz,
                 'compose/config/config_schema_v3.0.json',
                 'DATA'
             ),
+            (
+                'compose/config/config_schema_v3.1.json',
+                'compose/config/config_schema_v3.1.json',
+                'DATA'
+            ),
             (
                 'compose/GITSHA',
                 'compose/GITSHA',

+ 1 - 1
script/run/run.sh

@@ -15,7 +15,7 @@
 
 set -e
 
-VERSION="1.11.0"
+VERSION="1.11.1"
 IMAGE="docker/compose:$VERSION"
 
 

+ 4 - 0
tests/unit/config/config_test.py

@@ -19,6 +19,7 @@ from compose.config.config import V1
 from compose.config.config import V2_0
 from compose.config.config import V2_1
 from compose.config.config import V3_0
+from compose.config.config import V3_1
 from compose.config.environment import Environment
 from compose.config.errors import ConfigurationError
 from compose.config.errors import VERSION_EXPLANATION
@@ -168,6 +169,9 @@ class ConfigTest(unittest.TestCase):
             cfg = config.load(build_config_details({'version': version}))
             assert cfg.version == V3_0
 
+        cfg = config.load(build_config_details({'version': '3.1'}))
+        assert cfg.version == V3_1
+
     def test_v1_file_version(self):
         cfg = config.load(build_config_details({'web': {'image': 'busybox'}}))
         assert cfg.version == V1