Repository navigation
v3.0.0 (superseded)
Superseded: Use v4.0.0 for new integrations. The v3.0.0 module archive contains a repository-only test that fails when the nested examples module is absent. The tag remains immutable; v4 is the corrected release line.
Collection v3 is the Go 1.27-native release of collection, rebuilt around a slice-backed API.
Highlights
Slice[T]is a named slice, solen, indexing, slicing,range, standard-library helpers, and iterator adapters work directly.- Generic methods keep type-changing transformations fluent.
- Pure operations have consistent ownership semantics.
TransformandRetainpreserve explicit, zero-allocation mutation for hot paths.- Every exported function and method has an executable example.
- The benchmark suite includes direct lo comparisons and permanent v2/v3 regression coverage.
Upgrade
v3 requires Go 1.27 and uses the major-version module path:
import "github.com/goforj/collection/v3"This is a deliberate major-version boundary. v2 remains available for existing consumers.
See the v3 migration guide for method-by-method before-and-after examples, removed APIs, and ownership changes.