tantivy-go

command module
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 1, 2024 License: MIT Imports: 3 Imported by: 1

README

Go Tantivy Bindings

This project provides Go bindings for the Tantivy search engine library. Tantivy is a full-text search engine library written in Rust, and this project aims to make its powerful search capabilities available to Go developers.

Disclaimer

Do not use in production.

Installation

go get github.com/anyproto/tantivy-go

Ensure your libraries are in your ld path.

Example Run
  • make download-tantivy-all
  • Run main.go in the go folder

Development

Development and compilation are done on MacBooks and for Apple platforms. Therefore, the development steps provided are for macOS.

Install environment
  • Install rustup
  • Install Rust architectures: make setup
  • Add Android libraries to your path: export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/emulator:$ANDROID_HOME/platform-tools:$ANDROID_HOME/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/bin
  • Install Windows compiler: brew install mingw-w64
  • Install musl: brew tap messense/macos-cross-toolchains && brew install x86_64-unknown-linux-musl
Install

make install-all - install release versions for all platforms make install-debug-all - install debug versions for all platforms make install-ARCH-GOOS - install release version for ARCH GOOS make install-debug-ARCH-GOOS - install debug version for ARCH GOOS

GCC support

To be done

Validate min macos version

otool -l libtantivy_go.a | rg LC_BUILD_VERSION -A4 | rg minos | sort | uniq -c Expected output:

 880     minos 11.0

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
go module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL