0.4.0-alpha
·
140 commits
to master
since this release
Main
- Use parking instead of blocking internally. Breaking changes in API!
- Support Clojure 1.9.
API
- Add
process/async
andprocess/await!
working asgo
and<!
but
propagating exceptions. The preferred way to block is callingprocess/await!!
. - All parking API functions of
gen-server
andsupervisor
have pairs
returning "async value". gen-server
callbacks can return timeout as the last element of a tuple.- Add callback name to exit reason caused by the bad return of
gen-server
's
callback. - Remove possibility to set custom process' inbox.
- Add
process/proc-defn-
(issue #18). process/proc-defn
accepts docstring and adds:doc
and:arglists
meta
to defined fn (issue #23).process/receive!
accepts:infinity
and0
as the timeout value.process/receive!
requires one or more message patterns.- Move core tracing functions to
process
ns.
Docs
- Docs for all
gen-server
API functions (callbacks are still not documented). - Docs for all
supervisor
API functions. - Describe
supervisor
behavior in ns docs. - Docs for
process/receive!
(issue #25). - Use markdown for generated docs.
- Generated docs contain links to sources.
- Fix typos.
Examples
- Add explanatory printing to example 4 (issue #19).
- Naive example of
pmap
using processes (issue #30).
Other
- Trace handlers are called directly by the process event relates to.
- No more high-level
supervisor
errors in tracing events. - Fix passing
reg-name
togen-server/start-ns
. - Remove
org.clojure/math.combinatoric
from main dependencies.