Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 13fdd61

Browse files
Add update-versions.bb admin script
1 parent 4d3f49a commit 13fdd61

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

‎update_versions.bb‎

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
#!/usr/bin/env bb
2+
3+
(require '[clojure.string :as str])
4+
(import 'java.time.format.DateTimeFormatter
5+
'java.time.LocalDateTime)
6+
7+
(def project-files
8+
["project.clj"
9+
"ring-bench/project.clj"
10+
"ring-core/project.clj"
11+
"ring-core-protocols/project.clj"
12+
"ring-devel/project.clj"
13+
"ring-jakarta-servlet/project.clj"
14+
"ring-jetty-adapter/project.clj"
15+
"ring-servlet/project.clj"
16+
"ring-websocket-protocols/project.clj"])
17+
18+
(def version (first *command-line-args*))
19+
20+
(when-not version
21+
(println "Error: requires version as first argument.")
22+
(System/exit 1))
23+
24+
(doseq [f project-files]
25+
(-> (slurp f)
26+
(str/replace #"\(defproject (.*?) \"(.*?)\""
27+
(format "(defproject 1ドル \"%s\"" version))
28+
(str/replace #"\[ring/(.*?) \"(.*?)\"\]"
29+
(format "[ring/1ドル \"%s\"]" version))
30+
(str/replace #"\[org\.ring-clojure/(.*?) \"(.*?)\"\]"
31+
(format "[org.ring-clojure/1ドル \"%s\"]" version))
32+
(as-> s (spit f s)))
33+
(println (format "Updated '%s'." f)))
34+
35+
(-> (slurp "README.md")
36+
(str/replace
37+
#"ring/ring-core \{:mvn/version \"(.*?)\"\}"
38+
(format "ring/ring-core {:mvn/version \"%s\"}" version))
39+
(str/replace
40+
#"\[ring/ring-core (.*?)\]"
41+
(format "[ring/ring-core \"%s\"]" version))
42+
(as-> s (spit "README.md" s)))
43+
(println "Updated 'README.md'.")
44+
45+
(def now (LocalDateTime/now))
46+
(def formatter (DateTimeFormatter/ofPattern "yyyy-MM-dd"))
47+
48+
(->> (slurp "CHANGELOG.md")
49+
(str "## " version " (" (.format now formatter) ")\n\n"
50+
"* TBD\n\n")
51+
(spit "CHANGELOG.md"))
52+
53+
(println "Updated 'CHANGELOG.md'.")
54+
(newline)
55+
(println "Remember to update the CHANGELOG!")

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /