Revision history for Perl extension Promises
1.04 2020-02-23
[ENHANCEMENTS]
-
P::D::EV has a new `cleanup` class method clearing up the EV handler.
(GH#91, wangvisual)
[STATISTICS]
-
code churn: 4 files changed, 173 insertions(+), 160 deletions(-)
1.03 2020-01-06
[BUG FIXES]
-
Modified tests as AnyEvent began to fail when waiting for 0 seconds.
(GH#88)
[DOCUMENTATION]
-
Add two more promise modules in SEE ALSO. (GH#90, FGasper)
-
Add directives to how to install from master. (GH#89)
[ENHANCEMENTS]
-
In similar vain to PR61, optimize _notify_backend for Mojo. (GH#86, Erik
Huelsmann)
[STATISTICS]
-
code churn: 12 files changed, 153 insertions(+), 24 deletions(-)
1.02 2019-06-22
[DOCUMENTATION]
-
Fixed pod error as reported by CPANTS. (GH#83, Mohammad S Anwar)
[ENHANCEMENTS]
-
In similar vain to PR #61, optimize _notify_backend (for IO::Async).
(GH#85, Erik Huelsmann)
[STATISTICS]
-
code churn: 3 files changed, 31 insertions(+), 9 deletions(-)
1.01 2019-06-15
[ENHANCEMENTS]
-
Performance enhancements. (GH#61, GH#83, Erik Huelsmann, Tom van der
Woerdt)
[STATISTICS]
-
code churn: 7 files changed, 159 insertions(+), 57 deletions(-)
1.00 2019-05-15
[BUG FIXES]
-
Change inner working of collect() so that it deals with being passed
nothing. (GH#82)
-
warn_on_unhandled_reject: deal with case where there is no caller.
(Peter Valdemar Morch, GH#76)
[DOCUMENTATION]
-
Remove extra bracket in example. (perlover, GH#78)
-
Minor text changes in POD. (manwar, GH#79)
-
Mention other modules implementing promises. (GH#64)
[ENHANCEMENTS]
-
add Promises::Sub. (GH#54, yanick)
[STATISTICS]
-
code churn: 13 files changed, 304 insertions(+), 65 deletions(-)
0.99 2017-10-29
[BUG FIXES]
-
skip all backend compile tests (RT#123404)
[STATISTICS]
-
code churn: 2 files changed, 11 insertions(+), 3 deletions(-)
0.98 2017-10-22
[BUG FIXES]
-
removed hard-dependency on the different backends.
[STATISTICS]
-
code churn: 3 files changed, 120 insertions(+), 161 deletions(-)
0.97 2017-10-22
[DOCUMENTATION]
-
Add a reference to the IO::Async deferred backend. (GH#71, Luke
Triantafyllidis)
[ENHANCEMENTS]
-
add new function 'collect_hash'. (GH#52, yanick)
-
add 'timeout' method. (GH#70, yanick)
[MISC]
-
make tests use proper api. (TdvW)
-
have test load AnyEvent. (GH#72, Luke Triantafyllidis)
[STATISTICS]
-
code churn: 29 files changed, 640 insertions(+), 50 deletions(-)
0.96 2017-08-26
-
Promotion of trial release to the real deal.
0.94 Monday, December 29, 2014
-
fixing the other side of the AutoPrereqs issue, which is actually
making sure that test runs succeed if you do not have those pre-reqs,
again, sorry about this.
0.93 Wednesday, April 9th, 2014
-
fix the AutoPrereqs issue so that EV, AE, AnyEvent and Mojo::IOLoop are
not required anymore, sorry about that.
0.92 Wednesday, April 9th, 2014
-
just a quick update to make Mojo::IOLoop recommended instead of
required.
0.91 Wednesday, March 19th, 2014
-
fixed issue with re-resolved promises not working correctly - thanks to
Gregory Oschwald for the bug - thanks to Clinton Gormley for the fix -
github issue #28 & #29
-
thanks to Sean Zellmer for some typo fix
0.90 Saturday, Feb. 8th, 2014
-
!!
-
BACKWARDS COMPATIBILITY WARNING !!
-
!!
-
This is the first step towards full !!
-
compatibility with the Promises/A+ !!
-
spec, at which we will declare this !!
-
to be module to be 1.0 !!
-
NOTE: Pretty much everything in this release is thanks to the work of
Clinton Gormley++
-
Fixed the behavior of finally() to make sure @results are passed along
correctly
-
Handle any "then"-able object to be returned as a result, instead of
only accepting Promise objects
-
then/done/finally now accept both callbacks (CODE refs) and "Callable"
objects (objects of classes that overload the CODE de-ref operator)
-
New docs in Promises::Cookbook::GentleIntro.
-
Doc fixes and CPAN repository metadata added, thanks to David
Steinbrunner for this
0.08 Tuesday, Jan. 21, 2014
-
Thanks to clinton gormley for all these
-
changes. Please take note of the backcompat
-
breaking change for finalize().
-
then() callbacks are now wrapped in an eval block to prevent fatal
exceptions and to ensure that rejected promises are propagated correctly
-
renamed finalize() to done()
-
added catch() sugar which takes just an error handler
-
added finally() handler which will always be called, regardles of
whether the promise is resolved or rejected, much like try/catch/finally
0.07 Saturday, Jan. 18, 2014
-
fixing a issues with localizing exceptions that were found by CPAN
testers - thanks to clinton gormley for providing the fix for this
0.06 Friday, Jan. 17, 2014
-
make sure to clear both resolved and rejected callbacks after
resolution, thanks to clinton gormley for this.
-
add event-loop specific backends to allow promises to be resolved in an
async manner (as Promises/A+ suggests) - thanks to clinton gormley for
starting this feature - backend created for AE, AnyEvent and EV -
backend for Mojo::IOLoop, thanks to clinton gormley for this - tests
added
-
add in finalize() operator for ending a chain of promises (see docs for
more info) - thanks to clinton gormley for this feature, docs and tests
0.05 Monday, Dec. 23, 2013
-
catch exceptions in any callback and call reject if they happen
-
the 'promise' method on deferred objects will now return a new
Promises::Promise instance each time it is called - this prevents the
memory cycle we originally had
0.04 Thursday, Oct. 17, 2013
-
DEPRECATION WARNING ***
-
The 'when' helper in Promises.pm is being deprecated because it clashes
with the perl keyword. See RT #84024 for more info.
-
'when' renamed to 'collect' - tests and docs adjusted accordingly
0.03 Sunday, Feb. 17th, 2013
-
added a `deferred` helper function to Promises.pm
-
fixed the reject call in `when` (thanks to rafl for this) - added tests
for this
-
large doc reworking - moved things into a cookbook - added example of
usage with Mojo::IOLoop - added comparison with Scala futures - this
still needs some work, but the basics are ther
0.02 Saturday, Nov. 24th, 2012
-
add several predicate methods to help when interrogating status, this
resolves RT #81278. - thanks to Toby Inkster for this
-
fixed error chaining so that the result of an error in one step of the
chain will be passed onto the next step as well, this resolves RT
#81358. - thanks to TOSHIOITO for this
-
made error callbacks optional and ensured that the errors will bubble to
the next promise in the chain, this resolves RT #81356. - thanks again
to TOSHIOITO for this
0.01 Friday, Nov. 16th, 2012
-
First release to an unsuspecting world
0.95_
TRIAL 2017-08-19
[BUG FIXES]
-
fix case where exception exists but is false. (GH#48, stuckdownawell)
[DOCUMENTATION]
-
doc fix from Amelia Ireland (RT#107559)
-
fix typos in docs (GH#43, yanick)
-
POD fixes. (GH#39, hatorikibble)
-
fix Mojo example (GH#41, InfinityGone)
[ENHANCEMENTS]
-
add support for IO::Async. (GH#62)
-
add Mojo::UserAgent example (GH#56, powerman)
-
add $WARN_ON_UNHANDLED_REJECT. (GH#37, ruz)
-
add `is_done` predicate. (GH#45, yanick)
-
add `chain` method. (GH#47, yanick)
-
add methods `resolved`, `rejected` and `deferred` now accept a coderef.
(GH#50, yanick)
-
allows non-promises in 'collect'. (GH#53, yanick)
[MISC]
-
skip tests if AnyEvent is not installed (GH#42, yanick)
-
add a META.json (GH#40, hatorikibble)
-
README.md improvement. (GH#51, Andy Kogut + yanick)