From b471c5c646cab99f03b5ddc88a4f3bd7f7f661bc Mon Sep 17 00:00:00 2001 From: jaidisido Date: Wed, 17 Aug 2022 11:26:56 +0100 Subject: [PATCH] bump2version pre-release 3.0.0a2 - Distribute read_parquet and delete_objects (#1524) --- .bumpversion.cfg | 2 +- CONTRIBUTING_COMMON_ERRORS.md | 6 +- README.md | 72 +++++++++---------- 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 | 6 +- docs/source/layers.rst | 2 +- docs/source/what.rst | 2 +- pyproject.toml | 2 +- test_infra/pyproject.toml | 2 +- tests/test_metadata.py | 2 +- tutorials/001 - Introduction.ipynb | 20 +++--- ...ySQL, PostgreSQL, SQL Server, Oracle.ipynb | 24 +++---- tutorials/014 - Schema Evolution.ipynb | 6 +- tutorials/021 - Global Configurations.ipynb | 2 +- ...22 - Writing Partitions Concurrently.ipynb | 2 +- .../023 - Flexible Partitions Filter.ipynb | 2 +- 22 files changed, 100 insertions(+), 100 deletions(-) diff --git a/.bumpversion.cfg b/.bumpversion.cfg index df50d611c..2488e67db 100644 --- a/.bumpversion.cfg +++ b/.bumpversion.cfg @@ -1,5 +1,5 @@ [bumpversion] -current_version = 3.0.0a1 +current_version = 3.0.0a2 commit = False tag = False tag_name = {new_version} diff --git a/CONTRIBUTING_COMMON_ERRORS.md b/CONTRIBUTING_COMMON_ERRORS.md index 027fcc485..957e6cd19 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.0.0a1 - Uninstalling awswrangler-3.0.0a1: - Successfully uninstalled awswrangler-3.0.0a1 + Found existing installation: awswrangler 3.0.0a2 + Uninstalling awswrangler-3.0.0a2: + Successfully uninstalled awswrangler-3.0.0a2 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 3dfb0bc5d..bbce41c7c 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,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/release-3.0.0a1-brightgreen.svg)](https://pypi.org/project/awswrangler/) +[![Release](https://img.shields.io/badge/release-3.0.0a2-brightgreen.svg)](https://pypi.org/project/awswrangler/) [![Python Version](https://img.shields.io/badge/python-3.7%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) @@ -24,7 +24,7 @@ Easy integration with Athena, Glue, Redshift, Timestream, OpenSearch, Neptune, Q | **[PyPi](https://pypi.org/project/awswrangler/)** | [![PyPI Downloads](https://pepy.tech/badge/awswrangler)](https://pypi.org/project/awswrangler/) | `pip install awswrangler` | | **[Conda](https://anaconda.org/conda-forge/awswrangler)** | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/awswrangler.svg)](https://anaconda.org/conda-forge/awswrangler) | `conda install -c conda-forge awswrangler` | -> ⚠️ **For platforms without PyArrow 3 support (e.g. [EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#emr-cluster), [Glue PySpark Job](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-glue-pyspark-jobs), MWAA):**
+> ⚠️ **For platforms without PyArrow 3 support (e.g. [EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#emr-cluster), [Glue PySpark Job](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-glue-pyspark-jobs), MWAA):**
➡️ `pip install pyarrow==2 awswrangler` Powered By [](https://arrow.apache.org/powered_by/) @@ -43,7 +43,7 @@ Powered By [](http Installation command: `pip install awswrangler` -> ⚠️ **For platforms without PyArrow 3 support (e.g. [EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#emr-cluster), [Glue PySpark Job](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-glue-pyspark-jobs), MWAA):**
+> ⚠️ **For platforms without PyArrow 3 support (e.g. [EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#emr-cluster), [Glue PySpark Job](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-glue-pyspark-jobs), MWAA):**
➡️`pip install pyarrow==2 awswrangler` ```py3 @@ -97,17 +97,17 @@ FROM "sampleDB"."sampleTable" ORDER BY time DESC LIMIT 3 ## [Read The Docs](https://aws-data-wrangler.readthedocs.io/) -- [**What is AWS Data Wrangler?**](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/what.html) -- [**Install**](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html) - - [PyPi (pip)](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#pypi-pip) - - [Conda](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#conda) - - [AWS Lambda Layer](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-lambda-layer) - - [AWS Glue Python Shell Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-glue-python-shell-jobs) - - [AWS Glue PySpark Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-glue-pyspark-jobs) - - [Amazon SageMaker Notebook](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#amazon-sagemaker-notebook) - - [Amazon SageMaker Notebook Lifecycle](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#amazon-sagemaker-notebook-lifecycle) - - [EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#emr) - - [From source](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#from-source) +- [**What is AWS Data Wrangler?**](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/what.html) +- [**Install**](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html) + - [PyPi (pip)](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#pypi-pip) + - [Conda](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#conda) + - [AWS Lambda Layer](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-lambda-layer) + - [AWS Glue Python Shell Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-glue-python-shell-jobs) + - [AWS Glue PySpark Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-glue-pyspark-jobs) + - [Amazon SageMaker Notebook](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#amazon-sagemaker-notebook) + - [Amazon SageMaker Notebook Lifecycle](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#amazon-sagemaker-notebook-lifecycle) + - [EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#emr) + - [From source](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#from-source) - [**Tutorials**](https://github.com/awslabs/aws-data-wrangler/tree/main/tutorials) - [001 - Introduction](https://github.com/awslabs/aws-data-wrangler/blob/main/tutorials/001%20-%20Introduction.ipynb) - [002 - Sessions](https://github.com/awslabs/aws-data-wrangler/blob/main/tutorials/002%20-%20Sessions.ipynb) @@ -142,28 +142,28 @@ FROM "sampleDB"."sampleTable" ORDER BY time DESC LIMIT 3 - [031 - OpenSearch](https://github.com/awslabs/aws-data-wrangler/blob/main/tutorials/031%20-%20OpenSearch.ipynb) - [032 - Lake Formation Governed Tables](https://github.com/awslabs/aws-data-wrangler/blob/main/tutorials/032%20-%20Lake%20Formation%20Governed%20Tables.ipynb) - [033 - Amazon Neptune](https://github.com/awslabs/aws-data-wrangler/blob/main/tutorials/033%20-%20Amazon%20Neptune.ipynb) -- [**API Reference**](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html) - - [Amazon S3](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-s3) - - [AWS Glue Catalog](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#aws-glue-catalog) - - [Amazon Athena](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-athena) - - [AWS Lake Formation](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#aws-lake-formation) - - [Amazon Redshift](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-redshift) - - [PostgreSQL](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#postgresql) - - [MySQL](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#mysql) - - [SQL Server](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#sqlserver) - - [Data API Redshift](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#data-api-redshift) - - [Data API RDS](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#data-api-rds) - - [OpenSearch](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#opensearch) - - [Amazon Neptune](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-neptune) - - [DynamoDB](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#dynamodb) - - [Amazon Timestream](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-timestream) - - [Amazon EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-emr) - - [Amazon CloudWatch Logs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-cloudwatch-logs) - - [Amazon Chime](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-chime) - - [Amazon QuickSight](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#amazon-quicksight) - - [AWS STS](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#aws-sts) - - [AWS Secrets Manager](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#aws-secrets-manager) - - [Global Configurations](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html#global-configurations) +- [**API Reference**](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html) + - [Amazon S3](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-s3) + - [AWS Glue Catalog](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#aws-glue-catalog) + - [Amazon Athena](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-athena) + - [AWS Lake Formation](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#aws-lake-formation) + - [Amazon Redshift](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-redshift) + - [PostgreSQL](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#postgresql) + - [MySQL](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#mysql) + - [SQL Server](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#sqlserver) + - [Data API Redshift](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#data-api-redshift) + - [Data API RDS](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#data-api-rds) + - [OpenSearch](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#opensearch) + - [Amazon Neptune](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-neptune) + - [DynamoDB](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#dynamodb) + - [Amazon Timestream](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-timestream) + - [Amazon EMR](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-emr) + - [Amazon CloudWatch Logs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-cloudwatch-logs) + - [Amazon Chime](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-chime) + - [Amazon QuickSight](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#amazon-quicksight) + - [AWS STS](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#aws-sts) + - [AWS Secrets Manager](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#aws-secrets-manager) + - [Global Configurations](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html#global-configurations) - [**License**](https://github.com/awslabs/aws-data-wrangler/blob/main/LICENSE.txt) - [**Contributing**](https://github.com/awslabs/aws-data-wrangler/blob/main/CONTRIBUTING.md) - [**Legacy Docs** (pre-1.0.0)](https://aws-data-wrangler.readthedocs.io/en/0.3.3/) diff --git a/VERSION b/VERSION index 2a9454873..0ba16f1c9 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.0.0a1 \ No newline at end of file +3.0.0a2 \ No newline at end of file diff --git a/awswrangler/__metadata__.py b/awswrangler/__metadata__.py index b385a1fa8..def98366c 100644 --- a/awswrangler/__metadata__.py +++ b/awswrangler/__metadata__.py @@ -7,5 +7,5 @@ __title__: str = "awswrangler" __description__: str = "Pandas on AWS." -__version__: str = "3.0.0a1" +__version__: str = "3.0.0a2" __license__: str = "Apache License 2.0" diff --git a/awswrangler/athena/_read.py b/awswrangler/athena/_read.py index 32fd686f8..092b3965e 100644 --- a/awswrangler/athena/_read.py +++ b/awswrangler/athena/_read.py @@ -683,11 +683,11 @@ def read_sql_query( **Related tutorial:** - - `Amazon Athena `_ - - `Athena Cache `_ - - `Global Configurations `_ **There are three approaches available through ctas_approach and unload_approach parameters:** @@ -751,7 +751,7 @@ def read_sql_query( /athena.html#Athena.Client.get_query_execution>`_ . For a practical example check out the - `related tutorial `_! @@ -995,11 +995,11 @@ def read_sql_table( **Related tutorial:** - - `Amazon Athena `_ - - `Athena Cache `_ - - `Global Configurations `_ **There are two approaches to be defined through ctas_approach parameter:** @@ -1044,7 +1044,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 67b55c5d3..b3da6a97c 100644 --- a/awswrangler/s3/_read_parquet.py +++ b/awswrangler/s3/_read_parquet.py @@ -442,7 +442,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.0.0a1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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 @@ -641,7 +641,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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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 dc4357b16..9084b215d 100644 --- a/awswrangler/s3/_read_text.py +++ b/awswrangler/s3/_read_text.py @@ -247,7 +247,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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/tutorials/023%20-%20Flexible%20Partitions%20Filter.html pandas_kwargs : KEYWORD arguments forwarded to pandas.read_csv(). You can NOT pass `pandas_kwargs` explicit, just add valid Pandas arguments in the function call and Wrangler will accept it. @@ -395,7 +395,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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/tutorials/023%20-%20Flexible%20Partitions%20Filter.html pandas_kwargs: KEYWORD arguments forwarded to pandas.read_fwf(). You can NOT pass `pandas_kwargs` explicit, just add valid Pandas arguments in the function call and Wrangler will accept it. @@ -547,7 +547,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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/023%20-%20Flexible%20Partitions%20Filter.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/tutorials/023%20-%20Flexible%20Partitions%20Filter.html pandas_kwargs: KEYWORD arguments forwarded to pandas.read_json(). You can NOT pass `pandas_kwargs` explicit, just add valid Pandas arguments in the function call and Wrangler will accept it. diff --git a/awswrangler/s3/_write_parquet.py b/awswrangler/s3/_write_parquet.py index 8788d9300..998650965 100644 --- a/awswrangler/s3/_write_parquet.py +++ b/awswrangler/s3/_write_parquet.py @@ -297,18 +297,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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/004%20-%20Parquet%20Datasets.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/014%20-%20Schema%20Evolution.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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 a6d8c1138..c30425b1b 100644 --- a/awswrangler/s3/_write_text.py +++ b/awswrangler/s3/_write_text.py @@ -173,18 +173,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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/014%20-%20Schema%20Evolution.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/tutorials/014%20-%20Schema%20Evolution.html database : str, optional Glue/Athena catalog: Database name. table : str, optional @@ -746,18 +746,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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/022%20-%20Writing%20Partitions%20Concurrently.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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-data-wrangler.readthedocs.io/en/3.0.0a1/tutorials/014%20-%20Schema%20Evolution.html + https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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 7a917d2d5..0b6d10555 100644 --- a/docs/source/install.rst +++ b/docs/source/install.rst @@ -144,7 +144,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: ``cython==0.29.21,pg8000==1.21.0,pyarrow==2,pandas==1.3.0,awswrangler==3.0.0a1`` +* Value: ``cython==0.29.21,pg8000==1.21.0,pyarrow==2,pandas==1.3.0,awswrangler==3.0.0a2`` .. note:: Pyarrow 3 is not currently supported in Glue PySpark Jobs, which is why an installation of pyarrow 2 is required. @@ -163,7 +163,7 @@ 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.0.0a1/awswrangler-layer-3.0.0a1-py3.8.zip`` +For example: ``s3://aws-data-wrangler-public-artifacts/releases/3.0.0a2/awswrangler-layer-3.0.0a2-py3.8.zip`` Amazon SageMaker Notebook ------------------------- @@ -253,7 +253,7 @@ Despite not being a distributed library, AWS Data Wrangler could be used to comp sudo pip install pyarrow==2 awswrangler .. note:: Make sure to freeze the library version in the bootstrap for production - environments (e.g. awswrangler==3.0.0a1) + environments (e.g. awswrangler==3.0.0a2) .. note:: Pyarrow 3 is not currently supported in the default EMR image, which is why an installation of pyarrow 2 is required. diff --git a/docs/source/layers.rst b/docs/source/layers.rst index 45cb69fed..eff6bc184 100644 --- a/docs/source/layers.rst +++ b/docs/source/layers.rst @@ -2,7 +2,7 @@ AWS Lambda Managed Layers ========================== -Version 3.0.0a1 +Version 3.0.0a2 ^^^^^^^^^^^^^^^^^ +----------------+--------+-------+-----------------------------------------------------------------------------------+ diff --git a/docs/source/what.rst b/docs/source/what.rst index f668576fb..b8bde45d4 100644 --- a/docs/source/what.rst +++ b/docs/source/what.rst @@ -8,4 +8,4 @@ DynamoDB, EMR, SecretManager, PostgreSQL, MySQL, SQLServer and S3 (Parquet, CSV, Built on top of other open-source projects like `Pandas `_, `Apache Arrow `_ and `Boto3 `_, it offers abstracted functions to execute usual ETL tasks like load/unload data from **Data Lakes**, **Data Warehouses** and **Databases**. -Check our `tutorials `_ or the `list of functionalities `_. +Check our `tutorials `_ or the `list of functionalities `_. diff --git a/pyproject.toml b/pyproject.toml index b9c7a6c59..3c685925d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "awswrangler" -version = "3.0.0a1" +version = "3.0.0a2" 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 a7e6df15d..c091a2c38 100644 --- a/test_infra/pyproject.toml +++ b/test_infra/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "awswrangler - test infrastructure" -version = "3.0.0a1" +version = "3.0.0a2" description = "CDK test infrastructure for AWS" authors = ["Amazon Web Services"] license = "Apache License 2.0" diff --git a/tests/test_metadata.py b/tests/test_metadata.py index 5227087a3..7470e2f20 100644 --- a/tests/test_metadata.py +++ b/tests/test_metadata.py @@ -2,7 +2,7 @@ def test_metadata(): - assert wr.__version__ == "3.0.0a1" + assert wr.__version__ == "3.0.0a2" 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 b6afa3741..ae207ce96 100644 --- a/tutorials/001 - Introduction.ipynb +++ b/tutorials/001 - Introduction.ipynb @@ -19,7 +19,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-data-wrangler.readthedocs.io/en/3.0.0a1/api.html)." + "Check our [list of functionalities](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html)." ] }, { @@ -30,15 +30,15 @@ "\n", "Wrangler runs almost anywhere over Python 3.7, 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-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#pypi-pip)\n", - " - [Conda](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#conda)\n", - " - [AWS Lambda Layer](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-lambda-layer)\n", - " - [AWS Glue Python Shell Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-glue-python-shell-jobs)\n", - " - [AWS Glue PySpark Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#aws-glue-pyspark-jobs)\n", - " - [Amazon SageMaker Notebook](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#amazon-sagemaker-notebook)\n", - " - [Amazon SageMaker Notebook Lifecycle](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#amazon-sagemaker-notebook-lifecycle)\n", - " - [EMR Cluster](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#emr-cluster)\n", - " - [From source](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/install.html#from-source)\n", + " - [PyPi (pip)](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#pypi-pip)\n", + " - [Conda](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#conda)\n", + " - [AWS Lambda Layer](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-lambda-layer)\n", + " - [AWS Glue Python Shell Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-glue-python-shell-jobs)\n", + " - [AWS Glue PySpark Jobs](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#aws-glue-pyspark-jobs)\n", + " - [Amazon SageMaker Notebook](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#amazon-sagemaker-notebook)\n", + " - [Amazon SageMaker Notebook Lifecycle](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#amazon-sagemaker-notebook-lifecycle)\n", + " - [EMR Cluster](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/install.html#emr-cluster)\n", + " - [From source](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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 d1177a259..b33882892 100644 --- a/tutorials/007 - Redshift, MySQL, PostgreSQL, SQL Server, Oracle.ipynb +++ b/tutorials/007 - Redshift, MySQL, PostgreSQL, SQL Server, Oracle.ipynb @@ -10,14 +10,14 @@ "\n", "[Wrangler](https://github.com/awslabs/aws-data-wrangler)'s Redshift, MySQL and PostgreSQL have two basic function in common that tries to follow the Pandas conventions, but add more data type consistency.\n", "\n", - "- [wr.redshift.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.redshift.to_sql.html)\n", - "- [wr.redshift.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.redshift.read_sql_query.html)\n", - "- [wr.mysql.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.mysql.to_sql.html)\n", - "- [wr.mysql.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.mysql.read_sql_query.html)\n", - "- [wr.postgresql.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.postgresql.to_sql.html)\n", - "- [wr.postgresql.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.postgresql.read_sql_query.html)\n", - "- [wr.sqlserver.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.sqlserver.to_sql.html)\n", - "- [wr.sqlserver.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.sqlserver.read_sql_query.html)" + "- [wr.redshift.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.redshift.to_sql.html)\n", + "- [wr.redshift.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.redshift.read_sql_query.html)\n", + "- [wr.mysql.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.mysql.to_sql.html)\n", + "- [wr.mysql.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.mysql.read_sql_query.html)\n", + "- [wr.postgresql.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.postgresql.to_sql.html)\n", + "- [wr.postgresql.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.postgresql.read_sql_query.html)\n", + "- [wr.sqlserver.to_sql()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.sqlserver.to_sql.html)\n", + "- [wr.sqlserver.read_sql_query()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.sqlserver.read_sql_query.html)" ] }, { @@ -41,10 +41,10 @@ "source": [ "## Connect using the Glue Catalog Connections\n", "\n", - "- [wr.redshift.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.redshift.connect.html)\n", - "- [wr.mysql.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.mysql.connect.html)\n", - "- [wr.postgresql.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.postgresql.connect.html)\n", - "- [wr.sqlserver.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.sqlserver.connect.html)" + "- [wr.redshift.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.redshift.connect.html)\n", + "- [wr.mysql.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.mysql.connect.html)\n", + "- [wr.postgresql.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.postgresql.connect.html)\n", + "- [wr.sqlserver.connect()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.sqlserver.connect.html)" ] }, { diff --git a/tutorials/014 - Schema Evolution.ipynb b/tutorials/014 - Schema Evolution.ipynb index 250137901..f4819a5f0 100644 --- a/tutorials/014 - Schema Evolution.ipynb +++ b/tutorials/014 - Schema Evolution.ipynb @@ -10,9 +10,9 @@ "\n", "Wrangler support new **columns** on Parquet and CSV datasets through:\n", "\n", - "- [wr.s3.to_parquet()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet)\n", - "- [wr.s3.store_parquet_metadata()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.s3.store_parquet_metadata.html#awswrangler.s3.store_parquet_metadata) i.e. \"Crawler\"\n", - "- [wr.s3.to_csv()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/stubs/awswrangler.s3.to_csv.html#awswrangler.s3.to_csv)" + "- [wr.s3.to_parquet()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.s3.to_parquet.html#awswrangler.s3.to_parquet)\n", + "- [wr.s3.store_parquet_metadata()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/stubs/awswrangler.s3.store_parquet_metadata.html#awswrangler.s3.store_parquet_metadata) i.e. \"Crawler\"\n", + "- [wr.s3.to_csv()](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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 986c4ec46..fef1ff8dd 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-data-wrangler.readthedocs.io/en/3.0.0a1/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-data-wrangler.readthedocs.io/en/3.0.0a2/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 de4b40e46..16dd29dcb 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 the memory usage.\n", "\n", - "*P.S. Check the [function API doc](https://aws-data-wrangler.readthedocs.io/en/3.0.0a1/api.html) to see it has some argument that can be configured through Global configurations.*" + "*P.S. Check the [function API doc](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/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 6624401af..085a71061 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-data-wrangler.readthedocs.io/en/3.0.0a1/api.html) to see it has some argument that can be configured through Global configurations.*" + "*P.S. Check the [function API doc](https://aws-data-wrangler.readthedocs.io/en/3.0.0a2/api.html) to see it has some argument that can be configured through Global configurations.*" ] }, {