[ANN] invariant 0.1.0 – Invariants on Clojure Data Structures

2016-11-14 Thread Yannick Scherer
*Description* > *invariant *is a library providing semantic invariants on Clojure data > structures. Built upon specter it > allows for declarative definition and efficient > resolution of data constraints, focusing on useful error reporting > capabilit

Re: Can clojure.spec be used to identify/pinpoint broken invariants on dynamic data?

2016-11-03 Thread Yannick Scherer
> > I disagree with this - you can define specs in a way that is very granular > and gives fine-grained errors. I'm not arguing that at any point. However, once you use a predicate to check a tree you'll only ever be reported the root of the tree as problem location. The problem where it is

Re: Can clojure.spec be used to identify/pinpoint broken invariants on dynamic data?

2016-10-31 Thread Yannick Scherer
> > imho, you're asking spec to do more than it should here - it's not a magic > wand to wave at all validation problems. > That's good to know. Note that, in regard to the problem stated above, clojure.spec does not fail its validation responsibilities – it can perfectly tell me that my data h

Can clojure.spec be used to identify/pinpoint broken invariants on dynamic data?

2016-10-29 Thread Yannick Scherer
First off, this is basically a follow-up to my previous question . I fear I didn't express my concerns clearly so it was very hard to answer the underlying questions. *The Spec* Let's say we have a spec, describing the AST for a very

Re: "Dynamic" and Spezialised Specs (clojure.spec)

2016-10-29 Thread Yannick Scherer
> > Spec forms are data and can be conformed against s/form specs (not yet > released) to produce more map-like data suitable for driving data > generation if you like. Could you expand on that? Can this be used to generate specs data can be conformed against without having to alter the globa

Re: "Dynamic" and Spezialised Specs (clojure.spec)

2016-10-26 Thread Yannick Scherer
> > I don't think this is necessarily true - you lose granularity in the > example you give because you use an opaque predicate. If the additional > constraint is itself a structured spec, then you do not lose granularity. True, but since key specs are registered globally, I currently cannot

"Dynamic" and Spezialised Specs (clojure.spec)

2016-10-26 Thread Yannick Scherer
Sometimes, there are relationships between different parts of data that need to be included in the spec. This can surely be done using "s/and" and a predicate but this way we lose granularity when it comes to the output of "s/explain" – we'll only ever see _that_ something is wrong but never whe

ANN: iapetos 0.1.0 - A Clojure Prometheus Client

2016-08-09 Thread Yannick Scherer
I'm pleased to announce the initial release of iapetos, a Prometheus [1] client for Clojure, wrapping the respective Java library [2]. Its main goal is to provide elegant access to the underlying functionality, as well as appropriate assistance when tackling common tasks in Clojure-land (like fu

Re: Notification about newer versions

2016-07-14 Thread Yannick Scherer
To check your profiles using lein-ancient, run: lein ancient check-profiles See the output of lein help ancient for all available tasks. - Yanncik Am Donnerstag, 14. Juli 2016 15:01:38 UTC+2 schrieb Cecil Westerhof: > > 2016-07-14 13:05 GMT+02:00 Toby Crawley > > : > >> You can use l

[ANN] kithara 0.1.0 - Reliable RabbitMQ Consumers for Clojure

2016-04-04 Thread Yannick Scherer
kithara aims to facilitate the creation of RabbitMQ consumers in Clojure. It is based on Lyra (https://github.com/jhalterman/lyra) to provide recovery and retry mechanisms. It _is not_ a universal RabbitMQ client. - GitHub: https://github.com/xsc/kithara - Generated Documentation: http://xsc.gith