Skip to content

Commit 9c90df7

Browse files
Merge branch 'release-v1.54.0'
2 parents b534773 + 93ed570 commit 9c90df7

File tree

1,891 files changed

+145872
-138969
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,891 files changed

+145872
-138969
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
1-
*Issue #, if available:*
1+
### Issue #, if available
22

3-
*Description of changes:*
3+
### Description of changes
44

5-
*Description of how you validated changes:*
5+
### Description of how you validated changes
66

7-
*Checklist:*
7+
### Checklist
88

9+
- [ ] Adheres to the [development guidelines](https://github.com/aws/serverless-application-model/blob/develop/DEVELOPMENT_GUIDE.md#development-guidelines)
910
- [ ] Add/update [unit tests](https://github.com/aws/serverless-application-model/blob/develop/DEVELOPMENT_GUIDE.md#unit-testing-with-multiple-python-versions) using:
1011
- [ ] Correct values
1112
- [ ] Bad/wrong values (None, empty, wrong type, length, etc.)
1213
- [ ] [Intrinsic Functions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference.html)
1314
- [ ] Add/update [integration tests](https://github.com/aws/serverless-application-model/blob/develop/INTEGRATION_TESTS.md)
14-
- [ ] `make pr` passes
1515
- [ ] Update documentation
1616
- [ ] Verify transformed template deploys and application functions as expected
1717
- [ ] Do these changes include any template validations?
1818
- [ ] Did the newly validated properties support intrinsics prior to adding the validations? (If unsure, please review [Intrinsic Functions](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference.html) before proceeding).
1919
- [ ] Does the pull request ensure that intrinsics remain functional with the new validations?
2020

21-
*Examples?*
21+
### Examples?
2222

2323
Please reach out in the comments, if you want to add an example. Examples will be
2424
added to `sam init` through https://github.com/awslabs/aws-sam-cli-app-templates/

.github/workflows/build.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Tests
2+
3+
on:
4+
push:
5+
branches:
6+
- develop
7+
pull_request:
8+
branches:
9+
- develop
10+
11+
jobs:
12+
build:
13+
name: ${{ matrix.os }} / ${{ matrix.python }}
14+
runs-on: ${{ matrix.os }}
15+
strategy:
16+
fail-fast: false
17+
matrix:
18+
os:
19+
- ubuntu-latest
20+
python:
21+
- "3.7"
22+
- "3.8"
23+
- "3.9"
24+
- "3.10"
25+
steps:
26+
- uses: actions/checkout@v3
27+
- uses: actions/setup-python@v4
28+
with:
29+
python-version: ${{ matrix.python }}
30+
- run: make init
31+
- run: make pr

.github/workflows/codeql.yml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# For most projects, this workflow file will not need changing; you simply need
2+
# to commit it to your repository.
3+
#
4+
# You may wish to alter this file to override the set of languages analyzed,
5+
# or to provide custom queries or build logic.
6+
#
7+
# ******** NOTE ********
8+
# We have attempted to detect the languages in your repository. Please check
9+
# the `language` matrix defined below to confirm you have the correct set of
10+
# supported CodeQL languages.
11+
#
12+
name: "CodeQL"
13+
14+
on:
15+
push:
16+
branches: [ "develop" ]
17+
pull_request:
18+
# The branches below must be a subset of the branches above
19+
branches: [ "develop" ]
20+
schedule:
21+
- cron: '43 23 * * 2'
22+
23+
jobs:
24+
analyze:
25+
name: Analyze
26+
runs-on: ubuntu-latest
27+
permissions:
28+
actions: read
29+
contents: read
30+
security-events: write
31+
32+
strategy:
33+
fail-fast: false
34+
matrix:
35+
language: [ 'python' ]
36+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
37+
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
38+
39+
steps:
40+
- name: Checkout repository
41+
uses: actions/checkout@v3
42+
43+
# Initializes the CodeQL tools for scanning.
44+
- name: Initialize CodeQL
45+
uses: github/codeql-action/init@v2
46+
with:
47+
languages: ${{ matrix.language }}
48+
# If you wish to specify custom queries, you can do so here or in a config file.
49+
# By default, queries listed here will override any specified in a config file.
50+
# Prefix the list here with "+" to use these queries and those in the config file.
51+
52+
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
53+
# queries: security-extended,security-and-quality
54+
55+
56+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
57+
# If this step fails, then you should remove it and run the build manually (see below)
58+
- name: Autobuild
59+
uses: github/codeql-action/autobuild@v2
60+
61+
# ℹ️ Command-line programs to run using the OS shell.
62+
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
63+
64+
# If the Autobuild fails above, remove it and uncomment the following three lines.
65+
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
66+
67+
# - run: |
68+
# echo "Run, Build Application using script"
69+
# ./location_of_script_within_repo/buildscript.sh
70+
71+
- name: Perform CodeQL Analysis
72+
uses: github/codeql-action/analyze@v2
73+
with:
74+
category: "/language:${{matrix.language}}"

.gitpod.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
tasks:
2+
- init: make init

.pylintrc

Lines changed: 1 addition & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,6 @@ unsafe-load-any-extension=no
3535
# run arbitrary code
3636
extension-pkg-whitelist=
3737

38-
# Allow optimization of some AST trees. This will activate a peephole AST
39-
# optimizer, which will apply various small optimizations. For instance, it can
40-
# be used to obtain the result of joining multiple strings with the addition
41-
# operator. Joining a lot of strings can lead to a maximum recursion error in
42-
# Pylint and this flag can prevent that. It has one side effect, the resulting
43-
# AST will be different than the one from reality.
44-
optimize-ast=no
45-
4638

4739
[MESSAGES CONTROL]
4840

@@ -65,56 +57,31 @@ confidence=
6557
# no Warning level messages displayed, use"--disable=all --enable=classes
6658
# --disable=W"
6759
disable=
60+
C0209, # consider-using-f-string. There are too many of them
6861
W0613, # Unused argument %r
6962
W0640, # Cell variable %s defined in loop A variable used in a closure is defined in a loop
7063
R0902, # Too many instance attributes (%s/%s)
71-
R0903, # Too few public methods (%s/%s)
7264
R0913, # Too many arguments (%s/%s)
7365
W0703, # Catching too general exception %s
7466
R0904, # Too many public methods (%s/%s)
7567
R0914, # Too many local variables (%s/%s)
7668
R0915, # Too many statements
7769
C0415, # Import outside toplevel (%s) Used when an import statement is used anywhere other than the module toplevel. Move this import to the top of the file.
7870
C0115, # missing-class-docstring
79-
# below are docstring lint rules, in order to incrementally improve our docstring while
80-
# without introduce too much effort at a time, we exclude most of the docstring lint rules.
81-
# We will remove them one by one.
82-
# W9005, # "%s" has constructor parameters documented in class and __init__
8371
W9006, # "%s" not documented as being raised
84-
# W9008, # Redundant returns documentation
85-
# W9010, # Redundant yields documentation
8672
W9011, # Missing return documentation
8773
W9012, # Missing return type documentation
88-
# W9013, # Missing yield documentation
89-
# W9014, # Missing yield type documentation
90-
# W9015, # "%s" missing in parameter documentation
9174
W9016, # "%s" missing in parameter type documentation
92-
# W9017, # "%s" differing in parameter documentation
93-
# W9018, # "%s" differing in parameter type documentation
94-
# W9019, # "%s" useless ignored parameter documentation
95-
# W9020, # "%s" useless ignored parameter type documentation
96-
# Constant name style warnings. We will remove them one by one.
9775
C0103, # Class constant name "%s" doesn't conform to UPPER_CASE naming style ('([^\\W\\da-z][^\\Wa-z]*|__.*__)$' pattern) (invalid-name)
98-
# New recommendations, disable for now to avoid introducing behaviour changes.
99-
R1729, # Use a generator instead '%s' (use-a-generator)
100-
R1732, # Consider using 'with' for resource-allocating operations (consider-using-with)
101-
# This applies to CPython only.
102-
I1101, # Module 'math' has no 'pow' member, but source is unavailable. Consider adding this module to extension-pkg-allow-list if you want to perform analysis based on run-time introspection of living objects. (c-extension-no-member)
103-
# Added to allow linting. Need to work on removing over time
104-
R0801, # dupilcated code
10576
R0401, # Cyclic import
10677
C0411, # import ordering
10778
W9015, # missing parameter in doc strings
108-
W0612, # unused variable
10979
R0205, # useless-object-inheritanc
11080
C0301, # line to long
111-
R0201, # no self use, method could be a function
11281
C0114, # missing-module-docstring
11382
W1202, # Use lazy % formatting in logging functions (logging-format-interpolation)
11483
E1101, # No member
11584
W0622, # Redefining built-in 'property' (redefined-builtin)
116-
W0611, # unused imports
117-
W0231, # super not called
11885
W0212, # protected-access
11986
W0201, # attribute-defined-outside-init
12087
R1725, # Consider using Python 3 style super() without arguments (super-with-arguments)
@@ -125,8 +92,6 @@ disable=
12592
W0223, # abstract-method
12693
W0107, # unnecessary-pass
12794
W0707, # raise-missing-from
128-
R1720, # no-else-raise
129-
W0621, # redefined-outer-name
13095
E0203, # access-member-before-definition
13196
W0221, # arguments-differ
13297
R1710, # inconsistent-return-statements
@@ -135,32 +100,14 @@ disable=
135100
W0105, # String statement has no effect (pointless-string-statement)
136101
C0206, # Consider iterating with .items() (consider-using-dict-items)
137102
W9008, # Redundant returns documentation (redundant-returns-doc)
138-
E0602, # undefined-variable
139103
C0112, # empty-docstring
140104
C0116, # missing-function-docstring
141-
C0200, # consider-using-enumerate
142-
R5501, # Consider using "elif" instead of "else if" (else-if-used)
143105
W9017, # differing-param-doc
144106
W9018, # differing-type-doc
145107
W0511, # fixme
146-
C0325, # superfluous-parens
147-
R1701, # consider-merging-isinstance
148108
C0302, # too-many-lines
149-
C0303, # trailing-whitespace
150-
R1721, # unnecessary-comprehension
151-
C0121, # singleton-comparison
152-
E1305, # too-many-format-args
153-
R1724, # no-else-continue
154-
E0611, # no-name-in-module
155109
W9013, # missing-yield-doc
156110
W9014, # missing-yield-type-doc
157-
C0201, # consider-iterating-dictionary
158-
W0237, # arguments-renamed
159-
R1718, # consider-using-set-comprehension
160-
R1723, # no-else-break
161-
E1133, # not-an-iterable
162-
E1135, # unsupported-membership-test
163-
R1705, # no-else-return
164111

165112

166113
[REPORTS]
@@ -170,11 +117,6 @@ disable=
170117
# mypackage.mymodule.MyReporterClass.
171118
output-format=text
172119

173-
# Put messages in a separate file for each module / package specified on the
174-
# command line instead of printing them on stdout. Reports (if any) will be
175-
# written in a file name "pylint_global.[txt|html]".
176-
files-output=no
177-
178120
# Tells whether to display a full report or only the messages
179121
reports=no
180122

@@ -192,9 +134,6 @@ evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / stateme
192134

193135
[BASIC]
194136

195-
# List of builtins function names that should not be used, separated by a comma
196-
bad-functions=apply,reduce
197-
198137
# Good variable names which should always be accepted, separated by a comma
199138
good-names=e,i,j,k,n,ex,Run,_
200139

@@ -211,63 +150,33 @@ include-naming-hint=yes
211150
# Regular expression matching correct function names
212151
function-rgx=[a-z_][a-z0-9_]{2,50}$
213152

214-
# Naming hint for function names
215-
function-name-hint=[a-z_][a-z0-9_]{2,30}$
216-
217153
# Regular expression matching correct variable names
218154
variable-rgx=[a-z_][a-z0-9_]{0,50}$
219155

220-
# Naming hint for variable names
221-
variable-name-hint=[a-z_][a-z0-9_]{2,30}$
222-
223156
# Regular expression matching correct constant names
224157
const-rgx=(([a-zA-Z_][a-zA-Z0-9_]*)|(__.*__))$
225158

226-
# Naming hint for constant names
227-
const-name-hint=(([A-Z_][A-Z0-9_]*)|(__.*__))$
228-
229159
# Regular expression matching correct attribute names
230160
attr-rgx=[a-z_][a-z0-9_]{1,50}$
231161

232-
# Naming hint for attribute names
233-
attr-name-hint=[a-z_][a-z0-9_]{2,30}$
234-
235162
# Regular expression matching correct argument names
236163
argument-rgx=[a-z_][a-z0-9_]{0,50}$
237164

238-
# Naming hint for argument names
239-
argument-name-hint=[a-z_][a-z0-9_]{2,30}$
240-
241165
# Regular expression matching correct class attribute names
242166
class-attribute-rgx=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$
243167

244-
# Naming hint for class attribute names
245-
class-attribute-name-hint=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$
246-
247168
# Regular expression matching correct inline iteration names
248169
inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$
249170

250-
# Naming hint for inline iteration names
251-
inlinevar-name-hint=[A-Za-z_][A-Za-z0-9_]*$
252-
253171
# Regular expression matching correct class names
254172
class-rgx=[A-Z_][a-zA-Z0-9]+$
255173

256-
# Naming hint for class names
257-
class-name-hint=[A-Z_][a-zA-Z0-9]+$
258-
259174
# Regular expression matching correct module names
260175
module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
261176

262-
# Naming hint for module names
263-
module-name-hint=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$
264-
265177
# Regular expression matching correct method names
266178
method-rgx=[a-z_][a-z0-9_]{2,50}$
267179

268-
# Naming hint for method names
269-
method-name-hint=[a-z_][a-z0-9_]{2,30}$
270-
271180
# Regular expression which should only match function or class names that do
272181
# not require a docstring.
273182
no-docstring-rgx=^_
@@ -291,9 +200,6 @@ ignore-long-lines=^\s*(# )?<?https?://\S+>?$
291200
# else.
292201
single-line-if-stmt=no
293202

294-
# List of optional constructs for which whitespace checking is disabled
295-
no-space-check=trailing-comma,dict-separator
296-
297203
# Maximum number of lines in a module
298204
max-module-lines=1000
299205

0 commit comments

Comments
 (0)