fetch_ml/internal/queue/native_queue_stub.go
Jeremie Fraeys c89d970210
refactor: migrate from env var to build tags for native libs
Replace FETCHML_NATIVE_LIBS=1 environment variable with -tags native_libs:

Changes:
- internal/queue/native_queue.go: UseNativeQueue is now const true
- internal/queue/native_queue_stub.go: UseNativeQueue is now const false
- build/docker/simple.Dockerfile: Add -tags native_libs to go build
- deployments/docker-compose.dev.yml: Remove FETCHML_NATIVE_LIBS env var
- native/README.md: Update documentation for build tags
- scripts/test-native-with-redis.sh: New test script with Redis via docker-compose

Benefits:
- Compile-time enforcement (no runtime checks needed)
- Cleaner deployment (no env var management)
- Type safety (const vs var)
- Simpler testing with docker-compose Redis integration
2026-02-21 13:43:58 -05:00

17 lines
456 B
Go

//go:build !native_libs
// +build !native_libs
package queue
import "errors"
// UseNativeQueue is always false without native_libs build tag.
const UseNativeQueue = false
// NativeQueue is not available without native_libs build tag.
type NativeQueue struct{}
// NewNativeQueue returns an error without native_libs build tag.
func NewNativeQueue(root string) (Backend, error) {
return nil, errors.New("native queue requires native_libs build tag")
}