js.go | 15 ++++++++------- news.texi | 6 ++++++ usage.go | 2 +- diff --git a/js.go b/js.go index 5cdbb9bd3fa08ae6d943bb64a50e52a3cc5d49967bd93295201fae642382a583..b27a91e4c06b6ae45e67001d9c6a8848930c810d87e7a0d652560affa208cf16 100644 --- a/js.go +++ b/js.go @@ -42,7 +42,7 @@ JSW *os.File jsTokens int jsTokensM sync.Mutex - flagJobs = flag.Uint64("j", 1, fmt.Sprintf("number of parallel jobs (0=inf) (%s)", EnvJobs)) + flagJobs = flag.Int("j", -1, fmt.Sprintf("number of parallel jobs (0=inf, <0=1) (%s)", EnvJobs)) ) func jsInit() { @@ -73,22 +73,23 @@ }() return } - var jobs uint64 - if v := os.Getenv(EnvJobs); v != "" { - var err error + jobs := uint64(1) + var err error + if *flagJobs == 0 { + jobs = 0 + } else if *flagJobs > 0 { + jobs = uint64(*flagJobs) + } else if v := os.Getenv(EnvJobs); v != "" { jobs, err = strconv.ParseUint(v, 10, 64) if err != nil { log.Fatalln("can not parse", EnvJobs, err) } - } else { - jobs = *flagJobs } if jobs == 0 { // infinite jobs return } - var err error JSR, JSW, err = os.Pipe() if err != nil { panic(err) diff --git a/news.texi b/news.texi index 6f3ab447c3a99b3718a4b7a34c09afabfdef54cf4d9c429a930208dd52140d00..978429d539e879f0a8deb551cb411f7274a0acda0659b0b7bf2d1ea2ba97837d 100644 --- a/news.texi +++ b/news.texi @@ -3,6 +3,12 @@ @unnumbered News @table @strong +@anchor{Release 0.11.0} +@item 0.11.0 + Previously @env{REDO_JOBS} overrided even explicitly specified + @option{-j} option. Fix that behaviour -- command line options must + precede environment variables. + @anchor{Release 0.10.0} @item 0.10.0 Initial tarballed release. diff --git a/usage.go b/usage.go index 211d844d40cd8aef45bbd45d0cf65e0d86aa3077c8967c991769f9dde157dbf1..874c9da154f676615325a7b876cd07654fb89c45f6354fd3f8976ef77d7e9efa 100644 --- a/usage.go +++ b/usage.go @@ -26,7 +26,7 @@ "strings" ) const ( - Version = "0.10.0" + Version = "0.11.0" Warranty = `This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 of the License.