Skip to content

Commit

Permalink
Merge pull request #219 from capitalone/develop
Browse files Browse the repository at this point in the history
Release v0.5.3
  • Loading branch information
Faisal committed Jul 19, 2023
2 parents 9c5ba9b + c00383f commit 0ab5ab6
Show file tree
Hide file tree
Showing 9 changed files with 135 additions and 113 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/edgetest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,6 @@ jobs:
- id: run-edgetest
uses: fdosani/[email protected]
with:
edgetest-flags: '-c setup.cfg -r requirements.txt --export'
edgetest-flags: '-c pyproject.toml --export'
base-branch: 'develop'
skip-pr: 'false'
2 changes: 1 addition & 1 deletion .github/workflows/python-package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.8, 3.9, '3.10']
python-version: [3.8, 3.9, '3.10', '3.11']

steps:
- uses: actions/checkout@v2
Expand Down
2 changes: 1 addition & 1 deletion CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1 +1 @@
* @fdosani @elzzhu @ak-gupta
* @fdosani @NikhilJArora @ak-gupta
12 changes: 5 additions & 7 deletions docs/source/developer.rst
Original file line number Diff line number Diff line change
Expand Up @@ -91,25 +91,24 @@ knowing what they're doing. Caveat emptor!
Management of Requirements
--------------------------

Requirements of the project should be added to ``requirements.txt``. Optional requirements used only for testing,
documentation, or code quality are added to ``setup.py`` and ``EXTRAS_REQUIRE``
Requirements of the project should be added to ``dependencies`` within our ``pyproject.toml``. Optional requirements used only for testing,
documentation, or code quality are added to the ``project.optional-dependencies`` of our ``pyproject.toml``.

edgetest
--------

edgetest is a utility to help keep requirements up to date and ensure a subset of testing requirements still work.
More on edgetest `here <https://github.com/capitalone/edgetest>`_.

The ``setup.cfg`` has configuration details on how to run edgetest. This process can be automated via GitHub Actions.
(A future addition, which will come soon).
The ``pyproject.toml`` has configuration details on how to run edgetest. This process can be automated via GitHub Actions.

In order to execute edgetest locally you can run the following after install ``edgetest``:

.. code-block:: bash
edgetest -c setup.cfg -r requirements.txt --export
edgetest -c pyproject.toml --export
This should return output like the following and also updating ``requirements.txt``:
This should return output like the following and also update our ``dependencies`` within the ``pyproject.toml``:

.. code-block:: bash
Expand All @@ -120,7 +119,6 @@ This should return output like the following and also updating ``requirements.tx
core True pandas 1.3.5
core True PyYAML 6.0
============= =============== =================== =================
No PEP-517 style requirements in setup.cfg to update. Updating requirements.txt
Release Guide
Expand Down
2 changes: 1 addition & 1 deletion locopy/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.

__version__ = "0.5.2"
__version__ = "0.5.3"
88 changes: 88 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
[project]
name = "locopy"
description = "Loading/Unloading to Amazon Redshift using Python"
readme = "README.rst"
authors = [
{ name="Faisal Dosani", email="[email protected]" },
]
license = {text = "Apache Software License"}
dependencies = [
"boto3<=1.28.3,>=1.9.92",
"PyYAML<=6.0,>=5.1",
"pandas<=2.0.3,>=0.25.2",
"numpy<=1.25.1,>=1.22.0",
]

requires-python = ">=3.8.0"
classifiers = [
"Intended Audience :: Developers",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
]

dynamic = ["version"]

[project.urls]
Homepage = "https://github.com/capitalone/locopy"
Documentation = "https://capitalone.github.io/locopy/"

[tool.setuptools]
packages = ["locopy"]
zip-safe = false

[tool.setuptools.dynamic]
version = {attr = "locopy._version.__version__"}

[project.optional-dependencies]
psycopg2 = ["psycopg2-binary>=2.7.7"]
pg8000 = ["pg8000>=1.13.1"]
snowflake = ["snowflake-connector-python[pandas]>=2.1.2"]
docs = ["sphinx", "sphinx_rtd_theme"]
tests = [
"hypothesis",
"pytest",
"pytest-cov",
]
qa = [
"pre-commit",
"black",
"isort",
]
build = ["build", "twine", "wheel"]
edgetest = ["edgetest", "edgetest-conda"]
dev = [
"locopy[tests]",
"locopy[docs]",
"locopy[qa]",
"locopy[build]",
]

[isort]
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
use_parentheses = true
line_length = 88

[edgetest.envs.core]
python_version = "3.9"
extras = [
"tests",
"psycopg2",
"pg8000",
"snowflake",
]
command = "pytest tests -m 'not integration'"
upgrade = [
"boto3",
"PyYAML",
"pandas",
"numpy",
]
42 changes: 38 additions & 4 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,38 @@
boto3<=1.26.159,>=1.9.92
PyYAML<=6.0,>=5.1
pandas<=2.0.2,>=0.25.2
numpy<=1.25.0,>=1.22.0
#
# This file is autogenerated by pip-compile with Python 3.9
# by the following command:
#
# pip-compile --output-file=requirements.txt pyproject.toml
#
boto3==1.28.0
# via locopy (pyproject.toml)
botocore==1.31.3
# via
# boto3
# s3transfer
jmespath==1.0.1
# via
# boto3
# botocore
numpy==1.25.0
# via
# locopy (pyproject.toml)
# pandas
pandas==2.0.3
# via locopy (pyproject.toml)
python-dateutil==2.8.2
# via
# botocore
# pandas
pytz==2023.3
# via pandas
pyyaml==6.0
# via locopy (pyproject.toml)
s3transfer==0.6.1
# via boto3
six==1.16.0
# via python-dateutil
tzdata==2023.3
# via pandas
urllib3==1.26.16
# via botocore
25 changes: 0 additions & 25 deletions setup.cfg

This file was deleted.

73 changes: 0 additions & 73 deletions setup.py

This file was deleted.

0 comments on commit 0ab5ab6

Please sign in to comment.