Metadata-Version: 2.1
Name: dremio-client
Version: 0.13.1
Summary: Python client for Dremio. See https://dremio.com
Home-page: https://github.com/rymurr/dremio_client
Author: Ryan Murray
Author-email: rymurr@gmail.com
License: Apache Software License 2.0
Keywords: dremio_client
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Requires-Dist: Click (>=6.0)
Requires-Dist: requests (>=2.21.0)
Requires-Dist: confuse
Requires-Dist: simplejson
Requires-Dist: attrs
Requires-Dist: six
Requires-Dist: futures ; python_version == "2.7"
Provides-Extra: full
Requires-Dist: pyarrow (>=0.15.0) ; extra == 'full'
Requires-Dist: pandas (>=0.24.2) ; extra == 'full'
Requires-Dist: requests-futures (==1.0.0) ; extra == 'full'
Requires-Dist: markdown ; extra == 'full'
Provides-Extra: noarrow
Requires-Dist: pandas (>=0.24.2) ; extra == 'noarrow'
Requires-Dist: requests-futures (==1.0.0) ; extra == 'noarrow'
Requires-Dist: markdown ; extra == 'noarrow'

=============
Dremio client
=============


.. image:: https://img.shields.io/pypi/v/dremio_client.svg
        :target: https://pypi.python.org/pypi/dremio_client

.. image:: https://img.shields.io/travis/rymurr/dremio_client.svg
        :target: https://travis-ci.org/rymurr/dremio_client

.. image:: https://readthedocs.org/projects/dremio-client/badge/?version=latest
        :target: https://dremio-client.readthedocs.io/en/latest/?badge=latest
        :alt: Documentation Status

.. image:: https://pyup.io/repos/github/rymurr/dremio_client/shield.svg
     :target: https://pyup.io/repos/github/rymurr/dremio_client/
     :alt: Updates

.. image:: https://img.shields.io/codacy/grade/78c83e3484634e32b17496e0dbe7ade5
     :target: https://app.codacy.com/project/rymurr/dremio_client/dashboard
     :alt: Codacy

.. image:: https://img.shields.io/codecov/c/github/rymurr/dremio_client
     :target: https://codecov.io/gh/rymurr/dremio_client
     :alt: Codecov


The **un-official** python client for Dremio's REST API. This enables both administrators and data scientists to get
the most out of `Dremio`_ in Python

.. _Dremio: https://dremio.com

* Documentation: https://dremio-client.readthedocs.io.
* Github: https://github.com/rymurr/dremio_client
* PyPI: https://pypi.python.org/pypi/dremio_client
* Free software: Apache Software License 2.0

Features
--------

* Cross platform support
* All Pythons between 2.7 - 3.7 supported
* Full support for Dremio's `REST API`_
* Optional Support for Dremio's `ODBC`_ or experimental `Arrow Flight`_ capabilities
* Rich config file support via `confuse`_ yaml config library. Simple to create a client (config stored in a yaml file)

    .. code-block:: python

        from dremio_client import init
        client = init() # initialise connectivity to Dremio via config file
        catalog = client.data # fetch catalog
        vds = catalog.space.vds.get() # fetch a specific dataset
        df = vds.query() # query the first 1000 rows of the dataset and return as a DataFrame
        pds = catalog.source.pds.get() # fetch a physical dataset
        pds.metadata_refresh() # refresh metadata on that dataset

* CLI interface for integration with scripts

    .. code-block:: bash

        $ dremio_client query --sql 'select * from sys.options'
        {'results':results}
        $ dremio_client refresh-metadata --table 'my.vds.name'
        {'result':'ok'}

* Catalog autocompletion in Jupyter Notebooks

.. image:: https://raw.github.com/rymurr/dremio_client/master/docs/images/autocomplete.gif


.. _REST API: https://docs.dremio.com/rest-api/
.. _ODBC: https://docs.dremio.com/drivers/dremio-odbc-driver.html
.. _Arrow Flight: https://arrow.apache.org/docs/format/Flight.html?highlight=flight
.. _confuse: https://github.com/beetbox/confuse


Status
------

This is still alpha software and is relatively incomplete. Contributions in the form of Github Issues or Pull requests
are welcome. See `CONTRIBUTING`_

.. _CONTRIBUTING:

TODO
----

* see issues


=======
History
=======

0.1.0 (2019-07-04)
------------------

* First code, unreleased.

0.2.4 (2019-08-13)
------------------

* Alpha quality release with partial implementation of features. First PyPI release.

0.3.0 (2019-08-14)
------------------

* Beta quality release for GET based endpoints

0.5.0 (2019-10-30)
------------------

* Most endpoint supported
* flight support with tls & auth
* minor bugfixes

0.6.3 (2020-01-29)
------------------

* All endpoints supported
* lots of bugfixes
* utilities for building spaces/folders vds
* removed recordclass library in favor of attrs

0.8.4 (2020-01-29)
------------------

* history re-written

0.8.8 (2020-02-19)
------------------

* minor bug fixes

0.8.9 (2020-02-19)
------------------

* ensure use correct name for Spaces

0.8.11 (2020-03-09)
-------------------

* bug fixes when creating sources and folders

0.9.2 (2020-03-17)
------------------

* add promote endpoint
* update versions from pyup

0.10.1 (2020-03-19)
-------------------

* fix ssl verify flag in cli

0.11.1 (2020-04-09)
-------------------

* a number of bug fixes and improvements from the community

0.12.0 (2020-04-22)
-------------------

* add graph endpoint and cli flag
* add more detailed exception handling

0.12.1 (2020-05-04)
-------------------

* few bug fixes and API extensions

0.13.0 (2020-05-21)
-------------------

* add version flag
* upgrades and additions to some commands

0.13.1 (2020-05-21)
-------------------

* simplify delete cli command


