<commit_before>wheelhouse-uploader
===================

Upload/download wheels to/from cloud storage using libcloud. Helps package maintainers build wheels for their packages and upload them to PyPI. 

## Installation

~~~bash
pip install wheelhouse-uploader
~~~

## Usage

The canonical use case is:

1- Continuous Integration (CI) workers build and test the project packages for
   various platforms and versions of Python, for instance using the commands:
~~~bash
pip install wheel
python setup.py bdist_wheel
~~~
2- CI workers use `wheelhouse-uploader` to upload the generated artifacts
   to one or more cloud storage containers (e.g. one container per platform,
   or one for the master branch and the other for release tags).

3- The project maintainer uses the `wheelhouse-uploader` distutils extensions
   to fetch all the generated build artifacts for a specific version number to
   its local `dist` folder and upload them all at once to PyPI when
   making a release.


### Uploading artifact to a cloud storage container

Use the following command:

~~~bash
python -m wheelhouse_uploader upload \
    --username=mycloudaccountid --secret=xxx \
    --local-folder=dist/ my_wheelhouse
~~~

or:

~~~bash
export WHEELHOUSE_UPLOADER_USERNAME=mycloudaccountid
export WHEELHOUSE_UPLOADER_SECRET=xxx
python -m wheelhouse_uploader upload --local-folder dist/ my_wheelhouse
~~~<commit_msg>DOC Improve README.md<commit_after>wheelhouse-uploader
===================

Upload/download wheels to/from cloud storage using Apache Libcloud. Helps
package maintainers build wheels for their packages and upload them to PyPI.

The cloud storage containers are typically populated by Continuous Integration
servers that generate and test binary packages on various platforms (Windows
and OSX for several versions and architectures fir Python). At release time
the project maintainer can collect all the generated package for a specific
version of the project and upload them all at once to PyPI.


## Installation

~~~bash
pip install wheelhouse-uploader
~~~

## Usage

The canonical use case is:

1- Continuous Integration (CI) workers build and test the project packages for
   various platforms and versions of Python, for instance using the commands:
~~~bash
pip install wheel
python setup.py bdist_wheel
~~~
2- CI workers use `wheelhouse-uploader` to upload the generated artifacts
   to one or more cloud storage containers (e.g. one container per platform,
   or one for the master branch and the other for release tags):
~~~bash
python -m wheelhouse_uploader upload container_name
~~~

3- The project maintainer uses the `wheelhouse-uploader` distutils extensions
   to fetch all the generated build artifacts for a specific version number to
   its local `dist` folder and upload them all at once to PyPI when
   making a release.
~~~bash
python setup.py sdist fetch_artifacts upload_all
~~~


### Uploading artifact to a cloud storage container

Use the following command:

~~~bash
python -m wheelhouse_uploader upload \
    --username=mycloudaccountid --secret=xxx \
    --local-folder=dist/ my_wheelhouse
~~~

or:

~~~bash
export WHEELHOUSE_UPLOADER_USERNAME=mycloudaccountid
export WHEELHOUSE_UPLOADER_SECRET=xxx
python -m wheelhouse_uploader upload --local-folder dist/ my_wheelhouse
~~~
{'fraction_non_alphanumeric': 0.07014880048587914, 'fraction_numerical': 0.0018220467658669906, 'mean_word_length': 4.71875, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '37116', 'n_tokens_mistral': 906, 'n_tokens_neox': 856, 'n_words': 406}