Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: Python Tests

on:
push:
branches:
- '**'

jobs:
test:
uses: ./.github/workflows/test.yml
31 changes: 31 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Publish Python Package

on:
push:
tags:
- '**'

jobs:
test:
uses: ./.github/workflows/test.yml

publish:
needs: test
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v6

- name: Set up Python 3.10
uses: actions/setup-python@v6
with:
python-version: '3.10'

- name: Package
run: VERSION="${GITHUB_REF#refs/tags/}" make package

- name: Publish Package to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}
22 changes: 0 additions & 22 deletions .github/workflows/python-make-package.yml

This file was deleted.

29 changes: 0 additions & 29 deletions .github/workflows/python-publish.yml

This file was deleted.

23 changes: 23 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Test

on:
workflow_call:

jobs:
test:
runs-on: ubuntu-latest

strategy:
matrix:
python-version: ['3.10', '3.11', '3.12', '3.13']

steps:
- uses: actions/checkout@v6

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}

- name: Test
run: make test
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ No linting or type-checking tools are configured in this project.

## Architecture Overview

This is the official SmartyStreets Python SDK. It provides clients for 9 address validation/geocoding APIs.
This is the official SmartyStreets Python SDK. It provides clients for 9 address validation/geocoding APIs. It is compatible with Python 3.10 and later.

### HTTP Pipeline Architecture

Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ test: clean dependencies
dependencies:
python3 -m pip install -r requirements.txt

package: test
package: clean
python3 -m pip install build \
&& echo "__version__=\"${VERSION}\"" >> "$(VERSION_FILE)" \
&& python3 -m build
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# SmartyStreets Python SDK

The official client libraries for accessing SmartyStreets APIs from Python 2.7 and 3.5
The official client libraries for accessing SmartyStreets APIs from Python 3.10 and later.

You may have noticed this page is curiously sparse. Don't panic, there's [documentation](https://smartystreets.com/docs/sdk/python) and [examples](examples).

Expand Down