Skip to content

Commit

Permalink
Merge remote-tracking branch 'public/main'
Browse files Browse the repository at this point in the history
  • Loading branch information
TingDaoK committed Oct 31, 2024
2 parents 129a1c7 + 084e141 commit 94f95b4
Show file tree
Hide file tree
Showing 22 changed files with 78 additions and 32 deletions.
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,14 @@ body:
description: What is the problem? A clear and concise description of the bug.
validations:
required: true
- type: checkboxes
id: regression
attributes:
label: Regression Issue
description: What is a regression? If it worked in a previous version but doesn't in the latest version, it's considered a regression. In this case, please provide specific version number in the report.
options:
- label: Select this option if this issue appears to be a regression.
required: false
- type: textarea
id: expected
attributes:
Expand Down
32 changes: 32 additions & 0 deletions .github/workflows/issue-regression-labeler.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Apply potential regression label on issues
name: issue-regression-label
on:
issues:
types: [opened, edited]
jobs:
add-regression-label:
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- name: Fetch template body
id: check_regression
uses: actions/github-script@v7
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TEMPLATE_BODY: ${{ github.event.issue.body }}
with:
script: |
const regressionPattern = /\[x\] Select this option if this issue appears to be a regression\./i;
const template = `${process.env.TEMPLATE_BODY}`
const match = regressionPattern.test(template);
core.setOutput('is_regression', match);
- name: Manage regression label
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
if [ "${{ steps.check_regression.outputs.is_regression }}" == "true" ]; then
gh issue edit ${{ github.event.issue.number }} --add-label "potential-regression" -R ${{ github.repository }}
else
gh issue edit ${{ github.event.issue.number }} --remove-label "potential-regression" -R ${{ github.repository }}
fi
7 changes: 3 additions & 4 deletions awscrt/eventstream/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0.

from collections.abc import ByteString
from enum import IntEnum
from typing import Any
from typing import Any, Union
from uuid import UUID

__all__ = ['HeaderType', 'Header']
Expand Down Expand Up @@ -135,7 +134,7 @@ def from_int64(cls, name: str, value: int) -> 'Header':
return cls(name, value, HeaderType.INT64)

@classmethod
def from_byte_buf(cls, name: str, value: ByteString) -> 'Header':
def from_byte_buf(cls, name: str, value: Union[bytes, bytearray]) -> 'Header':
"""Create a Header of type :attr:`~HeaderType.BYTE_BUF`
The value must be a bytes-like object"""
Expand Down Expand Up @@ -246,7 +245,7 @@ def value_as_int64(self) -> int:
Raises an exception if type is not :attr:`~HeaderType.INT64`"""
return self._value_as(HeaderType.INT64)

def value_as_byte_buf(self) -> ByteString:
def value_as_byte_buf(self) -> Union[bytes, bytearray]:
"""Return value of bytes
Raises an exception if type is not :attr:`~HeaderType.BYTE_BUF`"""
Expand Down
10 changes: 5 additions & 5 deletions awscrt/eventstream/rpc.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@
import awscrt.exceptions
from awscrt.eventstream import Header
from awscrt.io import ClientBootstrap, SocketOptions, TlsConnectionOptions
from collections.abc import ByteString, Callable
from collections.abc import Callable
from concurrent.futures import Future
from enum import IntEnum
from functools import partial
from typing import Optional, Sequence
from typing import Optional, Sequence, Union

__all__ = [
'MessageType',
Expand Down Expand Up @@ -381,7 +381,7 @@ def send_protocol_message(
self,
*,
headers: Optional[Sequence[Header]] = None,
payload: Optional[ByteString] = None,
payload: Optional[Union[bytes, bytearray]] = None,
message_type: MessageType,
flags: Optional[int] = None,
on_flush: Callable = None) -> 'concurrent.futures.Future':
Expand Down Expand Up @@ -483,7 +483,7 @@ def activate(
*,
operation: str,
headers: Sequence[Header] = None,
payload: ByteString = None,
payload: Union[bytes, bytearray] = None,
message_type: MessageType,
flags: int = None,
on_flush: Callable = None):
Expand Down Expand Up @@ -553,7 +553,7 @@ def send_message(
self,
*,
headers: Sequence[Header] = None,
payload: ByteString = None,
payload: Union[bytes, bytearray] = None,
message_type: MessageType,
flags: int = None,
on_flush: Callable = None) -> 'concurrent.futures.Future':
Expand Down
2 changes: 1 addition & 1 deletion codebuild/cd/manylinux-x64-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ phases:
commands:
- export CC=gcc
- cd aws-crt-python
- /opt/python/cp37-cp37m/bin/python ./continuous-delivery/update-version.py
- /opt/python/cp38-cp38/bin/python ./continuous-delivery/update-version.py
build:
commands:
- echo Build started on `date`
Expand Down
2 changes: 1 addition & 1 deletion codebuild/cd/manylinux-x86-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ phases:
commands:
- export CC=gcc
- cd aws-crt-python
- /opt/python/cp37-cp37m/bin/python ./continuous-delivery/update-version.py
- /opt/python/cp38-cp38/bin/python ./continuous-delivery/update-version.py
build:
commands:
- echo Build started on `date`
Expand Down
4 changes: 2 additions & 2 deletions continuous-delivery/sanity-check-test-pypi.bat
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
FOR /F "delims=" %%A in ('git describe --tags') do ( set TAG_VERSION=%%A )
set CURRENT_VERSION=%TAG_VERSION:v=%

"C:\Program Files\Python37\python.exe" continuous-delivery\pip-install-with-retry.py --no-cache-dir -i https://testpypi.python.org/simple --user awscrt==%CURRENT_VERSION% || goto error
"C:\Program Files\Python37\python.exe" continuous-delivery\test-pip-install.py || goto error
"C:\Program Files\Python38\python.exe" continuous-delivery\pip-install-with-retry.py --no-cache-dir -i https://testpypi.python.org/simple --user awscrt==%CURRENT_VERSION% || goto error
"C:\Program Files\Python38\python.exe" continuous-delivery\test-pip-install.py || goto error

goto :EOF

Expand Down
14 changes: 10 additions & 4 deletions crt/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0.
cmake_minimum_required(VERSION 3.1)
cmake_minimum_required(VERSION 3.9)

# This CMakeLists.txt exists so we can build all the C libraries we depend on
# simultaneously. This is much faster than building dependencies one at a time.
Expand Down Expand Up @@ -30,9 +30,9 @@ include(CTest)
# (On Windows and Apple we use the default OS libraries)
if(UNIX AND NOT APPLE)
option(USE_OPENSSL "Set this if you want to use your system's OpenSSL compatible libcrypto" OFF)
include(AwsPrebuildDependency)

if(NOT USE_OPENSSL)
include(AwsPrebuildDependency)

set(AWSLC_CMAKE_ARGUMENTS
-DDISABLE_GO=ON # Build without using Go, we don't want the extra dependency
Expand All @@ -54,8 +54,14 @@ if(UNIX AND NOT APPLE)
)
endif()

set(UNSAFE_TREAT_WARNINGS_AS_ERRORS OFF CACHE BOOL "")
add_subdirectory(s2n)
# prebuild s2n-tls.
aws_prebuild_dependency(
DEPENDENCY_NAME S2N
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/s2n
CMAKE_ARGUMENTS
-DUNSAFE_TREAT_WARNINGS_AS_ERRORS=OFF
-DBUILD_TESTING=OFF
)
endif()

add_subdirectory(aws-c-common)
Expand Down
2 changes: 1 addition & 1 deletion crt/aws-c-auth
Submodule aws-c-auth updated 2 files
+1 −5 CMakeLists.txt
+2 −2 README.md
2 changes: 1 addition & 1 deletion crt/aws-c-cal
Submodule aws-c-cal updated 2 files
+2 −6 CMakeLists.txt
+1 −1 README.md
2 changes: 1 addition & 1 deletion crt/aws-c-compression
2 changes: 1 addition & 1 deletion crt/aws-c-event-stream
2 changes: 1 addition & 1 deletion crt/aws-c-http
2 changes: 1 addition & 1 deletion crt/aws-c-mqtt
2 changes: 1 addition & 1 deletion crt/aws-c-sdkutils
2 changes: 1 addition & 1 deletion crt/aws-checksums
Submodule aws-checksums updated 1 files
+3 −8 CMakeLists.txt
2 changes: 1 addition & 1 deletion crt/aws-lc
2 changes: 1 addition & 1 deletion crt/s2n
Submodule s2n updated from 08d413 to ffe0bf
5 changes: 3 additions & 2 deletions test/test_s3.py
Original file line number Diff line number Diff line change
Expand Up @@ -222,8 +222,9 @@ def test_sanity_secure(self):
self.assertIsNotNone(s3_client)

def test_sanity_network_interface_names(self):
s3_client = s3_client_new(True, self.region, network_interface_names=("eth0", "eth1"))
self.assertIsNotNone(s3_client)
# This is just a sanity test to ensure that we are passing the parameter correctly.
with self.assertRaises(Exception):
s3_client_new(True, self.region, network_interface_names=("eth0", "invalid-network-interface"))

def test_wait_shutdown(self):
s3_client = s3_client_new(False, self.region)
Expand Down

0 comments on commit 94f95b4

Please sign in to comment.