scorched 0.13.0
solr search orm like query builder
License: MIT
Keywords: solr tow sunburnt offspring

Scorched
========

Scorched is a sunburnt offspring and like all offspring it tries to make
things better or at least different.

Git Repository and issue tracker: https://github.com/lugensa/scorched

Documentation: http://scorched.readthedocs.org/en/latest/

.. |travisci| image::  https://travis-ci.org/lugensa/scorched.png
.. _travisci: https://travis-ci.org/lugensa/scorched

.. image:: https://coveralls.io/repos/lugensa/scorched/badge.png
    :target: https://coveralls.io/r/lugensa/scorched

|travisci|_

.. _Solr : http://lucene.apache.org/solr/
.. _Lucene : http://lucene.apache.org/java/docs/index.html


Following some major differences:

- No validation of queries in client code (make code much more lightweight)

- Send and receive as json. (Faster 20k docs from 6.5s to 1.3s)

- API is more lightweight e.g. ``add`` consumes now only dicts.

- Wildcard search strings need to be explicitly set.

- Python 3

- Drops support for Solr < 4.3.0

- ...


Local testing
=============

First checkout the sources::

  https://github.com/lugensa/scorched.git

Now create a virtual-env and install some dependencies::

  cd scorched
  virtualenv ./
  bin/pip install -e .
  bin/pip install -e .[test]

Start the Solr server to test against::

  # DEBUG=true|false: verbose output of Solr server on|off
  # SOLR_VERSION=x.y.z (the version to test against)
  # the Solr startup script reports the pid of the Solr process
  SOLR_VERSION=4.10.2 SOLR_PORT=44177 DEBUG=true SOLR_CONFS="scorched/tests/solrconfig.xml" ./testing-solr.sh

  # stop Solr
  kill -9 $pid

Running the tests::

  SOLR_URL=http://localhost:44177/solr/core0 ./bin/nosetests -s scorched


CHANGES
=======

0.13.0 (2020-01-25)
-------------------

- Add support for Python 3.6, Python3.7 and Python 3.8 (ale-rt)


0.12 (2017-03-16)
-----------------

- Add extract handler support (mamico)

- Allow user to pass an http_connection to SolrInterface ctor (quinot)

- ``BaseSearch`` has now a ``count`` function (mlissner)

- Support atomic updates (ale-rt)


0.11.0 (2016-10-11)
-------------------

- Highlighting is now available in the result documents as the
  ``solr_highlights`` field (mlissner)

- smaller documentation cleanup


0.10.2 (2016-09-27)
-------------------

- Fix is_iter implementation #30 (mamico)

- Multi-value date fields work (mlissner)

- Fixes error in the readme so that DEBUG mode works as documented (mlissner)


0.10.1 (2016-06-15)
-------------------

- Fixing setup.py classifier.


0.10 (2016-06-15)
-----------------

- Return response for update actions (mamico)

- Add support for Solr cursors (Chronial)

- Added stats option (rlskoeser)


0.9 (2015-11-09)
----------------

- Better check datetime dynamicfields (mamico)

- RealTime Get (Chronial)

- TermVector support (Chronial)


0.8 (2015-08-26)
----------------

- use compat.basestring over compat.str in date convert (mamico)

- remove test from core requirements (mamico)

- added search_timeout paramter to SolrConnection (mamico)

- fix. Do not alter documents while adding new documents


0.7 (2015-04-17)
----------------

- Test against Solr 4.10.2 and added Python 3.4 to travis.

- Added support for dismax queries.

- Added support edismax field aliases.

- Added support for facet ranges.


0.6 (2014-06-23)
----------------

- Add spellchecking for scorched queries. (#9707)


0.5 (2014-06-05)
----------------

- Add `debugQuery` parameter to search. (#9903)

- Add possibility to specify the request handler to use per query. (#9704)


0.4.1 (2014-04-16)
------------------

- Fixed again fields in field_limiter.


0.4 (2014-04-16)
----------------

- Fixed fields convert to arrays.

- Added FacetPivotOptions.

- Added PostingsHighlightOptions.

- Added boundaryScanner to HighlightOptions.


0.3 (2014-04-03)
----------------

- Makes SolrResponse iterable.


0.2 (2014-03-24)
----------------

- Added more tests

- Added description in setup.py


0.1 (2014-03-20)
----------------

- Python 3

- Cleaner api moved redundant functions

- Cleaner api removed filter_exclude use ~si.Q()

- Cleaner api removed exclude use ~si.Q()

- Fixed mlt_search (mlt component and handler)

- Removed mx.DateTime

- Removed redundant more_like_this

- Offspring of sunburnt is born