Version extracted from info.rkt
This commit is contained in:
@@ -1,14 +1,43 @@
|
|||||||
#lang racket/base
|
#lang racket/base
|
||||||
|
|
||||||
|
(require racket/file
|
||||||
|
racket/runtime-path
|
||||||
|
racket/string
|
||||||
|
)
|
||||||
|
|
||||||
(provide webview-major
|
(provide webview-major
|
||||||
webview-minor
|
webview-minor
|
||||||
webview-patch
|
webview-patch
|
||||||
webview-version-string
|
webview-version-string
|
||||||
)
|
)
|
||||||
|
|
||||||
(define webview-major 0)
|
(define-runtime-path my-path ".")
|
||||||
(define webview-minor 1)
|
|
||||||
(define webview-patch 3)
|
(define info-str (file->string (build-path my-path "info.rkt")))
|
||||||
|
(define info-list (filter (λ (line)
|
||||||
|
(not (eq? (string-find line "version") #f))
|
||||||
|
) (string-split info-str "\n")))
|
||||||
|
|
||||||
|
(define info-version-re #px"[(]define\\s+version\\s+[\"]([^\"]+)[\"]")
|
||||||
|
(define info-version-str
|
||||||
|
(let ((m (regexp-match info-version-re (car info-list))))
|
||||||
|
(when (eq? m #f)
|
||||||
|
(error "No version information in info.rkt"))
|
||||||
|
(cadr m)))
|
||||||
|
|
||||||
|
(define version-re #px"([0-9]+)[.]([0-9]+)[.]([0-9]+)")
|
||||||
|
(define info-version
|
||||||
|
(let ((m (regexp-match version-re info-version-str)))
|
||||||
|
(when (eq? m #f)
|
||||||
|
(error "No matching version information pattern (x.y.z)"))
|
||||||
|
(list
|
||||||
|
(string->number (cadr m))
|
||||||
|
(string->number (caddr m))
|
||||||
|
(string->number (cadddr m)))))
|
||||||
|
|
||||||
|
(define webview-major (car info-version))
|
||||||
|
(define webview-minor (cadr info-version))
|
||||||
|
(define webview-patch (caddr info-version))
|
||||||
(define (webview-version-string) (format "~a.~a.~a"
|
(define (webview-version-string) (format "~a.~a.~a"
|
||||||
webview-major
|
webview-major
|
||||||
webview-minor
|
webview-minor
|
||||||
|
|||||||
Reference in New Issue
Block a user