Skip to content

Commit

Permalink
DOC: installation and compatible packages (#819)
Browse files Browse the repository at this point in the history
  • Loading branch information
luweizheng authored Oct 6, 2024
1 parent 3304440 commit 662d959
Showing 1 changed file with 47 additions and 31 deletions.
78 changes: 47 additions & 31 deletions doc/source/getting_started/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,32 +16,57 @@ Xorbits can be installed via pip from `PyPI <https://pypi.org/project/xorbits>`_
Python version support
----------------------

Officially Python 3.8, 3.9, 3.10 and 3.11.
Officially Python 3.9, 3.10 and 3.11.

Packages support
----------------

Xorbits partitions large datasets into chunks and processes each individual
chunk using single-node packages (such as pandas). Currently, our latest version strives
to be compatible with the latest single-node packages. The table below lists the highest
versions of the single-node packages that Xorbits are compatible with. If you are using
an older version of pandas, you should either upgrade your pandas or downgrade Xorbits.

======= ======== ========= ========== =========== ===========
Xorbits `NumPy`_ `pandas`_ `xgboost`_ `lightgbm`_ `datasets`_
======= ======== ========= ========== =========== ===========
0.7.4 1.26.4 2.2.3 2.1.1 4.5.0 3.0.1
======= ======== ========= ========== =========== ===========

.. _`NumPy`: https://numpy.org
.. _`pandas`: https://pandas.pydata.org
.. _`xgboost`: https://xgboost.readthedocs.io
.. _`lightgbm`: https://lightgbm.readthedocs.io
.. _`datasets`: https://huggingface.co/docs/datasets/index


Dependencies
------------

================================================================ ==========================
Package Minimum supported version
================================================================ ==========================
`NumPy <https://numpy.org>`__ 1.20.3
`pandas <https://pandas.pydata.org>`__ 1.0.0
`scipy <https://scipy.org>`__ 1.0.0
`scikit-learn <https://scikit-learn.org/stable>`__ 0.20
cloudpickle 1.5.0
pyyaml 5.1
psutil 5.9.0
tornado 6.0
sqlalchemy 1.2.0
defusedxml 0.5.0
tqdm 4.1.0
uvloop (for systems other than win32) 0.14.0
================================================================ ==========================
Required packages
~~~~~~~~~~~~~~~~~

Xorbits depends on the following libraries, which are mandatory. When you run
``pip install xorbits``, ``pip`` will download the latest versions of these packages from the PyPI.

- cloudpickle
- pyyaml
- psutil
- tornado
- sqlalchemy
- defusedxml
- tqdm
- uvloop (for systems other than win32)

Recommended dependencies
~~~~~~~~~~~~~~~~~~~~~~~~

Recommended dependencies can be installed conveniently using pip.
.. note::

You are highly encouraged to install these libraries, as they provide speed improvements,
especially when working with large datasets.

Recommended dependencies can be installed using ``pip``.

::

Expand All @@ -54,21 +79,12 @@ The following extra dependencies will be installed.

* `numexpr <https://github.com/pydata/numexpr>`__: for accelerating certain numerical operations.
``numexpr`` uses multiple cores as well as smart chunking and caching to achieve large speedups.
If installed, must be Version 2.6.4 or higher.

* `pillow <https://python-pillow.org/>`__: the Python Imaging Library. If installed, must be
Version 7.0.0 or higher.
* `pillow <https://python-pillow.org/>`__: the Python Imaging Library.

* `pyarrow <https://pypi.org/project/pyarrow/>`__: python API for Arrow C++ libraries. If
installed, must be Version 5.0.0 or higher.
* `pyarrow <https://pypi.org/project/pyarrow/>`__: python API for Arrow C++ libraries.

* `lz4 <https://github.com/python-lz4/python-lz4>`__: python bindings for the LZ4 compression
library. If installed, must be Version 1.0.0 or higher.

* `fsspec <https://github.com/fsspec/filesystem_spec>`__: for cloud data accessing. If installed,
must be Version 2022.7.1 or higher and cannot be Version 2022.8.0.
library.

.. note::

You are highly encouraged to install these libraries, as they provide speed improvements,
especially when working with large data sets.
* `fsspec <https://github.com/fsspec/filesystem_spec>`__: for cloud data accessing.

0 comments on commit 662d959

Please sign in to comment.