- #318 fix: revert #317 (@betodealmeida)
- #298 Include URL query params in create_connect_args() (@Wenzil)
- #301 Correct order of parameters for Cursor's init (@shek1608)
- #317 fix(SQLAlchemy): queries w/o parameters (@betodealmeida)
- #314 remove hard dependency on sqlalchemy just for a single exception type ()
- #270 Add offset to Scan query (@pantlavanya)
- #287 Add quantile sketch aggregator and postaggregator (@jaimee07)
- #299 Add support for subquery datasources (@nbehnam)
- #308 Account for new error category field in JSON response (@cpcloud)
- #295 Revert "feat: support new types from 0.23 (#290)" (#295) (@betodealmeida)
- #290 feat: support new types from 0.23 (#290) (@betodealmeida)
- #288 fix: Druid Type mappings for Druid >= 0.23.0 (#288) (@Usiel)
- #292 Fixes do_ping on raw_connection (#292) (@Usiel)
- #285 feat: improve RELEASE.md (#285) (@mistercrunch)
- #284 feat: implement do_ping (#284) (@betodealmeida)
- #275 SQLAlchemy 1.4 compat (#275) (@betodealmeida)
- #243 fix: visit_ methods raise CompileError exception childs (#243) (@dpgaspar)
- #244 Add BLOB and other types (#244) (@betodealmeida)
- #234 fix: compatible with python3.8 (#234) (@aisk)
- #231 fix: Updating prompt-toolkit (#231) (@john-bodley)
- #230 Add virtualColumns to valid_parts (#230) (@bradengroom)
- #221 fix broken build (#221) (@villebro)
- 13c5446 docs: CHANGELOG update from 0.5.8 to .6.0 (@mistercrunch)
- 22df9df docs: CHANGELOG update from 0.5.8 to .6.0 (@mistercrunch)## Change Log
NOTE: This release is deprecating support for Python 2.*
- #219 chore: fix deprecations and bump dependencies (#219) (@villebro)
- #218 fix: build env (#218) (@villebro)
- #216 make compatible with python 3.7 (#216) (@villebro)
- #212 Apply Black and Add Black Check in CI (#212) (@SongYunSeop)
- #179 add dict for datasource as sub_query return dict (#179) (@pantlavanya)
- #182 Fixed typo in docstring for Bound class (#182) (@wjdecorte)
- #213 adding support for Spatial filters (#213) (@lokkju)
- #190 [ci] Adding tox (#190) (@john-bodley)
- #183 support order in query component (scan) (#183) (@hieunguyen1809)
- #184 fix: make 'ordering' arg optional for 'Filter' (#184) (@mistercrunch)
- #200 correct optional parameter name in docstring (#200) (@ZichaoHuang)
- #197 GAME-9671-Adapt-Druid-to-accept-adding-certificate-ga-ds-modules (#197) (@Thelin90)
- #199 Add project urls to setup.py (#199) (@villebro)
- #201 Add optional cert to request signature (#201) (@villebro)
- #203 Add having type dimSelector (#203) (@SongYunSeop)
- #206 aggregators: support stringfirst and stringlast aggregators (#206) (@nivye)
- #189 [fix] Ensuring export_pandas returns a pandas.DataFrame (#189) (@john-bodley)
- #188 chore: signal for
py < 3.5
support deprecation (#188) (@mistercrunch) - #185 Update connect function in api.py to accept proxies (#185) (@manojbalaji1)
- #187 Update CHANGELOG to 0.5.8 (#187) (@mistercrunch)
- #180 [dbapi] Added ssl certificate (#180) (@TechGeekD)
- #172 [dbapi] Fixing type ordering (#172) (@john-bodley)
- #174 [parameters] Fix empty parameter check (#174) (@john-bodley)
- #178 [api] Remove duplicate line (#178) (@john-bodley)
- #176 Black + various pre-commit hooks (#176) (@mistercrunch)
- #170 Updated bound filter to latest Druid API specs (#170) (@wjdecorte)
- #171 [dbapi] Fixing pyformat parameters (#171) (@john-bodley)
- #163 Added http_client parameter to AsyncPyDruid class init to specify which client to use (#163) (@wjdecorte)
- #168 [dbapi] Fixing header description (#168) (@john-bodley)
- #167 Add README.md to pypi (#167) (@mistercrunch)
- #146 Add proxies support to BaseDruidClient (#146) (@jobar)
- #165 CHANGELOG 0.5.0 to 0.5.3 (#165) (@mistercrunch)
- #159 F timeout issue 140 (#159) (@wjdecorte)
- #161 Parse actual response body for HTTP error (#161) (@haltwise)
- #139 SubQueries Support (#139) (@pantlavanya)
- #164 Add Trove classifiers for supported Python versions. (#164) (@jezdez)
- #153 Registered lookups (#153) (@srggrs)
- #156 Support for search and like filters (#156) (@Makesh-Gmak)
- #149 Add support for Druid Basic Auth to SQLAlchemy (#149) (@donbowman)
- #155 [api] Adding support for headers (#155) (@john-bodley)
- #150 Improve error message (#150) (@betodealmeida)
- #152 Pass context to Druid (#152) (@betodealmeida)
- #148 scan query: use columns instead of dimensions (#148) (@adelcast)
- #147 Update console.py (#147) (@john-bodley)
- #145 Dummy version number for master branch + RELEASE.md docs (#145) (@mistercrunch)
- #144 [db-api] Performance improvements (#144) (@john-bodley)
- #142 [prompt_toolkit] Enforcing pre-2.0 (#142) (@john-bodley)
- #141 [console] Updating filters/keywords (#141) (@john-bodley)
- #143 [travis] Pinning flake8 (#143) (@john-bodley)
- #138 Reserve original column sequence in SQL when reading data (#138) (@xqliu)
- #132 [cli] add an quit/exit/bye commands (#132) (@mistercrunch)
- #133 Fix empty result (#133) (@betodealmeida)
- #131 Support hyperUnique type (#131) (@betodealmeida)
- #127 Implement Filtered DimensionSpecs (#127) (@jeffreythewang)
- #121 Surface HTML errors (#121) (@betodealmeida)
- #76 Filters extraction function (#76) (@gaetano-guerriero)
- #119 fix access to class name when raising connection error (#119) (@danfrankj)
- #120 Remove 'enum' package requirements (#120) (@mistercrunch)
- #118 Add shortcuts to CLI (#118) (@betodealmeida)
- #117 Small fixes (#117) (@betodealmeida)
- #116 Get b64encoding correct for python 2 & 3 (#116) (@boorad)
- #100 thetaSketchEstimate fix py2.* (#100) (@Dylan1312)
- #80 Methode for http basic auth with username and password added (#80) (@DPiontek)
- #113 Check if connection is closed before execute (#113) (@betodealmeida)
- #108 Add support for 'scan' queries (#108) (@mistercrunch)
- #111 Linting with flake8 (#111) (@mistercrunch)
- #112 Fix reserved keyword (#112) (@betodealmeida)
- #110 Merge druiddb into pydruid (#110) (@betodealmeida)
- #107 Implement pandas export for 'select' queries (#107) (@mistercrunch)
- #106 [py2] fix str check in parse_datasource (#106) (@mistercrunch)
- #103 Add a way to add context->queryid. (#103) (@lionaneesh)
- #87 Support for 'interval' filter (#87) (@var23rav)
- #74 Support for Union datasource (#74) (@RichRadics)
- #72 thetaSketch support (#72) (@RichRadics)
- #77 Add LICENSE to MANIFEST.in (#77) (@pmlandwehr)
- #66 str returns dict (#66) (@onesuper)
- #82 Add columnComparison filter support (#82) (@erikdubbelboer)
- #73 Add new Greatest and Least post aggregators (#73) (@erikdubbelboer)
- #84 Add min and max aggregators for long and double (#84) (@azymnis)
- #70 Prepare for 0.3.1 release. (#70) (@gianm)
- #68 add quantile and quantiles post aggregators support (#68) (@hexchain)
- #69 query: add support for search query (#69) (@hexchain)
- #60 Add support for bound filter (#60) (@psalaberria002)
- #67 Add merge option to segment_metadata (#67) (@noppanit)
- #62 Bugfix when building
not
filter multiple times (#62) (@dakra) - #58 Don't raise exception when filter/having/dimension is None (#58) (@dakra)
- #53 only import pandas when
export_pandas
gets called (#53) (@dakra) - #54 Adds support for "in" filter (#54) (@se7entyse7en)
- #57 Add
analysisTypes
to segment metadata query (#57) (@drcrallen) - #55 allow
descending
attribute in timeseries query (#55) (@dakra)
- 9a802a3 bump version to 0.3.0 (@xvrl)
- #50 Add JavaScript aggregator support (#50) (@sologoub)
- #51 bugfix nested
and
/or
filters insidenot
(#51) (@dakra) - #52 Adding support for regex filter (#52) (@mistercrunch)
- d0763f1 add
NamespaceLookupExtraction
(@dakra) - 1bf68ae add
TimeFormatExtraction
(@dakra) - #45 Merge pull request #45 from dakra/nested-filter-aggregates (@dakra)
- #39 Merge pull request #39 from DreamLab/async_support (@DreamLab)
- 166983e * added support for asynchronous client (@turu)
- #47 Merge pull request #47 from dakra/ne-dimension (@dakra)
- #46 Merge pull request #46 from dakra/or-filter (@dakra)
- 5290823 add ne to
Dimension
so you canfilter = Dimension('dim') != val
(@dakra) - 415d954 add support for
and
,or
filters with more then 2 values. (@dakra) - 8b08a91 add support for nested filtered aggregators (@dakra)
- #40 Merge pull request #40 from se7entyse7en/dimensions_specs (@se7entyse7en)
- #41 Merge pull request #41 from se7entyse7en/hyperuniquecardinality_postaggregator (@se7entyse7en)
- 9b3aaad Added support for HyperUniqueCardinality (@se7entyse7en)
- 9e1ef9e Added tests for dimensions module (@se7entyse7en)
- 382d610 Handled dimensions building in PyDruid client (@se7entyse7en)
- fe0eaac Added dimensions specs and some extraction functions (@se7entyse7en)
- #38 Merge pull request #38 from nmckoy/js-filter (@nmckoy)
- 10a8340 camel case JavaScript (@nmckoy)
- e1604d6 support javascript filter (@nmckoy)
- #37 Merge pull request #37 from gianm/cardinality (@gianm)
- fa2ecf9 Bump version to 0.2.4 (@gianm)
- c37b7d4 Cardinality aggregator (@gianm)
- e9d6648 version 0.2.3 (@xvrl)
- #36 Merge pull request #36 from druid-io/update-links (@druid-io)
- 4481ac5 update links (@xvrl)
- 0300447 clean up .gitignore (@xvrl)
- af4d5ec s/bard/broker/ (@xvrl)
- #35 Merge pull request #35 from se7entyse7en/filters_tests (@se7entyse7en)
- e629e8b Fixed error raised in Filter class for invalid type (@se7entyse7en)
- 74435d2 Added tests for filters module (@se7entyse7en)
- #28 Merge pull request #28 from se7entyse7en/filtered_aggregation (@se7entyse7en)
- 8b8b138 Added tests for filtered aggregation (@se7entyse7en)
- 85bc393 Added support for filtered aggregator (@se7entyse7en)
- #34 Merge pull request #34 from se7entyse7en/travis_integration (@se7entyse7en)
- #32 Merge pull request #32 from se7entyse7en/some_tests (@se7entyse7en)
- 5b8e9fe Added travis configuration file (@se7entyse7en)
- 261efdb Added test_aggregators (@se7entyse7en)
- 00bb0b0 Removed unused import in test_query_utils (@se7entyse7en)
- d6af01d Fixed flake8 F403 errors in test_query_utils (@se7entyse7en)
- deb7299 Fixed pep8 E302 errors in test_query_utils (@se7entyse7en)
- 3e9a100 Fixed flake8 F403 errors in test_client (@se7entyse7en)
- c169777 Added some items to .gitignore for emacs (@se7entyse7en)
- 41c1190 Fixed pep8 E711 errors in test_client (@se7entyse7en)
- c009bca Fixed test_client so that it doesn't fail if pandas is not installed given that it is optional (@se7entyse7en)
- 5636a9e version 0.2.2, fix pypi version conflict (@xvrl)
- 41ea841 update version to 0.2.1 and fix license string (@xvrl)
- #24 Merge pull request #24 from mistercrunch/limit_spec (@mistercrunch)
- #21 Merge pull request #21 from griffy/master (@griffy)
- 616a93e Fix regressions introduced by support for Python 3 and add initial test coverage (@griffy)
- 97397d3 Adding limitSpec support to groupby query (@mistercrunch)
- #19 Merge pull request #19 from graphaelli/simplejson-optional (@graphaelli)
- faccbc0 make simplejson optional, except on python < 2.6 (@graphaelli)
- #18 Merge pull request #18 from griffy/master (@griffy)
- 28eeae4 Add support for Python 3 (@griffy)
- #17 Merge pull request #17 from mruwnik/allow_setting_of_context_options (@mruwnik)
- f2d1a24 Allow the setting of context properties in queries (@mruwnik)
- #15 Merge pull request #15 from seanv507/druid_error_output (@seanv507)
- #14 Merge pull request #14 from seanv507/having (@seanv507)
- 93b65be report druid error (@seanv507)
- 4226a66 fixed aggregation equalTo and simplified and or nesting (@seanv507)
- 92275bf added having clause to groupby queries (@seanv507)
- #13 Merge pull request #13 from whitehats/new_query_types (@whitehats)
- 602cc04 queryType 'select' (@KenjiTakahashi)
- #12 Merge pull request #12 from davideanastasia/hyperunique (@davideanastasia)
- 090eb03 Add support for HyperUnique aggregator (@davideanastasia)
- #10 Merge pull request #10 from metamx/use-relative-paths (@metamx)
- ffebcb8 restored updated intro, with restructered heads and info on finding more examples
- d5e84a7 intro now focused just on PyDruid class
- 1667132 ignoring these generated files
- e51391a rm this intruder, a file specific to Mac OSX
- 4192010 rm this intruder, a file specific to Mac OSX
- af7c90f substituting relative paths for local paths
- 752772d Update README.md (@dganguli)
- f91a5dc Update README.md (@dganguli)
- #8 Merge pull request #8 from metamx/igalpd (@metamx)
- c1b3423 changed 'bard' to 'druid'
- c4ba739 Update README.md (@dganguli)
- b398f45 Update README.md (@dganguli)
- 844047e Update README.md (@dganguli)
- #7 Merge pull request #7 from metamx/pyipyi (@metamx)
- 823c55c fix whitespace ftw
- 1fabb51 setup.cfg to make it easy to upload docs to pythonhosted.org
- 9471077 docs: rename pyDruid -> pydruid
- bc625b5 re-name pypi package from pyDruid -> pydruid
- d64a56b setup.py: upgrade version to 0.2.0, remove extraneous dependencies
- 5e6dfdb Update README.md (@dganguli)
- abfbcf2 Update README.md (@dganguli)
- d579de1 Update README.md (@dganguli)
- #6 Merge pull request #6 from metamx/docs (@metamx)
- 3df572f Update README.md (@dganguli)
- d109749 Update README.md (@dganguli)
- 3c1b726 Merge branch 'docs' of github.com:metamx/pydruid into docs
- 5da69b1 twitter graph figure for groupby example
- 1c97eb3 Update README.md (@dganguli)
- 5a19cc1 Update README.md (@dganguli)
- 32ae0f8 re-size avg tweet length figure part deux
- a39e9bc re-size avg tweet length figure
- 8f9b45d Merge branch 'docs' of github.com:metamx/pydruid into docs
- df90783 docs: created figures directory
- eb4f4a2 Update README.md (@dganguli)
- 458b82e README back to md from txt
- 6c18175 updated built documentation
- 3b61bbd documented export methods and big fix to export_tsv for topn queries
- 4961495 fix topn docstring
- 1b1f00b Filter and Postaggregator builder methods are static members of their respective classes
- 2f92ec7 more sensical docstring for PyDruid
- f49265d documented PyDruid class
- c71844b commit initial version of built docs
- 8d570e4 documented segment_metadata. fixed a bug in it too
- 1e050bc make post and parse private, made build and validate public again
- 69e9784 documented time_boundary
- 9f595df re-name kwargs dataSource -> datasource and postAggregations -> post_aggregations
- 9a995dd Added documentation for groupby and timeseries queries
- 7552dcb topN has sphinx compatible example in docstring
- 59522a7 Ignore .DS_store
- 01a8f88 build and validate query methods now private
- b44a8dc sphinx compatible documentation for client.topN
- 5464a2c Working documentatin using sphinx-quickstart
- 3023707 Each query sets its query type instead of passing it to build_query()
- 06d00da postaggregator.py: Field and Const postaggregators call super constructor
- 8605393 filters.py: bug fix to show() method
- 6c9b7d5 aggregators.py: re-name doublesum -> sum
- 51aedd1 client.py: documentatino for topN query
- ba18670 export_tsv raises NotImplementedError if necessary
- d8bc3a7 client.py:
- 3b53fec Finally read the pep-8 style guide. Fix whitespace ensued
- 61300c9 fix whitespace ftw
- b3d269a only parse query results once
- 0a15aeb client.py: bug fix export_tsv for groupBy queries
- 0d56b23 client.py:
- ac74bf6 implemented topN queries. made more informative error messages
- b660ba7 client.py: check if bard_url ends with a / before constructing full url
- 27e87cd query implementations share more post related code
- ed5a9a6 whitespace ftw
- 11321e1 Made pyDruid interoperate with PostAggregators objects
- c845eb5 Removed extraneous comments and whitespace
- 3fae2b7 Updated post-aggs to be easier to express and use
- 71e2753 Bug fix to export_pandas
- 9bc5ba6 Implemented pandas export for groupby queries
- 229355b Remove extraneous dependencies on matplotlib
- #1 Merge pull request #1 from rjurney/master (@rjurney)
- 5fb737e Working 1.7 (@rjurney)
- efa2786 Added init.py to pydruid and updated to version 0.1.5 for release. (@rjurney)
- cc99963 Trying to re-create source code. Something weird and terrible went on. (@rjurney)
- 3c9e1a0 Renaming readme. (@rjurney)
- 441e7aa Still trying to make pypi work, but I can't get the build to update on pypi. (@rjurney)
- 1cf2971 Trying to make pip install work. (@rjurney)
- 4347e69 Crap, whats going on? (@rjurney)
- 978eeaa Massive cleanup (@rjurney)
- 0e6ee14 Made the module into a package, some re-org (@rjurney)
- b43b95d Making this into a python project (@rjurney)
- 21f3b2b First code commit
- 35cd39e Add license headers
- d00f822 Update LICENSE (@xvrl)