From 965d2d0bd04f12c327b3e546eca8eea3c5bbbaac Mon Sep 17 00:00:00 2001 From: Leon Luttenberger Date: Mon, 15 May 2023 19:05:25 -0500 Subject: [PATCH] chore: Prepare 3.1.1 (#2282) --- .bumpversion.cfg | 2 +- CONTRIBUTING_COMMON_ERRORS.md | 6 +- README.md | 84 +++++++++---------- VERSION | 2 +- awswrangler/__metadata__.py | 2 +- awswrangler/athena/_read.py | 16 ++-- awswrangler/s3/_read_parquet.py | 4 +- awswrangler/s3/_read_text.py | 6 +- awswrangler/s3/_write_parquet.py | 6 +- awswrangler/s3/_write_text.py | 12 +-- docs/source/install.rst | 10 ++- pyproject.toml | 2 +- test_infra/pyproject.toml | 2 +- tests/unit/test_metadata.py | 2 +- tutorials/001 - Introduction.ipynb | 20 ++--- ...ySQL, PostgreSQL, SQL Server, Oracle.ipynb | 30 +++---- tutorials/014 - Schema Evolution.ipynb | 6 +- tutorials/021 - Global Configurations.ipynb | 2 +- ...22 - Writing Partitions Concurrently.ipynb | 2 +- .../023 - Flexible Partitions Filter.ipynb | 2 +- 20 files changed, 110 insertions(+), 108 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index 5a96847a1..95a74c1e7 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.1.0 +current_version = 3.1.1 commit = False tag = False tag_name = {new_version} diff --git a/CONTRIBUTING_COMMON_ERRORS.md b/CONTRIBUTING_COMMON_ERRORS.md index 12866f14c..63453433c 100644 --- a/CONTRIBUTING_COMMON_ERRORS.md +++ b/CONTRIBUTING_COMMON_ERRORS.md @@ -13,9 +13,9 @@ Requirement already satisfied: pbr!=2.1.0,>=2.0.0 in ./.venv/lib/python3.7/site- Using legacy 'setup.py install' for python-Levenshtein, since package 'wheel' is not installed. Installing collected packages: awswrangler, python-Levenshtein Attempting uninstall: awswrangler - Found existing installation: awswrangler 3.1.0 - Uninstalling awswrangler-3.1.0: - Successfully uninstalled awswrangler-3.1.0 + Found existing installation: awswrangler 3.1.1 + Uninstalling awswrangler-3.1.1: + Successfully uninstalled awswrangler-3.1.1 Running setup.py develop for awswrangler Running setup.py install for python-Levenshtein ... error ERROR: Command errored out with exit status 1: diff --git a/README.md b/README.md index f1cac1183..769720ae9 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Easy integration with Athena, Glue, Redshift, Timestream, OpenSearch, Neptune, Q > An [AWS Professional Service](https://aws.amazon.com/professional-services/) open source initiative | aws-proserve-opensource@amazon.com -[![Release](https://img.shields.io/badge/3.1.0-brightgreen.svg)](https://pypi.org/project/awswrangler/) +[![Release](https://img.shields.io/badge/3.1.1-brightgreen.svg)](https://pypi.org/project/awswrangler/) [![Python Version](https://img.shields.io/badge/python-3.8%20%7C%203.8%20%7C%203.9%20%7C%203.10-brightgreen.svg)](https://anaconda.org/conda-forge/awswrangler) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) @@ -99,25 +99,25 @@ FROM "sampleDB"."sampleTable" ORDER BY time DESC LIMIT 3 ## At scale AWS SDK for pandas can also run your workflows at scale by leveraging [Modin](https://modin.readthedocs.io/en/stable/) and [Ray](https://www.ray.io/). Both projects aim to speed up data workloads by distributing processing over a cluster of workers. -The quickest way to get started is to use AWS Glue with Ray. Read our [docs](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/scale.html), our [blog](https://aws.amazon.com/blogs/big-data/scale-aws-sdk-for-pandas-workloads-with-aws-glue-for-ray/), or head to our latest [tutorials](https://github.com/aws/aws-sdk-pandas/tree/main/tutorials) to discover even more features. +The quickest way to get started is to use AWS Glue with Ray. Read our [docs](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/scale.html), our [blog](https://aws.amazon.com/blogs/big-data/scale-aws-sdk-for-pandas-workloads-with-aws-glue-for-ray/), or head to our latest [tutorials](https://github.com/aws/aws-sdk-pandas/tree/main/tutorials) to discover even more features. ## [Read The Docs](https://aws-sdk-pandas.readthedocs.io/) -- [**What is AWS SDK for pandas?**](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/about.html) -- [**Install**](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html) - - [PyPi (pip)](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#pypi-pip) - - [Conda](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#conda) - - [AWS Lambda Layer](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#aws-lambda-layer) - - [AWS Glue Python Shell Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#aws-glue-python-shell-jobs) - - [AWS Glue PySpark Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#aws-glue-pyspark-jobs) - - [Amazon SageMaker Notebook](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#amazon-sagemaker-notebook) - - [Amazon SageMaker Notebook Lifecycle](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#amazon-sagemaker-notebook-lifecycle) - - [EMR](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#emr) - - [From source](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#from-source) -- [**At scale**](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/scale.html) - - [Getting Started](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/scale.html#getting-started) - - [Supported APIs](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/scale.html#supported-apis) - - [Resources](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/scale.html#resources) +- [**What is AWS SDK for pandas?**](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/about.html) +- [**Install**](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html) + - [PyPi (pip)](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#pypi-pip) + - [Conda](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#conda) + - [AWS Lambda Layer](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#aws-lambda-layer) + - [AWS Glue Python Shell Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#aws-glue-python-shell-jobs) + - [AWS Glue PySpark Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#aws-glue-pyspark-jobs) + - [Amazon SageMaker Notebook](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#amazon-sagemaker-notebook) + - [Amazon SageMaker Notebook Lifecycle](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#amazon-sagemaker-notebook-lifecycle) + - [EMR](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#emr) + - [From source](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#from-source) +- [**At scale**](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/scale.html) + - [Getting Started](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/scale.html#getting-started) + - [Supported APIs](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/scale.html#supported-apis) + - [Resources](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/scale.html#resources) - [**Tutorials**](https://github.com/aws/aws-sdk-pandas/tree/main/tutorials) - [001 - Introduction](https://github.com/aws/aws-sdk-pandas/blob/main/tutorials/001%20-%20Introduction.ipynb) - [002 - Sessions](https://github.com/aws/aws-sdk-pandas/blob/main/tutorials/002%20-%20Sessions.ipynb) @@ -158,31 +158,31 @@ The quickest way to get started is to use AWS Glue with Ray. Read our [docs](htt - [037 - Glue Data Quality](https://github.com/aws/aws-sdk-pandas/blob/main/tutorials/037%20-%20Glue%20Data%20Quality.ipynb) - [038 - OpenSearch Serverless](https://github.com/aws/aws-sdk-pandas/blob/main/tutorials/038%20-%20OpenSearch%20Serverless.ipynb) - [039 - Athena Iceberg](https://github.com/aws/aws-sdk-pandas/blob/main/tutorials/039%20-%20Athena%20Iceberg.ipynb) -- [**API Reference**](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html) - - [Amazon S3](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-s3) - - [AWS Glue Catalog](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#aws-glue-catalog) - - [Amazon Athena](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-athena) - - [AWS Lake Formation](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#aws-lake-formation) - - [Amazon Redshift](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-redshift) - - [PostgreSQL](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#postgresql) - - [MySQL](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#mysql) - - [SQL Server](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#sqlserver) - - [Oracle](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#oracle) - - [Data API Redshift](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#data-api-redshift) - - [Data API RDS](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#data-api-rds) - - [OpenSearch](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#opensearch) - - [AWS Glue Data Quality](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#aws-glue-data-quality) - - [Amazon Neptune](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-neptune) - - [DynamoDB](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#dynamodb) - - [Amazon Timestream](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-timestream) - - [Amazon EMR](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-emr) - - [Amazon CloudWatch Logs](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-cloudwatch-logs) - - [Amazon Chime](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-chime) - - [Amazon QuickSight](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#amazon-quicksight) - - [AWS STS](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#aws-sts) - - [AWS Secrets Manager](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#aws-secrets-manager) - - [Global Configurations](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#global-configurations) - - [Distributed - Ray](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html#distributed-ray) +- [**API Reference**](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html) + - [Amazon S3](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-s3) + - [AWS Glue Catalog](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#aws-glue-catalog) + - [Amazon Athena](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-athena) + - [AWS Lake Formation](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#aws-lake-formation) + - [Amazon Redshift](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-redshift) + - [PostgreSQL](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#postgresql) + - [MySQL](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#mysql) + - [SQL Server](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#sqlserver) + - [Oracle](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#oracle) + - [Data API Redshift](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#data-api-redshift) + - [Data API RDS](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#data-api-rds) + - [OpenSearch](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#opensearch) + - [AWS Glue Data Quality](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#aws-glue-data-quality) + - [Amazon Neptune](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-neptune) + - [DynamoDB](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#dynamodb) + - [Amazon Timestream](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-timestream) + - [Amazon EMR](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-emr) + - [Amazon CloudWatch Logs](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-cloudwatch-logs) + - [Amazon Chime](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-chime) + - [Amazon QuickSight](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#amazon-quicksight) + - [AWS STS](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#aws-sts) + - [AWS Secrets Manager](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#aws-secrets-manager) + - [Global Configurations](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#global-configurations) + - [Distributed - Ray](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html#distributed-ray) - [**License**](https://github.com/aws/aws-sdk-pandas/blob/main/LICENSE.txt) - [**Contributing**](https://github.com/aws/aws-sdk-pandas/blob/main/CONTRIBUTING.md) diff --git a/VERSION b/VERSION index a0cd9f0cc..50e47c89c 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.1.0 \ No newline at end of file +3.1.1 \ No newline at end of file diff --git a/awswrangler/__metadata__.py b/awswrangler/__metadata__.py index 875087c76..895d1c523 100644 --- a/awswrangler/__metadata__.py +++ b/awswrangler/__metadata__.py @@ -7,5 +7,5 @@ __title__: str = "awswrangler" __description__: str = "Pandas on AWS." -__version__: str = "3.1.0" +__version__: str = "3.1.1" __license__: str = "Apache License 2.0" diff --git a/awswrangler/athena/_read.py b/awswrangler/athena/_read.py index 5e665c935..928b4b6ee 100644 --- a/awswrangler/athena/_read.py +++ b/awswrangler/athena/_read.py @@ -716,11 +716,11 @@ def read_sql_query( # pylint: disable=too-many-arguments,too-many-locals **Related tutorial:** - - `Amazon Athena `_ - - `Athena Cache `_ - - `Global Configurations `_ **There are three approaches available through ctas_approach and unload_approach parameters:** @@ -784,7 +784,7 @@ def read_sql_query( # pylint: disable=too-many-arguments,too-many-locals /athena.html#Athena.Client.get_query_execution>`_ . For a practical example check out the - `related tutorial `_! @@ -1029,11 +1029,11 @@ def read_sql_table( **Related tutorial:** - - `Amazon Athena `_ - - `Athena Cache `_ - - `Global Configurations `_ **There are three approaches available through ctas_approach and unload_approach parameters:** @@ -1097,7 +1097,7 @@ def read_sql_table( /athena.html#Athena.Client.get_query_execution>`_ . For a practical example check out the - `related tutorial `_! diff --git a/awswrangler/s3/_read_parquet.py b/awswrangler/s3/_read_parquet.py index acb0e6199..483abd3ee 100644 --- a/awswrangler/s3/_read_parquet.py +++ b/awswrangler/s3/_read_parquet.py @@ -429,7 +429,7 @@ def read_parquet( must return a bool, True to read the partition or False to ignore it. Ignored if `dataset=False`. E.g ``lambda x: True if x["year"] == "2020" and x["month"] == "1" else False`` - https://aws-data-wrangler.readthedocs.io/en/3.1.0/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-data-wrangler.readthedocs.io/en/3.1.1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html columns : List[str], optional List of columns to read from the file(s). validate_schema : bool, default False @@ -654,7 +654,7 @@ def read_parquet_table( must return a bool, True to read the partition or False to ignore it. Ignored if `dataset=False`. E.g ``lambda x: True if x["year"] == "2020" and x["month"] == "1" else False`` - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html columns : List[str], optional List of columns to read from the file(s). validate_schema : bool, default False diff --git a/awswrangler/s3/_read_text.py b/awswrangler/s3/_read_text.py index cf815dbdc..f72922c1b 100644 --- a/awswrangler/s3/_read_text.py +++ b/awswrangler/s3/_read_text.py @@ -225,7 +225,7 @@ def read_csv( This function MUST return a bool, True to read the partition or False to ignore it. Ignored if `dataset=False`. E.g ``lambda x: True if x["year"] == "2020" and x["month"] == "1" else False`` - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html ray_args: typing.RaySettings, optional Parameters of the Ray Modin settings. Only used when distributed computing is used with Ray and Modin installed. pandas_kwargs : @@ -381,7 +381,7 @@ def read_fwf( This function MUST return a bool, True to read the partition or False to ignore it. Ignored if `dataset=False`. E.g ``lambda x: True if x["year"] == "2020" and x["month"] == "1" else False`` - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html ray_args: typing.RaySettings, optional Parameters of the Ray Modin settings. Only used when distributed computing is used with Ray and Modin installed. pandas_kwargs: @@ -541,7 +541,7 @@ def read_json( This function MUST return a bool, True to read the partition or False to ignore it. Ignored if `dataset=False`. E.g ``lambda x: True if x["year"] == "2020" and x["month"] == "1" else False`` - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html ray_args: typing.RaySettings, optional Parameters of the Ray Modin settings. Only used when distributed computing is used with Ray and Modin installed. pandas_kwargs: diff --git a/awswrangler/s3/_write_parquet.py b/awswrangler/s3/_write_parquet.py index 53e197010..34ddf427e 100644 --- a/awswrangler/s3/_write_parquet.py +++ b/awswrangler/s3/_write_parquet.py @@ -322,18 +322,18 @@ def to_parquet( # pylint: disable=too-many-arguments,too-many-locals,too-many-b concurrent_partitioning: bool If True will increase the parallelism level during the partitions writing. It will decrease the writing time and increase the memory usage. - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html mode: str, optional ``append`` (Default), ``overwrite``, ``overwrite_partitions``. Only takes effect if dataset=True. For details check the related tutorial: - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/004%20-%20Parquet%20Datasets.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/004%20-%20Parquet%20Datasets.html catalog_versioning : bool If True and `mode="overwrite"`, creates an archived version of the table catalog before updating it. schema_evolution : bool If True allows schema evolution (new or missing columns), otherwise a exception will be raised. True by default. (Only considered if dataset=True and mode in ("append", "overwrite_partitions")) Related tutorial: - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/014%20-%20Schema%20Evolution.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/014%20-%20Schema%20Evolution.html database : str, optional Glue/Athena catalog: Database name. table : str, optional diff --git a/awswrangler/s3/_write_text.py b/awswrangler/s3/_write_text.py index 5c1fb8e9c..5eb6a11f0 100644 --- a/awswrangler/s3/_write_text.py +++ b/awswrangler/s3/_write_text.py @@ -169,18 +169,18 @@ def to_csv( # pylint: disable=too-many-arguments,too-many-locals,too-many-state concurrent_partitioning: bool If True will increase the parallelism level during the partitions writing. It will decrease the writing time and increase the memory usage. - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html mode : str, optional ``append`` (Default), ``overwrite``, ``overwrite_partitions``. Only takes effect if dataset=True. For details check the related tutorial: - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet catalog_versioning : bool If True and `mode="overwrite"`, creates an archived version of the table catalog before updating it. schema_evolution : bool If True allows schema evolution (new or missing columns), otherwise a exception will be raised. (Only considered if dataset=True and mode in ("append", "overwrite_partitions")). False by default. Related tutorial: - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/014%20-%20Schema%20Evolution.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/014%20-%20Schema%20Evolution.html database : str, optional Glue/Athena catalog: Database name. table : str, optional @@ -773,18 +773,18 @@ def to_json( # pylint: disable=too-many-arguments,too-many-locals,too-many-stat concurrent_partitioning: bool If True will increase the parallelism level during the partitions writing. It will decrease the writing time and increase the memory usage. - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html mode : str, optional ``append`` (Default), ``overwrite``, ``overwrite_partitions``. Only takes effect if dataset=True. For details check the related tutorial: - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet catalog_versioning : bool If True and `mode="overwrite"`, creates an archived version of the table catalog before updating it. schema_evolution : bool If True allows schema evolution (new or missing columns), otherwise a exception will be raised. (Only considered if dataset=True and mode in ("append", "overwrite_partitions")) Related tutorial: - https://aws-sdk-pandas.readthedocs.io/en/3.1.0/tutorials/014%20-%20Schema%20Evolution.html + https://aws-sdk-pandas.readthedocs.io/en/3.1.1/tutorials/014%20-%20Schema%20Evolution.html database : str, optional Glue/Athena catalog: Database name. table : str, optional diff --git a/docs/source/install.rst b/docs/source/install.rst index ceea56b66..d5e84f106 100644 --- a/docs/source/install.rst +++ b/docs/source/install.rst @@ -28,7 +28,7 @@ At scale AWS SDK for pandas can also run your workflows at scale by leveraging `modin `_ and `ray `_. - >>> pip install "awswrangler[modin,ray]==3.1.0" + >>> pip install "awswrangler[modin,ray]==3.1.1" As a result existing scripts can run on significantly larger datasets with no code rewrite. @@ -135,7 +135,7 @@ Here is an example of how to create and use the AWS SDK for pandas Lambda layer "awssdkpandas-layer", location=sam.CfnApplication.ApplicationLocationProperty( application_id="arn:aws:serverlessrepo:us-east-1:336392948345:applications/aws-sdk-pandas-layer-py3-8", - semantic_version="3.1.0", # Get the latest version from https://serverlessrepo.aws.amazon.com/applications + semantic_version="3.0.0", # Get the latest version from https://serverlessrepo.aws.amazon.com/applications ), ) @@ -189,7 +189,7 @@ Go to your Glue PySpark job and create a new *Job parameters* key/value: To install a specific version, set the value for the above Job parameter as follows: -* Value: ``pyarrow==7,pandas==1.5.3,awswrangler==3.1.0`` +* Value: ``pyarrow==7,pandas==1.5.3,awswrangler==3.1.1`` `Official Glue PySpark Reference `_ @@ -206,7 +206,9 @@ Lambda zipped layers and Python wheels are stored in a publicly accessible S3 bu * Python wheel: ``awswrangler--py3-none-any.whl`` -For example: ``s3://aws-data-wrangler-public-artifacts/releases/3.1.0/awswrangler-layer-3.1.0-py3.8.zip`` +For example: ``s3://aws-data-wrangler-public-artifacts/releases/3.0.0/awswrangler-layer-3.0.0-py3.8.zip`` + +You can check the bucket to find the latest version. Amazon SageMaker Notebook ------------------------- diff --git a/pyproject.toml b/pyproject.toml index 9e17198ba..7a55beb28 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "awswrangler" -version = "3.1.0" +version = "3.1.1" description = "Pandas on AWS." authors = ["Amazon Web Services"] license = "Apache License 2.0" diff --git a/test_infra/pyproject.toml b/test_infra/pyproject.toml index 5bc4b9c6b..23ead0308 100644 --- a/test_infra/pyproject.toml +++ b/test_infra/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "awswrangler - test infrastructure" -version = "3.1.0" +version = "3.1.1" description = "CDK test infrastructure for AWS SDK for pandas" authors = ["Amazon Web Services"] license = "Apache License 2.0" diff --git a/tests/unit/test_metadata.py b/tests/unit/test_metadata.py index 074cafe11..4eda81f00 100644 --- a/tests/unit/test_metadata.py +++ b/tests/unit/test_metadata.py @@ -2,7 +2,7 @@ def test_metadata(): - assert wr.__version__ == "3.1.0" + assert wr.__version__ == "3.1.1" assert wr.__title__ == "awswrangler" assert wr.__description__ == "Pandas on AWS." assert wr.__license__ == "Apache License 2.0" diff --git a/tutorials/001 - Introduction.ipynb b/tutorials/001 - Introduction.ipynb index 4817bfe2d..f02f356b9 100644 --- a/tutorials/001 - Introduction.ipynb +++ b/tutorials/001 - Introduction.ipynb @@ -20,7 +20,7 @@ "\n", "Built on top of other open-source projects like [Pandas](https://github.com/pandas-dev/pandas), [Apache Arrow](https://github.com/apache/arrow) and [Boto3](https://github.com/boto/boto3), it offers abstracted functions to execute usual ETL tasks like load/unload data from **Data Lakes**, **Data Warehouses** and **Databases**.\n", "\n", - "Check our [list of functionalities](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html)." + "Check our [list of functionalities](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html)." ] }, { @@ -32,15 +32,15 @@ "\n", "awswrangler runs almost anywhere over Python 3.8, 3.9 and 3.10, so there are several different ways to install it in the desired environment.\n", "\n", - " - [PyPi (pip)](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#pypi-pip)\n", - " - [Conda](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#conda)\n", - " - [AWS Lambda Layer](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#aws-lambda-layer)\n", - " - [AWS Glue Python Shell Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#aws-glue-python-shell-jobs)\n", - " - [AWS Glue PySpark Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#aws-glue-pyspark-jobs)\n", - " - [Amazon SageMaker Notebook](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#amazon-sagemaker-notebook)\n", - " - [Amazon SageMaker Notebook Lifecycle](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#amazon-sagemaker-notebook-lifecycle)\n", - " - [EMR Cluster](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#emr-cluster)\n", - " - [From source](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/install.html#from-source)\n", + " - [PyPi (pip)](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#pypi-pip)\n", + " - [Conda](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#conda)\n", + " - [AWS Lambda Layer](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#aws-lambda-layer)\n", + " - [AWS Glue Python Shell Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#aws-glue-python-shell-jobs)\n", + " - [AWS Glue PySpark Jobs](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#aws-glue-pyspark-jobs)\n", + " - [Amazon SageMaker Notebook](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#amazon-sagemaker-notebook)\n", + " - [Amazon SageMaker Notebook Lifecycle](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#amazon-sagemaker-notebook-lifecycle)\n", + " - [EMR Cluster](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#emr-cluster)\n", + " - [From source](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/install.html#from-source)\n", "\n", "Some good practices for most of the above methods are:\n", " - Use new and individual Virtual Environments for each project ([venv](https://docs.python.org/3/library/venv.html))\n", diff --git a/tutorials/007 - Redshift, MySQL, PostgreSQL, SQL Server, Oracle.ipynb b/tutorials/007 - Redshift, MySQL, PostgreSQL, SQL Server, Oracle.ipynb index 37421d2a3..35aaf7c02 100644 --- a/tutorials/007 - Redshift, MySQL, PostgreSQL, SQL Server, Oracle.ipynb +++ b/tutorials/007 - Redshift, MySQL, PostgreSQL, SQL Server, Oracle.ipynb @@ -10,16 +10,16 @@ "\n", "[awswrangler](https://github.com/aws/aws-sdk-pandas)'s Redshift, MySQL and PostgreSQL have two basic functions in common that try to follow Pandas conventions, but add more data type consistency.\n", "\n", - "- [wr.redshift.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.redshift.to_sql.html)\n", - "- [wr.redshift.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.redshift.read_sql_query.html)\n", - "- [wr.mysql.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.mysql.to_sql.html)\n", - "- [wr.mysql.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.mysql.read_sql_query.html)\n", - "- [wr.postgresql.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.postgresql.to_sql.html)\n", - "- [wr.postgresql.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.postgresql.read_sql_query.html)\n", - "- [wr.sqlserver.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.sqlserver.to_sql.html)\n", - "- [wr.sqlserver.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.sqlserver.read_sql_query.html)\n", - "- [wr.oracle.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.oracle.to_sql.html)\n", - "- [wr.oracle.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.oracle.read_sql_query.html)" + "- [wr.redshift.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.redshift.to_sql.html)\n", + "- [wr.redshift.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.redshift.read_sql_query.html)\n", + "- [wr.mysql.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.mysql.to_sql.html)\n", + "- [wr.mysql.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.mysql.read_sql_query.html)\n", + "- [wr.postgresql.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.postgresql.to_sql.html)\n", + "- [wr.postgresql.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.postgresql.read_sql_query.html)\n", + "- [wr.sqlserver.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.sqlserver.to_sql.html)\n", + "- [wr.sqlserver.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.sqlserver.read_sql_query.html)\n", + "- [wr.oracle.to_sql()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.oracle.to_sql.html)\n", + "- [wr.oracle.read_sql_query()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.oracle.read_sql_query.html)" ] }, { @@ -53,11 +53,11 @@ "source": [ "## Connect using the Glue Catalog Connections\n", "\n", - "- [wr.redshift.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.redshift.connect.html)\n", - "- [wr.mysql.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.mysql.connect.html)\n", - "- [wr.postgresql.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.postgresql.connect.html)\n", - "- [wr.sqlserver.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.sqlserver.connect.html)\n", - "- [wr.oracle.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.oracle.connect.html)" + "- [wr.redshift.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.redshift.connect.html)\n", + "- [wr.mysql.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.mysql.connect.html)\n", + "- [wr.postgresql.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.postgresql.connect.html)\n", + "- [wr.sqlserver.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.sqlserver.connect.html)\n", + "- [wr.oracle.connect()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.oracle.connect.html)" ] }, { diff --git a/tutorials/014 - Schema Evolution.ipynb b/tutorials/014 - Schema Evolution.ipynb index 2405a3938..0a3bb717d 100644 --- a/tutorials/014 - Schema Evolution.ipynb +++ b/tutorials/014 - Schema Evolution.ipynb @@ -10,9 +10,9 @@ "\n", "awswrangler supports new **columns** on Parquet and CSV datasets through:\n", "\n", - "- [wr.s3.to_parquet()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet)\n", - "- [wr.s3.store_parquet_metadata()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.s3.store_parquet_metadata.html#awswrangler.s3.store_parquet_metadata) i.e. \"Crawler\"\n", - "- [wr.s3.to_csv()](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/stubs/awswrangler.s3.to_csv.html#awswrangler.s3.to_csv)" + "- [wr.s3.to_parquet()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet)\n", + "- [wr.s3.store_parquet_metadata()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.s3.store_parquet_metadata.html#awswrangler.s3.store_parquet_metadata) i.e. \"Crawler\"\n", + "- [wr.s3.to_csv()](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/stubs/awswrangler.s3.to_csv.html#awswrangler.s3.to_csv)" ] }, { diff --git a/tutorials/021 - Global Configurations.ipynb b/tutorials/021 - Global Configurations.ipynb index 94ce753ad..d2c6ef099 100644 --- a/tutorials/021 - Global Configurations.ipynb +++ b/tutorials/021 - Global Configurations.ipynb @@ -13,7 +13,7 @@ "- **Environment variables**\n", "- **wr.config**\n", "\n", - "*P.S. Check the [function API doc](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html) to see if your function has some argument that can be configured through Global configurations.*\n", + "*P.S. Check the [function API doc](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html) to see if your function has some argument that can be configured through Global configurations.*\n", "\n", "*P.P.S. One exception to the above mentioned rules is the `botocore_config` property. It cannot be set through environment variables\n", "but only via `wr.config`. It will be used as the `botocore.config.Config` for all underlying `boto3` calls.\n", diff --git a/tutorials/022 - Writing Partitions Concurrently.ipynb b/tutorials/022 - Writing Partitions Concurrently.ipynb index 2341f6519..dc1c7946d 100644 --- a/tutorials/022 - Writing Partitions Concurrently.ipynb +++ b/tutorials/022 - Writing Partitions Concurrently.ipynb @@ -13,7 +13,7 @@ " If True will increase the parallelism level during the partitions writing. It will decrease the\n", " writing time and increase memory usage.\n", "\n", - "*P.S. Check the [function API doc](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html) to see it has some argument that can be configured through Global configurations.*" + "*P.S. Check the [function API doc](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html) to see it has some argument that can be configured through Global configurations.*" ] }, { diff --git a/tutorials/023 - Flexible Partitions Filter.ipynb b/tutorials/023 - Flexible Partitions Filter.ipynb index eeee0b8df..ad1aa23ec 100644 --- a/tutorials/023 - Flexible Partitions Filter.ipynb +++ b/tutorials/023 - Flexible Partitions Filter.ipynb @@ -16,7 +16,7 @@ " - Ignored if `dataset=False`.\n", " \n", "\n", - "*P.S. Check the [function API doc](https://aws-sdk-pandas.readthedocs.io/en/3.1.0/api.html) to see it has some argument that can be configured through Global configurations.*" + "*P.S. Check the [function API doc](https://aws-sdk-pandas.readthedocs.io/en/3.1.1/api.html) to see it has some argument that can be configured through Global configurations.*" ] }, {