sonicFast, lightweight, and schema-less search backend
1.4.9_21textprocΣ=0 1.4.9_20Version of this port present on the latest quarterly branch.upstream: v1.10.2A newer version was found upstream by portscout, first on 2026-10-06.
Sonic is a fast, lightweight, and schema-less search backend. It
ingests search texts and identifier tuples that can then be queried
against in a microsecond's time.
Sonic can be used as a simple alternative to super-heavy and
full-featured search backends such as Elasticsearch in some use-cases.
It is capable of normalizing natural language search queries,
auto-completing a search query and providing the most relevant
results for a query. Sonic is an identifier index, rather than a
document index; when queried, it returns IDs that can then be used
to refer to the matched documents in an external database.
A strong attention to performance and code cleanliness has been
given when designing Sonic. It aims at being crash-free, super-fast
and puts minimum strain on server resources.
===> The following configuration options are available for sonic-1.4.9_21:
CHINESE=on: Chinese word segmentation
DOCS=on: Build and/or install documentation
JAPANESE=off: Japanese word segmentation (adds ~100MB UniDic download)
===> Use 'make config' to modify these settings
textproc/sonic: Make tokenizer features optional via OPTIONS, adopt port
This patch makes the Japanese and Chinese word segmentation features
optional via FreeBSD OPTIONS helpers, and adopts the port.
Currently the port unconditionally downloads a ~100MB UniDic Japanese
dictionary (unidic-mecab-2.1.2_src.zip) for every build, regardless of
whether the user needs Japanese tokenization. Upstream removed
tokenizer-japanese from default cargo features in v1.4.2 because it
10x'd the final binary size. This patch brings the port in line with
upstream's intent.
Changes:
- MAINTAINER changed to wadegimpbc@tuta.com
- Added CHINESE and JAPANESE OPTIONS using OPTIONS helpers
- OPTIONS_DEFAULT includes CHINESE (matching upstream's default features)
- UniDic download now conditional on JAPANESE option
- CARGO_FEATURES uses --no-default-features with allocator-jemalloc as
base, per cargo.mk convention (lines 23-26, 192, 197-200)
- added missing zstd dependency
PR: 293943
*/*: remove STRIP_CMD calls in rust based ports
This is not needed after bc4fedc1fec0d359365c04d43be9e32bf101a50e
PR: 246993
Differential Revision: https://reviews.freebsd.org/D46503
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
rust: bring back update to 1.63
Revert back the revert of the update of rust and related commits
This revert was drive by beside validation by portmgr via exp-run
and not respectful of the etiquette we have between committers
This reverts commit 8ecb1f8141144c1603eb4026122d2e60eeaccd64.
This reverts commit 04d257baa182926cff158f32cf459e560426add0.
This reverts commit 2757c63bd0e6d01f9f0657fe03bb3a7b49adcae2.
This reverts commit 75f4713de5e3fbd1c6a0cb572e08121814a4072e.
This reverts commit e88e592111c86fdd1c0ac8717dbef9342e15e27c.
This reverts commit 783c056d7d681d66e2c5c59251c275d65274028e.
With hat: portmgr
lang/rust: Update to 1.45.0
- This Rust release comes with LLVM 10. Drop the LLVM patches we
no longer need.
- On FreeBSD 13.0 powerpc64 set the elfv2 ABI explicitly in the
Rust target instead of patching LLVM.
- Build LLVM with Ninja. It can shorten the build time slightly.
- Force rebuild all consumers to catch regressions early
Changes: https://blog.rust-lang.org/2020/07/16/Rust-1.45.0.html
Tested by: mikael, pkubaj, tobik
With hat: rust
Differential Revision: https://reviews.freebsd.org/D25658
lang/rust: Update to 1.44.0
- Remove devel/cargo-tree since it is now integrated into cargo
- Add patch to fix build with LibreSSL 3.1.x and 3.2.0 [1]
- Force rebuild all consumers to catch regressions early
Changes: https://blog.rust-lang.org/2020/06/04/Rust-1.44.0.html
PR: 246332 [1]
Tested by: mikael, tobik
With hat: rust
Differential Revision: https://reviews.freebsd.org/D25099
Unbreak librocksdb-sys crate build after LLVM 10 import
In file included from rocksdb/utilities/backupable/backupable_db.cc:16:
rocksdb/util/channel.h:35:33: error: no matching constructor for initialization
of 'std::lock_guard<std::mutex>'
std::lock_guard<std::mutex> lk(lock_);
^ ~~~~~
/usr/include/c++/v1/__mutex_base:90:14: note: candidate constructor not viable:
1st argument ('const std::mutex') would lose const qualifier
explicit lock_guard(mutex_type& __m)
_LIBCPP_THREAD_SAFETY_ANNOTATION(acquire_capability(__m))
^
/usr/include/c++/v1/__mutex_base:100:5: note: candidate constructor not viable:
no known conversion from 'const std::mutex' to 'const
std::__1::lock_guard<std::__1::mutex>' for 1st argument
lock_guard(lock_guard const&) _LIBCPP_EQUAL_DELETE;
^
/usr/include/c++/v1/__mutex_base:94:5: note: candidate constructor not viable:
requires 2 arguments, but 1 was provided
lock_guard(mutex_type& __m, adopt_lock_t)
_LIBCPP_THREAD_SAFETY_ANNOTATION(requires_capability(__m))
^
1 error generated.
lang/rust: Update to 1.41.1
- Force rebuild all consumers to fix potential miscompilations with
1.41.0
- Enable SOURCES by default. The sources are indexed by RLS and
required for it to function properly, so they should be available
by default. This also makes sure we test the option properly.
- Remove implied --config=config.toml from x.py args
- Switch to the upstreamed backtrace crate patches like rust-nightly
- Enable WASM by default [0]
- Strip libraries (D23650) [1]
- Simplify plist generation (D23735) [2]
Changes: https://blog.rust-lang.org/2020/02/27/Rust-1.41.1.html
Submitted by: mikael [0,1,2]
With hat: rust
Differential Revision: https://reviews.freebsd.org/D23835
lang/rust: Update to 1.41.0
- Force rebuild all consumers to catch regressions early
- Switch to cross-compiled (from amd64) bootstraps for all
architectures generated with the incoming lang/rust-bootstrap
- Update cargo-c to 0.5.2 to unbreak librav1e build
- Make use of regular MAKE_ENV/TEST_ENV in lang/rust
- Turn on RUST_BACKTRACE in lang/rust and USES=cargo to hopefully
produce more useful failure logs when something panics during
builds
Changes: https://blog.rust-lang.org/2020/01/30/Rust-1.41.0.html
Tested by: mikael, tobik
With hat: rust
Differential Revision: https://reviews.freebsd.org/D23385
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330