Skip to content

Commit

Permalink
Merge pull request #6 from rafa-be/rename-to-parfun
Browse files Browse the repository at this point in the history
Renames Parafun to Parfun.
  • Loading branch information
sharpener6 authored Aug 18, 2024
2 parents 406661c + 76baa4e commit 4f21ffc
Show file tree
Hide file tree
Showing 133 changed files with 273 additions and 4,581 deletions.
19 changes: 19 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
__pychace__/
*.py[cod]
*$py.class

build/
dist/
eggs/
.eggs/
.idea/
sdist/
wheels/
*.egg-info/
*.egg
venv/

.vscode/

dask-worker-space/*
.pre-commit-config.yaml
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
We welcome contributions to the Parafun library.
We welcome contributions to the Parfun library.


## Helpful Resources
Expand All @@ -7,9 +7,9 @@ We welcome contributions to the Parafun library.

* Documentation: [./docs](./docs) (see [README.md](./README.md) for building instructions)

* [Repository](https://github.com/citi/parafun)
* [Repository](https://github.com/citi/parfun)

* [Issue tracking](https://github.com/citi/parafun/issues)
* [Issue tracking](https://github.com/citi/parfun/issues)


## Contributing Guide
Expand All @@ -36,7 +36,7 @@ The `isort`, `black` and `flake8` packages can be installed through Python's PIP
### Bump version number

Before pushing your pull request, please update the version number of the library in the
[about.py](./parafun/about.py) file.
[about.py](./parfun/about.py) file.

Update the minor version number if your changes are backward-compatible, otherwise update the major version number:

Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,4 @@ _doc: requirements.txt
pip install -r docs/requirements_docs.txt; \
pip install -r requirements.txt; \
cd docs; make clean && make html
zip -r build/parafun_docs.zip docs/build/html/*
zip -r build/parfun_docs.zip docs/build/html/*
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,34 +3,34 @@
<img src="https://github.com/citi.png" alt="Citi" width="80" height="80">
</a>

<h3 align="center">Citi/parafun</h3>
<h3 align="center">Citi/parfun</h3>

<p align="center">
Lightweight parallelisation library for Python.
</p>

<p align="center">
<a href="./LICENSE">
<img src="https://img.shields.io/github/license/citi/parafun?label=license&colorA=0f1632&colorB=255be3">
<img src="https://img.shields.io/github/license/citi/parfun?label=license&colorA=0f1632&colorB=255be3">
</a>
</p>
</div>

<br />

Parafun is a lightweight library providing helpers to **make it easy to write and run a Python function in parallel
Parfun is a lightweight library providing helpers to **make it easy to write and run a Python function in parallel
and distributed systems**.

The main feature of the library is its `@parafun` decorator that transparently executes standard Python functions
The main feature of the library is its `@parfun` decorator that transparently executes standard Python functions
following the [map-reduce](https://en.wikipedia.org/wiki/MapReduce) pattern:

```Python
from parafun import parafun
from parafun.combine.collection import list_concat
from parafun.partition.api import per_argument
from parafun.partition.collection import list_by_chunk
from parfun import parfun
from parfun.combine.collection import list_concat
from parfun.partition.api import per_argument
from parfun.partition.collection import list_by_chunk

@parafun(
@parfun(
split=per_argument(
values=list_by_chunk
),
Expand Down Expand Up @@ -74,8 +74,8 @@ Your contributions are at the core of making this a true open source project. An
We welcome you to:

- Fix typos or touch up documentation
- Share your opinions on [existing issues](https://github.com/citi/parafun/issues)
- Help expand and improve our library by [opening a new issue](https://github.com/citi/parafun/issues/new)
- Share your opinions on [existing issues](https://github.com/citi/parfun/issues)
- Help expand and improve our library by [opening a new issue](https://github.com/citi/parfun/issues/new)

Please review our [community contribution guidelines](https://github.com/Citi/.github/blob/main/CONTRIBUTING.md) and
[functional contribution guidelines](./CONTRIBUTING.md) to get started 👍.
Expand All @@ -95,5 +95,5 @@ This project is distributed under the [Apache-2.0 License](https://www.apache.or

## Contact

If you have a query or require support with this project, [raise an issue](https://github.com/Citi/parafun/issues).
If you have a query or require support with this project, [raise an issue](https://github.com/Citi/parfun/issues).
Otherwise, reach out to [[email protected]](mailto:[email protected]).
10 changes: 5 additions & 5 deletions docs/source/api/backend.rst
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
Backend
=======

.. automodule:: parafun.backend.mixins
.. automodule:: parfun.backend.mixins
:members:

.. automodule:: parafun.backend.local_single_process
.. automodule:: parfun.backend.local_single_process
:members:

.. automodule:: parafun.backend.local_multiprocessing
.. automodule:: parfun.backend.local_multiprocessing
:members:

.. automodule:: parafun.backend.dask
.. automodule:: parfun.backend.dask
:members:

.. automodule:: parafun.backend.scaler
.. automodule:: parfun.backend.scaler
:members:
6 changes: 3 additions & 3 deletions docs/source/api/combine.rst
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
Combining functions
===================

.. automodule:: parafun.combine
.. automodule:: parfun.combine


Collections
-----------

.. automodule:: parafun.combine.collection
.. automodule:: parfun.combine.collection
:members:


Dataframes
----------

.. automodule:: parafun.combine.dataframe
.. automodule:: parfun.combine.dataframe
:members:
2 changes: 1 addition & 1 deletion docs/source/api/entry_point.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Entry Point
===========

.. automodule:: parafun.entry_point
.. automodule:: parfun.entry_point
:members:
2 changes: 1 addition & 1 deletion docs/source/api/functions.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Utility functions
=================

.. automodule:: parafun.functions
.. automodule:: parfun.functions
:members:
2 changes: 1 addition & 1 deletion docs/source/api/index.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
API
===

.. automodule:: parafun
.. automodule:: parfun
:members:

.. toctree::
Expand Down
12 changes: 6 additions & 6 deletions docs/source/api/partition.rst
Original file line number Diff line number Diff line change
@@ -1,36 +1,36 @@
Partitioning functions
======================

.. automodule:: parafun.partition
.. automodule:: parfun.partition


Interface
---------

.. automodule:: parafun.partition.object
.. automodule:: parfun.partition.object
:members:


.. automodule:: parafun.partition.api
.. automodule:: parfun.partition.api
:members:


Collections
-----------

.. automodule:: parafun.partition.collection
.. automodule:: parfun.partition.collection
:members:


Dataframes
----------

.. automodule:: parafun.partition.dataframe
.. automodule:: parfun.partition.dataframe
:members:


Utilities
---------

.. automodule:: parafun.partition.utility
.. automodule:: parfun.partition.utility
:members:
4 changes: 2 additions & 2 deletions docs/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@

# -- Project information -----------------------------------------------------

project = "Parafun"
project = "Parfun"
author = "Citi"


version = __import__("parafun").__version__
version = __import__("parfun").__version__
release = f"{version}-py3-none-any"

rst_prolog = f"""
Expand Down
6 changes: 3 additions & 3 deletions docs/source/index.rst
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
Welcome to Parafun's documentation!
Welcome to Parfun's documentation!
================================================

**Parafun** is a lightweight and user-friendly Python library to assist users in running a pure Python function i
**Parfun** is a lightweight and user-friendly Python library to assist users in running a pure Python function i
parallel on multiple core and distributed systems.

Users, who do not have any deep knowledge about parallelism and distributed computing systems, can benefit from
significant speedups when running Python code.

Parafun supports multiple execution backend, including Python's multiprocessing, Dask or Scaler.
Parfun supports multiple execution backend, including Python's multiprocessing, Dask or Scaler.


Content
Expand Down
4 changes: 2 additions & 2 deletions docs/source/tutorials/implementation_details.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Implementation details

.. note::

This section provides additional design insights on how we designed the Parafun library. **Most users should not be
This section provides additional design insights on how we designed the Parfun library. **Most users should not be
required to go through this section in detail**.


Expand All @@ -19,7 +19,7 @@ Implementation
--------------

Our distributed system **relies on either a local or a distributed worker pool to manage and execute tasks** on multiple
machines (see the :py:class:`~parafun.backend.mixins.BackendEngine` interface).
machines (see the :py:class:`~parfun.backend.mixins.BackendEngine` interface).

**This parallel engine is responsible of queuing and executing the partitioned tasks**. The library relies on
**heuristics to determine the ideal partition size** based on feedback from the previously executed tasks.
Expand Down
Loading

0 comments on commit 4f21ffc

Please sign in to comment.