Use session_log when possible
[pazpar2-moved-to-github.git] / NEWS
diff --git a/NEWS b/NEWS
index d818d3f..f9678bf 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,261 @@
+--- 1.6.25 2013/02/07
+
+Fix hang of 2nd command=show with esn/syntax given.
+
+--- 1.6.24 2013/01/18
+
+New merge attribute type: 'first', which takes all metadata fields
+from first target that returns the particular field.
+
+--- 1.6.23 2013/01/02
+
+Extend info command with hostname and YAZ SHA1
+Indent results for both command stat and info.
+
+Allow limit on merged content. The new configuration metadata
+element, limitcluster, configures that a metadata element (name) be used
+as limit name for search. Applies to the whole service (ie all targets),
+unlike pz:limitmap which is configured per-target (database).
+
+New feature: limitmap local:* matches against all metadata fields.
+
+Allow repeated list in limitmap spec . Separated by comma. For
+example: value="local:title,rpn:@attr 1=4".
+
+New element <message> in bytarget response. Holds diagnostic message
+of code (say 'Unsupported Use Attribute' for Bib-1 114).
+
+Improved logging for record ingestion failures.
+
+Avoid using struct icu_chain in non-YAZ_HAVE_ICU mode. In the rare case,
+when YAZ is compiled without ICU support.
+
+--- 1.6.22 2012/10/11
+
+Requires YAZ-4.2.40 to support native solr support. 
+
+Fix and improve logic handling whether or not to re-do search on sort 
+order changes. A sort order with change in ascending/descending only 
+whould not trigger a new search, which is required for targets with 
+native sorting capabilities. Each client is now checked if instructions
+(sortmap) exist for native sorting and only client that does requires 
+it is researched. Other clients is just re-ingesting the records, 
+they already have. The resultset is now cleared if any researching 
+is done. 
+
+Connection sharing between session has broken since version 1.6.8 with 
+introduction of logic that would minimize searching if pazpar2 could 
+detect this based on same query and limits and partly sort order. 
+This could lead to segementations violations.
+
+Added a chapter in the manaul about relevance ranking.
+
+--- 1.6.21 2012/09/24
+
+Rank tweak: follow=number will increase mult by number if two terms
+occur next to each other; number-1 if they are one term apart , .. 0
+if they are number a part (all in order). Default is 0 (following
+terms has no effect).
+
+Rank tweak: lead=k will divide mult by 1 + log2(1+k*l) where k is
+value given by lead and l is length from beginning of field where
+term occurs (l=0 for first term, l=1 for second term, ..). Default
+value of k is 0.0.
+
+Rank tweak: length=strategy. length="linear" if mult is to be divided
+by length (existing, default behavior), length="log" if mult is to be 
+divided by log2(1+length), length="none" if mult is not to be affected
+by length.
+
+--- 1.6.20 2012/09/21
+
+Rank algorithm details may be printed as part of show response in
+element <relevance_info>.. This is only printed if <rank debug="yes"/>
+is used in service.
+
+Record as returned by show/record command have a minimal indentation
+which makes things human-readable.
+
+New configuration of default sorting criteria (sort-default) in 
+service definition. If no criteria is defined it will be as before
+'relevance'. 
+
+Search command now supports sort parameter just as the show command. 
+If no parameter is give, it will use the service sort-default value.
+
+--- 1.6.19 2012/09/18
+
+Rank algorithm skips strings that gets normalized to empty string.
+For example, & and ! could map to the empty string. The weight for
+those terms is now 0 (as if they were not part of the query).
+
+Rank algorithm does not use CCL from limitmap; only from the query
+parameter (user query).
+
+Obey -w dir.
+
+--- 1.6.18 2012/09/17
+
+Rank algorithm configurable by 'rank' element inside service. So far
+only, attribute 'cluster' is recognized. If cluster="yes", multiple
+records inside a cluster boosts higher than single records. This
+is default behavior and existing behavior. cluster="no" takes the
+average score of each record in a cluster.
+
+--- 1.6.17 2012/09/05
+
+Fix bad re-use of connections (connections with changing proxy should not
+be reused).
+
+--- 1.6.16 2012/08/22
+
+Fix a bug introduce in 1.6.15 around the position sorting. It resetted the 
+resultset and sorting when the sort order is position. However this will be done on
+every client poll, which will make pazpar2 continuing reset and fetching. 
+It should only be done on FIRST request where the sort order change. 
+
+Fix an issue on suggestion option: Also disable suggestions on empty string. 
+
+Clean up in turbo marc stylesheet. 
+
+Remove the hardcoded size of termlists.
+
+--- 1.6.15 2012/06/27
+
+New facility: ccldirective may be given in service definition. Allows
+CCL parsing to be customized a bit, such as defining names of operators
+and, or, not.
+
+New facility: raw record by checksum, rather than offset. The record
+command optionally takes checksum which identifies certain record from
+a database.
+
+New facility: per field ranking. Rank may be given as M [F N] where
+M is default rank and N is rank for CCL terms from field F.
+
+--- 1.6.14 2012/06/04
+
+Fix for IE7/8 in pz.js
+
+Applied patch from Giannis Kosmas on keepAlive, which also adds keepAlive to init response. 
+
+Lower log level some places.
+
+Remove some invalid test results. 
+
+--- 1.6.13 2012/05/23
+
+Introducing a version=2 parameter for show, termlist and bytarget commands.
+This enables pazpar2 to return approximation on hit and count count when 
+doing record filtering using the limit parameter on search and a 
+limitmap with a value of "local:"
+
+Setting pz:xslt may embed local XSLT as an alternative to referring
+to filenames.
+Value is not CDATA but XML nodes embedded, so escaping is not necessary
+but a root element *must* be present. For example:
+<settings target="target="z3950.indexdata.com/marc">
+     <set name="pz:xslt">
+       <xsl:stylesheet
+          version="1.0"
+        ..
+       </xsl:stylesheet>
+     </set>
+    </settings>
+
+Metadata field rank may given by XML internal document (pz:xslt
+result). If rank is not given, the rank from service description is
+used - as before.
+
+Metadata field can now configured a default limitmap and facetmap. 
+Setting limitmap to "local:" would work for all kind of targets, but would
+prob. not be the optimal solution. But at least better than the default behavior 
+of pazpar2 where no filtering is done. 
+
+A service definition can now also contains <set/> that defines service-wide
+settings. These will override server-wide sets and will be overridded by 
+settings.
+
+New setting, pz:present_chunk, that specifies number of records to fetch
+at a time. Zero will disable chunkation; will fetch max_records at once.
+
+--- 1.6.12 2012/03/14
+
+Revert the format change in termlist response, that could break 
+some clients / UIs since they were expecting an (empty) element 
+if no facet values was found. 
+
+--- 1.6.11 2012/03/07
+
+Revert the behavior of returning errors when unable to block 
+on termlist, bytarget and search, when unable to block due to 
+other block. The client will now receive a regular response, 
+but it will be logged in the server. A parameter (report) is
+added to change behavior to return error response or WARNING 
+status message. Consider this "API" as private, as it is mostly 
+untested and could be changed in future releases. 
+
+Fix spell error in pz2.js fix in 1.6.10.
+
+New Marc2TurboMarc.xsl (contribution from Sven Porst). 
+Can solve the missing marc21.xsl updates in some cases. 
+
+tmarc.xsl: Simplify the 6xx to subject-long and fix 1-based 
+substring (contribtion from Sven Porst)
+
+marc21.xsl: fix 1-based substring call
+
+tmarc.xsl and marc21.xsl: use 856$a as last option for electronic-text. 
+
+Add test_termlist_block to test suite
+
+--- 1.6.10 2012/02/23
+
+Fix SEGV for invalid PQFs and SRU/SOLR targets
+Also refactor a bit the code that converts from PQF to SRU/SOLR queries.
+
+Fix pz2.js: "null object" due to change in in bytarget result XML.
+
+Fixes in tmarc.xsl: Subject-long shorten for extra commas only. 
+Added this normalization to the other subject-long fields (d6xx), 
+where it was missing.
+
+Fixes in marc21.xsl: Updated with most of the new tmarc.xsl. 
+Still differences around medium and holdings. marc21.xsl is not 
+longer active used by Index Data, and should be considered unsupported.
+Use tmarc.xsl instead. 
+
+--- 1.6.9 2012/01/19
+
+Fix SEGV that could occur for failed connections.
+
+--- 1.6.8 2012/01/17
+
+Fix bug for command sort that could return no results for active clients
+(from previous search). This bug was present in 1.6.6-1.6.7.
+
+Fix bug in results that could include results that should have been
+filtered out. This bug was present in 1.6.6-1.6.7.
+
+--- 1.6.7 2011/12/23
+
+Fix bug introduced in 1.6.6 where a connection re-use could stall
+incoming requests.
+
+Local filtering may now specify a local metadata field, eg.
+ pz:limitmap:somefield[t]=local:otherfield
+
+--- 1.6.6 2011/11/25
+
+For search, when limit and or filtering is in place and search
+is identical to previous search, the result set is re-used and the
+target is not searched.
+
+Limits may work perform local filtering as well, by using "local:"
+for a limitmap.
+
 --- 1.6.5 2011/11/01
 --- 1.6.5 2011/11/01
+
 Updated bytarget command to contain a suggestions element with misspelled
 words and suggestions to these. pz2.js has been updated to deliver this 
 onwards as well. Only target that currently delivers this is the solr 
 Updated bytarget command to contain a suggestions element with misspelled
 words and suggestions to these. pz2.js has been updated to deliver this 
 onwards as well. Only target that currently delivers this is the solr