Commit graph

39 commits

Author SHA1 Message Date
40ac16261e
feat!: fix Drop semantics and add RemoveAt function
BREAKING CHANGE: Drop function now correctly drops first N elements
instead of removing element at specific index.

Changes:
- Renamed old Drop behavior to RemoveAt function
- Implemented correct Drop semantics (drop first N elements)
- Added comprehensive tests for both functions

Drop (NEW behavior):
- Drop([]int{1,2,3,4,5}, 2) → [3,4,5] (drops first 2 elements)
- Returns empty slice if n >= len(values)
- Returns original slice if n <= 0

RemoveAt (OLD Drop behavior):
- RemoveAt([]int{1,2,3,4,5}, 2) → [1,2,4,5] (removes index 2)
- Returns original slice if index out of bounds
- Pre-allocates with capacity len(values)-1

Tests added:
- Drop: 5 tests (basic, none, all, empty, single)
- RemoveAt: 6 tests (basic, first, last, bounds, empty, single)

Documentation updated:
- README.md: Added RemoveAt to function list
- CLAUDE.md: Marked Drop semantics as fixed
- ACTION_PLAN.md: Updated completion status

Migration guide:
- Old: Drop(slice, index) → New: RemoveAt(slice, index)
- New Drop usage: Drop(slice, n) drops first n elements

Coverage: 98.8% (maintained)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 14:04:58 +01:00
7580836815
docs(readme): update usage, API, and utilities sections
Update README to use the latest version in install instructions, expand
the
list of available API functions, and add documentation for new utilities
and
subpackages. Improves clarity and completeness for users.
2025-11-14 13:36:51 +01:00
9cf61ec6c5
feat: add ParallelFilter and UniqueInPlace functions
Add `ParallelFilter` for concurrent filtering with context and error
support.
Add `UniqueInPlace` to remove duplicates from slices in place. Update
README
and add documentation and tests for both functions.
2025-09-01 18:16:59 -04:00
1031038d42
feat: add Chunk, ContainsBy, UniqueBy, ParallelMap, map helpers
- Add `Chunk` to split slices into groups of size n.
- Add `ContainsBy` for predicate-based containment checks.
- Add `UniqueBy` to deduplicate slices by key selector.
- Add `ParallelMap` for concurrent mapping with context and error
handling.
- Add `maps.Keys` and `maps.Values` helpers for extracting map
keys/values.
- Update README and docs for new features.
- Refactor `Contains` to use `slices.Contains`.
2025-09-01 18:03:38 -04:00
Daniel Smith
8c78743f1a
[CHORE] bump docker golang version and dependencies (#40) 2025-07-14 17:13:22 +02:00
fbf58eff42
Refresh documentation (#39)
* minor documentation fixes

* fix Hugo warnings

* add openssf badge
2024-12-03 09:29:53 +01:00
78b90acc67
reformat readme 2024-09-08 19:14:07 +02:00
Ruidy
4042208482
add flatmap (#31)
* add flatmap

Signed-off-by: Ruidy <ruidy.nemausat@gmail.com>

* add to readme

Signed-off-by: Ruidy <ruidy.nemausat@gmail.com>

Signed-off-by: Ruidy <ruidy.nemausat@gmail.com>
Co-authored-by: Ruidy <ruidy.nemausat@gmail.com>
2022-08-10 17:01:43 +02:00
Ruidy
d1da6fbab0 update installing info 2022-05-07 12:52:06 -04:00
Ruidy
f6af583408
Pipe (#26)
* rename to pipe

* add security scan

* use var in Makefile
2022-03-31 17:37:02 +02:00
Ruidy
6a1a4c157b update docs 2022-03-25 11:00:09 -04:00
Ruidy
d9c1c152ba
update docs (#24)
Co-authored-by: Ruidy <rnemausat@newstore.com>
2022-03-25 10:39:45 -04:00
Ruidy
6b377350d6
U 21 diff (#23)
* add logo and fix project image description

* add difference function

* update docs

Co-authored-by: Ruidy <rnemausat@newstore.com>
2022-03-24 17:30:01 +01:00
Ruidy
eebeb65114
add logo and fix project image description (#22)
Co-authored-by: Ruidy <rnemausat@newstore.com>
2022-03-24 17:03:10 +01:00
Ruidy
235b36b7f6 add documentation link 2022-03-23 10:58:44 -04:00
Ruidy
edb3c09e43 update badges 2022-03-18 13:37:24 -04:00
Ruidy
c9e54a11cb chore: remove codecov 2022-01-05 12:43:35 -04:00
Ruidy
6395049991 chore: change files 2022-01-05 12:38:01 -04:00
Ruidy
75f5b7e5ed chore: code cov 2022-01-05 12:03:31 -04:00
Ruidy
1fa71877c5 chore: test coverage 2022-01-05 11:11:13 -04:00
Ruidy
81c98e8bf5 refactor: rename Some to Any 2022-01-03 11:20:36 -04:00
Ruidy
7460ba86a8 refactor: rename Every to All 2022-01-03 11:16:01 -04:00
Ruidy
73ed4021a6 feat: chain package 2022-01-02 18:51:18 -04:00
Ruidy
2d05b6c518
add unit test pipeline (#8)
* add unit test pipeline

* edit triggers

* change version

* change version

* other try

* other try

* fix: redeclared function name

Co-authored-by: Ruidy <rnemausat@newstore.com>
2022-01-02 03:28:12 +01:00
Ruidy
321b5f7844 doc: add test coverage badge 2022-01-01 21:24:33 -04:00
Ruidy
2f17af7b5d
Chain (#7)
* doc: add docs to chan methods

* feat: contains

* feat: chain each

* feat: every each

* feat: find each

* feat: chain min/max

* feat: chain Some

* refactor: chain tests

Co-authored-by: Ruidy <rnemausat@newstore.com>
2022-01-01 23:47:04 +01:00
Ruidy
a0944476b9 docs: update examples 2022-01-01 14:13:37 -04:00
Ruidy
f05fb70292 Merge remote-tracking branch 'origin/main' 2021-12-31 13:23:46 -04:00
Ruidy
f169070cde fix: project header image 2021-12-31 13:23:31 -04:00
Ruidy
2798562b46
Enable Chaining (#6)
* feat: chain filter map reduce simple Type

* docs: chain documentation

Co-authored-by: Ruidy <rnemausat@newstore.com>
2021-12-31 18:21:00 +01:00
Ruidy
6f8c303297
docs: fix broken link (#3)
Co-authored-by: Ruidy <nemausatpro@gmail.com>
2021-12-30 17:38:32 +01:00
Ruidy
df84e6f05d docs: add examples 2021-12-30 12:04:34 -04:00
Ruidy
0177a26c61 docs: improve README 2021-12-30 11:52:18 -04:00
Ruidy
6ffe22b4df docs: add badges 2021-12-30 11:34:01 -04:00
Ruidy
e626c0c47e feat: partition 2021-12-29 22:48:57 -04:00
Ruidy
b26a360495 feat: min 2021-12-29 22:35:39 -04:00
Ruidy
eddfb60d44 feat: max 2021-12-29 22:30:57 -04:00
Ruidy
0f07a76950 feat: contains 2021-12-29 13:46:29 -04:00
Ruidy
d27ed24589 feat: map 2021-12-28 19:26:42 -04:00