dash
- Description
- A modern list library for Emacs
- Latest
- dash-2.19.1.0.20240510.132708.tar (.sig), 2024-May-10, 730 KiB
- Maintainer
- Magnar Sveen <magnars@gmail.com>
- Website
- https://github.com/magnars/dash.el
- Browse ELPA's repository
- CGit or Gitweb
- Badge
- Manual
- dash
To install this package from Emacs, use package-install
or list-packages
.
Full description
A modern list API for Emacs. See its overview at https://github.com/magnars/dash.el#functions.
Old versions
dash-2.19.1.0.20240405.94636.tar.lz | 2024-Apr-05 | 113 KiB |
dash-2.19.1.0.20240331.212529.tar.lz | 2024-Apr-01 | 113 KiB |
dash-2.19.1.0.20240216.133446.tar.lz | 2024-Mar-31 | 113 KiB |
dash-2.19.1.0.20240123.123337.tar.lz | 2024-Jan-23 | 113 KiB |
dash-2.19.1.0.20230801.124436.tar.lz | 2023-Aug-06 | 113 KiB |
dash-2.19.1.0.20230304.224222.tar.lz | 2023-Mar-05 | 113 KiB |
dash-2.19.1.0.20221013.83648.tar.lz | 2022-Oct-13 | 111 KiB |
dash-2.19.0.0.20210708.200927.tar.lz | 2021-Jul-08 | 106 KiB |
dash-2.18.1.0.20210706.192111.tar.lz | 2021-Jul-06 | 104 KiB |
dash-2.12.0.0.20171228.185742.tar.lz | 2020-Dec-14 | 92.1 KiB |
News
Dash NEWS -- history of user-visible changes
Copyright (C) 2012-2024 Free Software Foundation, Inc.
See the end of the file for license conditions.
Change log
From 2.19.1 to 2.20.0
Deprecations
- Calling
-zip
with two arguments now emits a warning. This long-discouraged calling convention remains supported, but the caller is now referred to the equivalent-zip-pair
instead (Stefan Monnier, #400). - Calling
-zip-pair
with less than or more than two arguments is now deprecated, and can be replaced with the equivalent call to-zip-lists
instead.
Fixes
- Fixed a regression from
2.18
in-take
that caused it to prematurely signal an error on improper lists (#393). - The function
-pad
can now be called with zero lists as arguments. - The functions
-union
,-intersection
, and-difference
now return proper sets, without duplicate elements (#397). The functions
-same-items?
and-permutations
now work on multisets (lists with duplicate elements) (#390, #397, #399).For example:
el (-same-items? '(1 1 2 3) '(3 1 2)) ; => t (-permutations '(1 1 2)) ; => '((1 1 2) (1 2 1) (2 1 1))
Several functions which are documented as returning a fresh, mutable object (such as a copy of one of their arguments) are no longer marked as
pure
. Pure functions called with constant arguments are evaluated during byte-compilation; the resulting value is an immutable constant, and thus unsafe to modify destructively. The functions in question are:-clone
,-cons*
,-drop-last
,-interleave
,-interpose
,-iota
,-non-nil
,-repeat
,-slice
,-snoc
,-split-at
,-take
,-take-last
.
New features
- The function
-contains?
now returns the matching tail of the list instead of justt
, similarly tomember
(#397). - New function
-frequencies
that takes a list and counts how many times each distinct element occurs in it (suggested by @ebpa, #209, #214, #399). - New functions
-zip-lists-fill
and-unzip-lists
which are better behaved versions of-zip-fill
and-unzip
, respectively (#400).
From 2.19.0 to 2.19.1
Fixes
- Fixed a regression from
2.18
in-is-suffix-p
which led to false negatives when parts of the suffix appeared multiple times in the list being searched (Bennett Rennier, #384).
From 2.18.1 to 2.19.0
Fixes
- Reverted a breaking change introduced in
2.18.0
that caused the threading macro-->
to be indented differently from->
and->>
(#375). - Added and fixed Edebug specifications for many Dash macros (Philipp Stephani, #380, #381).
New features
- The combinators
-on
,-flip
,-not
,-andfn
, and-orfn
now return variadic functions that take any number of arguments (#308). - New combinator
-rotate-args
similar to-flip
, but for arbitrary arglist rotations (suggested by @vapniks, #72). - New function
-every
and its anaphoric macro counterpart--every
. They are like the existing-every-p
and--every-p
, respectively, but return the last non-nil
result instead of justt
. - New macro
--partition-after-pred
which affords-partition-after-pred
better performance (Per Weijnitz, #362).
From 2.18.0 to 2.18.1
- Fixed a regression from
2.17
as well as a long-standing bug in--iterate
, which evaluated its arguments one too many times. This in turn could lead to errors in-flatten-n
when it tried flattening certain structures too far (#373).
From 2.17 to 2.18
This release absorbs the now obsolete dash-functional
version
1.3.0
into dash
, and brings the very old version of dash
on GNU
ELPA up to date.
Package maintainers should replace all uses of dash-functional
,
which will eventually be deleted, with dash
version 2.18.0
. For
more information on this, see:
https://github.com/magnars/dash.el/wiki/Obsoletion-of-dash-functional.el
- New function
-iota
for generating arithmetic sequences (@holomorph, #215). ... ...