awslabs.cdk-mcp-server 1.0.12__tar.gz → 1.0.14__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/Dockerfile +19 -22
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/PKG-INFO +1 -1
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/__init__.py +1 -1
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/docker-healthcheck.sh +1 -1
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/pyproject.toml +6 -1
- awslabs_cdk_mcp_server-1.0.14/uv-requirements.txt +23 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/uv.lock +52 -24
- awslabs_cdk_mcp_server-1.0.12/uv-requirements.txt +0 -27
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/.gitignore +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/.python-version +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/CHANGELOG.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/LICENSE +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/NOTICE +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/README.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/__init__.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/core/__init__.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/core/resources.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/core/search_utils.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/core/server.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/core/tools.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/__init__.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/cdk_nag_parser.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/construct_descriptions.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/genai_cdk_loader.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/lambda_layer_parser.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/lambda_powertools_loader.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/schema_generator.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/data/solutions_constructs_parser.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/server.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/CDK_GENERAL_GUIDANCE.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/CDK_NAG_GUIDANCE.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/__init__.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/bedrock.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/cdk.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/dependencies.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/index.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/insights.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/logging.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/metrics.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/static/lambda_powertools/tracing.md +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/__init__.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/core/test_resources.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/core/test_resources_enhanced.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/core/test_search_utils.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/core/test_server.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/core/test_tools.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_cdk_nag_parser.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_genai_cdk_loader.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_lambda_powertools_loader.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_schema_generator.py +0 -0
- {awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_solutions_constructs_parser.py +0 -0
|
@@ -13,7 +13,11 @@
|
|
|
13
13
|
# limitations under the License.
|
|
14
14
|
|
|
15
15
|
# dependabot should continue to update this to the latest hash.
|
|
16
|
-
FROM public.ecr.aws/
|
|
16
|
+
FROM public.ecr.aws/amazonlinux/amazonlinux@sha256:50a58a006d3381e38160fc5bb4bbefa68b74fcd70dde798f68667aac24312f20 AS uv
|
|
17
|
+
|
|
18
|
+
# Install build dependencies needed for compiling packages
|
|
19
|
+
RUN dnf install -y shadow-utils python3 python3-devel gcc && \
|
|
20
|
+
dnf clean all
|
|
17
21
|
|
|
18
22
|
# Install the project into `/app`
|
|
19
23
|
WORKDIR /app
|
|
@@ -25,7 +29,7 @@ ENV UV_COMPILE_BYTECODE=1
|
|
|
25
29
|
ENV UV_LINK_MODE=copy
|
|
26
30
|
|
|
27
31
|
# Prefer the system python
|
|
28
|
-
ENV UV_PYTHON_PREFERENCE=only-
|
|
32
|
+
ENV UV_PYTHON_PREFERENCE=only-managed
|
|
29
33
|
|
|
30
34
|
# Run without updating the uv.lock file like running with `--frozen`
|
|
31
35
|
ENV UV_FROZEN=true
|
|
@@ -37,19 +41,10 @@ COPY pyproject.toml uv.lock uv-requirements.txt ./
|
|
|
37
41
|
ENV PIP_NO_CACHE_DIR=1 \
|
|
38
42
|
PIP_DISABLE_PIP_VERSION_CHECK=1
|
|
39
43
|
|
|
40
|
-
# Install system dependencies and Python package manager
|
|
41
|
-
RUN apk update && \
|
|
42
|
-
apk add --no-cache --virtual .build-deps \
|
|
43
|
-
build-base \
|
|
44
|
-
gcc \
|
|
45
|
-
musl-dev \
|
|
46
|
-
libffi-dev \
|
|
47
|
-
openssl-dev \
|
|
48
|
-
cargo
|
|
49
|
-
|
|
50
44
|
# Install the project's dependencies using the lockfile and settings
|
|
51
45
|
RUN --mount=type=cache,target=/root/.cache/uv \
|
|
52
|
-
|
|
46
|
+
python3 -m ensurepip && \
|
|
47
|
+
python3 -m pip install --require-hashes --requirement uv-requirements.txt --no-cache-dir && \
|
|
53
48
|
uv sync --python 3.13 --frozen --no-install-project --no-dev --no-editable
|
|
54
49
|
|
|
55
50
|
# Then, add the rest of the project source code and install it
|
|
@@ -61,20 +56,22 @@ RUN --mount=type=cache,target=/root/.cache/uv \
|
|
|
61
56
|
# Make the directory just in case it doesn't exist
|
|
62
57
|
RUN mkdir -p /root/.local
|
|
63
58
|
|
|
64
|
-
FROM public.ecr.aws/
|
|
59
|
+
FROM public.ecr.aws/amazonlinux/amazonlinux@sha256:50a58a006d3381e38160fc5bb4bbefa68b74fcd70dde798f68667aac24312f20
|
|
65
60
|
|
|
66
61
|
# Place executables in the environment at the front of the path and include other binaries
|
|
67
|
-
ENV PATH="/app/.venv/bin:$PATH" \
|
|
62
|
+
ENV PATH="/app/.venv/bin:$PATH:/usr/sbin" \
|
|
68
63
|
PYTHONUNBUFFERED=1
|
|
69
64
|
|
|
70
|
-
# Install
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
65
|
+
# Install other tools as needed for the MCP server
|
|
66
|
+
# Add non-root user and ability to change directory into /root
|
|
67
|
+
RUN dnf install -y shadow-utils procps && \
|
|
68
|
+
dnf clean all && \
|
|
69
|
+
groupadd --force --system app && \
|
|
70
|
+
useradd app -g app -d /app && \
|
|
71
|
+
chmod o+x /root
|
|
76
72
|
|
|
77
|
-
#
|
|
73
|
+
# Get the project from the uv layer
|
|
74
|
+
COPY --from=uv --chown=app:app /root/.local /root/.local
|
|
78
75
|
COPY --from=uv --chown=app:app /app/.venv /app/.venv
|
|
79
76
|
|
|
80
77
|
# Get healthcheck script
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: awslabs.cdk-mcp-server
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.14
|
|
4
4
|
Summary: An AWS CDK MCP server that provides guidance on AWS Cloud Development Kit best practices, infrastructure as code patterns, and security compliance with CDK Nag. This server offers tools to validate infrastructure designs, explain CDK Nag rules, analyze suppressions, generate Bedrock Agent schemas, and discover Solutions Constructs patterns.
|
|
5
5
|
Project-URL: Homepage, https://awslabs.github.io/mcp/
|
|
6
6
|
Project-URL: Documentation, https://awslabs.github.io/mcp/servers/cdk-mcp-server/
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
SERVER="cdk-mcp-server"
|
|
17
17
|
|
|
18
18
|
# Check if the server process is running
|
|
19
|
-
if pgrep -P 0 -a -l -x -f "/app/.venv/bin/python3 /app/.venv/bin/awslabs.$SERVER" > /dev/null; then
|
|
19
|
+
if pgrep -P 0 -a -l -x -f "/app/.venv/bin/python3? /app/.venv/bin/awslabs.$SERVER" > /dev/null; then
|
|
20
20
|
echo -n "$SERVER is running";
|
|
21
21
|
exit 0;
|
|
22
22
|
fi;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "awslabs.cdk-mcp-server"
|
|
3
|
-
version = "1.0.
|
|
3
|
+
version = "1.0.14"
|
|
4
4
|
description = "An AWS CDK MCP server that provides guidance on AWS Cloud Development Kit best practices, infrastructure as code patterns, and security compliance with CDK Nag. This server offers tools to validate infrastructure designs, explain CDK Nag rules, analyze suppressions, generate Bedrock Agent schemas, and discover Solutions Constructs patterns."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.10"
|
|
@@ -29,6 +29,11 @@ classifiers = [
|
|
|
29
29
|
"Programming Language :: Python :: 3.13",
|
|
30
30
|
]
|
|
31
31
|
|
|
32
|
+
[tool.uv]
|
|
33
|
+
override-dependencies = [
|
|
34
|
+
"virtualenv>=20.36.1", # Temporary forced a higher version because 20.33.1 from CVE-2026-22702
|
|
35
|
+
]
|
|
36
|
+
|
|
32
37
|
[project.scripts]
|
|
33
38
|
"awslabs.cdk-mcp-server" = "awslabs.cdk_mcp_server.server:main"
|
|
34
39
|
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# This file was autogenerated by uv via the following command:
|
|
2
|
+
# uv pip compile --generate-hashes --output-file=uv-requirements.txt --strip-extras uv-requirements.in
|
|
3
|
+
uv==0.9.24 \
|
|
4
|
+
--hash=sha256:009cc82cdfc48add6ec13a0c4ffbb788ae2cab53573b4218069ca626721a404b \
|
|
5
|
+
--hash=sha256:15d3955bfb03a7b78aaf5afb639cedefdf0fc35ff844c92e3fe6e8700b94b84f \
|
|
6
|
+
--hash=sha256:1914d33e526167dc202ec4a59119c68467b31f7c71dcf8b1077571d091ca3e7c \
|
|
7
|
+
--hash=sha256:207c8a2d4c4d55589feb63b4be74f6ff6ab92fa81b14a6515007ccec5a868ae0 \
|
|
8
|
+
--hash=sha256:38c59e18fe5fa42f7baeb4f08c94914cee6d87ff8faa6fc95c994dbc0de26c90 \
|
|
9
|
+
--hash=sha256:3b610d89d6025000d08cd9bd458c6e264003a0ecfdaa8e4eba28938130cd1837 \
|
|
10
|
+
--hash=sha256:44c0b8a78724e4cfa8e9c0266023c70fc792d0b39a5da17f5f847af2b530796b \
|
|
11
|
+
--hash=sha256:488a07e59fb417bf86de5630197223b7a0223229e626afc124c26827db78cff8 \
|
|
12
|
+
--hash=sha256:63a0a46693098cf8446e41bd5d9ce7d3bc9b775a63fe0c8405ab6ee328424d46 \
|
|
13
|
+
--hash=sha256:6720c9939cca7daff3cccc35dd896bbe139d7d463c62cba8dbbc474ff8eb93d1 \
|
|
14
|
+
--hash=sha256:68a3186074c03876ee06b68730d5ff69a430296760d917ebbbb8e3fb54fb4091 \
|
|
15
|
+
--hash=sha256:69531d9a8772afb2dff68fef2469f666e4f8a0132b2109e36541c423415835da \
|
|
16
|
+
--hash=sha256:75a000f529ec92235b10fb5e16ca41f23f46c643308fd6c5b0d7b73ca056c5b9 \
|
|
17
|
+
--hash=sha256:841ede01d6dcf1676a21dce05f3647ba171c1d92768a03e8b8b6b7354b34a6d2 \
|
|
18
|
+
--hash=sha256:8cd626306b415491f839b1a9100da6795c82c44d4cf278dd7ace7a774af89df4 \
|
|
19
|
+
--hash=sha256:8d3c0fec7aa17f936a5b258816e856647b21f978a81bcfb2dc8caf2892a4965e \
|
|
20
|
+
--hash=sha256:aafe7dd9b633672054cf27f1a8e4127506324631f1af5edd051728f4f8085351 \
|
|
21
|
+
--hash=sha256:d59d31c25fc530c68db9164174efac511a25fc882cec49cd48f75a18e7ebd6d5 \
|
|
22
|
+
--hash=sha256:d7d1333d9c21088c89cb284ef29fdf48dc2015fe993174a823a3e7c991db90f9
|
|
23
|
+
# via -r uv-requirements.in (contents of `uv==0.9.24`)
|
|
@@ -7,6 +7,9 @@ resolution-markers = [
|
|
|
7
7
|
"platform_python_implementation == 'PyPy'",
|
|
8
8
|
]
|
|
9
9
|
|
|
10
|
+
[manifest]
|
|
11
|
+
overrides = [{ name = "virtualenv", specifier = ">=20.36.1" }]
|
|
12
|
+
|
|
10
13
|
[[package]]
|
|
11
14
|
name = "annotated-types"
|
|
12
15
|
version = "0.7.0"
|
|
@@ -24,7 +27,7 @@ dependencies = [
|
|
|
24
27
|
{ name = "exceptiongroup", marker = "python_full_version < '3.11'" },
|
|
25
28
|
{ name = "idna" },
|
|
26
29
|
{ name = "sniffio" },
|
|
27
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
|
30
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.13'" },
|
|
28
31
|
]
|
|
29
32
|
sdist = { url = "https://files.pythonhosted.org/packages/95/7d/4c1bd541d4dffa1b52bd83fb8527089e097a106fc90b467a7313b105f840/anyio-4.9.0.tar.gz", hash = "sha256:673c0c244e15788651a4ff38710fea9675823028a6f08a5eda409e0c9840a028", size = 190949, upload-time = "2025-03-17T00:02:54.77Z" }
|
|
30
33
|
wheels = [
|
|
@@ -55,7 +58,8 @@ version = "3.12.0"
|
|
|
55
58
|
source = { registry = "https://pypi.org/simple" }
|
|
56
59
|
dependencies = [
|
|
57
60
|
{ name = "jmespath" },
|
|
58
|
-
{ name = "typing-extensions" },
|
|
61
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
62
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
59
63
|
]
|
|
60
64
|
sdist = { url = "https://files.pythonhosted.org/packages/bb/90/7cc2e76ca959ce5985fcfff73a3885bbd5e3d85d5acd8c4ba1149b5ccaec/aws_lambda_powertools-3.12.0.tar.gz", hash = "sha256:b13146bbacf7bc029539b18c2a9b07b333cecca482d9ec4fba81dff5fb8523ea", size = 671775, upload-time = "2025-05-06T07:48:35.023Z" }
|
|
61
65
|
wheels = [
|
|
@@ -64,7 +68,7 @@ wheels = [
|
|
|
64
68
|
|
|
65
69
|
[[package]]
|
|
66
70
|
name = "awslabs-cdk-mcp-server"
|
|
67
|
-
version = "1.0.
|
|
71
|
+
version = "1.0.14"
|
|
68
72
|
source = { editable = "." }
|
|
69
73
|
dependencies = [
|
|
70
74
|
{ name = "aws-lambda-powertools" },
|
|
@@ -113,7 +117,8 @@ version = "4.13.3"
|
|
|
113
117
|
source = { registry = "https://pypi.org/simple" }
|
|
114
118
|
dependencies = [
|
|
115
119
|
{ name = "soupsieve" },
|
|
116
|
-
{ name = "typing-extensions" },
|
|
120
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
121
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
117
122
|
]
|
|
118
123
|
sdist = { url = "https://files.pythonhosted.org/packages/f0/3c/adaf39ce1fb4afdd21b611e3d530b183bb7759c9b673d60db0e347fd4439/beautifulsoup4-4.13.3.tar.gz", hash = "sha256:1bd32405dacc920b42b83ba01644747ed77456a65760e285fbc47633ceddaf8b", size = 619516, upload-time = "2025-02-04T20:05:01.681Z" }
|
|
119
124
|
wheels = [
|
|
@@ -329,7 +334,7 @@ dependencies = [
|
|
|
329
334
|
{ name = "questionary" },
|
|
330
335
|
{ name = "termcolor" },
|
|
331
336
|
{ name = "tomlkit" },
|
|
332
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
337
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
333
338
|
]
|
|
334
339
|
sdist = { url = "https://files.pythonhosted.org/packages/b5/fd/cd449bed87a26ecb61c950410e2d94e97ac31bf1f3ec69cc718b215384ce/commitizen-4.4.1.tar.gz", hash = "sha256:626d9f545fb9b2db42305e16ef35d6348a35081a80527bad863a05a7ba0bec21", size = 52345, upload-time = "2025-03-02T16:29:21.977Z" }
|
|
335
340
|
wheels = [
|
|
@@ -548,11 +553,11 @@ wheels = [
|
|
|
548
553
|
|
|
549
554
|
[[package]]
|
|
550
555
|
name = "filelock"
|
|
551
|
-
version = "3.20.
|
|
556
|
+
version = "3.20.3"
|
|
552
557
|
source = { registry = "https://pypi.org/simple" }
|
|
553
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
558
|
+
sdist = { url = "https://files.pythonhosted.org/packages/1d/65/ce7f1b70157833bf3cb851b556a37d4547ceafc158aa9b34b36782f23696/filelock-3.20.3.tar.gz", hash = "sha256:18c57ee915c7ec61cff0ecf7f0f869936c7c30191bb0cf406f1341778d0834e1", size = 19485, upload-time = "2026-01-09T17:55:05.421Z" }
|
|
554
559
|
wheels = [
|
|
555
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
560
|
+
{ url = "https://files.pythonhosted.org/packages/b5/36/7fb70f04bf00bc646cd5bb45aa9eddb15e19437a28b8fb2b4a5249fac770/filelock-3.20.3-py3-none-any.whl", hash = "sha256:4b0dda527ee31078689fc205ec4f1c1bf7d56cf88b6dc9426c4f230e46c2dce1", size = 16701, upload-time = "2026-01-09T17:55:04.334Z" },
|
|
556
561
|
]
|
|
557
562
|
|
|
558
563
|
[[package]]
|
|
@@ -762,7 +767,8 @@ dependencies = [
|
|
|
762
767
|
{ name = "pywin32", marker = "sys_platform == 'win32'" },
|
|
763
768
|
{ name = "sse-starlette" },
|
|
764
769
|
{ name = "starlette" },
|
|
765
|
-
{ name = "typing-extensions" },
|
|
770
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
771
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
766
772
|
{ name = "typing-inspection" },
|
|
767
773
|
{ name = "uvicorn", marker = "sys_platform != 'emscripten'" },
|
|
768
774
|
]
|
|
@@ -866,7 +872,8 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
866
872
|
dependencies = [
|
|
867
873
|
{ name = "annotated-types" },
|
|
868
874
|
{ name = "pydantic-core" },
|
|
869
|
-
{ name = "typing-extensions" },
|
|
875
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
876
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
870
877
|
{ name = "typing-inspection" },
|
|
871
878
|
]
|
|
872
879
|
sdist = { url = "https://files.pythonhosted.org/packages/77/ab/5250d56ad03884ab5efd07f734203943c8a8ab40d551e208af81d0257bf2/pydantic-2.11.4.tar.gz", hash = "sha256:32738d19d63a226a52eed76645a98ee07c1f410ee41d93b4afbfa85ed8111c2d", size = 786540, upload-time = "2025-04-29T20:38:55.02Z" }
|
|
@@ -879,7 +886,8 @@ name = "pydantic-core"
|
|
|
879
886
|
version = "2.33.2"
|
|
880
887
|
source = { registry = "https://pypi.org/simple" }
|
|
881
888
|
dependencies = [
|
|
882
|
-
{ name = "typing-extensions" },
|
|
889
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
890
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
883
891
|
]
|
|
884
892
|
sdist = { url = "https://files.pythonhosted.org/packages/ad/88/5f2260bdfae97aabf98f1778d43f69574390ad787afb646292a638c923d4/pydantic_core-2.33.2.tar.gz", hash = "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc", size = 435195, upload-time = "2025-04-23T18:33:52.104Z" }
|
|
885
893
|
wheels = [
|
|
@@ -1004,7 +1012,8 @@ version = "1.1.398"
|
|
|
1004
1012
|
source = { registry = "https://pypi.org/simple" }
|
|
1005
1013
|
dependencies = [
|
|
1006
1014
|
{ name = "nodeenv" },
|
|
1007
|
-
{ name = "typing-extensions" },
|
|
1015
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
1016
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
1008
1017
|
]
|
|
1009
1018
|
sdist = { url = "https://files.pythonhosted.org/packages/24/d6/48740f1d029e9fc4194880d1ad03dcf0ba3a8f802e0e166b8f63350b3584/pyright-1.1.398.tar.gz", hash = "sha256:357a13edd9be8082dc73be51190913e475fa41a6efb6ec0d4b7aab3bc11638d8", size = 3892675, upload-time = "2025-03-26T10:06:06.063Z" }
|
|
1010
1019
|
wheels = [
|
|
@@ -1076,11 +1085,11 @@ wheels = [
|
|
|
1076
1085
|
|
|
1077
1086
|
[[package]]
|
|
1078
1087
|
name = "python-multipart"
|
|
1079
|
-
version = "0.0.
|
|
1088
|
+
version = "0.0.22"
|
|
1080
1089
|
source = { registry = "https://pypi.org/simple" }
|
|
1081
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1090
|
+
sdist = { url = "https://files.pythonhosted.org/packages/94/01/979e98d542a70714b0cb2b6728ed0b7c46792b695e3eaec3e20711271ca3/python_multipart-0.0.22.tar.gz", hash = "sha256:7340bef99a7e0032613f56dc36027b959fd3b30a787ed62d310e951f7c3a3a58", size = 37612, upload-time = "2026-01-25T10:15:56.219Z" }
|
|
1082
1091
|
wheels = [
|
|
1083
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1092
|
+
{ url = "https://files.pythonhosted.org/packages/1b/d0/397f9626e711ff749a95d96b7af99b9c566a9bb5129b8e4c10fc4d100304/python_multipart-0.0.22-py3-none-any.whl", hash = "sha256:2b2cd894c83d21bf49d702499531c7bafd057d730c201782048f7945d82de155", size = 24579, upload-time = "2026-01-25T10:15:54.811Z" },
|
|
1084
1093
|
]
|
|
1085
1094
|
|
|
1086
1095
|
[[package]]
|
|
@@ -1168,7 +1177,7 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
1168
1177
|
dependencies = [
|
|
1169
1178
|
{ name = "attrs" },
|
|
1170
1179
|
{ name = "rpds-py" },
|
|
1171
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
|
1180
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.13'" },
|
|
1172
1181
|
]
|
|
1173
1182
|
sdist = { url = "https://files.pythonhosted.org/packages/2f/db/98b5c277be99dd18bfd91dd04e1b759cad18d1a338188c936e92f921c7e2/referencing-0.36.2.tar.gz", hash = "sha256:df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa", size = 74744, upload-time = "2025-01-25T08:48:16.138Z" }
|
|
1174
1183
|
wheels = [
|
|
@@ -1182,7 +1191,7 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
1182
1191
|
dependencies = [
|
|
1183
1192
|
{ name = "markdown-it-py" },
|
|
1184
1193
|
{ name = "pygments" },
|
|
1185
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
1194
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
1186
1195
|
]
|
|
1187
1196
|
sdist = { url = "https://files.pythonhosted.org/packages/a1/53/830aa4c3066a8ab0ae9a9955976fb770fe9c6102117c8ec4ab3ea62d89e8/rich-14.0.0.tar.gz", hash = "sha256:82f1bc23a6a21ebca4ae0c45af9bdbc492ed20231dcb63f297d6d1021a9d5725", size = 224078, upload-time = "2025-03-30T14:15:14.23Z" }
|
|
1188
1197
|
wheels = [
|
|
@@ -1386,7 +1395,7 @@ version = "0.50.0"
|
|
|
1386
1395
|
source = { registry = "https://pypi.org/simple" }
|
|
1387
1396
|
dependencies = [
|
|
1388
1397
|
{ name = "anyio" },
|
|
1389
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
|
1398
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.13'" },
|
|
1390
1399
|
]
|
|
1391
1400
|
sdist = { url = "https://files.pythonhosted.org/packages/ba/b8/73a0e6a6e079a9d9cfa64113d771e421640b6f679a52eeb9b32f72d871a1/starlette-0.50.0.tar.gz", hash = "sha256:a2a17b22203254bcbc2e1f926d2d55f3f9497f769416b3190768befe598fa3ca", size = 2646985, upload-time = "2025-11-01T15:25:27.516Z" }
|
|
1392
1401
|
wheels = [
|
|
@@ -1458,7 +1467,8 @@ dependencies = [
|
|
|
1458
1467
|
{ name = "click" },
|
|
1459
1468
|
{ name = "rich" },
|
|
1460
1469
|
{ name = "shellingham" },
|
|
1461
|
-
{ name = "typing-extensions" },
|
|
1470
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
1471
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
1462
1472
|
]
|
|
1463
1473
|
sdist = { url = "https://files.pythonhosted.org/packages/c5/8c/7d682431efca5fd290017663ea4588bf6f2c6aad085c7f108c5dbc316e70/typer-0.16.0.tar.gz", hash = "sha256:af377ffaee1dbe37ae9440cb4e8f11686ea5ce4e9bae01b84ae7c63b87f1dd3b", size = 102625, upload-time = "2025-05-26T14:30:31.824Z" }
|
|
1464
1474
|
wheels = [
|
|
@@ -1469,17 +1479,34 @@ wheels = [
|
|
|
1469
1479
|
name = "typing-extensions"
|
|
1470
1480
|
version = "4.13.0"
|
|
1471
1481
|
source = { registry = "https://pypi.org/simple" }
|
|
1482
|
+
resolution-markers = [
|
|
1483
|
+
"python_full_version >= '3.14' and platform_python_implementation != 'PyPy'",
|
|
1484
|
+
]
|
|
1472
1485
|
sdist = { url = "https://files.pythonhosted.org/packages/0e/3e/b00a62db91a83fff600de219b6ea9908e6918664899a2d85db222f4fbf19/typing_extensions-4.13.0.tar.gz", hash = "sha256:0a4ac55a5820789d87e297727d229866c9650f6521b64206413c4fbada24d95b", size = 106520, upload-time = "2025-03-26T03:49:41.628Z" }
|
|
1473
1486
|
wheels = [
|
|
1474
1487
|
{ url = "https://files.pythonhosted.org/packages/e0/86/39b65d676ec5732de17b7e3c476e45bb80ec64eb50737a8dce1a4178aba1/typing_extensions-4.13.0-py3-none-any.whl", hash = "sha256:c8dd92cc0d6425a97c18fbb9d1954e5ff92c1ca881a309c45f06ebc0b79058e5", size = 45683, upload-time = "2025-03-26T03:49:40.35Z" },
|
|
1475
1488
|
]
|
|
1476
1489
|
|
|
1490
|
+
[[package]]
|
|
1491
|
+
name = "typing-extensions"
|
|
1492
|
+
version = "4.15.0"
|
|
1493
|
+
source = { registry = "https://pypi.org/simple" }
|
|
1494
|
+
resolution-markers = [
|
|
1495
|
+
"python_full_version < '3.14' and platform_python_implementation != 'PyPy'",
|
|
1496
|
+
"platform_python_implementation == 'PyPy'",
|
|
1497
|
+
]
|
|
1498
|
+
sdist = { url = "https://files.pythonhosted.org/packages/72/94/1a15dd82efb362ac84269196e94cf00f187f7ed21c242792a923cdb1c61f/typing_extensions-4.15.0.tar.gz", hash = "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466", size = 109391, upload-time = "2025-08-25T13:49:26.313Z" }
|
|
1499
|
+
wheels = [
|
|
1500
|
+
{ url = "https://files.pythonhosted.org/packages/18/67/36e9267722cc04a6b9f15c7f3441c2363321a3ea07da7ae0c0707beb2a9c/typing_extensions-4.15.0-py3-none-any.whl", hash = "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548", size = 44614, upload-time = "2025-08-25T13:49:24.86Z" },
|
|
1501
|
+
]
|
|
1502
|
+
|
|
1477
1503
|
[[package]]
|
|
1478
1504
|
name = "typing-inspection"
|
|
1479
1505
|
version = "0.4.2"
|
|
1480
1506
|
source = { registry = "https://pypi.org/simple" }
|
|
1481
1507
|
dependencies = [
|
|
1482
|
-
{ name = "typing-extensions" },
|
|
1508
|
+
{ name = "typing-extensions", version = "4.13.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.14' and platform_python_implementation != 'PyPy'" },
|
|
1509
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.14' or platform_python_implementation == 'PyPy'" },
|
|
1483
1510
|
]
|
|
1484
1511
|
sdist = { url = "https://files.pythonhosted.org/packages/55/e3/70399cb7dd41c10ac53367ae42139cf4b1ca5f36bb3dc6c9d33acdb43655/typing_inspection-0.4.2.tar.gz", hash = "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464", size = 75949, upload-time = "2025-10-01T02:14:41.687Z" }
|
|
1485
1512
|
wheels = [
|
|
@@ -1493,7 +1520,7 @@ source = { registry = "https://pypi.org/simple" }
|
|
|
1493
1520
|
dependencies = [
|
|
1494
1521
|
{ name = "click" },
|
|
1495
1522
|
{ name = "h11" },
|
|
1496
|
-
{ name = "typing-extensions", marker = "python_full_version < '3.11'" },
|
|
1523
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
1497
1524
|
]
|
|
1498
1525
|
sdist = { url = "https://files.pythonhosted.org/packages/4b/4d/938bd85e5bf2edeec766267a5015ad969730bb91e31b44021dfe8b22df6c/uvicorn-0.34.0.tar.gz", hash = "sha256:404051050cd7e905de2c9a7e61790943440b3416f49cb409f965d9dcd0fa73e9", size = 76568, upload-time = "2024-12-15T13:33:30.42Z" }
|
|
1499
1526
|
wheels = [
|
|
@@ -1502,16 +1529,17 @@ wheels = [
|
|
|
1502
1529
|
|
|
1503
1530
|
[[package]]
|
|
1504
1531
|
name = "virtualenv"
|
|
1505
|
-
version = "20.
|
|
1532
|
+
version = "20.36.1"
|
|
1506
1533
|
source = { registry = "https://pypi.org/simple" }
|
|
1507
1534
|
dependencies = [
|
|
1508
1535
|
{ name = "distlib" },
|
|
1509
1536
|
{ name = "filelock" },
|
|
1510
1537
|
{ name = "platformdirs" },
|
|
1538
|
+
{ name = "typing-extensions", version = "4.15.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11'" },
|
|
1511
1539
|
]
|
|
1512
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1540
|
+
sdist = { url = "https://files.pythonhosted.org/packages/aa/a3/4d310fa5f00863544e1d0f4de93bddec248499ccf97d4791bc3122c9d4f3/virtualenv-20.36.1.tar.gz", hash = "sha256:8befb5c81842c641f8ee658481e42641c68b5eab3521d8e092d18320902466ba", size = 6032239, upload-time = "2026-01-09T18:21:01.296Z" }
|
|
1513
1541
|
wheels = [
|
|
1514
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1542
|
+
{ url = "https://files.pythonhosted.org/packages/6a/2a/dc2228b2888f51192c7dc766106cd475f1b768c10caaf9727659726f7391/virtualenv-20.36.1-py3-none-any.whl", hash = "sha256:575a8d6b124ef88f6f51d56d656132389f961062a9177016a50e4f507bbcc19f", size = 6008258, upload-time = "2026-01-09T18:20:59.425Z" },
|
|
1515
1543
|
]
|
|
1516
1544
|
|
|
1517
1545
|
[[package]]
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
#
|
|
2
|
-
# This file is autogenerated by pip-compile with Python 3.12
|
|
3
|
-
# by the following command:
|
|
4
|
-
#
|
|
5
|
-
# pip-compile --generate-hashes --output-file=uv-requirements.txt --strip-extras uv-requirements.in
|
|
6
|
-
#
|
|
7
|
-
uv==0.9.6 \
|
|
8
|
-
--hash=sha256:0169a85d3ba5ef1c37089d64ff26de573439ca84ecf549276a2eee42d7f833f2 \
|
|
9
|
-
--hash=sha256:0fde18c22376c8b02954c7db3847bc75ac42619932c44b43f49d056e5cfb05f9 \
|
|
10
|
-
--hash=sha256:166175ba952d2ad727e1dbd57d7cfc1782dfe7b8d79972174a46a7aa33ddceec \
|
|
11
|
-
--hash=sha256:3c2c2b2b093330e603d838fec26941ab6f62e8d62a012f9fa0d5ed88da39d907 \
|
|
12
|
-
--hash=sha256:538716ec97f8d899baa7e1c427f4411525459c0ef72ea9b3625ce9610c9976e6 \
|
|
13
|
-
--hash=sha256:547fd27ab5da7cd1a833288a36858852451d416a056825f162ecf2af5be6f8b8 \
|
|
14
|
-
--hash=sha256:62e3f057a9ae5e5003a7cd56b617e940f519f6dabcbb22d36cdd0149df25d409 \
|
|
15
|
-
--hash=sha256:6403176b55388cf94fb8737e73b26ee2a7b1805a9139da5afa951210986d4fcd \
|
|
16
|
-
--hash=sha256:7e89c964f614fa3f0481060cac709d6da50feac553e1e11227d6c4c81c87af7c \
|
|
17
|
-
--hash=sha256:86e05782f9b75d39ab1c0af98bf11e87e646a36a61d425021d5b284073e56315 \
|
|
18
|
-
--hash=sha256:90122a76e6441b8c580fc9faf06bd8c4dbe276cb1c185ad91eceb2afa78e492a \
|
|
19
|
-
--hash=sha256:95a62c1f668272555ad0c446bf44a9924dee06054b831d04c162e0bad736dc28 \
|
|
20
|
-
--hash=sha256:a7c6067919d87208c4a6092033c3bc9799cb8be1c8bc6ef419a1f6d42a755329 \
|
|
21
|
-
--hash=sha256:b2f934737c93f88c906b6a47bcc083170210fe5d66565e80a7c139599e5cbf2f \
|
|
22
|
-
--hash=sha256:b31377ebf2d0499afc5abe3fe1abded5ca843f3a1161b432fe26eb0ce15bab8e \
|
|
23
|
-
--hash=sha256:d1072db92cc9525febdf9d113c23916dfc20ca03e21218cc7beefe7185a90631 \
|
|
24
|
-
--hash=sha256:e700b2098f9d365061c572d0729b4e8bc71c6468d83dfaae2537cd66e3cb1b98 \
|
|
25
|
-
--hash=sha256:ea67369918af24ea7e01991dfc8b8988d1b0b7c49cb39d9e5bc0c409930a0a3f \
|
|
26
|
-
--hash=sha256:f0ba311b3ca49d246f36d444d3ee81571619ef95e5f509eb694a81defcbed262
|
|
27
|
-
# via -r uv-requirements.in (contents of `uv==0.9.6`)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/core/tools.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/awslabs/cdk_mcp_server/server.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/core/test_resources.py
RENAMED
|
File without changes
|
|
File without changes
|
{awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/core/test_search_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_cdk_nag_parser.py
RENAMED
|
File without changes
|
{awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_genai_cdk_loader.py
RENAMED
|
File without changes
|
|
File without changes
|
{awslabs_cdk_mcp_server-1.0.12 → awslabs_cdk_mcp_server-1.0.14}/tests/data/test_schema_generator.py
RENAMED
|
File without changes
|
|
File without changes
|