metosin / metosin/spec-tools

Unable to parse spec with s/nonconforming

Open
#263 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Clojure
Stars
606
Forks
90
PR merge metrics
No merged PRs in 30d

Description

```clojure
user=> (spec-tools.parse/parse-spec (s/nonconforming int?))
{:type nil}
```

I believe this defmethod is correct though, `s/nonconforming` only needs to delegate immediately to "pass through" the spec it is wrapping.

```clojure
(defmethod spec-tools.parse/parse-form 'clojure.spec.alpha/nonconforming [_ form options]
(spec-tools.parse/parse-spec-with-spec-ref (second form) options))
```

Contributor guide

Open the contributing guide

Research direction

Start with the reproduced spec-tools.parse/parse-spec call using s/nonconforming int?, then inspect the parse-form dispatch for clojure.spec.alpha/nonconforming. Compare its behavior with the proposed delegation through parse-spec-with-spec-ref; done means the wrapped int? spec no longer produces {:type nil}.

Written by the indexing model from the issue text.

Assessment

Tech stack
clojure
Domain
tooling
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.