From d53ee6bcd2c28e3414b2dbeffb6e15005d414d7e Mon Sep 17 00:00:00 2001 From: Pierre Neidhardt Date: Tue, 20 Oct 2020 17:02:25 +0200 Subject: gnu: Add emacs-promise. * gnu/packages/emacs-xyz.scm (emacs-promise): New variable. --- gnu/packages/emacs-xyz.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) (limited to 'gnu') 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+))) -- cgit v1.2.3