diff --git a/configure.ac b/configure.ac index 9c2460b..d989a34 100644 --- a/configure.ac +++ b/configure.ac @@ -15,7 +15,7 @@ ebuild-autogen. If not, see . m4_define([version_major], [0]) m4_define([version_minor], [0]) -m4_define([version_revision], [2]) +m4_define([version_revision], [3]) AC_PACKAGE_URL([http://www.cor.za.net/code/ebuild-autogen]) AC_INIT(ebuild-autogen, diff --git a/ebuild/fetchers/github.scm b/ebuild/fetchers/github.scm index e83b164..c5474b9 100644 --- a/ebuild/fetchers/github.scm +++ b/ebuild/fetchers/github.scm @@ -52,7 +52,7 @@ "?per_page=100&page=" (number->string page))) (curl-easy-setopt curl-handle 'useragent curl-useragent) - (if (string<> token "") + (if (and token (string<> token "")) (curl-easy-setopt curl-handle 'httpheader (list (string-append "Authorization: token " diff --git a/ebuild/fetchers/pypi.scm b/ebuild/fetchers/pypi.scm index 73d1274..566c4f3 100644 --- a/ebuild/fetchers/pypi.scm +++ b/ebuild/fetchers/pypi.scm @@ -53,40 +53,47 @@ "\n"))))))) (define-public fetch-pypi - (lambda* (pkg #:key (file-types (list "tar.gz")) (display-data #f)) + (lambda* (parms #:key (file-types (list ".tar.gz")) (display-data #f)) "" - (let* ((data (fetch-pypi-pkg pkg display-data)) + (let* ((data (fetch-pypi-pkg (assoc-ref parms 'name) display-data)) (versions (vector->list (assoc-ref data "versions"))) (files (assoc-ref data "files"))) (map (lambda (version) - (list (cons "version" version) - ;;TODO handle not found. - (car (car ((dql (select (filter (where (lambda (file-name) - (if (string? file-name) - (string-contains file-name - (string-append "-" - version - "." - (car file-types))) - #f)) - "filename")) - (parm-as "date" "upload-time"))) - files))) - (cons "assets" - (map (lambda (type) - (append (car ((dql (select (filter (where (lambda (file-name) - (if (string? file-name) - (string-contains file-name - (string-append "-" - version - "." - type)) - #f)) - "filename")) - (parm-as "uri" "url") - (parm-as "name" "filename") - (parm "hashes" "sha256"))) - files)) - (list (cons "type" type)))) - file-types)))) + (let ((upload-date (car ((dql (select (filter (where (lambda (file-name) + (if (string? file-name) + (string-contains file-name + (string-append "-" + version + (car file-types))) + #f)) + "filename")) + (parm-as "date" "upload-time"))) + files)))) + (if (nil? upload-date) + (if (>= (assoc-ref parms 'verbosity) + verbosity-error) + (begin (display "Upload file \"") + (display (string-append "-" + version + (car file-types))) + (display "\" not found, skipping release!") + (newline))) + (list (cons "version" version) + (car upload-date) + (cons "assets" + (map (lambda (type) + (append (car ((dql (select (filter (where (lambda (file-name) + (if (string? file-name) + (string-contains file-name + (string-append "-" + version + type)) + #f)) + "filename")) + (parm-as "uri" "url") + (parm-as "name" "filename") + (parm "hashes" "sha256"))) + files)) + (list (cons "type" type)))) + file-types)))))) versions)))) diff --git a/ebuild/repo.scm b/ebuild/repo.scm index 800d5ec..777bf6d 100644 --- a/ebuild/repo.scm +++ b/ebuild/repo.scm @@ -89,6 +89,7 @@ (old-cwd (getcwd))) ;;Not working for updates only init? ;;(submodule-update repo) + (chdir path) (system* "/usr/bin/git" "submodule" "update" "autogen") (chdir (string-join (list path "autogen") file-name-separator-string))