diff --git a/conformance/client_config.yaml b/conformance/client_config.yaml index b34a092..36122ef 100644 --- a/conformance/client_config.yaml +++ b/conformance/client_config.yaml @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + features: versions: - HTTP_VERSION_1 diff --git a/conformance/client_known_flaky.yaml b/conformance/client_known_flaky.yaml index 436bc38..702d25e 100644 --- a/conformance/client_known_flaky.yaml +++ b/conformance/client_known_flaky.yaml @@ -1 +1,17 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + Client Cancellation/** diff --git a/conformance/client_runner.py b/conformance/client_runner.py index 3b43719..e8643ea 100755 --- a/conformance/client_runner.py +++ b/conformance/client_runner.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Module implements a client runner for conformance testing.""" import asyncio diff --git a/conformance/server.py b/conformance/server.py index 26d1f2d..6395482 100644 --- a/conformance/server.py +++ b/conformance/server.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Module implementing the ConformanceService for testing connect conformance.""" import asyncio diff --git a/conformance/server_config.yaml b/conformance/server_config.yaml index b4004bb..b22aea7 100644 --- a/conformance/server_config.yaml +++ b/conformance/server_config.yaml @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + features: versions: - HTTP_VERSION_1 diff --git a/conformance/server_known_flaky.yaml b/conformance/server_known_flaky.yaml index 9cad4d2..d511e5c 100644 --- a/conformance/server_known_flaky.yaml +++ b/conformance/server_known_flaky.yaml @@ -1 +1,17 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + Timeouts/** diff --git a/conformance/tls.py b/conformance/tls.py index 09506b3..c8f19a6 100644 --- a/conformance/tls.py +++ b/conformance/tls.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Module provides functionality to create a new client TLS configuration.""" import os diff --git a/examples/__init__.py b/examples/__init__.py index e69de29..1926cef 100644 --- a/examples/__init__.py +++ b/examples/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 diff --git a/examples/client.py b/examples/client.py index 0a96219..74171a3 100644 --- a/examples/client.py +++ b/examples/client.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Main module for the tests.""" import argparse diff --git a/examples/eliza.py b/examples/eliza.py index 266e8cf..659b079 100644 --- a/examples/eliza.py +++ b/examples/eliza.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + import random import re from re import Pattern diff --git a/examples/server.py b/examples/server.py index 3bba0bc..939b820 100644 --- a/examples/server.py +++ b/examples/server.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Main module for the tests.""" import asyncio diff --git a/src/connect/__init__.py b/src/connect/__init__.py index 260b428..bd3ee38 100644 --- a/src/connect/__init__.py +++ b/src/connect/__init__.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Connect-Python: A Python implementation of the Connect protocol.""" from connect.call_options import CallOptions diff --git a/src/connect/asgi_helpers/__init__.py b/src/connect/asgi_helpers/__init__.py index e69de29..1926cef 100644 --- a/src/connect/asgi_helpers/__init__.py +++ b/src/connect/asgi_helpers/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 diff --git a/src/connect/asgi_helpers/utils.py b/src/connect/asgi_helpers/utils.py index 2002c93..b31382f 100644 --- a/src/connect/asgi_helpers/utils.py +++ b/src/connect/asgi_helpers/utils.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Utility functions for ASGI helpers, including request/response decorators and route path extraction.""" import typing diff --git a/src/connect/call_options.py b/src/connect/call_options.py index 88983fa..6e47a9b 100644 --- a/src/connect/call_options.py +++ b/src/connect/call_options.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Call options configuration models.""" import asyncio diff --git a/src/connect/client.py b/src/connect/client.py index 11b53df..a0b0b63 100644 --- a/src/connect/client.py +++ b/src/connect/client.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Provides the main client implementation for making Connect protocol RPCs.""" import contextlib diff --git a/src/connect/client_interceptor.py b/src/connect/client_interceptor.py index 6d19f2b..abe98f4 100644 --- a/src/connect/client_interceptor.py +++ b/src/connect/client_interceptor.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Client-side interceptor utilities for modifying RPC behavior in Connect Python.""" import inspect diff --git a/src/connect/code.py b/src/connect/code.py index 6b495b9..5bf30fb 100644 --- a/src/connect/code.py +++ b/src/connect/code.py @@ -1,4 +1,17 @@ -# Copyright 2024 Gaudiy, Inc. +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# # SPDX-License-Identifier: Apache-2.0 """Connect represents categories of errors as codes.""" diff --git a/src/connect/codec.py b/src/connect/codec.py index 4f8ae68..3385056 100644 --- a/src/connect/codec.py +++ b/src/connect/codec.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Module providing codec classes for serializing and deserializing protobuf messages.""" import abc diff --git a/src/connect/compression.py b/src/connect/compression.py index 5cca446..9498160 100644 --- a/src/connect/compression.py +++ b/src/connect/compression.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Module providing constants for different types of compression.""" import abc diff --git a/src/connect/connect.py b/src/connect/connect.py index ec6b6c3..a7b1800 100644 --- a/src/connect/connect.py +++ b/src/connect/connect.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Core components and abstractions for the Connect protocol.""" import abc diff --git a/src/connect/connection_pool.py b/src/connect/connection_pool.py index 8818794..30afddf 100644 --- a/src/connect/connection_pool.py +++ b/src/connect/connection_pool.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Provides an asynchronous connection pool for making HTTP requests.""" from httpcore import AsyncConnectionPool as AsyncConnectionPool diff --git a/src/connect/content_stream.py b/src/connect/content_stream.py index 5bf8441..57b9a45 100644 --- a/src/connect/content_stream.py +++ b/src/connect/content_stream.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Provides classes for handling asynchronous content and data streams.""" from collections.abc import ( diff --git a/src/connect/envelope.py b/src/connect/envelope.py index ac46d2e..f9dc9cc 100644 --- a/src/connect/envelope.py +++ b/src/connect/envelope.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Module containing the Envelope class which represents a data envelope.""" import struct diff --git a/src/connect/error.py b/src/connect/error.py index cbbd91e..80809cb 100644 --- a/src/connect/error.py +++ b/src/connect/error.py @@ -1,4 +1,17 @@ -# Copyright 2024 Gaudiy, Inc. +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# # SPDX-License-Identifier: Apache-2.0 """Defines Connect protocol errors and related utilities.""" diff --git a/src/connect/handler.py b/src/connect/handler.py index 82a7c9b..8e70f2f 100644 --- a/src/connect/handler.py +++ b/src/connect/handler.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Defines the server-side handlers for Connect, gRPC, and gRPC-Web RPCs.""" import asyncio diff --git a/src/connect/handler_context.py b/src/connect/handler_context.py index 33f9450..fffa639 100644 --- a/src/connect/handler_context.py +++ b/src/connect/handler_context.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Manages the context for a handler, particularly for handling timeouts.""" import time diff --git a/src/connect/handler_interceptor.py b/src/connect/handler_interceptor.py index a7b7090..6f5de44 100644 --- a/src/connect/handler_interceptor.py +++ b/src/connect/handler_interceptor.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Defines handler-side interceptors for the Connect RPC framework.""" import inspect diff --git a/src/connect/headers.py b/src/connect/headers.py index 2f3fb93..0af1e0c 100644 --- a/src/connect/headers.py +++ b/src/connect/headers.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Provides a `Headers` class for managing HTTP headers and a utility function for request headers.""" from collections.abc import AsyncIterable, Iterable, Iterator, KeysView, Mapping, MutableMapping, Sequence diff --git a/src/connect/idempotency_level.py b/src/connect/idempotency_level.py index 43d9a5e..5d1e605 100644 --- a/src/connect/idempotency_level.py +++ b/src/connect/idempotency_level.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Defines the IdempotencyLevel enumeration.""" from enum import IntEnum diff --git a/src/connect/middleware.py b/src/connect/middleware.py index b4e004b..872f793 100644 --- a/src/connect/middleware.py +++ b/src/connect/middleware.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Provides ASGI middleware for routing requests to Connect protocol handlers.""" from collections.abc import Awaitable, Callable diff --git a/src/connect/options.py b/src/connect/options.py index 89460e0..745146f 100644 --- a/src/connect/options.py +++ b/src/connect/options.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Defines configuration options for Connect RPC clients and handlers.""" from typing import Any, Literal diff --git a/src/connect/protocol.py b/src/connect/protocol.py index ded1d62..f1f8c72 100644 --- a/src/connect/protocol.py +++ b/src/connect/protocol.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Defines the abstract interfaces and helpers for RPC protocol implementations.""" import abc diff --git a/src/connect/protocol_connect/__init__.py b/src/connect/protocol_connect/__init__.py index e69de29..1926cef 100644 --- a/src/connect/protocol_connect/__init__.py +++ b/src/connect/protocol_connect/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 diff --git a/src/connect/protocol_connect/base64_utils.py b/src/connect/protocol_connect/base64_utils.py index 4bf8fcf..c767583 100644 --- a/src/connect/protocol_connect/base64_utils.py +++ b/src/connect/protocol_connect/base64_utils.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Base64 utilities for Connect protocol.""" import base64 diff --git a/src/connect/protocol_connect/connect_client.py b/src/connect/protocol_connect/connect_client.py index 22ec274..53f94e7 100644 --- a/src/connect/protocol_connect/connect_client.py +++ b/src/connect/protocol_connect/connect_client.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Connect protocol client implementation for unary and streaming RPCs.""" import asyncio diff --git a/src/connect/protocol_connect/connect_handler.py b/src/connect/protocol_connect/connect_handler.py index f792a48..204bb4b 100644 --- a/src/connect/protocol_connect/connect_handler.py +++ b/src/connect/protocol_connect/connect_handler.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Connect protocol handler implementation for unary and streaming RPCs.""" import json diff --git a/src/connect/protocol_connect/connect_protocol.py b/src/connect/protocol_connect/connect_protocol.py index 91a334b..4f81c2b 100644 --- a/src/connect/protocol_connect/connect_protocol.py +++ b/src/connect/protocol_connect/connect_protocol.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Provides the ProtocolConnect class for handling connection protocols.""" from http import HTTPMethod diff --git a/src/connect/protocol_connect/constants.py b/src/connect/protocol_connect/constants.py index 56d2a8b..8b2a485 100644 --- a/src/connect/protocol_connect/constants.py +++ b/src/connect/protocol_connect/constants.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Constants for Connect protocol headers, content types, and user agent.""" import sys diff --git a/src/connect/protocol_connect/content_type.py b/src/connect/protocol_connect/content_type.py index bc14d07..f7b0374 100644 --- a/src/connect/protocol_connect/content_type.py +++ b/src/connect/protocol_connect/content_type.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Helpers for Connect protocol content type handling.""" from http import HTTPStatus diff --git a/src/connect/protocol_connect/end_stream.py b/src/connect/protocol_connect/end_stream.py index 09a25e5..18623ff 100644 --- a/src/connect/protocol_connect/end_stream.py +++ b/src/connect/protocol_connect/end_stream.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Helpers for serializing and deserializing Connect end-of-stream messages.""" import json diff --git a/src/connect/protocol_connect/error_code.py b/src/connect/protocol_connect/error_code.py index 06ec115..98dcb81 100644 --- a/src/connect/protocol_connect/error_code.py +++ b/src/connect/protocol_connect/error_code.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """HTTP status code mapping for Connect protocol error codes.""" from connect.code import Code diff --git a/src/connect/protocol_connect/error_json.py b/src/connect/protocol_connect/error_json.py index 6c939f1..895ba3d 100644 --- a/src/connect/protocol_connect/error_json.py +++ b/src/connect/protocol_connect/error_json.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Utilities for serializing and deserializing ConnectError objects to and from JSON.""" import contextlib diff --git a/src/connect/protocol_connect/marshaler.py b/src/connect/protocol_connect/marshaler.py index 501f18b..c896fb9 100644 --- a/src/connect/protocol_connect/marshaler.py +++ b/src/connect/protocol_connect/marshaler.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Marshaling utilities for Connect protocol unary and streaming messages.""" import base64 diff --git a/src/connect/protocol_connect/unmarshaler.py b/src/connect/protocol_connect/unmarshaler.py index aef0e15..0f7abd3 100644 --- a/src/connect/protocol_connect/unmarshaler.py +++ b/src/connect/protocol_connect/unmarshaler.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Connect protocol message unmarshaling utilities.""" from collections.abc import ( diff --git a/src/connect/protocol_grpc/__init__.py b/src/connect/protocol_grpc/__init__.py index e69de29..1926cef 100644 --- a/src/connect/protocol_grpc/__init__.py +++ b/src/connect/protocol_grpc/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 diff --git a/src/connect/protocol_grpc/constants.py b/src/connect/protocol_grpc/constants.py index cea8759..6690b26 100644 --- a/src/connect/protocol_grpc/constants.py +++ b/src/connect/protocol_grpc/constants.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Constants and settings for gRPC protocol support in connect-python.""" import re diff --git a/src/connect/protocol_grpc/content_type.py b/src/connect/protocol_grpc/content_type.py index 6cfc4ff..ea124b0 100644 --- a/src/connect/protocol_grpc/content_type.py +++ b/src/connect/protocol_grpc/content_type.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Utilities for handling gRPC and gRPC-Web content types and codec validation.""" from connect.code import Code diff --git a/src/connect/protocol_grpc/error_trailer.py b/src/connect/protocol_grpc/error_trailer.py index 9f2c9bb..acd4a27 100644 --- a/src/connect/protocol_grpc/error_trailer.py +++ b/src/connect/protocol_grpc/error_trailer.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Helpers for encoding and decoding gRPC error trailers in Connect protocol.""" import base64 diff --git a/src/connect/protocol_grpc/grpc_client.py b/src/connect/protocol_grpc/grpc_client.py index 6cb9115..e2430a6 100644 --- a/src/connect/protocol_grpc/grpc_client.py +++ b/src/connect/protocol_grpc/grpc_client.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """gRPC protocol client implementation for asynchronous Python clients.""" import asyncio diff --git a/src/connect/protocol_grpc/grpc_handler.py b/src/connect/protocol_grpc/grpc_handler.py index dd82a87..b7687fb 100644 --- a/src/connect/protocol_grpc/grpc_handler.py +++ b/src/connect/protocol_grpc/grpc_handler.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """gRPC and gRPC-web protocol handler and connection classes for Connect Python framework.""" from collections.abc import AsyncIterable, AsyncIterator diff --git a/src/connect/protocol_grpc/grpc_protocol.py b/src/connect/protocol_grpc/grpc_protocol.py index 955e87c..64a3068 100644 --- a/src/connect/protocol_grpc/grpc_protocol.py +++ b/src/connect/protocol_grpc/grpc_protocol.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """gRPC and gRPC-Web protocol implementation for Connect framework.""" from connect.codec import CodecNameType diff --git a/src/connect/protocol_grpc/marshaler.py b/src/connect/protocol_grpc/marshaler.py index 59e6354..5338c2b 100644 --- a/src/connect/protocol_grpc/marshaler.py +++ b/src/connect/protocol_grpc/marshaler.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """gRPC-Web marshaler for serializing messages and trailers with optional compression.""" from connect.codec import Codec diff --git a/src/connect/protocol_grpc/unmarshaler.py b/src/connect/protocol_grpc/unmarshaler.py index f92bf7b..52a28b1 100644 --- a/src/connect/protocol_grpc/unmarshaler.py +++ b/src/connect/protocol_grpc/unmarshaler.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """GRPCUnmarshaler provides async gRPC message unmarshaling with web trailer support.""" from collections.abc import AsyncIterable, AsyncIterator diff --git a/src/connect/request.py b/src/connect/request.py index c193cb1..a16a3c9 100644 --- a/src/connect/request.py +++ b/src/connect/request.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """HTTP request handling module using Starlette's Request class.""" from starlette.requests import Request as Request diff --git a/src/connect/response.py b/src/connect/response.py index fc69fbc..1028d2f 100644 --- a/src/connect/response.py +++ b/src/connect/response.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Streaming HTTP response implementation with async content delivery and trailer support.""" import typing diff --git a/src/connect/response_writer.py b/src/connect/response_writer.py index 6c56691..ffd3348 100644 --- a/src/connect/response_writer.py +++ b/src/connect/response_writer.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Single-use asynchronous response writer for server communication with thread-safe queue mechanism.""" import asyncio diff --git a/src/connect/utils.py b/src/connect/utils.py index 829c8d4..540863b 100644 --- a/src/connect/utils.py +++ b/src/connect/utils.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + """Utility functions for async operations, HTTP exception handling, and callable attribute inspection.""" import asyncio diff --git a/src/connect/version.py b/src/connect/version.py index 8c1bdfd..01ee7de 100644 --- a/src/connect/version.py +++ b/src/connect/version.py @@ -1,4 +1,17 @@ -# Copyright 2024 Gaudiy, Inc. +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# # SPDX-License-Identifier: Apache-2.0 __version__ = "0.0.1" diff --git a/tests/__init__.py b/tests/__init__.py index e69de29..1926cef 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -0,0 +1,15 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 diff --git a/tests/conftest.py b/tests/conftest.py index 577d824..20e1645 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + # ruff: noqa: ARG001 ARG002 D100 D101 D102 D103 D105 D107 import json diff --git a/tests/test_streaming_connect_client.py b/tests/test_streaming_connect_client.py index 25c5e39..a4f82c9 100644 --- a/tests/test_streaming_connect_client.py +++ b/tests/test_streaming_connect_client.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + # ruff: noqa: ARG001 D103 D100 diff --git a/tests/test_streaming_connect_server.py b/tests/test_streaming_connect_server.py index 5bf1909..5cfa53a 100644 --- a/tests/test_streaming_connect_server.py +++ b/tests/test_streaming_connect_server.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + import gzip import json from collections.abc import AsyncIterator diff --git a/tests/test_unary_connect_client.py b/tests/test_unary_connect_client.py index 9543fb4..5b961ee 100644 --- a/tests/test_unary_connect_client.py +++ b/tests/test_unary_connect_client.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + # ruff: noqa: ARG001 D103 D100 import base64 diff --git a/tests/test_unary_connect_server.py b/tests/test_unary_connect_server.py index 05419ec..7d19f3d 100644 --- a/tests/test_unary_connect_server.py +++ b/tests/test_unary_connect_server.py @@ -1,3 +1,19 @@ +# Copyright 2025 Gaudiy Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# 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. +# +# SPDX-License-Identifier: Apache-2.0 + # ruff: noqa: ARG001 D103 D100 import base64