Changelog History
Page 1
-
v3.9.0 Changes
April 17, 2020- π Improved SolrCloud support
- π Support for Solr.ping
- β¬οΈ Dropped support for Python 3.4
- β Added JSON interface which can be significantly faster
-
v3.8.1 Changes
December 13, 2018extract()
handles spaces and special characters in filenames- Python
set()
instances are handled automatically just like lists - β‘οΈ Updates no longer commit by default
-
v3.8.0
June 05, 2018 -
v3.7.0
December 15, 2017 -
v3.6.0
November 01, 2016 -
v3.5.0 Changes
May 24, 2016π New
- π¦ Expose the full Solr response in `Results` [Chris Adams] This makes life easier for anyone using custom extensions by removing the need to create a `Results` subclass just to get access to an extra dictionary key. - More flexible control of request handlers. [nuarhu] This allows configuring the default search handler and overriding it for every query method Thanks to @nuarhu for the patch - Start maintaining a changelog from gitchangelog. [Chris Adams] - Overwrite flag for Solr.add (closes #182) [Chris Adams] Thanks to @robinsonkwame for the patch - π SolrCloud support (see #138) [Chris Adams] This optionally adds support for SolrCloud using the Kazoo client library. Thanks to @upayavira Other
V3.5.0. [Chris Adams]
Merge pull request #192 from dhruvpathak/optimize_commit_flag. [Chris Adams]
chg:
optimize()
also acceptscommit
flagβ‘οΈ Included commit flag in optimize() to let optimize call run with or without commit. [dhruv.pathak]
π Merge pull request #188 from TigorC/master. [Chris Adams]
Removed py26 from tox.ini
β Removed py26 from tox.ini. [Igor Tokarev]
π· Tests: avoid timeout-based CI failures. [Chris Adams]
These caused sporadic CI build failures and werenβt otherwise testing actual functionality since we donβt have a test which does something like SIGSTOP the test Solr server long enough to confirm a timeout.
Weβll confirm that the timeout is passed through but otherwise use the defaults.
β‘οΈ Update Travis CI badge in the README. [Chris Adams]
π Merge pull request #184 from atuljangra/master. [Chris Adams]
Correct documentation for
_update
Thanks to @atuljangra for the patch!
π Merge branch 'master' of https://github.com/atuljangra/pysolr. [atuljangra]
Misleading comments. [atuljangra]
π Travis: use build matrix for regular and SolrCloud tests. [Chris Adams]
π Test_cloud: remove dead code. [Chris Adams]
The first instance of test_custom_results_class was broken because it used the wrong port but this wasnβt failing because the same method name was redefined further down in the file and that used the updated port config.
PEP-8. [Chris Adams]
π² ZooKeeper: log unexpected format changes to watched aliases. [Chris Adams]
βͺ ZooKeeper: restore JSON blob decoding. [Chris Adams]
PEP-8. [Chris Adams]
PEP-8 unused imports. [Chris Adams]
PEP-8. [Chris Adams]
PEP-8. [Chris Adams]
PEP-8. [Chris Adams]
Setup.cfg: add pep8 and isort config. [Chris Adams]
Tear down requests.Session instance at close. [Chris Adams]
This avoids log-spew on modern unittest implementations which report unclosed file handles at the end of a run.
β Remove Python 2.6 from Travis test matrix. [Chris Adams]
Add future absolute_import. [Chris Adams]
This is currently moot but avoids any chance of regression between Python 2.x and 3.x.
PEP-8. [Chris Adams]
β¬οΈ Drop support for Python 2.6. [Chris Adams]
We have some old import dances and other overhead for Python 2.6 support, which the CPython developers dropped support for in 2013:
http://www.curiousefficiency.org/posts/2015/04/stop-supporting-python26.html
- π Allow queries to be directed to different search handlers. [Chris Adams]
The
search
method now allows you override the defaultselect
handler when your Solr instance has multiple search handlers.Thanks to @k-patel for the patch.
Closes #174 Closes #175
-
v3.4.0 Changes
February 02, 2016β‘οΈ Update version numbers for v3.4.0. [Chris Adams]
π² Logging: better message for HTTP status != 200. [Chris Adams]
We already extract error message from Solr responses and that is great. Unfortunately it can contain the data that may change with every request (like document id).
This creates an issue when user uses Sentry or other solution that captures logging or exceptions. Previous implementation causes many duplicated events in Sentry if message extracted using
self._extract_error(resp)
contained such variable data.This change uses 'non-mutable' message that is complemented with extracted data that using string formatting option supplied by Python logging. Thanks to this, Sentry and other solutions can perform better grouping of loging messages (by status code).
This is approach that is already used in handling other errors.
- π Fix response error handling on Python 3 (closes #162) [Chris Adams]
Previously the error handling did not work correctly on Python 3 because a byte-string response wasn't decoded before processing.
Thanks to Emmanuel Leblond (@touilleMan) for the patch.
- π Merge pull request #167 from swistakm/master. [Chris Adams]
Refactor common response processing to Results class
π Move response manipulation responsibility to Results class and allow custom results classes. [mjaworski]
β Add Python 3.5 to automated test matrix. [Chris Adams]
-
v3.3.3 Changes
October 24, 2015V3.3.3. [Chris Adams]
π Fix response error handling on Python 3 (closes #162) [Chris Adams]
Previously the error handling did not work correctly on Python 3 because a byte-string response wasn't decoded before processing.
Thanks to Emmanuel Leblond (@touilleMan) for the patch.
β¬οΈ Tests: upgrade Solr to 4.10.4. [Chris Adams]
- Resync test Solar script with django-haystack These are still not quite the same; at some point it would be nice to look into a common tool which both projects could use
- Update Solr configuration script to set correct libpath for solr-cell to avoid lazy-load failures during testing as was reported on e.g. #162
β‘οΈ Tests: update Solr download script for recent API change. [Chris Adams]
π Merge pull request #142 from yspanchal/master. [Chris Adams]
Add support for cursormark pagination
- β Added cursormark deep pagination support. [Yogesh Panchal]
-
v3.3.2 Changes
May 26, 2015π Version 3.3.2. [Chris Adams]
Python 2.6 backwards compatibility. [Chris Adams]
Python 2.6 shipped with ElementTree 1.2.x. Among other differences, it lacks support for the attribute selectors used to process valid XML error messages, which was added in ElementTree 1.3.
- π Merge pull request #155 from domenkozar/solr4/exceptions. [Chris Adams]
Support Solr 4 XML error format parsing
Thanks @domenkozar for the patch
Overhaul Travis config. [Chris Adams]
- Sidestep use of Tox in favor of Travis-managed Python versions
- Enable container-based builds
- Enable caching for Solr server downloads
β Use builtin unittest2 runner on Python 2.7 as well. [Chris Adams]
Simple error extraction. [Chris Adams]
Previously pysolr depended on lxml and cssselect to extract text from Tomcatβs error messages, which was unreliable.
This change uses regular expressions to deal with invalid XML rather than lxmlβs salvaging parser and avoids having to maintain the code which attempted to find the main error message in tag soup
Closes #149
- β‘οΈ Update test Solr download script to work with default Python 3. [Chris Adams]
-
v3.3.1 Changes
May 12, 2015π Version 3.3.1. [Chris Adams]
π Prepare for 3.3.1 release. [Chris Adams]
Convert all HTTP client errors to SolrError. [Chris Adams]
This commit ensures that an outside caller can handle all HTTP-related errors by catching SolrError without knowing whether the exception class is owned by requests, urllib3, or httplib.
- Merge pull request #146 from gryphius/fix_doc_typo. [Chris Adams]
Fix typo in ExtractingRequestHandler documentation
Thanks @gryphius
Doc fix: a very simply model -> a very simple model. [Oli]
β‘οΈ Merge pull request #139 from upayavira/feature/no-optimize. [Daniel Lindsley]
Optimize is no longer recommended
- β‘οΈ Optimize is no longer recommended. [Upayavira]
Since Solr 3.6, Solr has used the TieredMergePolicy which makes, in most scenarios, optimization a harmful rather than beneficial step.