Skip to content

Releases: groonga/groonga

Groonga 15.1.4 - 2025-07-29

29 Jul 02:22
Compare
Choose a tag to compare

In this release, we fixed a bug in the interval calculation between phrases in *ONPP operator.

Improvements

[Ordered near phrase product search] Fixed a bug in the interval calculation between phrases

This problem may occur when we use *ONPP with MAX_ELEMENT_INTERVAL such as *ONPP-1,0,10"(abc bcd) (defg)".
If you don't use MAX_ELEMENT_INTERVAL, this problem doesn't occur.

Please refer to the following links for usage and syntax of *ONPP.

  • [*ONPP in query syntax] query-syntax-ordered-near-phrase-product-search-condition
  • [*ONPP in script syntax] script-syntax-ordered-near-phrase-product-search-operator

If this problem occurs, the following things may happen.

  • Groonga may return records that shouldn't be matched.
  • Groonga may not return records that should be matched.

Contributors

$ git shortlog -sn v15.1.3..
    10	Horimoto Yasuhiro
     2	Abe Tomoaki

Translations

Groonga 15.1.3 - 2025-07-18

18 Jul 07:36
Compare
Choose a tag to compare

Improvements

[Apache Arrow] Added support for Apache Arrow C++ 21.0.0

Contributors

$ git shortlog -sn v15.1.2..
    13	Horimoto Yasuhiro
     2	takuya kodama
     1	Abe Tomoaki
     1	Sutou Kouhei

Translations

Groonga 15.1.2 - 2025-07-07

07 Jul 05:51
Compare
Choose a tag to compare

Improvements

[Windows] Drop support for Groonga package that is built with Visual Studio 2019

We don't provide the following packages since this release.

  • groonga-xx.x.x-x64-vs2019.zip
  • groonga-xx.x.x-x64-vs2019-with-vcruntime.zip

Fixes

[Near phrase search] Fixed a bug that interval between phrases calculation

This problem may occur when we use *NP, *NPP, or *ONP with MAX_ELEMENT_INTERVAL as below.

  • *NP-1,0,12,11"abc ef"
  • *NPP-1,0,10,9"(abc bcd) (ef)"
  • *ONP-1,0,5|6 "abc defghi jklmnop"

If you don't use MAX_ELEMENT_INTERVAL, this problem doesn't occur.

Please refer to the following links about usage and syntax of *NP, *NPP, or *ONPP.

  • [*NP in query syntax] query-syntax-near-phrase-search-condition
  • [*NP in script syntax] script-syntax-near-phrase-search-operator
  • [*NPP in query syntax] query-syntax-near-phrase-product-search-condition
  • [*NPP in script syntax] script-syntax-near-phrase-product-search-operator
  • [*ONPP in query syntax] query-syntax-ordered-near-phrase-search-condition
  • [*ONPP in script syntax] script-syntax-ordered-near-phrase-search-operator

If this problem occurs, the following things may happen.

  • Groonga may return records shouldn't be a hit.
  • Groonga may not return records that should be returned as hits.

Contributors

$ git shortlog -sn v15.1.1..
    24	Abe Tomoaki
    19	Horimoto Yasuhiro
    10	takuya kodama
     2	Sutou Kouhei

Translations

Groonga 15.1.1 - 2025-06-02

02 Jun 11:57
Compare
Choose a tag to compare

This release updates TokenMecab to preserve user-defined entries with spaces as
single tokens.

Improvements

token_mecab: Fix unintended splitting of user-defined entries with spaces

Previously, token-mecab split user-defined entries containing spaces
(e.g., "search engine") into separate tokens ("search" and "engine"). This
release fixes this issue, so entries with embedded spaces are now preserved and
handled as single tokens like "search engine" as follows.

tokenize TokenMecab "search engine" --output_pretty yes
[
  [
    0,
    1748413131.972704,
    0.0003032684326171875
  ],
  [
    {
      "value": "search engine",
      "position": 0,
      "force_prefix": false,
      "force_prefix_search": false
    }
  ]
]

Fixes

Fixed many typos in documentation

GH-2332,
GH-2333,
GH-2334,
GH-2335,
GH-2336,
GH-2337,
GH-2338

Patched by Vasilii Lakhin.

Thanks

  • Vasilii Lakhin

Contributors

$ git shortlog -sn v15.0.9..
     9	takuya kodama
     7	Vasilii Lakhin
     6	Sutou Kouhei
     2	Abe Tomoaki
     2	Horimoto Yasuhiro

Translations

Groonga 15.0.9 - 2025-05-08

08 May 11:49
Compare
Choose a tag to compare

This release adds the tokenizer's option to make token inspection simpler and
improves negative-division semantics for unsigned integer.

Improvements

tokenize/table_tokenize: Added tokenize-output-style option

This tokenize-output-style option to the
tokenize/table_tokenize
command makes it easier to focus on the tokens when you don’t need the full
attribute set.

Here is example of using tokenize-output-style option.

tokenize TokenNgram "Fulltext Search" --output_style simple
[
  [
    0,
    1746573056.540744,
    0.0007045269012451172
  ],
  [
    "Fu",
    "ul",
    "ll",
    "lt",
    "te",
    "ex",
    "xt",
    "t ",
    " S",
    "Se",
    "ea",
    "ar",
    "rc",
    "ch",
    "h"
  ]
]

Clarified X / negative value semantics

Previously, only dividing X by -1/1.0 returns -X for unsigned integers.
From this release, dividing by any negative value will yield the mathematically
expected negative result as follows.

  • Before: X / -2 might not return -(X / 2).
  • After: X / -2 always returns -(X / 2).

This is a backward incompatible change but we assume that no user depends on
this behavior.

Contributors

$ git shortlog -sn v15.0.4..

Translations

Groonga 15.0.4 - 2025-03-29

28 Mar 08:14
Compare
Choose a tag to compare

Improvements

Clarified X / -1 and X / -1.0 semantics

In many languages, X / -1 and X / -1.0 return -X. But Groonga
may not return -X when X is unsigned integer.

X / -1 and X / -1.0 always return -X from this release.

This is a backward incompatible change but we assume that no user
depends on this behavior.

Translations

Groonga 15.0.3 - 2025-03-10

10 Mar 07:42
Compare
Choose a tag to compare

Improvements

offline-index-construction: Added support for parallel construction with table-hash-key lexicon

Parallel offline index construction iterates sorted terms
internally. table-pat-key and table-pat-key can do it
effectively because they are based on tree. But table-hash-key
can't do it effectively because it's not based on tree. So we didn't
support parallel offline index construction with
table-hash-key lexicon.

This release adds support for parallel offline index construction with
table-hash-key lexicon. It sort terms in a normal way. So it's
not so effective. Parallel offline index construction with
table-hash-key lexicon will be slower than
table-pat-key/table-dat-key. But it may be faster than
sequential offline index construction with table-hash-key
lexicon.

Translations

Groonga 15.0.2 - 2025-02-21

21 Feb 09:59
Compare
Choose a tag to compare

Fixes

offline-index-construction: Fixed a bug that options may be ignored in parallel construction

Groonga may ignore options of normalizers, tokenizers and/or token_filters in the target index when offline index construction is executed in parallel.

This issue may occur when:

If normalizer_table is used and this happens, the offline index construction is failed. Because normalizer_table has a required parameter. If options are ignored, the required parameter is missing.

Translations

Groonga 15.0.1 - 2025-02-20

20 Feb 02:54
Compare
Choose a tag to compare

Improvements

[ubuntu] Dropped support for Ubuntu 20.04 (Focal Fossa)

Ubuntu 20.04 will reach EOL in May 2025, so support for it has been dropped
starting with this release.

Translations

Groonga 15.0.0 - 2025-02-09

08 Feb 22:31
079abf1
Compare
Choose a tag to compare

This is our annual major release! This release doesn't have any
backward incompatible changes! So you can upgrade Groonga without
migrating your existing databases. You can still use your existing
databases as-is.

Improvements

table-pat-key: Added support for builtin-type-float32 as key type

GH-2211

table-pat-key encodes/decodes numeric keys for fast search
internally. So table-pat-key must know how to encode/decode
keys. table-pat-key didn't know how to encode/decode
builtin-type-float32 before this release. Now,
table-pat-key can encode/decode builtin-type-float32. So
you can use builtin-type-float32 as a table-pat-key key
type like other numeric types such as builtin-type-int32 and
builtin-type-float now.

Translations