summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2020-10-20 17:02:25 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2020-10-20 17:07:15 +0200
commitd53ee6bcd2c28e3414b2dbeffb6e15005d414d7e (patch)
treea766abf9e2bd33d36077429838b7a7a70a64cdab /gnu
parent074d033a553d58a75658cc287ca9ea8476050be0 (diff)
gnu: Add emacs-promise.
* gnu/packages/emacs-xyz.scm (emacs-promise): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/emacs-xyz.scm31
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 1a08da2e4e..a34a355df7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -25049,3 +25049,34 @@ built-in generator package. It provides @code{iter2-defun} and
@code{iter-next}) are intentionally not duplicated: just use the ones from the
original package.")
(license license:gpl3+)))
+
+(define-public emacs-promise
+ (package
+ (name "emacs-promise")
+ (version "1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/chuntaro/emacs-promise")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1xb34zdbwjvahfhycjphdkm925kgd22dr298c57hwxza4ljc2hxj"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/chuntaro/emacs-promise")
+ (synopsis "Promises/A+ for Emacs")
+ (description "This is a simple implementation of Promises/A+.
+
+This implementation ports the following Promises/A+ features
+faithfully. See @url{https://github.com/then/promise}.
+
+@itemize
+@item The same API as the JavaScript version of Promise can be used.
+@item It has all the @code{then}, @code{catch}, @code{resolve}, @code{reject},
+@code{all}, @code{race}, etc.
+@item It supports \"thenable\".
+@item It supports \"Inheritance of Promise\".
+@item It supports \"rejection-tracking\".
+@end itemize\n")
+ (license license:gpl3+)))