View Source Changelog
2-4
2.4
Negative indexes, lens fixes, force_update nil filling and refactoring
Breaking
- matching force_update fix. Now it doesn't raise an error when called
- filtering force_update fix. Now it doesn't raise an error when called
- Tuple force_update fix. Now it works with indexes and for
force_set {}, path(2), 1it will create{nil, nil, 1}. - List force_update fix. Now it works with indexes and for
force_set [], path(2), 1it will create[nil, nil, 1].
Non-breaking
- Tuple negative index is now supported for all operations
- List negative indexes now work the same way as positive indexes (but backwards), except
-1which still prepends to the list.
2-3
2.3
Breaking
- Pathex now uses Elixir 1.13 (or higher) version
Non-breaking
Pathex.tspec fixPathex.Shortfor shorter path definitionPathex.patternfor creating patterns from inlined pathsPathexnow can beuse-d inside functions or anything like this- Paths inlining is now detected for aliased, imported and macro calls
- Internal spec fixes, dead code eliminations and formatting
2-2
2.2
Breaking
- Changed behaviour of path-closures created with
pathwhen working with improperKeyword.t()
Non-breaking
- Improved documentation
- Removed dead code
- Added
Pathex.Accessibilitymodule for creating paths in runtime
2-1
2.1
Breaking
- Updating and viewing keywords with
starandsomelenses now doesn't raise when they're used against non-proper keyword
Non-breaking
- Concatenated paths now can force_over for not only maps
- Fixed debug lens
- Added ability to pass calls and arbitary structures into
pathmacro - Unrolled some clauses for
starandsomefor extra efficiency
2-0
2.0
Breaking
- Reworked
starlens. Now it is less optimistic and returns:errorwhen no values were viewed/updated - Removed sigils
- Removed deprecated lens
id - Removed deprecated lens
either - Removed
recurfunction
Non-breaking
composefunction for recursive lensdeletemethod for all paths, lenses and higher order functionsinspectmethod for all paths, lenses and higher order functions- Matchable updater for lists and maps
- Builders are selected for combination (not for mod as they used to)
- Reworked documentation
- Annotated paths
1-3-0
1.3.0
Breaking
None! (See deprecated in Non-breaking)
Non-breaking
Deprecated
idlensDeprecated
eitherlensFixed bug with concatenation context overlapping
somelensstarlensmatchinglensfilteringlensRemoved some dead code
Moved lenses code to separate modules
1-2-0
1.2.0
Breaking
None!
Non-breaking
starlensalllens
1-1-0
1.1.0
Breaking
None!
Non-breaking
|||operator- stack-optimized version of
~>operator - stack-optimized version of
|||operator
1-0-0
1.0.0
Breaking
force_set/get/setclause in closure was renamed toforce_update/view/updateand added a special argument with default value in it
Non-breaking
alongsidemacro- stack-optimized version of
&&&operator - path code generation size assertion
- better documentation format
idlenseitherlensanylens
Yeah, it starts from 1.0.0 I can describe previous versions if anybody needs this. Just open an issue! :)