internlm/SWE-Fixer-Train-110K huggingface dataset:
Repository: awslabs/gluonts

Issue:
Working with Weekly or Montly time series
Hello,

I am having difficulties to work with Weekly and Montly frequency.

When I run this code using Daily frequenct, it works properly, however, if I resample to weekly or montly I get the following error:

`TypeError: unsupported operand type(s) for *: 'int' and 'NoneType'`

Here is my code:

```
from gluonts.dataset.util import to_pandas
from gluonts.trainer import Trainer
import numpy as np
import matplotlib.pyplot as plt
plt.style.use('seaborn')
from gluonts.dataset import common
from gluonts.model import deepar
import pandas as pd

!pip install quandl

import quandl

dataset = pd.DataFrame(quandl.get("FRED/DEXBZUS"))

dataset = dataset.resample('M').apply(lambda ser: ser.iloc[-1,])

training_data = common.ListDataset([{"start": dataset.index[0],
                            "target": dataset.Value[:"2017"]}],
                          freq="M")

estimator = deepar.DeepAREstimator(freq="M", prediction_length=40, trainer=Trainer( epochs=5))
predictor = estimator.train(training_data=training_data)

for test_entry, forecast in zip(training_data , predictor.predict(training_data )):
    to_pandas(test_entry)[-60:].plot(linewidth=2)
    forecast.plot(color='g', prediction_intervals=[50.0, 90.0])
plt.grid(which='both')
```


Discussion:

Resolving patch:
diff --git a/src/gluonts/transform.py b/src/gluonts/transform.py
--- a/src/gluonts/transform.py
+++ b/src/gluonts/transform.py
@@ -99,7 +99,10 @@ def _compute_date_helper(ts, freq, offset):
         # this line looks innocent, but can create a date which is out of
         # bounds values over year 9999 raise a ValueError
         # values over 2262-04-11 raise a pandas OutOfBoundsDatetime
-        return ts + offset * ts.freq
+        result = ts + offset * ts.freq
+        # For freq M and W pandas seems to lose the freq of the timestamp,
+        # so we explicitly set it.
+        return pd.Timestamp(result, freq=ts.freq)
     except (ValueError, pd._libs.OutOfBoundsDatetime) as ex:
         raise GluonTSDateBoundsError(ex)
 


Test patch:
Repository: awslabs/gluonts

Issue:
Investigate build process on Windows
The package build seems to be failing on Windows, apparently once again due to some hard-coded path.

Context is in #75 


Discussion:
This looks problematic:

https://github.com/awslabs/gluon-ts/blob/d7e73ec52cb49a52175e51e50ac1f30ed00f774c/setup.py#L43-L50

Also not sure whether this will behave correctly (since it has a "/" in the glob expression):

https://github.com/awslabs/gluon-ts/blob/d7e73ec52cb49a52175e51e50ac1f30ed00f774c/setup.py#L132


I made some modifications to 'setup.py', and I can install gluonts from source code on Windows.
- before
```
GPU_SUPPORT = 0 == int(
    subprocess.call(
        "nvidia-smi",
        shell=True,
        stdout=open("/dev/null", "w"),
        stderr=open("/dev/null", "w"),
    )
)
```
- after
```
import os

GPU_SUPPORT = 0 == int(
    subprocess.call(
        "nvidia-smi",
        shell=True,
        stdout=open(os.devnull, "w"),
        stderr=open(os.devnull, "w"),
    )
) 
```

Resolving patch:
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -3,6 +3,7 @@
 import distutils.log
 import itertools
 import logging
+import os
 import subprocess
 import sys
 from pathlib import Path
@@ -19,8 +20,8 @@
     subprocess.call(
         "nvidia-smi",
         shell=True,
-        stdout=open("/dev/null", "w"),
-        stderr=open("/dev/null", "w"),
+        stdout=open(os.devnull, "w"),
+        stderr=open(os.devnull, "w"),
     )
 )
 


Test patch:
Repository: awslabs/gluonts

Issue:
mean_ts() has bug in class DistributionForecast & SampleForecast in forecast.py
## Description
mean_ts()
return pd.Series(self.index, self.mean)

Should be:
mean_ts()
return pd.Series(data=self.mean, index=self.index)



Discussion:
Thanks. Could you perhaps open a PR for this? 

Resolving patch:
diff --git a/src/gluonts/model/forecast.py b/src/gluonts/model/forecast.py
--- a/src/gluonts/model/forecast.py
+++ b/src/gluonts/model/forecast.py
@@ -390,7 +390,7 @@ def mean_ts(self):
         """
         Forecast mean, as a pandas.Series object.
         """
-        return pd.Series(self.index, self.mean)
+        return pd.Series(self.mean, index=self.index)
 
     def quantile(self, q):
         q = Quantile.parse(q).value
@@ -624,7 +624,7 @@ def mean_ts(self):
         """
         Forecast mean, as a pandas.Series object.
         """
-        return pd.Series(index=self.index, data=self.mean)
+        return pd.Series(self.mean, index=self.index)
 
     def quantile(self, level):
         level = Quantile.parse(level).value


Test patch:
Repository: awslabs/gluonts

Issue:
MSIS computation is too implicit in Evaluator
## Description
The computation of MSIS in the Evaluator class depends on the Evaluator settings in a rather implicit way. This could be improved by taking as constructor arguments exactly the quantiles to be used as lower and upper bound for the MSIS computation, and using exactly those.

## References

#845

https://github.com/awslabs/gluon-ts/issues/845#issuecomment-635161515


Discussion:

Resolving patch:
diff --git a/src/gluonts/evaluation/_base.py b/src/gluonts/evaluation/_base.py
--- a/src/gluonts/evaluation/_base.py
+++ b/src/gluonts/evaluation/_base.py
@@ -84,11 +84,11 @@ class Evaluator:
         uses the default seasonality
         for the given series frequency as returned by `get_seasonality`
     alpha
-        parameter of the MSIS metric from M4 competition that
-        defines the confidence interval
-        for alpha=0.05 the 95% considered is considered in the metric,
-        see https://www.m4.unic.ac.cy/wp-content/uploads/2018/03/M4
-        -Competitors-Guide.pdf for more detail on MSIS
+        Parameter of the MSIS metric from the M4 competition that
+        defines the confidence interval.
+        For alpha=0.05 (default) the 95% considered is considered in the metric,
+        see https://www.m4.unic.ac.cy/wp-content/uploads/2018/03/M4-Competitors-Guide.pdf
+        for more detail on MSIS
     calculate_owa
         Determines whether the OWA metric should also be calculated,
         which is computationally expensive to evaluate and thus slows
@@ -306,15 +306,6 @@ def get_metrics_per_ts(
             mean_fcst = None
         median_fcst = forecast.quantile(0.5)
         seasonal_error = self.seasonal_error(past_data, forecast)
-        # For MSIS: alpha/2 quantile may not exist. Find the closest.
-        lower_q = min(
-            self.quantiles, key=lambda q: abs(q.value - self.alpha / 2)
-        )
-        upper_q = min(
-            reversed(self.quantiles),
-            key=lambda q: abs(q.value - (1 - self.alpha / 2)),
-        )
-
         metrics = {
             "item_id": forecast.item_id,
             "MSE": self.mse(pred_target, mean_fcst)
@@ -330,8 +321,8 @@ def get_metrics_per_ts(
             "OWA": np.nan,  # by default not calculated
             "MSIS": self.msis(
                 pred_target,
-                forecast.quantile(lower_q.value),
-                forecast.quantile(upper_q.value),
+                forecast.quantile(self.alpha / 2),
+                forecast.quantile(1.0 - self.alpha / 2),
                 seasonal_error,
                 self.alpha,
             ),


Test patch:
Repository: awslabs/gluonts

Issue:
Update pandas dependency
As documented in #967, pandas will be fixing the breaking change that led us to fix the dependency to `<1.1`, see pandas-dev/pandas#37267

Once that is resolved, we could remove the constraint.

*Edit:* we should also make sure to find a solution to #965 first


Discussion:

Resolving patch:
diff --git a/src/gluonts/time_feature/_base.py b/src/gluonts/time_feature/_base.py
--- a/src/gluonts/time_feature/_base.py
+++ b/src/gluonts/time_feature/_base.py
@@ -136,8 +136,8 @@ def time_features_from_frequency_str(freq_str: str) -> List[TimeFeature]:
     """
 
     features_by_offsets = {
-        offsets.YearOffset: [],
-        offsets.MonthOffset: [MonthOfYear],
+        offsets.YearEnd: [],
+        offsets.MonthEnd: [MonthOfYear],
         offsets.Week: [DayOfMonth, WeekOfYear],
         offsets.Day: [DayOfWeek, DayOfMonth, DayOfYear],
         offsets.BusinessDay: [DayOfWeek, DayOfMonth, DayOfYear],


Test patch:
Repository: awslabs/gluonts

Issue:
Theta model does not preserve item IDs
## Description

When using the `RForecastPredictor` with `method_name = "thetaf"`, the item IDs returned by the predictor's forecasts do not align with the actual item IDs. Instead, it returns `None` for the item IDs.

## To Reproduce

```python
from gluonts.dataset.repository.datasets import get_dataset
from gluonts.model.r_forecast import RForecastPredictor
from gluonts.evaluation.backtest import make_evaluation_predictions

dataset = get_dataset("m3_yearly")
predictor = RForecastPredictor(
    freq=dataset.metadata.freq,
    prediction_length=dataset.metadata.prediction_length,
    method_name="thetaf",
)
forecast_pred, forecast_true = make_evaluation_predictions(dataset.test, predictor)

forecast_pred, _ = make_evaluation_predictions(dataset.test, predictor)

for pred in forecast_pred:
    print(pred.item_id)
```

You'll see that only `None` is printed.

## Environment

- Operating system: Debian Buster
- Python version: `3.8.9`
- GluonTS version: Master, Post 0.7.0 (commit 645d551a2190b9b749528917cdf1c5e897c861d2)
- MXNet version: `1.8.0.post0`

Full list of dependencies:

```
PyYAML = "^5.4.1"
click = "^7.1.2"
fastparquet = "^0.6.1"
fbprophet = "^0.7.1"
gluonts = {git = "https://github.com/awslabs/gluon-ts.git", rev = "f6948bacb7a038df3374e768ad4939455c74b49d"}
holidays = "^0.11.1"
mxnet = "^1.8.0"
numpy = "^1.20.3"
pandas = "^1.2.4"
pyarrow = "^4.0.0"
pydantic = "^1.8.2"
pystan = "^2.0.0"
python = ">=3.8,<3.10"
rpy2 = ">=2.9.*,<3.*"
sagemaker = "^2.40.0"
sagemaker-training = "^3.9.2"
scikit-learn = "^0.24.2"
scipy = "^1.6.3"
toolz = "^0.11.1"
tqdm = "^4.60.0"
ujson = "^4.0.2"
xgboost = "^1.4.1"
```




Discussion:
Fixes for similar issues: #1113, #1173

Resolving patch:
diff --git a/src/gluonts/model/r_forecast/_predictor.py b/src/gluonts/model/r_forecast/_predictor.py
--- a/src/gluonts/model/r_forecast/_predictor.py
+++ b/src/gluonts/model/r_forecast/_predictor.py
@@ -207,5 +207,9 @@ def predict(
                 else None
             )
             yield SampleForecast(
-                samples, forecast_start(data), self.freq, info=info
+                samples,
+                forecast_start(data),
+                self.freq,
+                info=info,
+                item_id=entry.get("item_id", None),
             )


Test patch:
Repository: localstack/localstack

Issue:
Add Dockerfile and push public docker image
We should build a Docker image, to allow people to spin up the infrastructure without having to mess with their system and install all the requirements.


Discussion:

Resolving patch:
diff --git a/localstack/mock/infra.py b/localstack/mock/infra.py
--- a/localstack/mock/infra.py
+++ b/localstack/mock/infra.py
@@ -44,6 +44,10 @@
 INSTALL_DIR_ES = '%s/elasticsearch' % INSTALL_DIR_INFRA
 TMP_ARCHIVE_ES = '/tmp/localstack.es.zip'
 
+# list of default APIs to be spun up
+DEFAULT_APIS = ['s3', 'sns', 'sqs', 'es', 'apigateway', 'dynamodb',
+    'kinesis', 'dynamodbstreams', 'firehose', 'lambda']
+
 # set up logger
 LOGGER = logging.getLogger(__name__)
 
@@ -110,6 +114,10 @@ def install_components(names):
     common.parallelize(install_component, names)
 
 
+def install_all_components():
+    install_components(DEFAULT_APIS)
+
+
 def start_proxy(port, backend_port, update_listener):
     proxy_thread = GenericProxy(port=port, forward_host='127.0.0.1:%s' %
                         backend_port, update_listener=update_listener)
@@ -138,8 +146,8 @@ def start_kinesalite(port=DEFAULT_PORT_KINESIS, async=False, shard_limit=100, up
 
 def start_elasticsearch(port=DEFAULT_PORT_ELASTICSEARCH, delete_data=True, async=False):
     install_elasticsearch()
-    cmd = ('%s/infra/elasticsearch/bin/elasticsearch --http.port=%s --http.publish_port=%s' %
-        (ROOT_PATH, port, port))
+    cmd = (('%s/infra/elasticsearch/bin/elasticsearch --network.host=0.0.0.0 ' +
+        '--http.port=%s --http.publish_port=%s') % (ROOT_PATH, port, port))
     print("Starting local Elasticsearch (port %s)..." % port)
     if delete_data:
         path = '%s/infra/elasticsearch/data/elasticsearch' % (ROOT_PATH)
@@ -313,8 +321,7 @@ def check_aws_credentials():
 
 
 def start_infra(async=False, dynamodb_update_listener=None, kinesis_update_listener=None,
-        apigateway_update_listener=None, sns_update_listener=None,
-        apis=['s3', 'sns', 'sqs', 'es', 'apigateway', 'dynamodb', 'kinesis', 'dynamodbstreams', 'firehose', 'lambda']):
+        apigateway_update_listener=None, sns_update_listener=None, apis=DEFAULT_APIS):
     try:
         if not dynamodb_update_listener:
             dynamodb_update_listener = update_dynamodb
@@ -564,6 +571,13 @@ def dynamodb_extract_keys(item, table_name):
 
 
 if __name__ == '__main__':
+
+    if len(sys.argv) > 1 and sys.argv[1] == 'install':
+        print('Initializing installation.')
+        install_all_components()
+        print('Done.')
+        sys.exit(0)
+
     print('Starting local dev environment. CTRL-C to quit.')
     # set up logging
     logging.basicConfig(level=logging.WARNING)
diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -76,7 +76,7 @@ def run(self):
 
     setup(
         name='localstack',
-        version='0.3.0',
+        version='0.3.1',
         description='An easy-to-use test/mocking framework for developing Cloud applications',
         author='Waldemar Hummer (Atlassian)',
         author_email='waldemar.hummer@gmail.com',


Test patch:
Repository: localstack/localstack

Issue:
Add Python 2.7 test batch to the Travis config
One of the main goals of the project is to provide compatibility with Python 2.x and 3.x. Currently we're running the 3.x tests in Travis, and then use 2.x when building the Docker image. We should make this more explicit and add a Python 2.7 test batch to Travis as well.


Discussion:

Resolving patch:
diff --git a/localstack/services/awslambda/lambda_api.py b/localstack/services/awslambda/lambda_api.py
--- a/localstack/services/awslambda/lambda_api.py
+++ b/localstack/services/awslambda/lambda_api.py
@@ -13,10 +13,14 @@
 import imp
 import glob
 import subprocess
-import shlex
 from io import BytesIO
 from datetime import datetime
 from multiprocessing import Process, Queue
+try:
+    from shlex import quote as cmd_quote
+except ImportError:
+    # for Python 2.7
+    from pipes import quote as cmd_quote
 from six import iteritems
 from six.moves import cStringIO as StringIO
 from flask import Flask, Response, jsonify, request, make_response
@@ -255,7 +259,7 @@ def run_lambda(func, event, context, func_arn, suppress_output=False):
                     (taskdir, LAMBDA_EXECUTOR_CLASS, handler, event_file))
                 entrypoint = ' --entrypoint ""'
 
-            env_vars = ' '.join(['-e {}={}'.format(k, shlex.quote(v)) for (k, v) in environment.items()])
+            env_vars = ' '.join(['-e {}={}'.format(k, cmd_quote(v)) for (k, v) in environment.items()])
 
             if config.LAMBDA_REMOTE_DOCKER:
                 cmd = (


Test patch:
Repository: localstack/localstack

Issue:
Regression: S3 error when attempting to delete using C# Amazon S3 SDK
This regression was only introduced recently... perhaps related to 5507eea779ed6400763cfbfc9f320533f9f6bac4?

When attempting to delete files using the AWS C# S3 SDK, the following error is logged to the console:
```
2017-09-11T04:24:30:ERROR:localstack.services.generic_proxy: Error forwarding request: 'boundary' Traceback (most recent call last):
  File "/opt/code/localstack/localstack/services/generic_proxy.py", line 166, in forward
    path=path, data=data, headers=forward_headers)
  File "/opt/code/localstack/localstack/services/s3/s3_listener.py", line 345, in forward_request
    expanded_data = expand_multipart_filename(original_data, headers)
  File "/opt/code/localstack/localstack/services/s3/s3_listener.py", line 261, in expand_multipart_filename
    boundary = params['boundary'].encode('ascii')
KeyError: 'boundary'
```

I'm doing c# code like the following:
```
if (files.S3Objects.Any())
{
    _s3.DeleteObjects(new DeleteObjectsRequest
    {
        BucketName = Bucket,
        Objects = files.S3Objects.Select(o => new KeyVersion { Key = o.Key }).ToList()
    });
}
```

This worked previously, and has only broken since I updated to the most recent docker image of localstack.


Discussion:
Just confirming, the above block of code works correctly with docker image version 0.7.4, but hangs when run against 0.7.5, and spits out the captured error above.

Resolving patch:
diff --git a/localstack/services/s3/s3_listener.py b/localstack/services/s3/s3_listener.py
--- a/localstack/services/s3/s3_listener.py
+++ b/localstack/services/s3/s3_listener.py
@@ -258,6 +258,10 @@ def expand_multipart_filename(data, headers):
         http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html
     '''
     _, params = cgi.parse_header(headers.get('Content-Type'))
+
+    if 'boundary' not in params:
+        return data
+
     boundary = params['boundary'].encode('ascii')
     data_bytes = to_bytes(data)
 


Test patch:
Repository: localstack/localstack

Issue:
S3 bucket CORS configuration with single CORSRules
Hi guys,

I have this error when I try to add CORS Configuration to S3 with a single CORSRules:

```
2017-10-31T11:10:30:ERROR:localstack.services.generic_proxy: Error forwarding request: 'str' object has no attribute 'get' Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/localstack/services/generic_proxy.py", line 194, in forward
    path=path, data=data, headers=forward_headers, response=response)
  File "/usr/local/lib/python3.6/site-packages/localstack/services/s3/s3_listener.py", line 470, in return_response
    append_cors_headers(bucket_name, request_method=method, request_headers=headers, response=response)
  File "/usr/local/lib/python3.6/site-packages/localstack/services/s3/s3_listener.py", line 197, in append_cors_headers
    allowed_methods = rule.get('AllowedMethod', [])
AttributeError: 'str' object has no attribute 'get'
```

Used command line:
`awslocal s3api put-bucket-cors --bucket dev-inventory-loader --cors-configuration file://cors.json`

Content of cors.json:
```
{
   "CORSRules":[
      {
         "AllowedOrigins":[
            "*"
         ],
         "AllowedHeaders":[
            "x-amz-meta-name"
         ],
         "AllowedMethods":[
            "PUT", "GET"
         ],
         "MaxAgeSeconds":3000,
         "ExposeHeaders": ["x-amz-meta-name"]
      } 
   ]
}
```

**PS: I dont have this error with a multiple CORSRules.**

Thanks.


Discussion:

Resolving patch:
diff --git a/localstack/constants.py b/localstack/constants.py
--- a/localstack/constants.py
+++ b/localstack/constants.py
@@ -2,7 +2,7 @@
 import localstack_client.config
 
 # LocalStack version
-VERSION = '0.8.1'
+VERSION = '0.8.2'
 
 # default AWS region
 if 'DEFAULT_REGION' not in os.environ:
diff --git a/localstack/services/s3/s3_listener.py b/localstack/services/s3/s3_listener.py
--- a/localstack/services/s3/s3_listener.py
+++ b/localstack/services/s3/s3_listener.py
@@ -193,7 +193,10 @@ def append_cors_headers(bucket_name, request_method, request_headers, response):
     if not cors:
         return
     origin = request_headers.get('Origin', '')
-    for rule in cors['CORSConfiguration']['CORSRule']:
+    rules = cors['CORSConfiguration']['CORSRule']
+    if not isinstance(rules, list):
+        rules = [rules]
+    for rule in rules:
         allowed_methods = rule.get('AllowedMethod', [])
         if request_method in allowed_methods:
             allowed_origins = rule.get('AllowedOrigin', [])


Test patch:
Repository: localstack/localstack

Issue:
Error forwarding request: 'AccessControl'
Hi,

I'm trying to use localstack with the framwork Serverless, first I finally get to change the AWS enpoints to point to LocalStack, but qhen I'm try to make my first deployment I'm getting the following error:

```
localstack_1  | 2017-11-21T04:57:00:ERROR:localstack.services.generic_proxy: Error forwarding request: 'AccessControl' Traceback (most recent call last):
localstack_1  |   File "/opt/code/localstack/localstack/services/generic_proxy.py", line 215, in forward
localstack_1  |     updated_response = self.proxy.update_listener.return_response(**kwargs)
localstack_1  |   File "/opt/code/localstack/localstack/services/cloudformation/cloudformation_listener.py", line 183, in return_response
localstack_1  |     template_deployer.deploy_template(template, req_data.get('StackName')[0])
localstack_1  |   File "/opt/code/localstack/localstack/utils/cloudformation/template_deployer.py", line 492, in deploy_template
localstack_1  |     next = resources_to_deploy_next(resource_map, stack_name)
localstack_1  |   File "/opt/code/localstack/localstack/utils/cloudformation/template_deployer.py", line 423, in deploy_resource
localstack_1  |     # obtain physical resource name from stack resources
localstack_1  |   File "/opt/code/localstack/localstack/utils/cloudformation/template_deployer.py", line 27, in <lambda>
localstack_1  |     'Bucket': ['BucketName', PLACEHOLDER_RESOURCE_NAME],
localstack_1  | KeyError: 'AccessControl'
```

I think the problem is calling this line:
```
RESOURCE_TO_FUNCTION = {
    'S3::Bucket': {
        'create': {
            'boto_client': 'resource',
            'function': 'create_bucket',
            'parameters': {
                'Bucket': ['BucketName', PLACEHOLDER_RESOURCE_NAME],
                'ACL': lambda params: convert_acl_cf_to_s3(params['AccessControl'])
            }
        }
    },
    'SQS::Queue': {
```

When trying to get the value of `params['AccessControl']` I try to make some debug, but I'm not a python expert so I can get the solution.


Discussion:

Resolving patch:
diff --git a/localstack/utils/cloudformation/template_deployer.py b/localstack/utils/cloudformation/template_deployer.py
--- a/localstack/utils/cloudformation/template_deployer.py
+++ b/localstack/utils/cloudformation/template_deployer.py
@@ -24,7 +24,7 @@
             'function': 'create_bucket',
             'parameters': {
                 'Bucket': ['BucketName', PLACEHOLDER_RESOURCE_NAME],
-                'ACL': lambda params: convert_acl_cf_to_s3(params['AccessControl'])
+                'ACL': lambda params: convert_acl_cf_to_s3(params.get('AccessControl', 'PublicRead'))
             }
         }
     },


Test patch:
Repository: localstack/localstack

Issue:
Fix Java Lambda Handler Static Imports
By mistake - autoimport functionality wrong static methods has been imported. This fix the issues reported by in #534 

It is unrelated to the JavaFX as that has been imported by mistake. Will prepare another PR with a bit more tests don't understand how it could have passed the CI / CD build with the wrong imports.



Discussion:
Thanks for fixing this so quickly @teroxik !

This commit should prevent such errors from happening in the future: https://github.com/localstack/localstack/commit/1c4ce04779b166589dd50f1c46c01d0884fb73ca

Resolving patch:
diff --git a/localstack/constants.py b/localstack/constants.py
--- a/localstack/constants.py
+++ b/localstack/constants.py
@@ -30,7 +30,7 @@
 LOCALHOST = 'localhost'
 
 # version of the Maven dependency with Java utility code
-LOCALSTACK_MAVEN_VERSION = '0.1.9'
+LOCALSTACK_MAVEN_VERSION = '0.1.10'
 
 # map of default service APIs and ports to be spun up (fetch map from localstack_client)
 DEFAULT_SERVICE_PORTS = localstack_client.config.get_service_ports()


Test patch: