OAIHarvest: fix path for temporary authorlists

Co-authored-by:	Jerome Caffaro <jerome.caffaro@cern.ch>
Reviewed-by: Tibor Simko <tibor.simko@cern.ch>
Merge branch 'maint-1.1'

* maint-1.1:
  OAIHarvest: fix path for temporary authorlists
BibFormat: initial release of mobile app formats

Co-authored-by: Tibor Simko <tibor.simko@cern.ch>
WebSearch: display number of hits in mobile output

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
BibFormat: author links for mobile app

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
Merge branch 'master' into next

* master:
  BibFormat: author links for mobile app
  WebSearch: display number of hits in mobile output
  BibFormat: initial release of mobile app formats
  OAIHarvest: fix path for temporary authorlists

* Merge note: amended modules/websearch/lib/websearch_fixtures.py
  with the new formats.

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
OAIRepository: no bibupload -n

* When scheduling bibuploads to add/update OAI information, remove
  the -n option, which would otherwise lead to certain records not
  been exported during incremental harvesting.

Reviewed-by: Tibor Simko <tibor.simko@cern.ch>
Merge branch 'maint-1.1'

* maint-1.1:
  OAIRepository: no bibupload -n
BibDocFile: fix for bibdoc unattached to record

* Fixes the constructor of the BibDoc class to correctly set the bibrec_types
  class atribute when the bibdoc is not attached to any record.
  (closes #1551)

Reviewed-by: Tibor Simko <tibor.simko@cern.ch>
memoiseutils: initial release

* Centralises the existing Memoise class into the new utility library.

* Adds unit test cases for Memoise.

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
BibKnowledge: optional memoisation of KBR lookups

* Offers optional memoisation of KBR lookups.  Beware, the memoised cache
  is not automatically updated if the KB changes.  Hence this is useful for
  short-lived CLI processes, not for long-lived WSGI processes.
  (addresses #1484)

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
Co-authored-by: Grzegorz Szpura <grzegorz.szpura@cern.ch>
BibIndex: synonym indexing speed up

* Speeds up synonym indexing via KB lookup memoisation.  Leaves searching
  to be done without memoisation.  (closes #1484)

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
Co-authored-by: Grzegorz Szpura <grzegorz.szpura@cern.ch>
Merge branch 'maint-1.1'

* maint-1.1:
  BibIndex: synonym indexing speed up
  BibKnowledge: optional memoisation of KBR lookups
  memoiseutils: initial release

Conflicts:
	modules/bibrank/lib/bibrank_citation_indexer.py
	modules/miscutil/lib/Makefile.am

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
Merge branch 'master' into next

* master:
  BibIndex: synonym indexing speed up
  BibKnowledge: optional memoisation of KBR lookups
  memoiseutils: initial release
  BibDocFile: fix for bibdoc unattached to record
  OAIRepository: no bibupload -n
WebBasket: new 'move item' functionality

* Adds functionality to be able to move items between baskets.
  (closes #1547)

Signed-off-by: Krzysztof Lis <krzysztof.lis@cern.ch>
Reviewed-by: Tibor Simko <tibor.simko@cern.ch>
Merge branch 'master' into next

* master:
  WebBasket: new 'move item' functionality
BibRecord: filter field instances

* Introduces new function for filtering field instances obtained
  from record.  Function returns only those field instances that
  match some-other-subfield/some-other-value criteria.  The function
  can work in 'exact', 'substring' and 'regex' mode.
  (addresses #1550)

Signed-off-by: Grzegorz Szpura <grzegorz.szpura@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
BibRecord: record_get_field_values with filtering

* Function record_get_field_values() now has additional
  parameters: filter_subfield_code, filter_subfield_value,
  filter_subfield_mode which allow to obtain only those
  field values that match certain filtering criteria.
  (closes #1550)

Signed-off-by: Grzegorz Szpura <grzegorz.szpura@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
WebBasket: 'move item' improvements

* Adds a warning when moving fails due to duplicates
  in target basket.

* 'move item' now works if a new basket is created
  during the move.

Signed-off-by: Krzysztof Lis <krzysztof.lis@cern.ch>
Tested-by: Tibor Simko <tibor.simko@cern.ch>
Merge branch 'master' into next

* master:
  WebBasket: 'move item' improvements
  BibRecord: record_get_field_values with filtering
  BibRecord: filter field instances

Conflicts:
	modules/bibrecord/lib/bibrecord_unit_tests.py

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>