Skip to content

Commit

Permalink
add lib.spec.alpha
Browse files Browse the repository at this point in the history
  • Loading branch information
frenchy64 committed Nov 10, 2021
1 parent f06c989 commit 2c423fb
Show file tree
Hide file tree
Showing 28 changed files with 378 additions and 6 deletions.
1 change: 1 addition & 0 deletions README.md
Expand Up @@ -77,6 +77,7 @@ See modules for specific version coordinates:

* [typed.lib.clojure](typed/lib.clojure/README.md): Base type annotations
* [typed.lib.core.async](typed/lib.core.async/README.md): Annotations for core.async
* [typed.lib.spec.alpha](typed/lib.spec.alpha/README.md): Annotations for spec.alpha

## Compatibility

Expand Down
2 changes: 1 addition & 1 deletion dev/resources/module-template/README.md
@@ -1,4 +1,4 @@
{% do-not-edit-xml-comment %}
{&do-not-edit-xml-comment-template&}
# {&module-artifact-id&}

<a href='{◊typedclojure-homepage◊}'><img src='../../doc/images/part-of-typed-clojure-project.png'></a>
Expand Down
2 changes: 1 addition & 1 deletion dev/resources/module-template/deps.edn
@@ -1,4 +1,4 @@
{&do-not-edit-comment-template&}
{&do-not-edit-edn-comment-template&}
{:paths ["src"]
:deps {org.clojure/clojure {:mvn/version "{◊clojure-mvn-version◊}"}}
:mvn/repos {"sonatype-oss-public"
Expand Down
2 changes: 1 addition & 1 deletion dev/resources/module-template/pom.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
{% do-not-edit-xml-comment %}
{&do-not-edit-xml-comment-template&}
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>{◊typedclojure-group-id◊}</groupId>
Expand Down
1 change: 1 addition & 0 deletions dev/resources/root-templates/README.md
Expand Up @@ -77,6 +77,7 @@ See modules for specific version coordinates:

* [typed.lib.clojure](typed/lib.clojure/README.md): Base type annotations
* [typed.lib.core.async](typed/lib.core.async/README.md): Annotations for core.async
* [typed.lib.spec.alpha](typed/lib.spec.alpha/README.md): Annotations for spec.alpha

## Compatibility

Expand Down
1 change: 1 addition & 0 deletions dev/resources/root-templates/pom.xml
Expand Up @@ -167,6 +167,7 @@

<module>typed/lib.clojure</module>
<module>typed/lib.core.async</module>
<module>typed/lib.spec.alpha</module>
</modules>

<dependencyManagement>
Expand Down
1 change: 1 addition & 0 deletions dev/resources/root-templates/typed/clj.checker/deps.edn
Expand Up @@ -6,6 +6,7 @@
{◊typedclojure-group-id◊}/typed.clj.analyzer {:local/root "../clj.analyzer" :deps/manifest :deps},
{◊typedclojure-group-id◊}/typed.clj.lang {:local/root "../clj.lang" :deps/manifest :deps},
{◊typedclojure-group-id◊}/typed.lib.clojure {:local/root "../lib.clojure" :deps/manifest :deps},
{◊typedclojure-group-id◊}/typed.lib.spec.alpha {:local/root "../lib.spec.alpha" :deps/manifest :deps},
{◊typedclojure-group-id◊}/typed.clj.runtime {:local/root "../clj.runtime" :deps/manifest :deps},
org.clojure/math.combinatorics {:mvn/version "{◊math-combinatorics-mvn-version◊}", :exclusions [org.clojure/clojure]},
org.clojure/tools.namespace {:mvn/version "{◊tools-namespace-mvn-version◊}"},
Expand Down
4 changes: 4 additions & 0 deletions dev/resources/root-templates/typed/clj.checker/pom.xml
Expand Up @@ -47,6 +47,10 @@
<groupId>{◊typedclojure-group-id◊}</groupId>
<artifactId>typed.lib.clojure</artifactId>
</dependency>
<dependency>
<groupId>{◊typedclojure-group-id◊}</groupId>
<artifactId>typed.lib.spec.alpha</artifactId>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>tools.namespace</artifactId>
Expand Down
60 changes: 60 additions & 0 deletions dev/resources/root-templates/typed/lib.spec.alpha/README.md
@@ -0,0 +1,60 @@
{% do-not-edit-xml-comment %}
# typed.lib.spec.alpha

<a href='{◊typedclojure-homepage◊}'><img src='../../doc/images/part-of-typed-clojure-project.png'></a>

<p>
<a href='https://www.patreon.com/ambrosebs'><img src='../../doc/images/become_a_patron_button.png'></a>
<a href='https://opencollective.com/typedclojure'><img src='../../doc/images/donate-to-our-collective.png'></a>
</p>

Annotations and type rules for spec.alpha.

## Releases and Dependency Information

Latest stable release is {◊typedclojure-stable-mvn-version◊}.

* [All Released Versions](https://clojars.org/{◊typedclojure-group-id◊}/typed.lib.spec.alpha)

[deps.edn](https://clojure.org/reference/deps_and_cli) JAR dependency information:

```clj
{◊typedclojure-group-id◊}/typed.lib.spec.alpha {:mvn/version "{◊typedclojure-stable-mvn-version◊}"}
```

[deps.edn](https://clojure.org/reference/deps_and_cli) Git dependency information:

- Note: use `clj -Sresolve` to resolve the `:tag` to a `:sha`

```clj
{◊typedclojure-group-id◊}/typed.lib.spec.alpha
{:git/url "{◊typedclojure-git-https-url◊}"
:deps/root "typed/lib.spec.alpha"
:tag "{◊typedclojure-stable-mvn-version◊}"}
```

[Leiningen](https://github.com/technomancy/leiningen) dependency information:

```clojure
[{◊typedclojure-group-id◊}/typed.lib.spec.alpha "{◊typedclojure-stable-mvn-version◊}"]
```

[Maven](https://maven.apache.org/) dependency information:

```XML
<dependency>
<groupId>{◊typedclojure-group-id◊}</groupId>
<artifactId>typed.lib.spec.alpha</artifactId>
<version>{◊typedclojure-stable-mvn-version◊}</version>
</dependency>
```

## Documentation

[API Reference](https://api.typedclojure.org/latest/typed.lib.spec.alpha/index.html)

## License

Copyright © Ambrose Bonnaire-Sergeant, Rich Hickey & contributors.

Licensed under the EPL (see the file epl-v10.html).
30 changes: 30 additions & 0 deletions dev/resources/root-templates/typed/lib.spec.alpha/deps.edn
@@ -0,0 +1,30 @@
{% do-not-edit-edn-comment %}
{:paths ["src"]
:deps {org.clojure/clojure {:mvn/version "{◊clojure-mvn-version◊}"}}
:mvn/repos {"sonatype-oss-public"
{:url "{◊sonatype-oss-public-url◊}"}}
:aliases {:test
{:extra-deps {{◊typedclojure-group-id◊}/typed.clj.checker
{:local/root "../clj.checker"
:deps/manifest :deps}}
:extra-paths ["test"]}
:nREPL
{:extra-deps
{nrepl/nrepl {:mvn/version "{◊nrepl-mvn-version◊}"}
cider/cider-nrepl {:mvn/version "0.25.3"}},
:main-opts ["-m" "nrepl.cmdline"
"--interactive"
"--middleware" "[\"cider.nrepl/cider-middleware\"]"]}

:codox
{:extra-deps {codox/codox {:mvn/version "{◊codox-mvn-version◊}"}}
:extra-paths ["script"]
:main-opts ["-m" "gen-doc"]}

:runner
{:extra-deps {{◊cognitect-test-runner-coordinates◊}
{:git/url "{◊cognitect-test-runner-git-url◊}"
:sha "{◊cognitect-test-runner-sha◊}"}}
:main-opts ["-m" "cognitect.test-runner"
"-d" "test"
"-r" ".*"]}}}
25 changes: 25 additions & 0 deletions dev/resources/root-templates/typed/lib.spec.alpha/pom.xml
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
{% do-not-edit-xml-comment %}
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>{◊typedclojure-group-id◊}</groupId>
<artifactId>typed.lib.spec.alpha</artifactId>
<description>FIXME</description>
<name>typed.lib.spec.alpha</name>
<version>{◊typedclojure-current-mvn-version◊}</version>

<licenses>
<license>
<name>Eclipse Public License 1.0</name>
<url>http://opensource.org/licenses/eclipse-1.0.php</url>
<distribution>repo</distribution>
</license>
</licenses>

<parent>
<groupId>{◊typedclojure-group-id◊}</groupId>
<artifactId>pom.typed</artifactId>
<version>{◊typedclojure-current-mvn-version◊}</version>
<relativePath>../..</relativePath>
</parent>
</project>
3 changes: 2 additions & 1 deletion dev/src/typed/dev/new_module.clj
Expand Up @@ -69,7 +69,8 @@
(su/set-missing-value-formatter! missing-value-fn)
(let [artifact-id (first args)
context-map (assoc (module-info artifact-id)
:do-not-edit-comment-template "{% do-not-edit-edn-comment %}")]
:do-not-edit-edn-comment-template "{% do-not-edit-edn-comment %}"
:do-not-edit-xml-comment-template "{% do-not-edit-xml-comment %}")]
(doseq [[src dest] (create-template-plan artifact-id)]
(io/make-parents (str "../" dest))
(spit (str "../" dest)
Expand Down
1 change: 1 addition & 0 deletions pom.xml
Expand Up @@ -167,6 +167,7 @@

<module>typed/lib.clojure</module>
<module>typed/lib.core.async</module>
<module>typed/lib.spec.alpha</module>
</modules>

<dependencyManagement>
Expand Down
1 change: 1 addition & 0 deletions typed/clj.checker/deps.edn
Expand Up @@ -6,6 +6,7 @@
org.typedclojure/typed.clj.analyzer {:local/root "../clj.analyzer" :deps/manifest :deps},
org.typedclojure/typed.clj.lang {:local/root "../clj.lang" :deps/manifest :deps},
org.typedclojure/typed.lib.clojure {:local/root "../lib.clojure" :deps/manifest :deps},
org.typedclojure/typed.lib.spec.alpha {:local/root "../lib.spec.alpha" :deps/manifest :deps},
org.typedclojure/typed.clj.runtime {:local/root "../clj.runtime" :deps/manifest :deps},
org.clojure/math.combinatorics {:mvn/version "0.1.6", :exclusions [org.clojure/clojure]},
org.clojure/tools.namespace {:mvn/version "1.1.0"},
Expand Down
4 changes: 4 additions & 0 deletions typed/clj.checker/pom.xml
Expand Up @@ -47,6 +47,10 @@
<groupId>org.typedclojure</groupId>
<artifactId>typed.lib.clojure</artifactId>
</dependency>
<dependency>
<groupId>org.typedclojure</groupId>
<artifactId>typed.lib.spec.alpha</artifactId>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>tools.namespace</artifactId>
Expand Down
2 changes: 0 additions & 2 deletions typed/lib.clojure/src/typed/clj/ext/clojure/core__doseq.clj
Expand Up @@ -79,5 +79,3 @@
(r/ret r/-nil
(fo/-false-filter))
expected))))))


60 changes: 60 additions & 0 deletions typed/lib.spec.alpha/README.md
@@ -0,0 +1,60 @@
<!-- DO NOT EDIT! Instead, edit `dev/resources/root-templates/typed/lib.spec.alpha/README.md` and run `./script/regen-selmer.sh` -->
# typed.lib.spec.alpha

<a href='https://typedclojure.org'><img src='../../doc/images/part-of-typed-clojure-project.png'></a>

<p>
<a href='https://www.patreon.com/ambrosebs'><img src='../../doc/images/become_a_patron_button.png'></a>
<a href='https://opencollective.com/typedclojure'><img src='../../doc/images/donate-to-our-collective.png'></a>
</p>

Annotations and type rules for spec.alpha.

## Releases and Dependency Information

Latest stable release is 1.0.19.

* [All Released Versions](https://clojars.org/org.typedclojure/typed.lib.spec.alpha)

[deps.edn](https://clojure.org/reference/deps_and_cli) JAR dependency information:

```clj
org.typedclojure/typed.lib.spec.alpha {:mvn/version "1.0.19"}
```

[deps.edn](https://clojure.org/reference/deps_and_cli) Git dependency information:

- Note: use `clj -Sresolve` to resolve the `:tag` to a `:sha`

```clj
org.typedclojure/typed.lib.spec.alpha
{:git/url "https://github.com/typedclojure/typedclojure"
:deps/root "typed/lib.spec.alpha"
:tag "1.0.19"}
```

[Leiningen](https://github.com/technomancy/leiningen) dependency information:

```clojure
[org.typedclojure/typed.lib.spec.alpha "1.0.19"]
```

[Maven](https://maven.apache.org/) dependency information:

```XML
<dependency>
<groupId>org.typedclojure</groupId>
<artifactId>typed.lib.spec.alpha</artifactId>
<version>1.0.19</version>
</dependency>
```

## Documentation

[API Reference](https://api.typedclojure.org/latest/typed.lib.spec.alpha/index.html)

## License

Copyright © Ambrose Bonnaire-Sergeant, Rich Hickey & contributors.

Licensed under the EPL (see the file epl-v10.html).
30 changes: 30 additions & 0 deletions typed/lib.spec.alpha/deps.edn
@@ -0,0 +1,30 @@
;; DO NOT EDIT! Instead, edit `dev/resources/root-templates/typed/lib.spec.alpha/deps.edn` and run `./script/regen-selmer.sh`
{:paths ["src"]
:deps {org.clojure/clojure {:mvn/version "1.10.3"}}
:mvn/repos {"sonatype-oss-public"
{:url "https://oss.sonatype.org/content/groups/public/"}}
:aliases {:test
{:extra-deps {org.typedclojure/typed.clj.checker
{:local/root "../clj.checker"
:deps/manifest :deps}}
:extra-paths ["test"]}
:nREPL
{:extra-deps
{nrepl/nrepl {:mvn/version "0.8.3"}
cider/cider-nrepl {:mvn/version "0.25.3"}},
:main-opts ["-m" "nrepl.cmdline"
"--interactive"
"--middleware" "[\"cider.nrepl/cider-middleware\"]"]}

:codox
{:extra-deps {codox/codox {:mvn/version "0.10.7"}}
:extra-paths ["script"]
:main-opts ["-m" "gen-doc"]}

:runner
{:extra-deps {io.github.cognitect-labs/test-runner
{:git/url "https://github.com/cognitect-labs/test-runner"
:sha "4e7e1c0dfd5291fa2134df052443dc29695d8cbe"}}
:main-opts ["-m" "cognitect.test-runner"
"-d" "test"
"-r" ".*"]}}}
25 changes: 25 additions & 0 deletions typed/lib.spec.alpha/pom.xml
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- DO NOT EDIT! Instead, edit `dev/resources/root-templates/typed/lib.spec.alpha/pom.xml` and run `./script/regen-selmer.sh` -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.typedclojure</groupId>
<artifactId>typed.lib.spec.alpha</artifactId>
<description>FIXME</description>
<name>typed.lib.spec.alpha</name>
<version>1.0.20-SNAPSHOT</version>

<licenses>
<license>
<name>Eclipse Public License 1.0</name>
<url>http://opensource.org/licenses/eclipse-1.0.php</url>
<distribution>repo</distribution>
</license>
</licenses>

<parent>
<groupId>org.typedclojure</groupId>
<artifactId>pom.typed</artifactId>
<version>1.0.20-SNAPSHOT</version>
<relativePath>../..</relativePath>
</parent>
</project>
3 changes: 3 additions & 0 deletions typed/lib.spec.alpha/script/gen-doc.sh
@@ -0,0 +1,3 @@
#!/bin/sh

clojure -M:codox:test
10 changes: 10 additions & 0 deletions typed/lib.spec.alpha/script/gen_doc.clj
@@ -0,0 +1,10 @@
(ns gen-doc
(:require [codox.main :as codox]))

(defn -main [& args]
(codox/generate-docs
{:language :clojure
:source-uri "https://github.com/typedclojure/typedclojure/blob/{git-commit}/typed.lib.spec.alpha/{filepath}#L{line}"
:output-path "target/codox"})
(shutdown-agents)
(System/exit 0))
3 changes: 3 additions & 0 deletions typed/lib.spec.alpha/script/repl
@@ -0,0 +1,3 @@
#!/bin/sh

clj -M:test:nREPL "$@"
3 changes: 3 additions & 0 deletions typed/lib.spec.alpha/script/test
@@ -0,0 +1,3 @@
#!/bin/sh

clojure "$@" -M:test:runner

0 comments on commit 2c423fb

Please sign in to comment.