]> granicus.if.org Git - postgresql/commit
Sync our Snowball stemmer dictionaries with current upstream.
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 24 Sep 2018 21:29:08 +0000 (17:29 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 24 Sep 2018 21:29:38 +0000 (17:29 -0400)
commitfd582317e10e26083b8c720598bfcdbf89787112
tree5755085ae97b36fcab6c180a00fefa83e434e4db
parentb076eb7669d7279d0f446305c2e12dffd6bc3347
Sync our Snowball stemmer dictionaries with current upstream.

We haven't touched these since text search functionality landed in core
in 2007 :-(.  While the upstream project isn't a beehive of activity,
they do make additions and bug fixes from time to time.  Update our
copies of these files.

Also update our documentation about how to keep things in sync, since
they're not making distribution tarballs these days.  Fortunately,
their source code turns out to be a breeze to build.

Notable changes:

* The non-UTF8 version of the hungarian stemmer now works in LATIN2
not LATIN1.

* New stemmers have appeared for arabic, indonesian, irish, lithuanian,
nepali, and tamil.  These all work in UTF8, and the indonesian and
irish ones also work in LATIN1.

(There are some new stemmers that I did not incorporate, mainly because
their names don't match the underlying languages, suggesting that they're
not to be considered mainstream.)

Worth noting: the upstream Nepali dictionary was contributed by
Arthur Zakirov.

initdb forced because the contents of snowball_create.sql have
changed.

Still TODO: see about updating the stopword lists.

Arthur Zakirov, minor mods and doc work by me

Discussion: https://postgr.es/m/20180626122025.GA12647@zakirov.localdomain
Discussion: https://postgr.es/m/20180219140849.GA9050@zakirov.localdomain
88 files changed:
doc/src/sgml/textsearch.sgml
src/backend/snowball/Makefile
src/backend/snowball/README
src/backend/snowball/dict_snowball.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_danish.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_dutch.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_english.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_finnish.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_french.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_german.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_indonesian.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_ISO_8859_1_irish.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_ISO_8859_1_italian.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_norwegian.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_porter.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_portuguese.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_spanish.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_swedish.c
src/backend/snowball/libstemmer/stem_ISO_8859_2_hungarian.c [moved from src/backend/snowball/libstemmer/stem_ISO_8859_1_hungarian.c with 54% similarity]
src/backend/snowball/libstemmer/stem_ISO_8859_2_romanian.c
src/backend/snowball/libstemmer/stem_KOI8_R_russian.c
src/backend/snowball/libstemmer/stem_UTF_8_arabic.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_danish.c
src/backend/snowball/libstemmer/stem_UTF_8_dutch.c
src/backend/snowball/libstemmer/stem_UTF_8_english.c
src/backend/snowball/libstemmer/stem_UTF_8_finnish.c
src/backend/snowball/libstemmer/stem_UTF_8_french.c
src/backend/snowball/libstemmer/stem_UTF_8_german.c
src/backend/snowball/libstemmer/stem_UTF_8_hungarian.c
src/backend/snowball/libstemmer/stem_UTF_8_indonesian.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_irish.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_italian.c
src/backend/snowball/libstemmer/stem_UTF_8_lithuanian.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_nepali.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_norwegian.c
src/backend/snowball/libstemmer/stem_UTF_8_porter.c
src/backend/snowball/libstemmer/stem_UTF_8_portuguese.c
src/backend/snowball/libstemmer/stem_UTF_8_romanian.c
src/backend/snowball/libstemmer/stem_UTF_8_russian.c
src/backend/snowball/libstemmer/stem_UTF_8_spanish.c
src/backend/snowball/libstemmer/stem_UTF_8_swedish.c
src/backend/snowball/libstemmer/stem_UTF_8_tamil.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_turkish.c
src/backend/snowball/libstemmer/utilities.c
src/backend/snowball/stopwords/nepali.stop [new file with mode: 0644]
src/bin/initdb/initdb.c
src/include/catalog/catversion.h
src/include/snowball/libstemmer/header.h
src/include/snowball/libstemmer/stem_ISO_8859_1_danish.h
src/include/snowball/libstemmer/stem_ISO_8859_1_dutch.h
src/include/snowball/libstemmer/stem_ISO_8859_1_english.h
src/include/snowball/libstemmer/stem_ISO_8859_1_finnish.h
src/include/snowball/libstemmer/stem_ISO_8859_1_french.h
src/include/snowball/libstemmer/stem_ISO_8859_1_german.h
src/include/snowball/libstemmer/stem_ISO_8859_1_hungarian.h [deleted file]
src/include/snowball/libstemmer/stem_ISO_8859_1_indonesian.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_ISO_8859_1_irish.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_ISO_8859_1_italian.h
src/include/snowball/libstemmer/stem_ISO_8859_1_norwegian.h
src/include/snowball/libstemmer/stem_ISO_8859_1_porter.h
src/include/snowball/libstemmer/stem_ISO_8859_1_portuguese.h
src/include/snowball/libstemmer/stem_ISO_8859_1_spanish.h
src/include/snowball/libstemmer/stem_ISO_8859_1_swedish.h
src/include/snowball/libstemmer/stem_ISO_8859_2_hungarian.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_ISO_8859_2_romanian.h
src/include/snowball/libstemmer/stem_KOI8_R_russian.h
src/include/snowball/libstemmer/stem_UTF_8_arabic.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_danish.h
src/include/snowball/libstemmer/stem_UTF_8_dutch.h
src/include/snowball/libstemmer/stem_UTF_8_english.h
src/include/snowball/libstemmer/stem_UTF_8_finnish.h
src/include/snowball/libstemmer/stem_UTF_8_french.h
src/include/snowball/libstemmer/stem_UTF_8_german.h
src/include/snowball/libstemmer/stem_UTF_8_hungarian.h
src/include/snowball/libstemmer/stem_UTF_8_indonesian.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_irish.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_italian.h
src/include/snowball/libstemmer/stem_UTF_8_lithuanian.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_nepali.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_norwegian.h
src/include/snowball/libstemmer/stem_UTF_8_porter.h
src/include/snowball/libstemmer/stem_UTF_8_portuguese.h
src/include/snowball/libstemmer/stem_UTF_8_romanian.h
src/include/snowball/libstemmer/stem_UTF_8_russian.h
src/include/snowball/libstemmer/stem_UTF_8_spanish.h
src/include/snowball/libstemmer/stem_UTF_8_swedish.h
src/include/snowball/libstemmer/stem_UTF_8_tamil.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_turkish.h