Commit graph

394 commits

Author SHA1 Message Date
Daniel Siepmann e960f4595b
TASK: Add breaking change documentation
Also order changelog entries news first.
2018-03-08 09:57:32 +01:00
Daniel Siepmann a965b745ec Merge remote-tracking branch 'origin/develop' into feature/cleanup 2018-03-08 09:50:52 +01:00
Daniel Siepmann 2a8f993721
Merge pull request #126 from Codappix/feature/119-allow-range-queries-for-elasticsearch
FEATURE: 119 allow range queries for elasticsearch
2018-03-08 09:48:53 +01:00
Daniel Siepmann 7b336f3fa5
Merge branch 'develop' into feature/119-allow-range-queries-for-elasticsearch 2018-03-08 09:27:58 +01:00
Daniel Siepmann 8560f00956
Merge pull request #125 from Codappix/feature/add-display-name-to-facet
FEATURE: Support display name for facet option
2018-03-08 09:27:49 +01:00
Daniel Siepmann e98b9ee4fc
Merge branch 'develop' into feature/add-display-name-to-facet 2018-03-08 09:19:49 +01:00
Daniel Siepmann 30a833ce68
TASK: Add branch alias to provide version number
Allow to require extension with 1.0.0, if dev is allowed.
2018-03-08 08:29:05 +01:00
Daniel Siepmann 89065305c4
Merge branch 'feature/add-display-name-to-facet' into feature/cleanup
Conflicts:
    Classes/Connection/Elasticsearch/FacetOption.php
    Classes/Connection/FacetOptionInterface.php
2018-03-08 07:51:44 +01:00
Daniel Siepmann 9a2d2734f2
TASK: Switch to new php scurtinizer engine 2018-03-06 17:58:27 +01:00
Daniel Siepmann 8d930448e0
TASK: Fix scurtinizer issues 2018-03-06 17:58:19 +01:00
Daniel Siepmann 560597dcff
TASK: Cleanup type annotations and phpstan issues 2018-03-06 17:40:49 +01:00
Daniel Siepmann 88f301f228
FEATURE: Allow range queries for elasticsearch
Allow "raw" configuration and support "range" type.

Also prevent adding boosts if no search term was submitted which can be
boosted.

Resolves: #119
2018-03-06 16:42:22 +01:00
Daniel Siepmann 6544ec07d3
FEATURE: Support display name for facet option
As some search services, like elasticsearch, allow generation of a
string that should be displayed in frontend, we provide a new getter for
that.
The old existing name can be a fallback in custom implementations.
2018-03-06 16:41:54 +01:00
Daniel Siepmann 74e5f6d432
Merge pull request #127 from Codappix/hotfix/cgl
TASK: Fix CGL
2018-03-06 16:40:42 +01:00
Daniel Siepmann 3731bcf474
TASK: Fix CGL 2018-03-06 16:39:07 +01:00
Daniel Siepmann 6ac2680211
Merge pull request #101 from Codappix/feature/phpcs-travis
Feature: Run phpcs on travis
2018-03-06 15:11:46 +01:00
Daniel Siepmann fa2b11f276
Merge pull request #123 from Codappix/feature/118-dataprocessor-adapter
FEATURE: 118 dataprocessor adapter
2018-03-06 14:02:10 +01:00
Daniel Siepmann 951edf3871
Merge pull request #122 from Codappix/feature/116-execute-dataprocessor-on-result
FEATURE: 116 execute dataprocessor on result
2018-03-06 13:47:35 +01:00
Daniel Siepmann 6456f31503
TASK: Make test more readable
Make sure everyone knows what we compare, do not add hardcoded
information.
2018-03-06 13:23:08 +01:00
Daniel Siepmann ae51de9041
Merge remote-tracking branch 'origin/develop' into feature/phpcs-travis
Conflicts:
    Classes/Hook/DataHandler.php
2018-03-06 13:17:29 +01:00
Daniel Siepmann a893303939
TASK: Improve ResultItemTest
Do not repeat content, use variable which is also better to read.
And do not add unnecessary, unused, variables.
2018-03-06 13:04:42 +01:00
Daniel Siepmann 42c9ae026f
Merge pull request #124 from Codappix/feature/120-pass-facets-configuration
!!!|FEATURE: 120 Pass facet configuration to search service
2018-03-06 12:59:50 +01:00
Daniel Siepmann 5d1e7c41bc
!!!|FEATURE: Pass facet configuration to search service
Do not limit integrator in possibilities to configure.

Therefore previously configure facets for a field need to be adjusted to
contain full configuration for elasticsearch. See changelog.

Resolves: #120
2018-03-06 12:05:32 +01:00
Daniel Siepmann 04aaad12fe
FEATURE: Provide ContentObjectDataProcessorAdapterProcessor
Allow integrator to execute any existing data processor for content
objects.

Resolves: #118
2018-03-06 11:16:00 +01:00
Daniel Siepmann f0e58afe01
Merge remote-tracking branch 'origin/develop' into feature/116-execute-dataprocessor-on-result
Conflicts:
    Classes/Domain/Index/AbstractIndexer.php
    Documentation/source/configuration/indexing.rst
    Tests/Unit/Domain/Index/AbstractIndexerTest.php
2018-03-06 10:52:06 +01:00
Daniel Siepmann 176c466d7e
TASK: Update documentation for data processing 2018-03-06 10:47:14 +01:00
Daniel Siepmann 0210110ccf
TASK: Add test for applied data processing on search result 2018-03-06 10:26:39 +01:00
Daniel Siepmann 45bb12cf51
TASK: Add tests for search result model 2018-03-06 09:44:26 +01:00
Daniel Siepmann cf91251be3
TASK :Add tests for SearchRequest
Make sure exceptions with helpful messages are thrown if one object is
missing when execute is called.

Also make sure the expected methods are called.
2018-03-06 09:36:39 +01:00
Daniel Siepmann 79aba3c544
TASK: Add test cases for ResultItem Model
Check whether all methods work as expected.

E.g. we can retrieve data in all ways, but not change anything.
2018-03-06 09:19:09 +01:00
Daniel Siepmann 769fb8237b
TASK: Add data processing to search result
Search results are now processed through data processing by search
service. The result will be a SearchResult model from our domain. Also
SearchResult will execute new queries, e.g. from paginate widget,
through SearchService to apply data processing again.

Remove duplicate stub code to trait, to keep own logic and code clean.
2018-03-06 09:04:47 +01:00
Daniel Siepmann 2998c43ba8
TASK: Refactor data processing
Use own service to handle data processing. Classes like indexer should
not know anything about the structure and how to process the data.

Also rename record to data, as we can process just any data in form of
an array.

Relates: #116
2018-03-01 08:03:51 +01:00
Daniel Siepmann 3bfe55cd33
Merge pull request #121 from Codappix/feature/117-use-extbase-object-manager-for-dataprocessor
FEATURE: Use extbase for processor instantiation
2018-02-27 19:53:57 +01:00
Daniel Siepmann 350f8a52b6
FEATURE: Use extbase for processor instantiation
This way injects will be resolved inside of processors, enabling
developers to inject dependencies.

We use inject instead of constructor as indexers mostly will change the
constructor and should not need to add the objectmanager.

Resolves: #117
2018-02-27 14:47:22 +01:00
Daniel Siepmann fef2bdac89
Merge pull request #115 from Codappix/feature/112-resolve-relations-for-new-records
BUGFIX: Allow indexing of new records with their relations
2018-02-23 10:20:58 +01:00
Daniel Siepmann f997717d03
Merge pull request #114 from Codappix/feature/support-php70
TASK: Support PHP 7.0
2018-02-23 10:20:46 +01:00
Daniel Siepmann 47b3282034
BUGFIX: Allow indexing of new records with their relations
Relations were inserted by TYPO3's DataHandler after indexing and were
therefore not indexed.

We now use a later hook after DataHandler has finished everything, so we
know that we can index. As it's not relevant, we do not differentiate
between add and update anymore, as both trigger "indexDocument" internal.

Resolves: #112
2018-02-22 22:14:44 +01:00
Daniel Siepmann ebaeaf4c92
TASK: Support PHP 7.0
As some (e.g. debian) do not provide PHP 7.1 and we did not use so much
features which were introduced in PHP 7.1, we add support for PHP 7.0.
2018-02-22 21:59:13 +01:00
Daniel Siepmann f42b58bdcf
Merge pull request #113 from Codappix/hotfix/111-do-not-register-elasticsearch-by-default
FEATURE: Allow to disable elasticsearch integration
2018-02-22 21:32:19 +01:00
Daniel Siepmann 92af364b8d
FEATURE: Allow to disable elasticsearch integration
This extension currently ships with Elasticsearch integration which is
enabled by default. This behaviour is kept for backwards compatibility.
Still you now have the possibility to disable this integration in
extension manager, just check the "disable" box for elasticsearch.

In the future elasticsearch will become another extension and no default
is shipped with search_core. But for now, as we are still in alpha /
beta phase we keep things together to keep development fast.

Resolves: #111
2018-02-22 20:56:51 +01:00
Daniel Siepmann ebf722a03e TASK: Fix license for packagist 2018-01-30 14:35:31 +01:00
Daniel Siepmann 33d4116fe6 TASK: Fix license for packagist 2018-01-30 14:33:18 +01:00
Justus Leon Moroni 07c9d5a136
Merge pull request #107 from Codappix/hotfix/fix-frontend-issue-with-relation-resolver
BUGFIX: Make BackendUtility usable in frontend
2018-01-30 10:29:45 +01:00
Justus Moroni c994a32ac1 BUGFIX: Make BackendUtility usable in frontend
BackendUtility used LanguageService which only works
in the backend.
Extend BackendUtility and use TSFE instead.
2018-01-29 22:49:29 +01:00
Daniel Siepmann bdecbf9699 TASK: Fix license for packagist 2018-01-29 22:46:47 +01:00
Daniel Siepmann 9cad547b09
Merge pull request #105 from Codappix/feature/configure-fields-to-search
FEATURE: Provide new feature to configure fields to search in
2017-12-04 21:36:29 +01:00
Daniel Siepmann 5ba860b8de
TASK: Add new test covering new feature 2017-11-29 20:00:10 +01:00
Daniel Siepmann e3151e802c
TASK: Fix broken unit tests
Adjust tests to match new queries built with multiple fields.
2017-11-29 19:52:10 +01:00
Daniel Siepmann 0006148a52
TASK: Fix broken functional tests
Add new default TypoScript to not break tests.
2017-11-29 19:43:16 +01:00
Daniel Siepmann 02ef86b67b
FEATURE: Provide new feature to configure fields to search in
This enables you to search only in some fields.
Also if some fields contain mapping, you can add them in addition to
e.g. `_all`.
2017-11-29 18:57:09 +01:00