Skip to content

Commit

Permalink
Initial
Browse files Browse the repository at this point in the history
  • Loading branch information
svetlyak40wt committed Jan 1, 2025
0 parents commit f2b753e
Show file tree
Hide file tree
Showing 17 changed files with 483 additions and 0 deletions.
57 changes: 57 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"name": "CI",
"on": {
"push": {
"branches": [
"master"
]
},
"pull_request": null,
"schedule": [
{
"cron": "0 10 * * 1"
}
]
},
"jobs": {
"run-tests": {
"strategy": {
"fail-fast": false,
"matrix": {
"lisp": [
"sbcl-bin",
"ccl-bin"
]
}
},
"runs-on": "ubuntu-latest",
"env": {
"OS": "ubuntu-latest",
"QUICKLISP_DIST": "quicklisp",
"LISP": "${{ matrix.lisp }}"
},
"steps": [
{
"name": "Checkout Code",
"uses": "actions/checkout@v4"
},
{
"name": "Setup Common Lisp Environment",
"uses": "40ants/setup-lisp@v4",
"with": {
"asdf-system": "40ants-plantuml",
"cache": "true"
}
},
{
"name": "Run Tests",
"uses": "40ants/run-tests@v2",
"with": {
"asdf-system": "40ants-plantuml",
"coveralls-token": "\n${{ matrix.lisp == 'sbcl-bin' &&\n matrix.os == 'ubuntu-latest' &&\n matrix.quicklisp == 'ultralisp' &&\n secrets.github_token }}"
}
}
]
}
}
}
48 changes: 48 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{
"name": "DOCS",
"on": {
"push": {
"branches": [
"master"
]
},
"pull_request": null,
"schedule": [
{
"cron": "0 10 * * 1"
}
]
},
"jobs": {
"build-docs": {
"runs-on": "ubuntu-latest",
"env": {
"OS": "ubuntu-latest",
"QUICKLISP_DIST": "quicklisp",
"LISP": "sbcl-bin"
},
"steps": [
{
"name": "Checkout Code",
"uses": "actions/checkout@v4"
},
{
"name": "Setup Common Lisp Environment",
"uses": "40ants/setup-lisp@v4",
"with": {
"asdf-system": "40ants-plantuml-docs",
"cache": "true"
}
},
{
"name": "Build Docs",
"uses": "40ants/build-docs@v1",
"with": {
"asdf-system": "40ants-plantuml-docs",
"error-on-warnings": true
}
}
]
}
}
}
60 changes: 60 additions & 0 deletions .github/workflows/linter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
{
"name": "LINTER",
"on": {
"push": {
"branches": [
"master"
]
},
"pull_request": null,
"schedule": [
{
"cron": "0 10 * * 1"
}
]
},
"jobs": {
"linter": {
"runs-on": "ubuntu-latest",
"env": {
"OS": "ubuntu-latest",
"QUICKLISP_DIST": "quicklisp",
"LISP": "sbcl-bin"
},
"steps": [
{
"name": "Checkout Code",
"uses": "actions/checkout@v4"
},
{
"name": "Setup Common Lisp Environment",
"uses": "40ants/setup-lisp@v4",
"with": {
"asdf-system": "40ants-plantuml",
"cache": "true"
}
},
{
"name": "Change dist to Ultralisp if qlfile does not exist",
"run": "if [[ ! -e qlfile ]]; then echo 'dist ultralisp http://dist.ultralisp.org' > qlfile; fi",
"shell": "bash"
},
{
"name": "Update Qlot",
"run": "qlot update --no-deps",
"shell": "bash"
},
{
"name": "Install SBLint wrapper",
"run": "qlot exec ros install 40ants-asdf-system 40ants-linter",
"shell": "bash"
},
{
"name": "Run Linter",
"run": "qlot exec 40ants-linter --system \"40ants-plantuml, 40ants-plantuml-docs, 40ants-plantuml-tests\"",
"shell": "bash"
}
]
}
}
}
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
.qlot/
/docs/build/
*~
.#*
.*.~undo-tree~
*.fasl
11 changes: 11 additions & 0 deletions 40ants-plantuml-ci.asd
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
(defsystem "40ants-plantuml-ci"
:author "Alexander Artemenko <[email protected]>"
:license "Unlicense"
:homepage "https://40ants.com/plantuml"
:class :package-inferred-system
:description "Provides CI settings for 40ants-plantuml."
:source-control (:git "https://github.com/40ants/plantuml")
:bug-tracker "https://github.com/40ants/plantuml/issues"
:pathname "src"
:depends-on ("40ants-ci"
"40ants-plantuml-ci/ci"))
11 changes: 11 additions & 0 deletions 40ants-plantuml-docs.asd
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
(defsystem "40ants-plantuml-docs"
:author "Alexander Artemenko <[email protected]>"
:license "Unlicense"
:homepage "https://40ants.com/plantuml"
:class :package-inferred-system
:description "Provides documentation for 40ants-plantuml."
:source-control (:git "https://github.com/40ants/plantuml")
:bug-tracker "https://github.com/40ants/plantuml/issues"
:pathname "docs"
:depends-on ("40ants-plantuml"
"40ants-plantuml-docs/index"))
13 changes: 13 additions & 0 deletions 40ants-plantuml-tests.asd
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
(defsystem "40ants-plantuml-tests"
:author "Alexander Artemenko <[email protected]>"
:license "Unlicense"
:homepage "https://40ants.com/plantuml"
:class :package-inferred-system
:description "Provides tests for 40ants-plantuml."
:source-control (:git "https://github.com/40ants/plantuml")
:bug-tracker "https://github.com/40ants/plantuml/issues"
:pathname "t"
:depends-on ("40ants-plantuml-tests/core")
:perform (test-op (op c)
(unless (symbol-call :rove :run c)
(error "Tests failed"))))
13 changes: 13 additions & 0 deletions 40ants-plantuml.asd
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#-asdf3.1 (error "40ants-plantuml requires ASDF 3.1 because for lower versions pathname does not work for package-inferred systems.")
(defsystem "40ants-plantuml"
:description "Wrapper around PlantUML jar library"
:author "Alexander Artemenko <[email protected]>"
:license "Unlicense"
:homepage "https://40ants.com/plantuml"
:source-control (:git "https://github.com/40ants/plantuml")
:bug-tracker "https://github.com/40ants/plantuml/issues"
:class :40ants-asdf-system
:defsystem-depends-on ("40ants-asdf-system")
:pathname "src"
:depends-on ("40ants-plantuml/core")
:in-order-to ((test-op (test-op "40ants-plantuml-tests"))))
1 change: 1 addition & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
This file will be autogenerated by GitHub action.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
This file will be autogenerated by GitHub action.
24 changes: 24 additions & 0 deletions clpmfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
;;; -*- Mode: common-lisp; -*-
(:api-version "0.4")

(:source "quicklisp"
:url "https://beta.quicklisp.org/dist/quicklisp.txt"
:type :quicklisp)

;; Don't move abover quicklisp before this issue
;; will be resolved:
;; https://github.com/ultralisp/ultralisp/issues/197
(:source "ultralisp"
:url "https://clpi.ultralisp.org/"
:type :clpi)

;; Does not work because https://dist.ultralisp.org/ultralisp-versions.txt is missing
;; (:source "ultralisp"
;; :url "https://dist.ultralisp.org/ultralisp.txt"
;; :type :quicklisp)

(:asd "40ants-plantuml.asd")
(:asd "40ants-plantuml-tests.asd")
(:asd "40ants-plantuml-ci.asd")
(:asd "40ants-plantuml-docs.asd")

13 changes: 13 additions & 0 deletions docs/changelog.lisp
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
(uiop:define-package #:40ants-plantuml-docs/changelog
(:use #:cl)
(:import-from #:40ants-doc/changelog
#:defchangelog))
(in-package #:40ants-plantuml-docs/changelog)


(defchangelog (:ignore-words ("SLY"
"ASDF"
"REPL"
"HTTP"))
(0.1.0 2023-02-05
"* Initial version."))
87 changes: 87 additions & 0 deletions docs/index.lisp
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
(uiop:define-package #:40ants-plantuml-docs/index
(:use #:cl)
(:import-from #:pythonic-string-reader
#:pythonic-string-syntax)
#+quicklisp
(:import-from #:quicklisp)
(:import-from #:named-readtables
#:in-readtable)
(:import-from #:40ants-doc
#:defsection
#:defsection-copy)
(:import-from #:40ants-plantuml-docs/changelog
#:@changelog)
(:import-from #:docs-config
#:docs-config)
(:import-from #:40ants-doc/autodoc
#:defautodoc)
(:export #:@index
#:@readme
#:@changelog))
(in-package #:40ants-plantuml-docs/index)

(in-readtable pythonic-string-syntax)


(defmethod docs-config ((system (eql (asdf:find-system "40ants-plantuml-docs"))))
;; 40ANTS-DOC-THEME-40ANTS system will bring
;; as dependency a full 40ANTS-DOC but we don't want
;; unnecessary dependencies here:
#+quicklisp
(ql:quickload "40ants-doc-theme-40ants")
#-quicklisp
(asdf:load-system "40ants-doc-theme-40ants")

(list :theme
(find-symbol "40ANTS-THEME"
(find-package "40ANTS-DOC-THEME-40ANTS")))
)


(defsection @index (:title "40ants-plantuml - Wrapper around PlantUML jar library"
:ignore-words ("JSON"
"HTTP"
"TODO"
"Unlicense"
"REPL"
"ASDF:PACKAGE-INFERRED-SYSTEM"
"ASDF"
"40A"
"API"
"URL"
"URI"
"RPC"
"GIT"))
(40ants-plantuml system)
"
[![](https://github-actions.40ants.com/40ants/plantuml/matrix.svg?only=ci.run-tests)](https://github.com/40ants/plantuml/actions)
![Quicklisp](http://quickdocs.org/badge/40ants-plantuml.svg)
"
(@installation section)
(@usage section)
(@api section))


(defsection-copy @readme @index)


(defsection @installation (:title "Installation")
"""
You can install this library from Quicklisp, but you want to receive updates quickly, then install it from Ultralisp.org:
```
(ql-dist:install-dist "http://dist.ultralisp.org/"
:prompt nil)
(ql:quickload :40ants-plantuml)
```
""")


(defsection @usage (:title "Usage")
"
TODO: Write a library description. Put some examples here.
")


(defautodoc @api (:system "40ants-plantuml"))
4 changes: 4 additions & 0 deletions qlfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
dist ultralisp http://dist.ultralisp.org/

# This branch is what I use in my Emacs.
github slynk svetlyak40wt/sly :branch patches
Loading

0 comments on commit f2b753e

Please sign in to comment.