diff --git a/.github/ISSUE_TEMPLATE/bug-report.yml b/.github/ISSUE_TEMPLATE/bug-report.yml new file mode 100644 index 00000000..fdeb72d4 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug-report.yml @@ -0,0 +1,83 @@ +--- +name: "🐛 Bug Report" +description: Report a bug +title: "(short issue description)" +labels: [bug, needs-triage] +assignees: [] +body: + - type: textarea + id: description + attributes: + label: Describe the bug + description: What is the problem? A clear and concise description of the bug. + validations: + required: true + - type: textarea + id: expected + attributes: + label: Expected Behavior + description: | + What did you expect to happen? + validations: + required: true + - type: textarea + id: current + attributes: + label: Current Behavior + description: | + What actually happened? + + Please include full errors, uncaught exceptions, stack traces, and relevant logs. + If service responses are relevant, please include wire logs. + validations: + required: true + - type: textarea + id: reproduction + attributes: + label: Reproduction Steps + description: | + Provide a self-contained, concise snippet of code that can be used to reproduce the issue. + For more complex issues provide a repo with the smallest sample that reproduces the bug. + + Avoid including business logic or unrelated code, it makes diagnosis more difficult. + The code sample should be an SSCCE. See http://sscce.org/ for details. In short, please provide a code sample that we can copy/paste, run and reproduce. + validations: + required: true + - type: textarea + id: solution + attributes: + label: Possible Solution + description: | + Suggest a fix/reason for the bug + validations: + required: false + - type: textarea + id: context + attributes: + label: Additional Information/Context + description: | + Anything else that might be relevant for troubleshooting this bug. Providing context helps us come up with a solution that is most useful in the real world. + validations: + required: false + + - type: input + id: swift-sdk-version + attributes: + label: AWS SWIFT SDK version used + validations: + required: true + + - type: input + id: compiler-version + attributes: + label: Compiler and Version used + description: Xcode version, Swift compiler version, Swift Tools version + validations: + required: true + + - type: input + id: operating-system + attributes: + label: Operating System and version + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/documentation.yml b/.github/ISSUE_TEMPLATE/documentation.yml new file mode 100644 index 00000000..c068514d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/documentation.yml @@ -0,0 +1,23 @@ +--- +name: "📕 Documentation Issue" +description: Report an issue in the API Reference documentation or Developer Guide +title: "(short issue description)" +labels: [documentation, needs-triage] +assignees: [] +body: + - type: textarea + id: description + attributes: + label: Describe the issue + description: A clear and concise description of the issue. + validations: + required: true + + - type: textarea + id: links + attributes: + label: Links + description: | + Include links to affected documentation page(s). + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 00000000..a5c45cd8 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,54 @@ +--- +name: 🚀 Feature Request +description: Suggest an idea for this project +title: "(short issue description)" +labels: [feature-request, needs-triage] +assignees: [] +body: + - type: markdown + attributes: + value: | + ## Community Note + 1. Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to the original issue to help the community and maintainers prioritize this request + 2. Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request + 3. If you are interested in working on this issue, please leave a comment + - type: textarea + id: description + attributes: + label: Describe the feature + description: A clear and concise description of the feature you are proposing. + validations: + required: true + - type: textarea + id: use-case + attributes: + label: Use Case + description: | + Why do you need this feature? For example: "I'm always frustrated when..." + validations: + required: true + - type: textarea + id: solution + attributes: + label: Proposed Solution + description: | + Suggest how to implement the addition or change. Please include prototype/workaround/sketch/reference implementation. + validations: + required: false + - type: textarea + id: other + attributes: + label: Other Information + description: | + Any alternative solutions or features you considered, a more detailed explanation, stack traces, related issues, links for context, etc. + validations: + required: false + - type: checkboxes + id: ack + attributes: + label: Acknowledgements + options: + - label: I may be able to implement this feature request + required: false + - label: This feature might incur a breaking change + required: false diff --git a/.github/ISSUE_TEMPLATE/issue-report.yml b/.github/ISSUE_TEMPLATE/issue-report.yml deleted file mode 100644 index ae6e0ba3..00000000 --- a/.github/ISSUE_TEMPLATE/issue-report.yml +++ /dev/null @@ -1,71 +0,0 @@ -name: Swift AWS Lambda SDK issue -description: File an issue report with the usage of the Swift AWS Lambda Runtime -body: - - type: markdown - attributes: - value: "Thanks for taking the time to fill out this issue report" - - type: textarea - id: expected-behavior - attributes: - label: Expected behavior - description: What you expected to happen? - placeholder: Describe with your own words the expected result - validations: - required: true - - type: textarea - id: what-happend - attributes: - label: Actual behavior - description: What actually happened - placeholder: Describe - validations: - required: true - - type: textarea - id: steps-to-reproduce - attributes: - label: Steps to reproduce - description: List the steps followed to reproduce the behaviour you are reporting - placeholder: | - 1. First I... - 2. Then... - 3. Finally... - validations: - required: true - - type: textarea - id: code-snippet - attributes: - label: If possible, minimal yet complete reproducer code (or URL to code) - description: List the steps followed to reproduce the behaviour you are reporting - placeholder: | - You can add any relevant code snippet that you consider or an URL to code. - - URL could be a link to a GitHub Gist, for example - validations: - required: false - - type: input - id: swift-aws-lambda-runtime-version - attributes: - label: What version of this project (`swift-aws-lambda-runtime`) are you using? - description: The release, branch or commit hash related with this issue. - placeholder: 1.0.0-alpha.1 - validations: - required: true - - type: textarea - id: swift-version - attributes: - label: Swift version - description: Swift environment version. - placeholder: | - Open a Terminal and execute the following command - - swift --version && uname -a - validations: - required: true - - type: input - id: amazon-linux-2-version - attributes: - label: Amazon Linux 2 docker image version - description: The docker image tag used to archive the lambda, if available. - placeholder: 5.7.3-amazonlinux2 - validations: - required: false diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index ab90c7b9..b4486e2f 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,13 +1,17 @@ -_[One line description of your change]_ + -### Motivation: +## Issue \# + -_[Explain here the context, and why you're making that change. What is the problem you're trying to solve.]_ +## Description of changes + -### Modifications: +## New/existing dependencies impact assessment, if applicable + + -_[Describe the modifications you've done.]_ +## Conventional Commits + + -### Result: - -_[After your change, what will change.]_ +By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. \ No newline at end of file diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md deleted file mode 100644 index 0776b8a0..00000000 --- a/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,3 +0,0 @@ -# Code of Conduct - -The code of conduct for this project can be found at https://swift.org/code-of-conduct. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index f44ef520..df7baf28 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,68 +1,57 @@ -## Legal +# Contributing Guidelines -By submitting a pull request, you represent that you have the right to license -your contribution to Apple and the community, and agree by submitting the patch -that your contributions are licensed under the Apache 2.0 license (see -`LICENSE.txt`). +Thank you for your interest in contributing to our project. Whether it's a bug report, new feature, correction, or additional +documentation, we greatly value feedback and contributions from our community. +Please read through this document before submitting any issues or pull requests to ensure we have all the necessary +information to effectively respond to your bug report or contribution. -## How to submit a bug report -Please ensure to specify the following: +## Reporting Bugs/Feature Requests -* SwiftAWSLambdaRuntime commit hash -* Contextual information (e.g. what you were trying to achieve with SwiftAWSLambdaRuntime) -* Simplest possible steps to reproduce - * More complex the steps are, lower the priority will be. - * A pull request with failing test case is preferred, but it's just fine to paste the test case into the issue description. -* Anything that might be relevant in your opinion, such as: - * Swift version or the output of `swift --version` - * OS version and the output of `uname -a` - * Network configuration +We welcome you to use the GitHub issue tracker to report bugs or suggest features. +When filing an issue, please check [existing open](https://github.com/aws-amplify/aws-sdk-swift/issues), or [recently closed](https://github.com/aws-amplify/aws-sdk-swift/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aclosed%20), issues to make sure somebody else hasn't already +reported the issue. Please try to include as much information as you can. Details like these are incredibly useful: -### Example +* A reproducible test case or series of steps +* The version of our code being used +* Any modifications you've made relevant to the bug +* Anything unusual about your environment or deployment -``` -SwiftAWSLambdaRuntime commit hash: 22ec043dc9d24bb011b47ece4f9ee97ee5be2757 -Context: -While load testing my Lambda written with SwiftAWSLambdaRuntime, I noticed -that one file descriptor is leaked per request. +## Contributing via Pull Requests +Contributions via pull requests are much appreciated. Before sending us a pull request, please ensure that: -Steps to reproduce: -1. ... -2. ... -3. ... -4. ... +1. You are working against the latest source on the *main* branch. +2. You check existing open, and recently merged, pull requests to make sure someone else hasn't addressed the problem already. +3. You open an issue to discuss any significant work - we would hate for your time to be wasted. -$ swift --version -Swift version 4.0.2 (swift-4.0.2-RELEASE) -Target: x86_64-unknown-linux-gnu +To send us a pull request, please: -Operating system: Ubuntu Linux 16.04 64-bit +1. Fork the repository. +2. Modify the source; please focus on the specific change you are contributing. If you also reformat all the code, it will be hard for us to focus on your change. +3. Ensure local tests pass. +4. Commit to your fork using clear commit messages. +5. Send us a pull request, answering any default questions in the pull request interface. +6. Pay attention to any automated CI failures reported in the pull request, and stay involved in the conversation. -$ uname -a -Linux beefy.machine 4.4.0-101-generic #124-Ubuntu SMP Fri Nov 10 18:29:59 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux +GitHub provides additional document on [forking a repository](https://help.github.com/articles/fork-a-repo/) and +[creating a pull request](https://help.github.com/articles/creating-a-pull-request/). -My system has IPv6 disabled. -``` -## Writing a Patch +## Finding contributions to work on +Looking at the existing issues is a great way to find something to contribute on. As our projects, by default, use the default GitHub issue labels ((enhancement/bug/duplicate/help wanted/invalid/question/wontfix), looking at any ['help wanted'](https://github.com/aws-amplify/aws-sdk-swift/labels/help%20wanted) issues is a great place to start. -A good SwiftAWSLambdaRuntime patch is: -1. Concise, and contains as few changes as needed to achieve the end result. -2. Tested, ensuring that any tests provided failed before the patch and pass after it. -3. Documented, adding API documentation as needed to cover new functions and properties. -4. Accompanied by a great commit message, using our commit message template. +## Code of Conduct +This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct). +For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact +opensource-codeofconduct@amazon.com with any additional questions or comments. -### Commit Message Template -We require that your commit messages match our template. The easiest way to do that is to get git to help you by explicitly using the template. To do that, `cd` to the root of our repository and run: +## Licensing - git config commit.template dev/git.commit.template +See the [LICENSE](https://github.com/aws-amplify/aws-sdk-swift/blob/main/LICENSE) file for our project's licensing. We will ask you confirm the licensing of your contribution. -## How to contribute your work - -Please open a pull request at https://github.com/swift-server/swift-aws-lambda-runtime. Make sure the CI passes, and then wait for code review. +We may ask you to sign a [Contributor License Agreement (CLA)](http://en.wikipedia.org/wiki/Contributor_License_Agreement) for larger changes. \ No newline at end of file diff --git a/NOTICE.txt b/NOTICE.txt index 0ff96e27..9be4b2c6 100644 --- a/NOTICE.txt +++ b/NOTICE.txt @@ -1,31 +1,9 @@ +swift-aws-lambda-runtime +Copyright 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved. - The SwiftAWSLambdaRuntime Project - ================================= - -Please visit the SwiftAWSLambdaRuntime web site for more information: - - * https://github.com/swift-server/swift-aws-lambda-runtime - -Copyright 2017-2021 The SwiftAWSLambdaRuntime Project - -The SwiftAWSLambdaRuntime Project licenses this file to you 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: - - https://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. - -Also, please refer to each LICENSE.txt file, which is located in -the 'license' directory of the distribution file, for the license terms of the -components that this product depends on. - -------------------------------------------------------------------------------- +#TODO : question: should we retain the copyright from Apple ? +--- This product contains a derivation various code and scripts from SwiftNIO. @@ -34,11 +12,3 @@ This product contains a derivation various code and scripts from SwiftNIO. * HOMEPAGE: * https://github.com/apple/swift-nio ---- - -This product contains a derivation of the swift-extras' 'swift-extras-uuid'. - - * LICENSE (MIT): - * https://github.com/swift-extras/swift-extras-uuid/blob/main/LICENSE - * HOMEPAGE: - * https://github.com/swift-extras/swift-extras-uuid diff --git a/SECURITY.md b/SECURITY.md index 1430c662..cecb5bf1 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -1,43 +1,7 @@ -# Security +# SECURITY.md -This document specifies the security process for the Swift AWS Lambda Runtime project. +## Reporting a Vulnerability -## Disclosures - -### Private Disclosure Process - -The Swift AWS Lambda Runtime maintainers ask that known and suspected vulnerabilities be -privately and responsibly disclosed by emailing -[sswg-security-reports@forums.swift.org](mailto:sswg-security-reports@forums.swift.org) -with the all the required detail. -**Do not file a public issue.** - -#### When to report a vulnerability - -* You think you have discovered a potential security vulnerability in Swift AWS Lambda Runtime. -* You are unsure how a vulnerability affects Swift AWS Lambda Runtime. - -#### What happens next? - -* A member of the team will acknowledge receipt of the report within 3 - working days (United States). This may include a request for additional - information about reproducing the vulnerability. -* We will privately inform the Swift Server Work Group ([SSWG][sswg]) of the - vulnerability within 10 days of the report as per their [security - guidelines][sswg-security]. -* Once we have identified a fix we may ask you to validate it. We aim to do this - within 30 days. In some cases this may not be possible, for example when the - vulnerability exists at the protocol level and the industry must coordinate on - the disclosure process. -* If a CVE number is required, one will be requested from [MITRE][mitre] - providing you with full credit for the discovery. -* We will decide on a planned release date and let you know when it is. -* Prior to release, we will inform major dependents that a security-related - patch is impending. -* Once the fix has been released we will publish a security advisory on GitHub - and in the Server → Security Updates category on the [Swift forums][swift-forums-sec]. - -[sswg]: https://github.com/swift-server/sswg -[sswg-security]: https://github.com/swift-server/sswg/blob/main/security/README.md -[swift-forums-sec]: https://forums.swift.org/c/server/security-updates/ -[mitre]: https://cveform.mitre.org/ +If you discover a potential security issue in this project we ask that you notify AWS/Amazon Security via +our [vulnerability reporting page](http://aws.amazon.com/security/vulnerability-reporting/) or directly via email +to [aws-security@amazon.com](mailto:aws-security@amazon.com). Please do not create a public GitHub issue. \ No newline at end of file