diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
deleted file mode 100644
index adeb141..0000000
--- a/.github/ISSUE_TEMPLATE/config.yml
+++ /dev/null
@@ -1,10 +0,0 @@
-contact_links:
- - name: Twilio SendGrid Support
- url: https://support.sendgrid.com
- about: Get Support
- - name: Stack Overflow
- url: https://stackoverflow.com/questions/tagged/python-http-client+or+sendgrid+python
- about: Ask questions on Stack Overflow
- - name: Documentation
- url: https://sendgrid.com/docs/for-developers/
- about: View Reference Documentation
diff --git a/.github/workflows/pr-lint.yml b/.github/workflows/pr-lint.yml
new file mode 100644
index 0000000..dc7af3d
--- /dev/null
+++ b/.github/workflows/pr-lint.yml
@@ -0,0 +1,15 @@
+name: Lint PR
+on:
+ pull_request_target:
+ types: [ opened, edited, synchronize, reopened ]
+
+jobs:
+ validate:
+ name: Validate title
+ runs-on: ubuntu-latest
+ steps:
+ - uses: amannn/action-semantic-pull-request@v4
+ with:
+ types: chore docs fix feat test
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
deleted file mode 100644
index 7cca573..0000000
--- a/.github/workflows/release.yml
+++ /dev/null
@@ -1,51 +0,0 @@
-name: Publish Python distributions
-on:
- push:
- tags:
- - '*'
- workflow_dispatch:
-
-jobs:
- release:
- name: Release
- runs-on: ubuntu-latest
- steps:
- - name: Checkout sendgrid-python-http-client
- uses: actions/checkout@v2
-
- - name: Set up Python
- uses: actions/setup-python@v2
- with:
- python-version: '3.6'
-
- - name: Install dependencies
- run: |
- python -m pip install --upgrade pip
- pip install build
- pip install wheel
- python setup.py sdist bdist_wheel
-
-
- - name: Publish package to PyPI
- uses: pypa/gh-action-pypi-publish@release/v1
- with:
- user: __token__
- password: ${{ secrets.PYPI_TOKEN }}
-
- notify-on-failure:
- name: Slack notify on failure
- if: ${{ failure() }}
- needs: [ release ]
- runs-on: ubuntu-latest
- steps:
- - uses: rtCamp/action-slack-notify@v2
- env:
- SLACK_COLOR: 'danger'
- SLACK_ICON_EMOJI: ':github:'
- SLACK_MESSAGE: ${{ format('Failed to release {1}{3} {0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id, ':') }}
- SLACK_TITLE: Release Failure
- SLACK_USERNAME: GitHub Actions
- SLACK_MSG_AUTHOR: twilio-dx
- SLACK_FOOTER: Posted automatically using GitHub Actions
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- MSG_MINIMAL: true
diff --git a/.github/workflows/test-and-deploy.yml b/.github/workflows/test-and-deploy.yml
new file mode 100644
index 0000000..a20234e
--- /dev/null
+++ b/.github/workflows/test-and-deploy.yml
@@ -0,0 +1,80 @@
+name: Test and Deploy
+on:
+ push:
+ branches: [ '*' ]
+ tags: [ '*' ]
+ pull_request:
+ branches: [ main ]
+ schedule:
+ # Run automatically at 8AM PST Monday-Friday
+ - cron: '0 15 * * 1-5'
+ workflow_dispatch:
+
+jobs:
+ test:
+ name: Test
+ runs-on: ubuntu-latest
+ timeout-minutes: 20
+ strategy:
+ matrix:
+ python-version: [ '2.7', '3.5', '3.6', '3.7', '3.8', '3.9', '3.10' ]
+ steps:
+ - name: Checkout sendgrid-python-http-client
+ uses: actions/checkout@v2
+
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+
+ - name: Build & Test
+ run: make install test-install test
+ deploy:
+ name: Deploy
+ if: success() && github.ref_type == 'tag'
+ needs: [ test ]
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout sendgrid-python-http-client
+ uses: actions/checkout@v2
+
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: '3.10'
+
+ - name: Install dependencies
+ run: |
+ python -m pip install --upgrade pip
+ pip install build
+ pip install wheel
+ python setup.py sdist bdist_wheel
+
+ - name: Publish package to PyPI
+ uses: pypa/gh-action-pypi-publish@release/v1
+ with:
+ user: __token__
+ password: ${{ secrets.PYPI_TOKEN }}
+
+ - name: Submit metric to Datadog
+ uses: sendgrid/dx-automator/actions/datadog-release-metric@main
+ env:
+ DD_API_KEY: ${{ secrets.DATADOG_API_KEY }}
+
+ notify-on-failure:
+ name: Slack notify on failure
+ if: failure() && github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.ref_type == 'tag')
+ needs: [ test, deploy ]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: rtCamp/action-slack-notify@v2
+ env:
+ SLACK_COLOR: failure
+ SLACK_ICON_EMOJI: ':github:'
+ SLACK_MESSAGE: ${{ format('Test *{0}*, Deploy *{1}*, {2}/{3}/actions/runs/{4}', needs.test.result, needs.deploy.result, github.server_url, github.repository, github.run_id) }}
+ SLACK_TITLE: Action Failure - ${{ github.repository }}
+ SLACK_USERNAME: GitHub Actions
+ SLACK_MSG_AUTHOR: twilio-dx
+ SLACK_FOOTER: Posted automatically using GitHub Actions
+ SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
+ MSG_MINIMAL: true
diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml
deleted file mode 100644
index e4ca29f..0000000
--- a/.github/workflows/tests.yaml
+++ /dev/null
@@ -1,50 +0,0 @@
-name: Run Tests
-on:
- push:
- branches: [ '*' ]
- pull_request:
- branches: [ main ]
- schedule:
- # Run automatically at 8AM PST Monday-Friday
- - cron: '0 15 * * 1-5'
- workflow_dispatch:
-
-jobs:
- tests:
- name: Run Tests
- runs-on: ubuntu-latest
- timeout-minutes: 20
- strategy:
- matrix:
- python-version: [ '2.7', '3.5', '3.6', '3.7', '3.8', '3.9' ]
- steps:
- - name: Checkout sendgrid-http-client
- uses: actions/checkout@v2
- with:
- fetch-depth: 0
-
- - name: Set up Python
- uses: actions/setup-python@v2
- with:
- python-version: ${{ matrix.python-version }}
-
- - name: Build & Test
- run: make install test-install test
-
- notify-on-failure:
- name: Slack notify on failure
- if: ${{ failure() && github.ref == 'refs/heads/main' && github.event_name != 'pull_request' }}
- needs: [ tests ]
- runs-on: ubuntu-latest
- steps:
- - uses: rtCamp/action-slack-notify@v2
- env:
- SLACK_COLOR: 'danger'
- SLACK_ICON_EMOJI: ':github:'
- SLACK_MESSAGE: ${{ format('Failed running build on {1}{3} {0}/{1}/actions/runs/{2}', github.server_url, github.repository, github.run_id, ':') }}
- SLACK_TITLE: Build Failure
- SLACK_USERNAME: GitHub Actions
- SLACK_MSG_AUTHOR: twilio-dx
- SLACK_FOOTER: Posted automatically using GitHub Actions
- SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
- MSG_MINIMAL: true
diff --git a/CHANGELOG.md b/CHANGELOG.md
index ec8f2ab..90bd3da 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -3,6 +3,19 @@ All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](http://semver.org/).
+[2022-03-09] Version 3.3.7
+--------------------------
+**Library - Chore**
+- [PR #157](https://github.com/sendgrid/python-http-client/pull/157): push Datadog Release Metric upon deploy success. Thanks to [@eshanholtz](https://github.com/eshanholtz)!
+
+
+[2022-02-09] Version 3.3.6
+--------------------------
+**Library - Chore**
+- [PR #156](https://github.com/sendgrid/python-http-client/pull/156): upgrade supported language versions. Thanks to [@childish-sambino](https://github.com/childish-sambino)!
+- [PR #154](https://github.com/sendgrid/python-http-client/pull/154): merge test and deploy gh action workflows. Thanks to [@Hunga1](https://github.com/Hunga1)!
+
+
[2022-01-12] Version 3.3.5
--------------------------
**Library - Chore**
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 26b9e25..e856a3e 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -2,9 +2,6 @@ Hello! Thank you for choosing to help contribute to one of the Twilio SendGrid o
**All third party contributors acknowledge that any contributions they provide will be made under the same open source license that the open source project is provided under.**
-- [Feature Request](#feature-request)
-- [Submit a Bug Report](#submit-a-bug-report)
- - [Please use our Bug Report Template](#please-use-our-bug-report-template)
- [Improvements to the Codebase](#improvements-to-the-codebase)
- [Development Environment](#development-environment)
- [Install and Run Locally](#install-and-run-locally)
@@ -23,33 +20,6 @@ Hello! Thank you for choosing to help contribute to one of the Twilio SendGrid o
There are a few ways to contribute, which we'll enumerate below:
-
-## Feature Request
-
-If you'd like to make a feature request, please read this section.
-
-The GitHub issue tracker is the preferred channel for library feature requests, but please respect the following restrictions:
-
-- Please **search for existing issues** in order to ensure we don't have duplicate bugs/feature requests.
-- Please be respectful and considerate of others when commenting on issues
-
-
-## Submit a Bug Report
-
-Note: DO NOT include your credentials in ANY code examples, descriptions, or media you make public.
-
-A software bug is a demonstrable issue in the code base. In order for us to diagnose the issue and respond as quickly as possible, please add as much detail as possible into your bug report.
-
-Before you decide to create a new issue, please try the following:
-
-1. Check the Github issues tab if the identified issue has already been reported, if so, please add a +1 to the existing post.
-2. Update to the latest version of this code and check if the issue has already been fixed
-3. Copy and fill in the Bug Report Template we have provided below
-
-### Please use our Bug Report Template
-
-In order to make the process easier, we've included a [sample bug report template](ISSUE_TEMPLATE.md).
-
## Improvements to the Codebase
diff --git a/FIRST_TIMERS.md b/FIRST_TIMERS.md
index 30ec107..b78a19a 100644
--- a/FIRST_TIMERS.md
+++ b/FIRST_TIMERS.md
@@ -51,29 +51,3 @@ git push origin
## Important notice
Before creating a pull request, make sure that you respect the repository's constraints regarding contributions. You can find them in the [CONTRIBUTING.md](CONTRIBUTING.md) file.
-
-## Repositories with Open, Easy, Help Wanted, Issue Filters
-
-* [Python SDK](https://github.com/sendgrid/sendgrid-python/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [PHP SDK](https://github.com/sendgrid/sendgrid-php/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [C# SDK](https://github.com/sendgrid/sendgrid-csharp/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Ruby SDK](https://github.com/sendgrid/sendgrid-ruby/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Node.js SDK](https://github.com/sendgrid/sendgrid-nodejs/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Java SDK](https://github.com/sendgrid/sendgrid-java/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Go SDK](https://github.com/sendgrid/sendgrid-go/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Python SMTPAPI Client](https://github.com/sendgrid/smtpapi-python/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [PHP SMTPAPI Client](https://github.com/sendgrid/smtpapi-php/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [C# SMTPAPI Client](https://github.com/sendgrid/smtpapi-csharp/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Ruby SMTPAPI Client](https://github.com/sendgrid/smtpapi-ruby/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Node.js SMTPAPI Client](https://github.com/sendgrid/smtpapi-nodejs/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Java SMTPAPI Client](https://github.com/sendgrid/smtpapi-java/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Go SMTPAPI Client](https://github.com/sendgrid/smtpapi-go/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Python HTTP Client](https://github.com/sendgrid/python-http-client/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [PHP HTTP Client](https://github.com/sendgrid/php-http-client/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [C# HTTP Client](https://github.com/sendgrid/csharp-http-client/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Java HTTP Client](https://github.com/sendgrid/java-http-client/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Ruby HTTP Client](https://github.com/sendgrid/ruby-http-client/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Go HTTP Client](https://github.com/sendgrid/rest/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Open API Definition](https://github.com/sendgrid/sendgrid-oai/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [DX Automator](https://github.com/sendgrid/dx-automator/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
-* [Documentation](https://github.com/sendgrid/docs/issues?utf8=%E2%9C%93&q=is%3Aopen+label%3A%22difficulty%3A+easy%22+label%3A%22status%3A+help+wanted%22)
diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md
deleted file mode 100644
index 9508dbb..0000000
--- a/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-### Issue Summary
-A summary of the issue and the environment in which it occurs. If suitable, include the steps required to reproduce the bug. Please feel free to include screenshots, screencasts, or code examples.
-
-### Steps to Reproduce
-1. This is the first step
-2. This is the second step
-3. Further steps, etc.
-
-### Code Snippet
-```python
-# paste code here
-```
-
-### Exception/Log
-```
-# paste exception/log here
-```
-
-### Technical details:
-* python-http-client version:
-* python version:
-
diff --git a/LICENSE b/LICENSE
index 5db04ff..3154774 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
MIT License
-Copyright (C) 2022, Twilio SendGrid, Inc.
+Copyright (C) 2023, Twilio SendGrid, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
diff --git a/PULL_REQUEST_TEMPLATE.md b/PULL_REQUEST_TEMPLATE.md
index 5b657d5..7de26a2 100644
--- a/PULL_REQUEST_TEMPLATE.md
+++ b/PULL_REQUEST_TEMPLATE.md
@@ -3,7 +3,7 @@ We appreciate the effort for this pull request but before that please make sure
Please format the PR title appropriately based on the type of change:
[!]:
-Where is one of: docs, chore, feat, fix, test.
+Where is one of: docs, chore, feat, fix, test, misc.
Add a '!' after the type for breaking changes (e.g. feat!: new breaking feature).
**All third-party contributors acknowledge that any contributions they provide will be made under the same open-source license that the open-source project is provided under.**
@@ -28,4 +28,4 @@ A short description of what this PR does.
- [ ] I have added the necessary documentation about the functionality in the appropriate .md file
- [ ] I have added inline documentation to the code I modified
-If you have questions, please file a [support ticket](https://support.sendgrid.com), or create a GitHub Issue in this repository.
+If you have questions, please file a [support ticket](https://support.sendgrid.com).
diff --git a/README.rst b/README.rst
index f0cd923..ff2c652 100644
--- a/README.rst
+++ b/README.rst
@@ -1,9 +1,7 @@
.. image:: https://github.com/sendgrid/sendgrid-python/raw/HEAD/twilio_sendgrid_logo.png
:target: https://www.sendgrid.com
-|Test Status| |Twitter Follow| |Codecov branch| |Code Climate| |Python Versions| |PyPI Version| |GitHub contributors| |MIT licensed|
-
-**The default branch name for this repository has been changed to `main` as of 07/27/2020.**
+|Test and Deploy Badge| |Twitter Follow| |Codecov branch| |Code Climate| |Python Versions| |PyPI Version| |GitHub contributors| |MIT licensed|
**Quickly and easily access any RESTful or RESTful-like API.**
@@ -103,8 +101,6 @@ We encourage contribution to our projects, please see our `CONTRIBUTING`_ guide
Quick links:
-- `Feature Request`_
-- `Bug Reports`_
- `Improvements to the Codebase`_
- `Review Pull Requests`_
@@ -146,8 +142,6 @@ License
.. _this repo: https://github.com/sendgrid/sendgrid-python
.. _Example Code: https://github.com/sendgrid/python-http-client/tree/HEAD/examples
.. _CONTRIBUTING: https://github.com/sendgrid/python-http-client/blob/HEAD/CONTRIBUTING.md
-.. _Feature Request: https://github.com/sendgrid/python-http-client/blob/HEAD/CONTRIBUTING.md#feature-request
-.. _Bug Reports: https://github.com/sendgrid/python-http-client/blob/HEAD/CONTRIBUTING.md#submit-a-bug-report
.. _Improvements to the Codebase: https://github.com/sendgrid/python-http-client/blob/HEAD/CONTRIBUTING.md#improvements-to-the-codebase
.. _Review Pull Requests: https://github.com/sendgrid/python-http-client/blob/HEAD/CONTRIBUTING.md#code-reviews
.. _troubleshooting guide: https://github.com/sendgrid/python-http-client/blob/HEAD/TROUBLESHOOTING.md
@@ -157,8 +151,8 @@ License
.. _The MIT License (MIT): https://github.com/sendgrid/python-http-client/blob/HEAD/LICENSE
.. _this is an incredible opportunity to join our #DX team: https://sendgrid.com/careers/role/1421152/?gh_jid=1421152
-.. |Test Status| image:: https://github.com/sendgrid/python-http-client/actions/workflows/tests.yml/badge.svg
- :target: https://github.com/sendgrid/python-http-client/actions/workflows/tests.yaml
+.. |Test and Deploy Badge| image:: https://github.com/sendgrid/python-http-client/actions/workflows/test-and-deploy.yml/badge.svg
+ :target: https://github.com/sendgrid/python-http-client/actions/workflows/test-and-deploy.yml
.. |Twitter Follow| image:: https://img.shields.io/twitter/follow/sendgrid.svg?style=social&label=Follow
:target: https://twitter.com/sendgrid
.. |Codecov branch| image:: https://img.shields.io/codecov/c/github/sendgrid/python-http-client/main.svg?style=flat-square&label=Codecov+Coverage
diff --git a/VERSION.txt b/VERSION.txt
index fa7adc7..86fb650 100644
--- a/VERSION.txt
+++ b/VERSION.txt
@@ -1 +1 @@
-3.3.5
+3.3.7
diff --git a/setup.py b/setup.py
index 0033e17..aedd67c 100755
--- a/setup.py
+++ b/setup.py
@@ -44,5 +44,8 @@
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
+ 'Programming Language :: Python :: 3.8',
+ 'Programming Language :: Python :: 3.9',
+ 'Programming Language :: Python :: 3.10',
]
)
diff --git a/tests/test_repofiles.py b/tests/test_repofiles.py
index de55605..5a4e4eb 100644
--- a/tests/test_repofiles.py
+++ b/tests/test_repofiles.py
@@ -11,7 +11,6 @@ class RepoFiles(unittest.TestCase):
['./CHANGELOG.md'],
['./CODE_OF_CONDUCT.md'],
['./CONTRIBUTING.md'],
- ['./ISSUE_TEMPLATE.md'],
['./LICENSE'],
['./PULL_REQUEST_TEMPLATE.md'],
['./README.rst'],
diff --git a/use_cases/README.md b/use_cases/README.md
deleted file mode 100644
index 787eddc..0000000
--- a/use_cases/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-This directory provides examples for specific use cases. Please [open an issue](https://github.com/sendgrid/python-http-client/issues) or make a pull request for any use cases you would like us to document here. Thank you!
-
-# Table of Contents