Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
94 commits
Select commit Hold shift + click to select a range
b0ac5c8
chore@small
selfrefactor Jul 4, 2025
91c41f8
chore@small
selfrefactor Jul 4, 2025
7107fd7
chore@small
selfrefactor Jul 5, 2025
d70b5f7
chore@small
selfrefactor Jul 6, 2025
44f715b
chore@small
selfrefactor Jul 6, 2025
5d38fde
chore@small
selfrefactor Jul 6, 2025
25d1903
chore@small
selfrefactor Jul 6, 2025
ba690cc
chore@small
selfrefactor Jul 6, 2025
3679830
chore@small
selfrefactor Jul 6, 2025
2e067fb
chore@small
selfrefactor Jul 6, 2025
e3524b7
chore@small
selfrefactor Jul 6, 2025
9ff1277
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Jul 10, 2025
e4d38be
Fix R.includes
selfrefactor Jul 10, 2025
8337fe9
chore@small
selfrefactor Jul 10, 2025
f553d15
d
selfrefactor Jul 12, 2025
1e58d08
chore@small
selfrefactor Jul 12, 2025
30f6dd6
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Jul 27, 2025
def7fc9
chore@small
selfrefactor Jul 27, 2025
44ed90b
chore@small
selfrefactor Jul 30, 2025
218e47b
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Sep 3, 2025
b4be76e
chore@small
selfrefactor Sep 4, 2025
59f622f
chore@small
selfrefactor Oct 16, 2025
ca308a6
chore@small
selfrefactor Oct 19, 2025
cd6a42b
kata
selfrefactor Oct 22, 2025
2b5ff5c
2
selfrefactor Oct 22, 2025
99943e2
3
selfrefactor Oct 22, 2025
53fbaec
chore@small
selfrefactor Oct 28, 2025
8aea806
chore@small
selfrefactor Oct 28, 2025
edbf8c3
chore@small
selfrefactor Nov 3, 2025
d263792
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Nov 3, 2025
fa5f220
chore@small
selfrefactor Nov 6, 2025
8d0f582
chore@small
selfrefactor Nov 18, 2025
edd218c
chore@small
selfrefactor Nov 19, 2025
5a891f8
repl
selfrefactor Nov 19, 2025
b275b0d
chore@small
selfrefactor Nov 19, 2025
a9c2905
chore@small
selfrefactor Nov 22, 2025
b714d9a
chore@small
selfrefactor Nov 22, 2025
abe9779
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Nov 29, 2025
9e30131
feat@fix filter
selfrefactor Nov 29, 2025
1e04d63
readonly on top
selfrefactor Nov 30, 2025
0e25f59
chore@small
selfrefactor Dec 6, 2025
645cbd7
union.with
selfrefactor Dec 9, 2025
001a3b9
chore@small
selfrefactor Dec 20, 2025
5938627
chore@small
selfrefactor Dec 21, 2025
a5938ed
chore@small
selfrefactor Dec 21, 2025
3344649
chore@small
selfrefactor Dec 23, 2025
497854b
chore@small
selfrefactor Dec 23, 2025
9297259
chore@small
selfrefactor Dec 23, 2025
657ef80
chore@small
selfrefactor Dec 23, 2025
8a20f3c
chore@small
selfrefactor Dec 23, 2025
ea4a258
chore@small
selfrefactor Dec 23, 2025
4c3781c
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Jan 13, 2026
59f9cb2
1
selfrefactor Jan 28, 2026
3c0de2d
R.mapchain
selfrefactor Feb 4, 2026
b196d91
switcher
selfrefactor Feb 4, 2026
93cbd41
chore@small
selfrefactor Feb 4, 2026
98f31d4
1
selfrefactor Feb 4, 2026
fff02de
1
selfrefactor Feb 4, 2026
0404ea1
chore@small
selfrefactor Feb 4, 2026
58baa54
chore@small
selfrefactor Feb 4, 2026
bd00e4e
chore@small
selfrefactor Feb 4, 2026
9999037
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Feb 4, 2026
7b29752
chore@small
selfrefactor Feb 4, 2026
5b9f45c
1
selfrefactor Feb 6, 2026
5f4a1bf
split.every
selfrefactor Apr 24, 2026
65e19ef
merge.deep
selfrefactor Apr 25, 2026
402b87e
1
selfrefactor Apr 25, 2026
3657e8c
Fix wrong TS
selfrefactor May 15, 2026
2cb5278
1
selfrefactor May 15, 2026
7ef9146
r.path
selfrefactor May 15, 2026
f35661f
1
selfrefactor May 15, 2026
2629365
1
selfrefactor May 15, 2026
8f48e25
chore@small
selfrefactor May 15, 2026
8e2bf59
remove dtslint
selfrefactor May 15, 2026
c5524e4
chore@small
selfrefactor May 15, 2026
31cd044
1
selfrefactor May 25, 2026
c357a7c
chore@small
selfrefactor Jun 6, 2026
c4cd48a
chore@small
selfrefactor Jun 6, 2026
6350a85
1
selfrefactor Jun 23, 2026
79c16a1
chore@small
selfrefactor Jul 4, 2026
07525ee
first batch
selfrefactor Jul 4, 2026
b5ac713
globals
selfrefactor Jul 4, 2026
0514d70
Merge branch 'master' of github.com:selfrefactor/rambda into next-ver…
selfrefactor Jul 4, 2026
e9d11f0
migrate remaining batches 2-10: spec.ts + d.ts for all methods
selfrefactor Jul 4, 2026
101bb5f
remove specs
selfrefactor Aug 3, 2026
5f38a2a
1
selfrefactor Aug 3, 2026
36de549
2
selfrefactor Aug 3, 2026
b9e7a5b
chore@small
selfrefactor Aug 3, 2026
9b32785
chore@small
selfrefactor Aug 5, 2026
395f21c
1
selfrefactor Aug 13, 2026
753b2fa
1
selfrefactor Sep 2, 2026
1e9aa11
1
selfrefactor Sep 2, 2026
0a8d646
1
selfrefactor Sep 2, 2026
ca89a13
1
selfrefactor Sep 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .oxfmtrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"$schema": "./node_modules/oxfmt/configuration_schema.json",
"printWidth": 80,
"semi": false,
"ignorePatterns": []
}
46 changes: 46 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Rambda — Agent instructions

## Repository structure

- **`source/`** — development directory. Contains both implementations (`.js`) and tests (`.spec.js`, `-spec.ts`).
- **`src/`** — generated artifact. Rebuilt from `source/` via `yarn populatereadme` (delegates to sibling `rambda-scripts` repo). Only `.js` files for registered methods are copied; spec files are excluded.
- **`rambda.js`** — barrel entrypoint, re-exports from `./src/`. Also regenerated during `populatereadme`.
- **`files/index.d.ts`** (5090 lines) — the true TypeScript definition source. `source/index.d.ts` is a stub.
- **`dist/`** — rollup output (CJS, ESM, UMD).

## Commands

| Command | Action |
|---|---|
| `yarn test` | Run all runtime tests (`vitest run --watch -u`) |
| `yarn test:ci` | Run runtime tests in CI mode |
| `yarn test:typings` / `yarn ts` | Run type-level tests only |
| `yarn test:file <path>` | Run a single test file |
| `yarn lint:typings` | `tsc` type check |
| `yarn lint` | Run ESLint + oxlint + Biome + Prettier on `source/` |
| `yarn build` | Bundle `dist/` via rollup (CJS + ESM + UMD) |
| `yarn out` | Full pipeline: populate docs → sync `src/` → build → docsify |

## CI order (must match)

`yarn lint:typings` → `yarn test:ci` → `yarn test:typings`

## Testing quirks

- Two vitest configs: `vitest.config.js` (runtime `*.spec.js` + `*-spec.ts`) and `vitest.typings.config.js` (type-only `*-spec.ts`).
- Runtime tests use `test(...)` (globals from vitest). Type tests use `describe/it` + `expectTypeOf`.
- Coverage threshold: **100%** enforced.
- `source/_internals/` and `source/*.ts` excluded from coverage.

## Method conventions

- **All methods are curried**: `filter(fn)(list)`, **never** `filter(fn, list)`.
- Designed for `pipe(input, ...fns)` usage — type inference works best inside `R.pipe`.
- `max-params: 2` enforced (ESLint).
- `max-statements: 12` enforced (ESLint).
- File naming: `.ts` files must be `kebab-case`, `.tsx` must be `CAMEL_CASE`.
- Semicolons are disabled (Prettier). Single quotes preferred.

## Build note

`yarn out` requires `rambda-scripts` cloned as a sibling directory (`../rambda-scripts`). Without it, `populatedocs`, `populatereadme`, and `create-docsify` will fail.
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
11.3.0

- Add `R.remove`

- Add missing type narrowing in `R.find`

- `R.switcher` accept only functions as inputs

- Sort functions use `.toSorted`

11.2.0

- Fix wrong typing for `R.equal`,`R.path`, `R.prop`, `R.propEq`, `R.prepend` - [Issue #803](https://github.com/selfrefactor/rambda/issues/803)
Expand Down
Loading
Loading