├── .devcontainer
└── devcontainer.json
├── .github
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ ├── compatibility.md
│ ├── deprecation.md
│ ├── feature_request.md
│ └── questions.md
└── workflows
│ ├── publish.yml
│ ├── test_all.yml
│ ├── test_core.yml
│ ├── test_dask.yml
│ ├── test_no_sql.yml
│ ├── test_notebook.yml
│ ├── test_ray.yml
│ ├── test_spark.yml
│ └── test_win.yml
├── .gitignore
├── .gitpod.yml
├── .pre-commit-config.yaml
├── .pylintrc
├── .readthedocs.yaml
├── CONTRIBUTING.md
├── LICENSE
├── Makefile
├── README.md
├── RELEASE.md
├── docs
├── Makefile
├── _static
│ ├── fugue_logo_trimmed.svg
│ ├── logo.svg
│ └── logo_doc.svg
├── _templates
│ ├── package.rst_t
│ └── toc.rst_t
├── api.rst
├── api
│ ├── fugue.bag.rst
│ ├── fugue.collections.rst
│ ├── fugue.column.rst
│ ├── fugue.dataframe.rst
│ ├── fugue.dataset.rst
│ ├── fugue.execution.rst
│ ├── fugue.extensions.creator.rst
│ ├── fugue.extensions.outputter.rst
│ ├── fugue.extensions.processor.rst
│ ├── fugue.extensions.rst
│ ├── fugue.extensions.transformer.rst
│ ├── fugue.rpc.rst
│ ├── fugue.rst
│ ├── fugue.sql.rst
│ └── fugue.workflow.rst
├── api_dask
│ └── fugue_dask.rst
├── api_duckdb
│ └── fugue_duckdb.rst
├── api_ibis
│ ├── fugue_ibis.execution.rst
│ └── fugue_ibis.rst
├── api_ray
│ └── fugue_ray.rst
├── api_spark
│ └── fugue_spark.rst
├── api_sql
│ └── fugue_sql.rst
├── conf.py
├── index.rst
├── make.bat
├── top_api.rst
└── tutorials.rst
├── fugue
├── __init__.py
├── _utils
│ ├── __init__.py
│ ├── display.py
│ ├── exception.py
│ ├── interfaceless.py
│ ├── io.py
│ ├── misc.py
│ └── registry.py
├── api.py
├── bag
│ ├── __init__.py
│ ├── array_bag.py
│ └── bag.py
├── collections
│ ├── __init__.py
│ ├── partition.py
│ ├── sql.py
│ └── yielded.py
├── column
│ ├── __init__.py
│ ├── expressions.py
│ ├── functions.py
│ └── sql.py
├── constants.py
├── dataframe
│ ├── __init__.py
│ ├── api.py
│ ├── array_dataframe.py
│ ├── arrow_dataframe.py
│ ├── dataframe.py
│ ├── dataframe_iterable_dataframe.py
│ ├── dataframes.py
│ ├── function_wrapper.py
│ ├── iterable_dataframe.py
│ ├── pandas_dataframe.py
│ └── utils.py
├── dataset
│ ├── __init__.py
│ ├── api.py
│ └── dataset.py
├── dev.py
├── exceptions.py
├── execution
│ ├── __init__.py
│ ├── api.py
│ ├── execution_engine.py
│ ├── factory.py
│ └── native_execution_engine.py
├── extensions
│ ├── __init__.py
│ ├── _builtins
│ │ ├── __init__.py
│ │ ├── creators.py
│ │ ├── outputters.py
│ │ └── processors.py
│ ├── _utils.py
│ ├── context.py
│ ├── creator
│ │ ├── __init__.py
│ │ ├── convert.py
│ │ └── creator.py
│ ├── outputter
│ │ ├── __init__.py
│ │ ├── convert.py
│ │ └── outputter.py
│ ├── processor
│ │ ├── __init__.py
│ │ ├── convert.py
│ │ └── processor.py
│ └── transformer
│ │ ├── __init__.py
│ │ ├── constants.py
│ │ ├── convert.py
│ │ └── transformer.py
├── plugins.py
├── py.typed
├── registry.py
├── rpc
│ ├── __init__.py
│ ├── base.py
│ └── flask.py
├── sql
│ ├── __init__.py
│ ├── _utils.py
│ ├── _visitors.py
│ ├── api.py
│ └── workflow.py
├── test
│ ├── __init__.py
│ ├── pandas_tester.py
│ └── plugins.py
└── workflow
│ ├── __init__.py
│ ├── _checkpoint.py
│ ├── _tasks.py
│ ├── _workflow_context.py
│ ├── api.py
│ ├── input.py
│ ├── module.py
│ └── workflow.py
├── fugue_contrib
├── __init__.py
├── contrib.py
├── seaborn
│ └── __init__.py
└── viz
│ ├── __init__.py
│ └── _ext.py
├── fugue_dask
├── __init__.py
├── _constants.py
├── _dask_sql_wrapper.py
├── _io.py
├── _utils.py
├── dataframe.py
├── execution_engine.py
├── registry.py
└── tester.py
├── fugue_duckdb
├── __init__.py
├── _io.py
├── _utils.py
├── dask.py
├── dataframe.py
├── execution_engine.py
├── registry.py
└── tester.py
├── fugue_ibis
├── __init__.py
├── _compat.py
├── _utils.py
├── dataframe.py
└── execution_engine.py
├── fugue_notebook
├── __init__.py
├── env.py
└── nbextension
│ ├── README.md
│ ├── __init__.py
│ ├── description.yaml
│ └── main.js
├── fugue_polars
├── __init__.py
├── _utils.py
├── polars_dataframe.py
└── registry.py
├── fugue_ray
├── __init__.py
├── _constants.py
├── _utils
│ ├── __init__.py
│ ├── cluster.py
│ ├── dataframe.py
│ └── io.py
├── dataframe.py
├── execution_engine.py
├── registry.py
└── tester.py
├── fugue_spark
├── __init__.py
├── _constants.py
├── _utils
│ ├── __init__.py
│ ├── convert.py
│ ├── io.py
│ ├── misc.py
│ └── partition.py
├── dataframe.py
├── execution_engine.py
├── registry.py
└── tester.py
├── fugue_sql
├── __init__.py
└── exceptions.py
├── fugue_test
├── __init__.py
├── bag_suite.py
├── builtin_suite.py
├── dataframe_suite.py
├── execution_suite.py
└── fixtures.py
├── fugue_version
└── __init__.py
├── images
├── architecture.png
├── extensions.png
└── logo.svg
├── requirements.txt
├── scripts
└── setupsparkconnect.sh
├── setup.cfg
├── setup.py
└── tests
├── __init__.py
├── fugue
├── __init__.py
├── bag
│ ├── __init__.py
│ └── test_array_bag.py
├── collections
│ ├── __init__.py
│ ├── test_partition.py
│ └── test_sql.py
├── column
│ ├── __init__.py
│ ├── test_expressions.py
│ ├── test_functions.py
│ └── test_sql.py
├── dataframe
│ ├── __init__.py
│ ├── test_array_dataframe.py
│ ├── test_arrow_dataframe.py
│ ├── test_dataframe.py
│ ├── test_dataframe_iterable_dataframe.py
│ ├── test_dataframes.py
│ ├── test_function_wrapper.py
│ ├── test_iterable_dataframe.py
│ ├── test_pandas_dataframe.py
│ └── test_utils.py
├── execution
│ ├── __init__.py
│ ├── test_api.py
│ ├── test_execution_engine.py
│ ├── test_factory.py
│ └── test_naive_execution_engine.py
├── extensions
│ ├── __init__.py
│ ├── creator
│ │ ├── __init__.py
│ │ └── test_convert.py
│ ├── outputter
│ │ ├── __init__.py
│ │ └── test_convert.py
│ ├── processor
│ │ ├── __init__.py
│ │ └── test_convert.py
│ ├── test_utils.py
│ └── transformer
│ │ ├── __init__.py
│ │ ├── test_convert_cotransformer.py
│ │ ├── test_convert_output_cotransformer.py
│ │ ├── test_convert_output_transformer.py
│ │ └── test_convert_transformer.py
├── rpc
│ ├── __init__.py
│ ├── test_base.py
│ ├── test_flask.py
│ └── test_func.py
├── sql
│ ├── __init__.py
│ ├── test_utils.py
│ ├── test_visitors.py
│ ├── test_workflow.py
│ └── test_workflow_parse.py
├── test
│ ├── __init__.py
│ └── test_plugins.py
├── test_interfaceless.py
├── utils
│ ├── __init__.py
│ ├── test_interfaceless.py
│ ├── test_io.py
│ └── test_misc.py
└── workflow
│ ├── __init__.py
│ ├── test_module.py
│ ├── test_runtime_exception.py
│ ├── test_workflow.py
│ ├── test_workflow_determinism.py
│ └── test_workflow_parallel.py
├── fugue_dask
├── __init__.py
├── test_dataframe.py
├── test_execution_engine.py
├── test_importless.py
├── test_io.py
├── test_sql.py
└── test_utils.py
├── fugue_duckdb
├── __init__.py
├── test_dask.py
├── test_dataframe.py
├── test_execution_engine.py
├── test_importless.py
└── test_utils.py
├── fugue_ibis
├── __init__.py
├── mock
│ ├── __init__.py
│ ├── dataframe.py
│ ├── execution_engine.py
│ ├── registry.py
│ └── tester.py
├── test_dataframe.py
├── test_execution_engine.py
└── test_utils.py
├── fugue_notebook
├── __init__.py
└── test_notebook.ipynb
├── fugue_polars
├── __init__.py
├── test_api.py
├── test_dataframe.py
└── test_transform.py
├── fugue_ray
├── __init__.py
├── test_dataframe.py
├── test_execution_engine.py
├── test_registry.py
└── test_utils.py
└── fugue_spark
├── __init__.py
├── test_dataframe.py
├── test_execution_engine.py
├── test_importless.py
├── test_spark_connect.py
├── test_sql.py
└── utils
├── __init__.py
├── test_convert.py
├── test_io.py
└── test_partition.py
/.devcontainer/devcontainer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Fugue Development Environment",
3 | "image": "mcr.microsoft.com/vscode/devcontainers/python:3.10",
4 | "customizations": {
5 | "vscode": {
6 | "settings": {
7 | "terminal.integrated.shell.linux": "/bin/bash",
8 | "python.pythonPath": "/usr/local/bin/python",
9 | "python.defaultInterpreterPath": "/usr/local/bin/python",
10 | "editor.defaultFormatter": "ms-python.black-formatter",
11 | "isort.interpreter": [
12 | "/usr/local/bin/python"
13 | ],
14 | "flake8.interpreter": [
15 | "/usr/local/bin/python"
16 | ],
17 | "pylint.interpreter": [
18 | "/usr/local/bin/python"
19 | ],
20 | "black-formatter.interpreter": [
21 | "/usr/local/bin/python"
22 | ]
23 | },
24 | "extensions": [
25 | "ms-python.python",
26 | "ms-python.isort",
27 | "ms-python.flake8",
28 | "ms-python.pylint",
29 | "ms-python.mypy",
30 | "ms-python.black-formatter",
31 | "GitHub.copilot",
32 | "njpwerner.autodocstring"
33 | ]
34 | }
35 | },
36 | "forwardPorts": [
37 | 8888
38 | ],
39 | "postCreateCommand": "make devenv",
40 | "features": {
41 | "ghcr.io/devcontainers/features/docker-in-docker:2.11.0": {},
42 | "ghcr.io/devcontainers/features/java:1": {
43 | "version": "11"
44 | }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 | title: "[BUG]"
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Minimal Code To Reproduce**
11 |
12 | ```python
13 | ```
14 |
15 | **Describe the bug**
16 | A clear and concise description of what the bug is.
17 |
18 | **Expected behavior**
19 | A clear and concise description of what you expected to happen.
20 |
21 | **Environment (please complete the following information):**
22 | - Backend: pandas/dask/ray?
23 | - Backend version:
24 | - Python version:
25 | - OS: linux/windows
26 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/compatibility.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Compatibility
3 | about: Compatibility with dependent packages updates
4 | title: "[COMPATIBILITY]"
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/deprecation.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Deprecation
3 | about: Deprecate certain features
4 | title: "[DEPRECATION]"
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | title: "[FEATURE]"
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Is your feature request related to a problem? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want to happen.
15 |
16 | **Describe alternatives you've considered**
17 | A clear and concise description of any alternative solutions or features you've considered.
18 |
19 | **Additional context**
20 | Add any other context or screenshots about the feature request here.
21 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/questions.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Questions
3 | about: General questions
4 | title: "[QUESTION]"
5 | labels: ''
6 | assignees: ''
7 |
8 | ---
9 |
--------------------------------------------------------------------------------
/.github/workflows/publish.yml:
--------------------------------------------------------------------------------
1 | # This workflows will upload a Python Package using Twine when a release is created
2 | # For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries
3 |
4 | name: Publish
5 |
6 | on:
7 | release:
8 | types: [created]
9 |
10 | jobs:
11 | deploy:
12 | runs-on: ubuntu-latest
13 |
14 | steps:
15 | - uses: actions/checkout@v2
16 | - name: Set up Python
17 | uses: actions/setup-python@v1
18 | with:
19 | python-version: '3.10'
20 | - name: Install dependencies
21 | run: make devenv
22 | - name: Test
23 | if: "!github.event.release.prerelease"
24 | run: make test
25 | - name: Build and publish
26 | env:
27 | RELEASE_TAG: ${{ github.event.release.tag_name }}
28 | TWINE_USERNAME: __token__
29 | TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }}
30 | run: |
31 | make package
32 | twine upload dist/*
33 |
--------------------------------------------------------------------------------
/.github/workflows/test_all.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Full Tests
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | all:
24 | name: Tests & Lint
25 | runs-on: ubuntu-latest
26 | strategy:
27 | matrix:
28 | python-version: ["3.10", "3.11", "3.12"]
29 |
30 | steps:
31 | - uses: actions/checkout@v2
32 | - name: Set up Python ${{ matrix.python-version }}
33 | uses: actions/setup-python@v1
34 | with:
35 | python-version: ${{ matrix.python-version }}
36 | - name: Install dependencies
37 | run: make devenv
38 | - name: Lint
39 | if: matrix.python-version == '3.10'
40 | run: make lint
41 | - name: Test
42 | run: make test
43 | - name: "Upload coverage to Codecov"
44 | if: matrix.python-version == '3.10'
45 | uses: codecov/codecov-action@v4
46 | with:
47 | fail_ci_if_error: false
48 | token: ${{ secrets.CODECOV_TOKEN }}
49 |
50 | no_spark:
51 | name: Tests
52 | runs-on: ubuntu-latest
53 | strategy:
54 | matrix:
55 | python-version: [3.9]
56 |
57 | steps:
58 | - uses: actions/checkout@v2
59 | - name: Set up Python ${{ matrix.python-version }}
60 | uses: actions/setup-python@v1
61 | with:
62 | python-version: ${{ matrix.python-version }}
63 | - name: Install dependencies
64 | run: make devenv
65 | - name: Test
66 | run: make testnospark
67 |
--------------------------------------------------------------------------------
/.github/workflows/test_core.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Core Tests
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | core-tests:
24 | name: Tests
25 | runs-on: ubuntu-latest
26 | strategy:
27 | matrix:
28 | python-version: ["3.10", "3.11", "3.12"]
29 |
30 | steps:
31 | - uses: actions/checkout@v2
32 | - name: Set up Python ${{ matrix.python-version }}
33 | uses: actions/setup-python@v1
34 | with:
35 | python-version: ${{ matrix.python-version }}
36 | - name: Fix setuptools_scm
37 | run: pip install "setuptools_scm<7"
38 | - name: Install dependencies
39 | run: make devenv
40 | - name: Install pandas 2
41 | if: matrix.python-version == '3.10'
42 | run: pip install "pandas>=2"
43 | - name: Test
44 | run: make testcore
45 |
--------------------------------------------------------------------------------
/.github/workflows/test_dask.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Dask Tests
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | test_dask_lower_bound:
24 | name: Dask 2024.4.0
25 | runs-on: ubuntu-latest
26 |
27 | steps:
28 | - uses: actions/checkout@v2
29 | - name: Set up Python 3.10
30 | uses: actions/setup-python@v1
31 | with:
32 | python-version: "3.10"
33 | - name: Install dependencies
34 | run: make devenv
35 | - name: Setup Dask
36 | run: pip install pyarrow==7.0.0 pandas==2.0.2 dask[dataframe,distributed]==2024.4.0
37 | - name: Test
38 | run: make testdask
39 |
40 | test_dask_sql_latest:
41 | name: Dask with SQL Latest
42 | runs-on: ubuntu-latest
43 |
44 | steps:
45 | - uses: actions/checkout@v2
46 | - name: Set up Python 3.10
47 | uses: actions/setup-python@v1
48 | with:
49 | python-version: "3.10"
50 | - name: Install dependencies
51 | run: make devenv
52 | - name: Test
53 | run: make testdask
54 |
55 | test_dask_latest:
56 | name: Dask without SQL Latest
57 | runs-on: ubuntu-latest
58 |
59 | steps:
60 | - uses: actions/checkout@v2
61 | - name: Set up Python 3.11
62 | uses: actions/setup-python@v1
63 | with:
64 | python-version: "3.11"
65 | - name: Install dependencies
66 | run: make devenv
67 | - name: Setup Dask
68 | run: pip install -U dask[dataframe,distributed] pyarrow pandas
69 | - name: Remove Dask SQL
70 | run: pip uninstall -y dask-sql qpd fugue-sql-antlr sqlglot
71 | - name: Test
72 | run: make testdask
73 |
--------------------------------------------------------------------------------
/.github/workflows/test_no_sql.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Tests Excluding SQL Dependencies
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | tests-no-sql:
24 | name: Tests
25 | runs-on: ubuntu-latest
26 | strategy:
27 | matrix:
28 | python-version: ["3.10"]
29 |
30 | steps:
31 | - uses: actions/checkout@v2
32 | - name: Set up Python ${{ matrix.python-version }}
33 | uses: actions/setup-python@v1
34 | with:
35 | python-version: ${{ matrix.python-version }}
36 | - name: Fix setuptools_scm
37 | run: pip install "setuptools_scm<7"
38 | - name: Install dependencies
39 | run: make devenv
40 | - name: Install pandas 2
41 | if: matrix.python-version == '3.10'
42 | run: pip install "pandas>=2"
43 | - name: Remove SQL dependencies
44 | run: pip uninstall -y qpd fugue-sql-antlr sqlglot
45 | - name: Test
46 | run: make testnosql
47 |
--------------------------------------------------------------------------------
/.github/workflows/test_notebook.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Test Notebook Experience
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | build:
24 | runs-on: ubuntu-latest
25 | strategy:
26 | matrix:
27 | python-version: ["3.10"]
28 |
29 | steps:
30 | - uses: actions/checkout@v2
31 | - name: Set up Python ${{ matrix.python-version }}
32 | uses: actions/setup-python@v1
33 | with:
34 | python-version: ${{ matrix.python-version }}
35 | - name: Install dependencies
36 | run: make devenv
37 | - name: Test
38 | run: make testnotebook
39 |
--------------------------------------------------------------------------------
/.github/workflows/test_ray.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Ray Tests
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | test_ray_lower_bound:
24 | name: Ray 2.5.0
25 | runs-on: ubuntu-latest
26 |
27 | steps:
28 | - uses: actions/checkout@v2
29 | - name: Set up Python 3.9
30 | uses: actions/setup-python@v1
31 | with:
32 | python-version: 3.9
33 | - name: Install dependencies
34 | run: make devenv
35 | - name: Setup Ray
36 | run: pip install ray[data]==2.5.0 pyarrow==7.0.0 "duckdb<0.9" pandas==1.5.3 'pydantic<2'
37 | - name: Test
38 | run: make testray
39 |
40 | test_ray_latest:
41 | name: Ray Latest
42 | runs-on: ubuntu-latest
43 |
44 | steps:
45 | - uses: actions/checkout@v2
46 | - name: Set up Python 3.9
47 | uses: actions/setup-python@v1
48 | with:
49 | python-version: 3.9
50 | - name: Install dependencies
51 | run: make devenv
52 | - name: Setup Ray
53 | run: pip install -U ray[data]
54 | - name: Test
55 | run: make testray
56 |
--------------------------------------------------------------------------------
/.github/workflows/test_spark.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Spark Tests
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | test_combinations:
24 | name: Spark ${{ matrix.spark-version }} Pandas ${{ matrix.pandas-version }}
25 | runs-on: ubuntu-latest
26 | strategy:
27 | matrix:
28 | spark-version: ["3.4.0","3.5.5"]
29 | pandas-version: ["1.5.3","2.0.1"]
30 |
31 | steps:
32 | - uses: actions/checkout@v2
33 | - name: Set up Python 3.9
34 | uses: actions/setup-python@v1
35 | with:
36 | python-version: 3.9
37 | - name: Install dependencies
38 | run: make devenv
39 | - name: Install Spark ${{ matrix.spark-version }}
40 | run: pip install "pyspark==${{ matrix.spark-version }}"
41 | - name: Install Pandas ${{ matrix.pandas-version }}
42 | run: pip install "pandas==${{ matrix.pandas-version }}"
43 | - name: Downgrade Ibis
44 | if: matrix.spark-version < '3.4.0'
45 | run: pip install "ibis-framework<5"
46 | - name: Test
47 | run: make testspark
48 |
49 | test_connect:
50 | name: Spark Connect
51 | runs-on: ubuntu-latest
52 |
53 | steps:
54 | - uses: actions/checkout@v2
55 | - name: Set up Python 3.10
56 | uses: actions/setup-python@v1
57 | with:
58 | python-version: "3.10"
59 | - name: Install dependencies
60 | run: make devenv
61 | - name: Setup Spark
62 | run: make sparkconnect
63 | - name: Test
64 | run: make testsparkconnect
65 |
--------------------------------------------------------------------------------
/.github/workflows/test_win.yml:
--------------------------------------------------------------------------------
1 | # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
3 |
4 | name: Test Windows
5 |
6 | on:
7 | push:
8 | branches: [ master ]
9 | paths-ignore:
10 | - 'docs/**'
11 | - '**.md'
12 | pull_request:
13 | branches: [ master ]
14 | paths-ignore:
15 | - 'docs/**'
16 | - '**.md'
17 |
18 | concurrency:
19 | group: ${{ github.workflow }}-${{ github.ref }}
20 | cancel-in-progress: true
21 |
22 | jobs:
23 | build:
24 | runs-on: windows-latest
25 | strategy:
26 | matrix:
27 | python-version: [3.9, "3.10"]
28 | steps:
29 | - uses: actions/checkout@v2
30 | - name: Set up Python ${{ matrix.python-version }}
31 | uses: actions/setup-python@v1
32 | with:
33 | python-version: ${{ matrix.python-version }}
34 | - name: Install dependencies
35 | run: pip install -r requirements.txt
36 | # - name: Install pyarrow
37 | # run: pip install pyarrow==8.0.0
38 | - name: Test
39 | run: python -m pytest --reruns 2 --only-rerun 'Overflow in cast' tests/fugue tests/fugue_dask tests/fugue_ibis tests/fugue_duckdb
40 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Byte-compiled / optimized / DLL files
2 | __pycache__/
3 | *.py[cod]
4 | *$py.class
5 |
6 | # C extensions
7 | *.so
8 |
9 | # Distribution / packaging
10 | .Python
11 | build/
12 | develop-eggs/
13 | dist/
14 | downloads/
15 | eggs/
16 | .eggs/
17 | lib/
18 | lib64/
19 | parts/
20 | sdist/
21 | var/
22 | wheels/
23 | pip-wheel-metadata/
24 | share/python-wheels/
25 | *.egg-info/
26 | .installed.cfg
27 | *.egg
28 | MANIFEST
29 |
30 | # PyInstaller
31 | # Usually these files are written by a python script from a template
32 | # before PyInstaller builds the exe, so as to inject date/other infos into it.
33 | *.manifest
34 | *.spec
35 |
36 | # Installer logs
37 | pip-log.txt
38 | pip-delete-this-directory.txt
39 |
40 | # Unit test / coverage reports
41 | htmlcov/
42 | .tox/
43 | .nox/
44 | .coverage
45 | .coverage.*
46 | .cache
47 | nosetests.xml
48 | coverage.xml
49 | *.cover
50 | *.py,cover
51 | .hypothesis/
52 | .pytest_cache/
53 |
54 | # Translations
55 | *.mo
56 | *.pot
57 |
58 | # Django stuff:
59 | *.log
60 | local_settings.py
61 | db.sqlite3
62 | db.sqlite3-journal
63 |
64 | # Flask stuff:
65 | instance/
66 | .webassets-cache
67 |
68 | # Scrapy stuff:
69 | .scrapy
70 |
71 | # Sphinx documentation
72 | docs/_build/
73 |
74 | # PyBuilder
75 | target/
76 |
77 | # Jupyter Notebook
78 | .ipynb_checkpoints
79 |
80 | # IPython
81 | profile_default/
82 | ipython_config.py
83 |
84 | # pyenv
85 | .python-version
86 |
87 | # pipenv
88 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89 | # However, in case of collaboration, if having platform-specific dependencies or dependencies
90 | # having no cross-platform support, pipenv may install dependencies that don't work, or not
91 | # install all needed dependencies.
92 | #Pipfile.lock
93 |
94 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow
95 | __pypackages__/
96 |
97 | # Celery stuff
98 | celerybeat-schedule
99 | celerybeat.pid
100 |
101 | # SageMath parsed files
102 | *.sage.py
103 |
104 | # Environments
105 | .env
106 | .venv
107 | env/
108 | venv/
109 | ENV/
110 | env.bak/
111 | venv.bak/
112 | pythonenv*
113 |
114 | # Spyder project settings
115 | .spyderproject
116 | .spyproject
117 |
118 | # Rope project settings
119 | .ropeproject
120 |
121 | # mkdocs documentation
122 | /site
123 | .virtual_documents
124 |
125 | # mypy
126 | .mypy_cache
127 | .dmypy.json
128 | dmypy.json
129 |
130 | # Pyre type checker
131 | .pyre/
132 |
133 | .vscode
134 | tmp
135 |
136 | # Antlr
137 | .antlr
138 |
139 | # dask
140 | dask-worker-space
141 |
142 | # spark
143 | spark-warehourse
144 | =*
145 |
146 | # DS_Store
147 | *.DS_Store
148 |
--------------------------------------------------------------------------------
/.gitpod.yml:
--------------------------------------------------------------------------------
1 | image: fugueproject/gitpod:0.7.2
2 |
3 | tasks:
4 | - init: |
5 | make devenv
6 |
7 | github:
8 | prebuilds:
9 | # enable for the master/default branch (defaults to true)
10 | master: true
11 | # enable for all branches in this repo (defaults to false)
12 | branches: true
13 | # enable for pull requests coming from this repo (defaults to true)
14 | pullRequests: true
15 | # enable for pull requests coming from forks (defaults to false)
16 | pullRequestsFromForks: true
17 | # add a "Review in Gitpod" button as a comment to pull requests (defaults to true)
18 | addComment: true
19 | # add a "Review in Gitpod" button to pull requests (defaults to false)
20 | addBadge: false
21 | # add a label once the prebuild is ready to pull requests (defaults to false)
22 | addLabel: prebuilt-in-gitpod
23 |
24 | vscode:
25 | extensions:
26 | - ms-python.python
27 | - njpwerner.autodocstring
28 | - ms-toolsai.jupyter
29 | - ms-toolsai.jupyter-keymap
30 | - ms-toolsai.jupyter-renderers
31 | - ms-python.isort
32 | - virgilsisoe.python-auto-import
33 |
--------------------------------------------------------------------------------
/.pre-commit-config.yaml:
--------------------------------------------------------------------------------
1 | default_language_version:
2 | python: python3
3 |
4 | exclude: |
5 | (?x)(
6 | ^tests/|
7 | ^docs/|
8 | ^fugue_sql/_antlr/
9 | )
10 | repos:
11 | - repo: https://github.com/pre-commit/pre-commit-hooks
12 | rev: v3.2.0
13 | hooks:
14 | - id: check-ast
15 | - id: check-docstring-first
16 | - id: check-executables-have-shebangs
17 | - id: check-json
18 | - id: check-merge-conflict
19 | - id: check-yaml
20 | - id: debug-statements
21 | - id: end-of-file-fixer
22 | - id: trailing-whitespace
23 | - id: check-vcs-permalinks
24 | - repo: https://github.com/pycqa/flake8
25 | rev: '3.8.3'
26 | hooks:
27 | - id: flake8
28 | types: [python]
29 | additional_dependencies:
30 | - flake8-bugbear
31 | - flake8-builtins
32 | # - flake8-docstrings # TODO: add back!
33 | # - flake8-rst-docstrings
34 | - flake8-comprehensions
35 | - flake8-tidy-imports
36 | - pycodestyle
37 | - repo: https://github.com/pre-commit/mirrors-mypy
38 | rev: v0.971
39 | hooks:
40 | - id: mypy
41 | - repo: https://github.com/pre-commit/mirrors-pylint
42 | rev: v2.6.0
43 | hooks:
44 | - id: pylint
45 | - repo: https://github.com/ambv/black
46 | rev: 22.3.0
47 | hooks:
48 | - id: black
49 | types: [python]
50 | language_version: python3
51 |
--------------------------------------------------------------------------------
/.pylintrc:
--------------------------------------------------------------------------------
1 | [MESSAGES CONTROL]
2 | disable = C0103,C0114,C0115,C0116,C0122,C0200,C0201,C0302,C0411,C0415,E0401,E0712,E1130,E1136,E5110,R0201,R0205,R0801,R0902,R0903,R0904,R0911,R0912,R0913,R0914,R0915,R0917,R1705,R1710,R1714,R1718,R1720,R1724,W0102,W0107,W0108,W0201,W0212,W0221,W0223,W0237,W0511,W0603,W0613,W0621,W0622,W0631,W0640,W0703,W0707,W1116
3 | # TODO: R0205: inherits from object, can be safely removed
4 |
--------------------------------------------------------------------------------
/.readthedocs.yaml:
--------------------------------------------------------------------------------
1 | version: 2
2 |
3 | # Set the version of Python and other tools you might need
4 | build:
5 | os: ubuntu-20.04
6 | tools:
7 | python: "3.10"
8 | jobs:
9 | pre_install:
10 | - pip install -U pip
11 |
12 | sphinx:
13 | configuration: docs/conf.py
14 |
15 | python:
16 | install:
17 | - requirements: requirements.txt
18 |
--------------------------------------------------------------------------------
/docs/Makefile:
--------------------------------------------------------------------------------
1 | # Minimal makefile for Sphinx documentation
2 | #
3 |
4 | # You can set these variables from the command line, and also
5 | # from the environment for the first two.
6 | SPHINXOPTS ?=
7 | SPHINXBUILD ?= sphinx-build
8 | SOURCEDIR = source
9 | BUILDDIR = build
10 |
11 | # Put it first so that "make" without argument is like "make help".
12 | help:
13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14 |
15 | .PHONY: help Makefile
16 |
17 | # Catch-all target: route all unknown targets to Sphinx using the new
18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19 | %: Makefile
20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
21 |
--------------------------------------------------------------------------------
/docs/_static/logo.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
23 |
--------------------------------------------------------------------------------
/docs/_static/logo_doc.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
23 |
--------------------------------------------------------------------------------
/docs/_templates/toc.rst_t:
--------------------------------------------------------------------------------
1 | {{ header | heading }}
2 |
3 | .. toctree::
4 | :maxdepth: {{ maxdepth }}
5 | {% for docname in docnames %}
6 | {{ docname }}
7 | {%- endfor %}
8 |
--------------------------------------------------------------------------------
/docs/api.rst:
--------------------------------------------------------------------------------
1 | API Reference
2 | ==============
3 |
4 | .. toctree::
5 |
6 | api/fugue
7 | api_sql/fugue_sql
8 | api_duckdb/fugue_duckdb
9 | api_spark/fugue_spark
10 | api_dask/fugue_dask
11 | api_ray/fugue_ray
12 | api_ibis/fugue_ibis
13 |
--------------------------------------------------------------------------------
/docs/api/fugue.bag.rst:
--------------------------------------------------------------------------------
1 | fugue.bag
2 | ==========
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.bag.array\_bag
31 | --------------------
32 |
33 | .. automodule:: fugue.bag.array_bag
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.bag.bag
39 | -------------
40 |
41 | .. automodule:: fugue.bag.bag
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.collections.rst:
--------------------------------------------------------------------------------
1 | fugue.collections
2 | ==================
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.collections.partition
31 | ---------------------------
32 |
33 | .. automodule:: fugue.collections.partition
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.collections.sql
39 | ---------------------
40 |
41 | .. automodule:: fugue.collections.sql
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 | fugue.collections.yielded
47 | -------------------------
48 |
49 | .. automodule:: fugue.collections.yielded
50 | :members:
51 | :undoc-members:
52 | :show-inheritance:
53 |
54 |
--------------------------------------------------------------------------------
/docs/api/fugue.column.rst:
--------------------------------------------------------------------------------
1 | fugue.column
2 | =============
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.column.expressions
31 | ------------------------
32 |
33 | .. automodule:: fugue.column.expressions
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.column.functions
39 | ----------------------
40 |
41 | .. automodule:: fugue.column.functions
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 | fugue.column.sql
47 | ----------------
48 |
49 | .. automodule:: fugue.column.sql
50 | :members:
51 | :undoc-members:
52 | :show-inheritance:
53 |
54 |
--------------------------------------------------------------------------------
/docs/api/fugue.dataset.rst:
--------------------------------------------------------------------------------
1 | fugue.dataset
2 | ==============
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.dataset.api
31 | -----------------
32 |
33 | .. automodule:: fugue.dataset.api
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.dataset.dataset
39 | ---------------------
40 |
41 | .. automodule:: fugue.dataset.dataset
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.extensions.creator.rst:
--------------------------------------------------------------------------------
1 | fugue.extensions.creator
2 | =========================
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.extensions.creator.convert
31 | --------------------------------
32 |
33 | .. automodule:: fugue.extensions.creator.convert
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.extensions.creator.creator
39 | --------------------------------
40 |
41 | .. automodule:: fugue.extensions.creator.creator
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.extensions.outputter.rst:
--------------------------------------------------------------------------------
1 | fugue.extensions.outputter
2 | ===========================
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.extensions.outputter.convert
31 | ----------------------------------
32 |
33 | .. automodule:: fugue.extensions.outputter.convert
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.extensions.outputter.outputter
39 | ------------------------------------
40 |
41 | .. automodule:: fugue.extensions.outputter.outputter
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.extensions.processor.rst:
--------------------------------------------------------------------------------
1 | fugue.extensions.processor
2 | ===========================
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.extensions.processor.convert
31 | ----------------------------------
32 |
33 | .. automodule:: fugue.extensions.processor.convert
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.extensions.processor.processor
39 | ------------------------------------
40 |
41 | .. automodule:: fugue.extensions.processor.processor
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.extensions.rst:
--------------------------------------------------------------------------------
1 | fugue.extensions
2 | =================
3 |
4 | .. toctree::
5 | :maxdepth: 4
6 |
7 | fugue.extensions.creator
8 | fugue.extensions.outputter
9 | fugue.extensions.processor
10 | fugue.extensions.transformer
11 |
12 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
13 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
14 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
15 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
16 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
17 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
18 |
19 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
20 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
21 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
22 |
23 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
24 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
25 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
26 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
27 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
28 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
29 | .. |ZipComap| replace:: :ref:`Zip & Comap `
30 | .. |LoadSave| replace:: :ref:`Load & Save `
31 | .. |AutoPersist| replace:: :ref:`Auto Persist `
32 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
33 | .. |CoTransformer| replace:: :ref:`CoTransformer `
34 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
35 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
36 |
37 |
38 | fugue.extensions.context
39 | ------------------------
40 |
41 | .. automodule:: fugue.extensions.context
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.rpc.rst:
--------------------------------------------------------------------------------
1 | fugue.rpc
2 | ==========
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.rpc.base
31 | --------------
32 |
33 | .. automodule:: fugue.rpc.base
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.rpc.flask
39 | ---------------
40 |
41 | .. automodule:: fugue.rpc.flask
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.sql.rst:
--------------------------------------------------------------------------------
1 | fugue.sql
2 | ==========
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.sql.api
31 | -------------
32 |
33 | .. automodule:: fugue.sql.api
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.sql.workflow
39 | ------------------
40 |
41 | .. automodule:: fugue.sql.workflow
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api/fugue.workflow.rst:
--------------------------------------------------------------------------------
1 | fugue.workflow
2 | ===============
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue.workflow.api
31 | ------------------
32 |
33 | .. automodule:: fugue.workflow.api
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue.workflow.input
39 | --------------------
40 |
41 | .. automodule:: fugue.workflow.input
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 | fugue.workflow.module
47 | ---------------------
48 |
49 | .. automodule:: fugue.workflow.module
50 | :members:
51 | :undoc-members:
52 | :show-inheritance:
53 |
54 | fugue.workflow.workflow
55 | -----------------------
56 |
57 | .. automodule:: fugue.workflow.workflow
58 | :members:
59 | :undoc-members:
60 | :show-inheritance:
61 |
62 |
--------------------------------------------------------------------------------
/docs/api_ibis/fugue_ibis.execution.rst:
--------------------------------------------------------------------------------
1 | fugue\_ibis.execution
2 | ======================
3 |
4 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
5 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
6 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
7 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
8 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
9 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
10 |
11 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
12 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
13 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
14 |
15 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
16 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
17 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
18 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
19 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
20 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
21 | .. |ZipComap| replace:: :ref:`Zip & Comap `
22 | .. |LoadSave| replace:: :ref:`Load & Save `
23 | .. |AutoPersist| replace:: :ref:`Auto Persist `
24 | .. |TransformerTutorial| replace:: :doc:`the Transformer Tutorial `
25 | .. |CoTransformer| replace:: :ref:`CoTransformer `
26 | .. |CoTransformerTutorial| replace:: :doc:`the CoTransformer Tutorial `
27 | .. |FugueDataTypes| replace:: :doc:`Fugue Data Types `
28 |
29 |
30 | fugue\_ibis.execution.ibis\_engine
31 | ----------------------------------
32 |
33 | .. automodule:: fugue_ibis.execution.ibis_engine
34 | :members:
35 | :undoc-members:
36 | :show-inheritance:
37 |
38 | fugue\_ibis.execution.pandas\_backend
39 | -------------------------------------
40 |
41 | .. automodule:: fugue_ibis.execution.pandas_backend
42 | :members:
43 | :undoc-members:
44 | :show-inheritance:
45 |
46 |
--------------------------------------------------------------------------------
/docs/api_ibis/fugue_ibis.rst:
--------------------------------------------------------------------------------
1 | fugue\_ibis
2 | ============
3 |
4 | .. toctree::
5 | :maxdepth: 4
6 |
7 | fugue_ibis.execution
8 |
9 | .. |SchemaLikeObject| replace:: :ref:`Schema like object `
10 | .. |ParamsLikeObject| replace:: :ref:`Parameters like object `
11 | .. |DataFrameLikeObject| replace:: :ref:`DataFrame like object `
12 | .. |DataFramesLikeObject| replace:: :ref:`DataFrames like object `
13 | .. |PartitionLikeObject| replace:: :ref:`Partition like object `
14 | .. |RPCHandlerLikeObject| replace:: :ref:`RPChandler like object `
15 |
16 | .. |ExecutionEngine| replace:: :class:`~fugue.execution.execution_engine.ExecutionEngine`
17 | .. |NativeExecutionEngine| replace:: :class:`~fugue.execution.native_execution_engine.NativeExecutionEngine`
18 | .. |FugueWorkflow| replace:: :class:`~fugue.workflow.workflow.FugueWorkflow`
19 |
20 | .. |ReadJoin| replace:: Read Join tutorials on :ref:`workflow ` and :ref:`engine ` for details
21 | .. |FugueConfig| replace:: :doc:`the Fugue Configuration Tutorial `
22 | .. |PartitionTutorial| replace:: :doc:`the Partition Tutorial `
23 | .. |FugueSQLTutorial| replace:: :doc:`the Fugue SQL Tutorial `
24 | .. |DataFrameTutorial| replace:: :ref:`the DataFrame Tutorial `
25 | .. |ExecutionEngineTutorial| replace:: :doc:`the ExecutionEngine Tutorial `
26 | .. |ZipComap| replace:: :ref:`Zip & Comap `
27 | .. |LoadSave| replace:: :ref:`Load & Save