[tor-commits] [tor/release-0.4.2] Merge branch 'bug31859_035' into bug31859_040

2019-10-16 Thread teor
commit 07db4141abb228bc6848e520b6faa75b0015af72
Merge: 9e674d0eb 632e70739
Author: teor 
Date:   Tue Oct 1 23:46:28 2019 +1000

Merge branch 'bug31859_035' into bug31859_040

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Travis: Split jobs, add essential jobs, remove redundant jobs

2019-10-16 Thread teor
commit 4482d6fde5b0b8a0261dd31889a23b789844a486
Author: teor 
Date:   Tue Oct 1 17:28:26 2019 +1000

Travis: Split jobs, add essential jobs, remove redundant jobs

Part of 31859 for 0.3.5.
---
 .travis.yml | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 1f555c69c..670b0536f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,14 +46,15 @@ matrix:
 ## We run chutney on macOS, because macOS Travis has IPv6
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
-# We clone our stem repo and run `make test-stem`
+## We clone our stem repo and run `make test-stem`
 - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
-## Check rust online with distcheck, to make sure we remove rust products
-- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
-## Check disable module dirauth with and without rust
-- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
-## Check NSS
+## We run rust on macOS, because we have seen macOS rust failures before
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
+## We check NSS
 - env: NSS_OPTIONS="--enable-nss"
 
   ## Allow the build to report success (with non-required sub-builds



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge branch 'bug31859_041' into bug31859_master

2019-10-16 Thread teor
commit 58746ad9ca4599fa40d6709228f79fbafaeb4976
Merge: 53116ca0b e5dda7f66
Author: teor 
Date:   Wed Oct 2 00:20:38 2019 +1000

Merge branch 'bug31859_041' into bug31859_master

Merge master's RUST_VERSION="nightly" into the macOS Rust job
from bug31859_041.

Drop master's RUST_VERSION="beta", because we only have two
Rust jobs now.

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index 94d9bf9cc,909a3d28d..ec3827d31
--- a/.travis.yml
+++ b/.travis.yml
@@@ -29,53 -27,56 +27,58 @@@ env
  - HARDENING_OPTIONS="--enable-expensive-hardening"
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
 +## Our default rust version is the minimum supported version
 +- RUST_VERSION="1.31.0"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We check NSS
+ ## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+ - env: NSS_OPTIONS="--enable-nss"
+   compiler: clang
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We include a single coverage build with the best options for coverage
  - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" 
TOR_TEST_RNG_SEED="636f766572616765"
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run rust on Linux, because it's faster than rust on macOS
+ ## We check rust offline
+ - env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  ## We check asciidoc with distcheck, to make sure we remove doc products
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
+ ## We check disable module dirauth
+ - env: MODULES_OPTIONS="--disable-module-dirauth"
+ ## We run rust on macOS, because we have seen macOS rust failures before
 -- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
++- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
compiler: clang
- # We clone our stem repo and run `make test-stem`
+   os: osx
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
+ ## We clone our stem repo and run `make test-stem`
  - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
- ## Check rust online with distcheck, to make sure we remove rust products
- - env: DISTCHECK="yes" RUST_VERSION="beta" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
- ## Check disable module dirauth with and without rust
- - env: MODULES_OPTIONS="--disable-module-dirauth" RUST_VERSION="nightly" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- - env: MODULES_OPTIONS="--disable-module-dirauth"
- ## Check NSS
- - env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS rust and chutney are very slow, so we let the build finish before
+ ## they are done.  We'd like to fast finish, but still 

[tor-commits] [tor/release-0.4.2] Travis: Unroll the build matrix into matrix: include:

2019-10-16 Thread teor
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor 
Date:   Thu Sep 26 17:25:17 2019 +1000

Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.
---
 .travis.yml | 33 +
 1 file changed, 13 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
 
 compiler:
   - gcc
-  - clang
 
 os:
   - linux
-  - osx
 
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
 env:
   global:
 ## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
 ## We turn off asciidoc by default, because it's slow
 - ASCIIDOC_OPTIONS="--disable-asciidoc"
   matrix:
-## We want to use each build option at least once
-##
-## We don't list default variable values, because we set the defaults
-## in global (or the default is unset)
+## This matrix entry is required, but it doesn't actually create any jobs
 -
 
 matrix:
-  ## include creates builds with gcc, linux
+  ## include creates builds with gcc, linux, unless we override those defaults
   include:
+## gcc is the default compiler for most jobs, so we want a clang Linux job
+- compiler: clang
+## clang is the default macOS compiler, so we use it for the macOS job
+- compiler: clang
+  os: osx
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 ## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
   ## https://github.com/travis-ci/travis-ci/issues/1696
   # fast_finish: true
 
-  ## Careful! We use global envs, which makes it hard to exclude or
-  ## allow failures by env:
+  ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  exclude:
-## gcc on OSX is less useful, because the default compiler is clang.
-- compiler: gcc
-  os: osx
-## gcc on Linux with no env is redundant, because all the custom builds use
-## gcc on Linux
-- compiler: gcc
-  os: linux
-  env:
+  # allow_failures:
+  #   - compiler: gcc
+  # os: linux
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Travis: Allow the build to finish before the macOS Rust job

2019-10-16 Thread teor
commit b0bf7e7b606e45cff5988106febe157009c2f561
Author: teor 
Date:   Wed Oct 2 10:09:02 2019 +1000

Travis: Allow the build to finish before the macOS Rust job

When we merged TOR_RUST_VERSION from master, the allow_failures rule
did not match any more. Update it to make it match.

Closes 31859 for master.
---
 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.travis.yml b/.travis.yml
index ec3827d31..00c967e34 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -74,7 +74,7 @@ matrix:
 ## macOS rust and chutney are very slow, so we let the build finish before
 ## they are done.  We'd like to fast finish, but still eventually show
 ## any failures in the build status. But Travis doesn't have that ability.
-- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
   compiler: clang
   os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge branch 'maint-0.3.5' into maint-0.4.0

2019-10-16 Thread teor
commit e483257e1bc826b5678fcbf13084fd5d811f2b12
Merge: a74c18069 4b8e5ea0d
Author: teor 
Date:   Thu Oct 17 14:51:58 2019 +1000

Merge branch 'maint-0.3.5' into maint-0.4.0

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Travis: Add a macOS chutney job, but don't wait for it to finish

2019-10-16 Thread teor
commit 1e0e23c1e48ebc388f7a16a08a3f12e01db15bfa
Author: teor 
Date:   Thu Sep 26 17:44:41 2019 +1000

Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.
---
 .travis.yml | 37 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  2 +-
 3 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f47fe8bb2..564c97dbf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,34 +27,33 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## clang is the default macOS compiler, so we use it for the macOS job
+## We run basic tests on macOS
 - compiler: clang
   os: osx
-## We include a single coverage build with the best options for coverage
-- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We only want to check these build option combinations once
-## (they shouldn't vary by compiler or OS)
-## We run coverage with hardening off, which seems like enough
-# - env: HARDENING_OPTIONS=""
+## We run chutney on Linux, because it's faster than chutney on macOS
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
 ## We check asciidoc with distcheck, to make sure we remove doc products
+## We use Linux clang, because there are no other Linux clang jobs
 - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-# We also try running a hardened clang build with chutney on Linux.
-- env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
   compiler: clang
+## We include a single coverage build with the best options for coverage
+- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
-  ## Uncomment to allow the build to report success (with non-required
-  ## sub-builds continuing to run) if all required sub-builds have
-  ## succeeded.  This is somewhat buggy currently: it can cause
-  ## duplicate notifications and prematurely report success if a
-  ## single sub-build has succeeded.  See
-  ## https://github.com/travis-ci/travis-ci/issues/1696
-  # fast_finish: true
+  ## Allow the build to report success (with non-required sub-builds
+  ## continuing to run) if all required sub-builds have succeeded.
+  fast_finish: true
 
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  # allow_failures:
-  #   - compiler: gcc
-  # os: linux
+  allow_failures:
+## macOS chutney is very slow, so we let the build finish before it's done
+## We'd like to fast finish, but still eventually show failures.
+## But Travis doesn't have that option.
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty
diff --git a/changes/ticket30860 b/changes/ticket30860
new file mode 100644
index 0..b946f735c
--- /dev/null
+++ b/changes/ticket30860
@@ -0,0 +1,3 @@
+  o Testing:
+- Run the chutney IPv6 networks as part of Travis CI.
+  Closes ticket 30860.
diff --git a/changes/ticket31859 b/changes/ticket31859
index 0eb8a42e9..dbc591e00 100644
--- a/changes/ticket31859
+++ b/changes/ticket31859
@@ -1,3 +1,3 @@
   o Testing:
-- Remove some redundant Travis CI jobs, to speed up CI.
+- Simplify the Travis CI build matrix, and optimise for build time.
   Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge branch 'maint-0.4.0' into maint-0.4.1

2019-10-16 Thread teor
commit 400e31ad1937aeaa962349eef058945080c46daa
Merge: 13daf339a e483257e1
Author: teor 
Date:   Thu Oct 17 14:52:06 2019 +1000

Merge branch 'maint-0.4.0' into maint-0.4.1




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge branch 'maint-0.4.1' into maint-0.4.2

2019-10-16 Thread teor
commit 8ac9af2330e99032445055d6728e9b3fe34a3470
Merge: 92c4dc9b1 400e31ad1
Author: teor 
Date:   Thu Oct 17 14:52:15 2019 +1000

Merge branch 'maint-0.4.1' into maint-0.4.2

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Merge branch 'maint-0.3.5' into maint-0.4.0

2019-10-16 Thread teor
commit e483257e1bc826b5678fcbf13084fd5d811f2b12
Merge: a74c18069 4b8e5ea0d
Author: teor 
Date:   Thu Oct 17 14:51:58 2019 +1000

Merge branch 'maint-0.3.5' into maint-0.4.0

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge branch 'maint-0.4.1' into release-0.4.1

2019-10-16 Thread teor
commit e5bce3a74eddf7a55f357664629b520ff3b6c05d
Merge: f33d5b29e 400e31ad1
Author: teor 
Date:   Thu Oct 17 14:52:10 2019 +1000

Merge branch 'maint-0.4.1' into release-0.4.1

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge branch 'bug31859_040' into bug31859_041

2019-10-16 Thread teor
commit e5dda7f66477dad699c654c54978bbad9a999847
Merge: 6f3f93d86 07db4141a
Author: teor 
Date:   Tue Oct 1 23:50:24 2019 +1000

Merge branch 'bug31859_040' into bug31859_041

Merge TOR_TEST_RNG_SEED in maint-0.4.1 into the coverage line
from bug31859_040.

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index bbba0e204,b3b8cb977..909a3d28d
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,50 -28,55 +28,55 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We check NSS
+ ## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+ - env: NSS_OPTIONS="--enable-nss"
+   compiler: clang
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We include a single coverage build with the best options for coverage
 -- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 +- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" 
TOR_TEST_RNG_SEED="636f766572616765"
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run rust on Linux, because it's faster than rust on macOS
+ ## We check rust offline
+ - env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  ## We check asciidoc with distcheck, to make sure we remove doc products
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
+ ## We check disable module dirauth
+ - env: MODULES_OPTIONS="--disable-module-dirauth"
+ ## We run rust on macOS, because we have seen macOS rust failures before
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
compiler: clang
- # We clone our stem repo and run `make test-stem`
+   os: osx
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
+ ## We clone our stem repo and run `make test-stem`
  - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
- ## Check rust online with distcheck, to make sure we remove rust products
- - env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
- ## Check disable module dirauth with and without rust
- - env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- - env: MODULES_OPTIONS="--disable-module-dirauth"
- ## Check NSS
- - env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS rust and chutney are very slow, so we let the build finish before
+ ## they are done.  We'd like to fast finish, but still eventually show
+ ## any failures in the build status. But Travis doesn't have that ability.
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+   compiler: clang
+   os: osx
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
  ## 

[tor-commits] [tor/release-0.4.2] Merge remote-tracking branch 'tor-github/pr/1373' into maint-0.4.2

2019-10-16 Thread teor
commit 92c4dc9b141e4e2e71b68c40c85ef64f20c8344b
Merge: a4790e7d4 b0bf7e7b6
Author: teor 
Date:   Thu Oct 17 14:51:30 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1373' into maint-0.4.2

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index 2073b853c,00c967e34..c65923d2c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -15,17 -15,13 +15,15 @@@ compiler
  
  os:
- linux
-   - osx
  
- ## The build matrix in the following stanza expands into builds for each
- ## OS and compiler.
+ ## We don't use the build matrix cross-product, because it makes too many jobs
+ ## Instead, we list each job under matrix: include:
  env:
global:
 -## The Travis CI environment allows us two cores, so let's use both.
 -- MAKEFLAGS="-j 2"
 +## The Travis CI environment allows us two cores, so let's use both.  
Also,
 +## let's use the "-k" flag so that we get all of the compilation failures,
 +## not just the first one.
 +- MAKEFLAGS="-k -j 2"
  ## We turn on hardening by default
  ## Also known as --enable-fragile-hardening in 0.3.0.3-alpha and later
  - HARDENING_OPTIONS="--enable-expensive-hardening"



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge branch 'bug31859_029' into bug31859_035

2019-10-16 Thread teor
commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor 
Date:   Tue Oct 1 17:20:16 2019 +1000

Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

 .travis.yml | 68 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
- ## We include a single coverage build with the best options for coverage
- - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We check asciidoc with distcheck, to make sure we remove doc products
 -## We use Linux clang, because there are no other Linux clang jobs
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--  compiler: clang
+ ## We include a single coverage build with the best options for coverage
+ - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +# We clone our stem repo and run `make test-stem`
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +## Check rust online with distcheck, to make sure we remove rust products
 +- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
 +## Check disable module dirauth with and without rust
 +- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +- env: MODULES_OPTIONS="--disable-module-dirauth"
 +## Check NSS
 +- env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS chutney is very slow, so we let the build finish before it's done
+ ## We'd like to fast finish, but still eventually show failures.
+ ## But Travis doesn't have that option.
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +## test-stem sometimes hangs on Travis
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
-   os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds 
use
- ## gcc on Linux
- - compiler: gcc
-   os: linux
-   env:
- ## offline rust builds for gcc on Linux are redundant, because we do an
- ## online rust build for gcc on Linux
- - compiler: gcc
-   os: linux
-   ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-   env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) 

[tor-commits] [tor/release-0.4.1] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

2019-10-16 Thread teor
commit 13daf339a903da74051ac9d51d8bb5b386be64f8
Merge: 4dcbbe416 e5dda7f66
Author: teor 
Date:   Thu Oct 17 14:51:02 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

2019-10-16 Thread teor
commit 13daf339a903da74051ac9d51d8bb5b386be64f8
Merge: 4dcbbe416 e5dda7f66
Author: teor 
Date:   Thu Oct 17 14:51:02 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Merge branch 'bug31859_040' into bug31859_041

2019-10-16 Thread teor
commit e5dda7f66477dad699c654c54978bbad9a999847
Merge: 6f3f93d86 07db4141a
Author: teor 
Date:   Tue Oct 1 23:50:24 2019 +1000

Merge branch 'bug31859_040' into bug31859_041

Merge TOR_TEST_RNG_SEED in maint-0.4.1 into the coverage line
from bug31859_040.

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index bbba0e204,b3b8cb977..909a3d28d
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,50 -28,55 +28,55 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We check NSS
+ ## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+ - env: NSS_OPTIONS="--enable-nss"
+   compiler: clang
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We include a single coverage build with the best options for coverage
 -- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 +- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" 
TOR_TEST_RNG_SEED="636f766572616765"
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run rust on Linux, because it's faster than rust on macOS
+ ## We check rust offline
+ - env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  ## We check asciidoc with distcheck, to make sure we remove doc products
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
+ ## We check disable module dirauth
+ - env: MODULES_OPTIONS="--disable-module-dirauth"
+ ## We run rust on macOS, because we have seen macOS rust failures before
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
compiler: clang
- # We clone our stem repo and run `make test-stem`
+   os: osx
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
+ ## We clone our stem repo and run `make test-stem`
  - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
- ## Check rust online with distcheck, to make sure we remove rust products
- - env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
- ## Check disable module dirauth with and without rust
- - env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- - env: MODULES_OPTIONS="--disable-module-dirauth"
- ## Check NSS
- - env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS rust and chutney are very slow, so we let the build finish before
+ ## they are done.  We'd like to fast finish, but still eventually show
+ ## any failures in the build status. But Travis doesn't have that ability.
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+   compiler: clang
+   os: osx
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
  ## 

[tor-commits] [tor/release-0.4.1] Merge branch 'maint-0.3.5' into maint-0.4.0

2019-10-16 Thread teor
commit e483257e1bc826b5678fcbf13084fd5d811f2b12
Merge: a74c18069 4b8e5ea0d
Author: teor 
Date:   Thu Oct 17 14:51:58 2019 +1000

Merge branch 'maint-0.3.5' into maint-0.4.0

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge branch 'maint-0.4.0' into maint-0.4.1

2019-10-16 Thread teor
commit 400e31ad1937aeaa962349eef058945080c46daa
Merge: 13daf339a e483257e1
Author: teor 
Date:   Thu Oct 17 14:52:06 2019 +1000

Merge branch 'maint-0.4.0' into maint-0.4.1




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Travis: Split jobs, add essential jobs, remove redundant jobs

2019-10-16 Thread teor
commit 4482d6fde5b0b8a0261dd31889a23b789844a486
Author: teor 
Date:   Tue Oct 1 17:28:26 2019 +1000

Travis: Split jobs, add essential jobs, remove redundant jobs

Part of 31859 for 0.3.5.
---
 .travis.yml | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 1f555c69c..670b0536f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,14 +46,15 @@ matrix:
 ## We run chutney on macOS, because macOS Travis has IPv6
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
-# We clone our stem repo and run `make test-stem`
+## We clone our stem repo and run `make test-stem`
 - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
-## Check rust online with distcheck, to make sure we remove rust products
-- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
-## Check disable module dirauth with and without rust
-- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
-## Check NSS
+## We run rust on macOS, because we have seen macOS rust failures before
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
+## We check NSS
 - env: NSS_OPTIONS="--enable-nss"
 
   ## Allow the build to report success (with non-required sub-builds



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.2] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Travis: Unroll the build matrix into matrix: include:

2019-10-16 Thread teor
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor 
Date:   Thu Sep 26 17:25:17 2019 +1000

Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.
---
 .travis.yml | 33 +
 1 file changed, 13 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
 
 compiler:
   - gcc
-  - clang
 
 os:
   - linux
-  - osx
 
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
 env:
   global:
 ## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
 ## We turn off asciidoc by default, because it's slow
 - ASCIIDOC_OPTIONS="--disable-asciidoc"
   matrix:
-## We want to use each build option at least once
-##
-## We don't list default variable values, because we set the defaults
-## in global (or the default is unset)
+## This matrix entry is required, but it doesn't actually create any jobs
 -
 
 matrix:
-  ## include creates builds with gcc, linux
+  ## include creates builds with gcc, linux, unless we override those defaults
   include:
+## gcc is the default compiler for most jobs, so we want a clang Linux job
+- compiler: clang
+## clang is the default macOS compiler, so we use it for the macOS job
+- compiler: clang
+  os: osx
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 ## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
   ## https://github.com/travis-ci/travis-ci/issues/1696
   # fast_finish: true
 
-  ## Careful! We use global envs, which makes it hard to exclude or
-  ## allow failures by env:
+  ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  exclude:
-## gcc on OSX is less useful, because the default compiler is clang.
-- compiler: gcc
-  os: osx
-## gcc on Linux with no env is redundant, because all the custom builds use
-## gcc on Linux
-- compiler: gcc
-  os: linux
-  env:
+  # allow_failures:
+  #   - compiler: gcc
+  # os: linux
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Travis: Split jobs, add essential jobs, remove redundant jobs

2019-10-16 Thread teor
commit 4482d6fde5b0b8a0261dd31889a23b789844a486
Author: teor 
Date:   Tue Oct 1 17:28:26 2019 +1000

Travis: Split jobs, add essential jobs, remove redundant jobs

Part of 31859 for 0.3.5.
---
 .travis.yml | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 1f555c69c..670b0536f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,14 +46,15 @@ matrix:
 ## We run chutney on macOS, because macOS Travis has IPv6
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
-# We clone our stem repo and run `make test-stem`
+## We clone our stem repo and run `make test-stem`
 - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
-## Check rust online with distcheck, to make sure we remove rust products
-- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
-## Check disable module dirauth with and without rust
-- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
-## Check NSS
+## We run rust on macOS, because we have seen macOS rust failures before
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
+## We check NSS
 - env: NSS_OPTIONS="--enable-nss"
 
   ## Allow the build to report success (with non-required sub-builds



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Travis: Add a macOS chutney job, but don't wait for it to finish

2019-10-16 Thread teor
commit 1e0e23c1e48ebc388f7a16a08a3f12e01db15bfa
Author: teor 
Date:   Thu Sep 26 17:44:41 2019 +1000

Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.
---
 .travis.yml | 37 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  2 +-
 3 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f47fe8bb2..564c97dbf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,34 +27,33 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## clang is the default macOS compiler, so we use it for the macOS job
+## We run basic tests on macOS
 - compiler: clang
   os: osx
-## We include a single coverage build with the best options for coverage
-- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We only want to check these build option combinations once
-## (they shouldn't vary by compiler or OS)
-## We run coverage with hardening off, which seems like enough
-# - env: HARDENING_OPTIONS=""
+## We run chutney on Linux, because it's faster than chutney on macOS
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
 ## We check asciidoc with distcheck, to make sure we remove doc products
+## We use Linux clang, because there are no other Linux clang jobs
 - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-# We also try running a hardened clang build with chutney on Linux.
-- env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
   compiler: clang
+## We include a single coverage build with the best options for coverage
+- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
-  ## Uncomment to allow the build to report success (with non-required
-  ## sub-builds continuing to run) if all required sub-builds have
-  ## succeeded.  This is somewhat buggy currently: it can cause
-  ## duplicate notifications and prematurely report success if a
-  ## single sub-build has succeeded.  See
-  ## https://github.com/travis-ci/travis-ci/issues/1696
-  # fast_finish: true
+  ## Allow the build to report success (with non-required sub-builds
+  ## continuing to run) if all required sub-builds have succeeded.
+  fast_finish: true
 
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  # allow_failures:
-  #   - compiler: gcc
-  # os: linux
+  allow_failures:
+## macOS chutney is very slow, so we let the build finish before it's done
+## We'd like to fast finish, but still eventually show failures.
+## But Travis doesn't have that option.
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty
diff --git a/changes/ticket30860 b/changes/ticket30860
new file mode 100644
index 0..b946f735c
--- /dev/null
+++ b/changes/ticket30860
@@ -0,0 +1,3 @@
+  o Testing:
+- Run the chutney IPv6 networks as part of Travis CI.
+  Closes ticket 30860.
diff --git a/changes/ticket31859 b/changes/ticket31859
index 0eb8a42e9..dbc591e00 100644
--- a/changes/ticket31859
+++ b/changes/ticket31859
@@ -1,3 +1,3 @@
   o Testing:
-- Remove some redundant Travis CI jobs, to speed up CI.
+- Simplify the Travis CI build matrix, and optimise for build time.
   Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge branch 'bug31859_029' into bug31859_035

2019-10-16 Thread teor
commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor 
Date:   Tue Oct 1 17:20:16 2019 +1000

Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

 .travis.yml | 68 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
- ## We include a single coverage build with the best options for coverage
- - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We check asciidoc with distcheck, to make sure we remove doc products
 -## We use Linux clang, because there are no other Linux clang jobs
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--  compiler: clang
+ ## We include a single coverage build with the best options for coverage
+ - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +# We clone our stem repo and run `make test-stem`
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +## Check rust online with distcheck, to make sure we remove rust products
 +- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
 +## Check disable module dirauth with and without rust
 +- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +- env: MODULES_OPTIONS="--disable-module-dirauth"
 +## Check NSS
 +- env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS chutney is very slow, so we let the build finish before it's done
+ ## We'd like to fast finish, but still eventually show failures.
+ ## But Travis doesn't have that option.
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +## test-stem sometimes hangs on Travis
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
-   os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds 
use
- ## gcc on Linux
- - compiler: gcc
-   os: linux
-   env:
- ## offline rust builds for gcc on Linux are redundant, because we do an
- ## online rust build for gcc on Linux
- - compiler: gcc
-   os: linux
-   ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-   env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) 

[tor-commits] [tor/release-0.4.0] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Merge branch 'bug31859_035' into bug31859_040

2019-10-16 Thread teor
commit 07db4141abb228bc6848e520b6faa75b0015af72
Merge: 9e674d0eb 632e70739
Author: teor 
Date:   Tue Oct 1 23:46:28 2019 +1000

Merge branch 'bug31859_035' into bug31859_040

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Merge branch 'maint-0.4.0' into release-0.4.0

2019-10-16 Thread teor
commit 3ab58706f775d8e3080a75dfa4b3e5735778d436
Merge: c7d3bedf3 e483257e1
Author: teor 
Date:   Thu Oct 17 14:52:02 2019 +1000

Merge branch 'maint-0.4.0' into release-0.4.0

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge branch 'maint-0.4.1' into maint-0.4.2

2019-10-16 Thread teor
commit 8ac9af2330e99032445055d6728e9b3fe34a3470
Merge: 92c4dc9b1 400e31ad1
Author: teor 
Date:   Thu Oct 17 14:52:15 2019 +1000

Merge branch 'maint-0.4.1' into maint-0.4.2

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Travis: Add a macOS chutney job, but don't wait for it to finish

2019-10-16 Thread teor
commit 1e0e23c1e48ebc388f7a16a08a3f12e01db15bfa
Author: teor 
Date:   Thu Sep 26 17:44:41 2019 +1000

Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.
---
 .travis.yml | 37 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  2 +-
 3 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f47fe8bb2..564c97dbf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,34 +27,33 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## clang is the default macOS compiler, so we use it for the macOS job
+## We run basic tests on macOS
 - compiler: clang
   os: osx
-## We include a single coverage build with the best options for coverage
-- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We only want to check these build option combinations once
-## (they shouldn't vary by compiler or OS)
-## We run coverage with hardening off, which seems like enough
-# - env: HARDENING_OPTIONS=""
+## We run chutney on Linux, because it's faster than chutney on macOS
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
 ## We check asciidoc with distcheck, to make sure we remove doc products
+## We use Linux clang, because there are no other Linux clang jobs
 - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-# We also try running a hardened clang build with chutney on Linux.
-- env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
   compiler: clang
+## We include a single coverage build with the best options for coverage
+- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
-  ## Uncomment to allow the build to report success (with non-required
-  ## sub-builds continuing to run) if all required sub-builds have
-  ## succeeded.  This is somewhat buggy currently: it can cause
-  ## duplicate notifications and prematurely report success if a
-  ## single sub-build has succeeded.  See
-  ## https://github.com/travis-ci/travis-ci/issues/1696
-  # fast_finish: true
+  ## Allow the build to report success (with non-required sub-builds
+  ## continuing to run) if all required sub-builds have succeeded.
+  fast_finish: true
 
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  # allow_failures:
-  #   - compiler: gcc
-  # os: linux
+  allow_failures:
+## macOS chutney is very slow, so we let the build finish before it's done
+## We'd like to fast finish, but still eventually show failures.
+## But Travis doesn't have that option.
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty
diff --git a/changes/ticket30860 b/changes/ticket30860
new file mode 100644
index 0..b946f735c
--- /dev/null
+++ b/changes/ticket30860
@@ -0,0 +1,3 @@
+  o Testing:
+- Run the chutney IPv6 networks as part of Travis CI.
+  Closes ticket 30860.
diff --git a/changes/ticket31859 b/changes/ticket31859
index 0eb8a42e9..dbc591e00 100644
--- a/changes/ticket31859
+++ b/changes/ticket31859
@@ -1,3 +1,3 @@
   o Testing:
-- Remove some redundant Travis CI jobs, to speed up CI.
+- Simplify the Travis CI build matrix, and optimise for build time.
   Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Merge branch 'bug31859_029' into bug31859_035

2019-10-16 Thread teor
commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor 
Date:   Tue Oct 1 17:20:16 2019 +1000

Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

 .travis.yml | 68 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
- ## We include a single coverage build with the best options for coverage
- - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We check asciidoc with distcheck, to make sure we remove doc products
 -## We use Linux clang, because there are no other Linux clang jobs
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--  compiler: clang
+ ## We include a single coverage build with the best options for coverage
+ - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +# We clone our stem repo and run `make test-stem`
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +## Check rust online with distcheck, to make sure we remove rust products
 +- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
 +## Check disable module dirauth with and without rust
 +- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +- env: MODULES_OPTIONS="--disable-module-dirauth"
 +## Check NSS
 +- env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS chutney is very slow, so we let the build finish before it's done
+ ## We'd like to fast finish, but still eventually show failures.
+ ## But Travis doesn't have that option.
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +## test-stem sometimes hangs on Travis
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
-   os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds 
use
- ## gcc on Linux
- - compiler: gcc
-   os: linux
-   env:
- ## offline rust builds for gcc on Linux are redundant, because we do an
- ## online rust build for gcc on Linux
- - compiler: gcc
-   os: linux
-   ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-   env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) 

[tor-commits] [tor/release-0.3.5] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.2.9] Travis: Unroll the build matrix into matrix: include:

2019-10-16 Thread teor
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor 
Date:   Thu Sep 26 17:25:17 2019 +1000

Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.
---
 .travis.yml | 33 +
 1 file changed, 13 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
 
 compiler:
   - gcc
-  - clang
 
 os:
   - linux
-  - osx
 
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
 env:
   global:
 ## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
 ## We turn off asciidoc by default, because it's slow
 - ASCIIDOC_OPTIONS="--disable-asciidoc"
   matrix:
-## We want to use each build option at least once
-##
-## We don't list default variable values, because we set the defaults
-## in global (or the default is unset)
+## This matrix entry is required, but it doesn't actually create any jobs
 -
 
 matrix:
-  ## include creates builds with gcc, linux
+  ## include creates builds with gcc, linux, unless we override those defaults
   include:
+## gcc is the default compiler for most jobs, so we want a clang Linux job
+- compiler: clang
+## clang is the default macOS compiler, so we use it for the macOS job
+- compiler: clang
+  os: osx
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 ## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
   ## https://github.com/travis-ci/travis-ci/issues/1696
   # fast_finish: true
 
-  ## Careful! We use global envs, which makes it hard to exclude or
-  ## allow failures by env:
+  ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  exclude:
-## gcc on OSX is less useful, because the default compiler is clang.
-- compiler: gcc
-  os: osx
-## gcc on Linux with no env is redundant, because all the custom builds use
-## gcc on Linux
-- compiler: gcc
-  os: linux
-  env:
+  # allow_failures:
+  #   - compiler: gcc
+  # os: linux
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge remote-tracking branch 'tor-github/pr/1373' into maint-0.4.2

2019-10-16 Thread teor
commit 92c4dc9b141e4e2e71b68c40c85ef64f20c8344b
Merge: a4790e7d4 b0bf7e7b6
Author: teor 
Date:   Thu Oct 17 14:51:30 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1373' into maint-0.4.2

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index 2073b853c,00c967e34..c65923d2c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -15,17 -15,13 +15,15 @@@ compiler
  
  os:
- linux
-   - osx
  
- ## The build matrix in the following stanza expands into builds for each
- ## OS and compiler.
+ ## We don't use the build matrix cross-product, because it makes too many jobs
+ ## Instead, we list each job under matrix: include:
  env:
global:
 -## The Travis CI environment allows us two cores, so let's use both.
 -- MAKEFLAGS="-j 2"
 +## The Travis CI environment allows us two cores, so let's use both.  
Also,
 +## let's use the "-k" flag so that we get all of the compilation failures,
 +## not just the first one.
 +- MAKEFLAGS="-k -j 2"
  ## We turn on hardening by default
  ## Also known as --enable-fragile-hardening in 0.3.0.3-alpha and later
  - HARDENING_OPTIONS="--enable-expensive-hardening"



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Travis: Split jobs, add essential jobs, remove redundant jobs

2019-10-16 Thread teor
commit 4482d6fde5b0b8a0261dd31889a23b789844a486
Author: teor 
Date:   Tue Oct 1 17:28:26 2019 +1000

Travis: Split jobs, add essential jobs, remove redundant jobs

Part of 31859 for 0.3.5.
---
 .travis.yml | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 1f555c69c..670b0536f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,14 +46,15 @@ matrix:
 ## We run chutney on macOS, because macOS Travis has IPv6
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
-# We clone our stem repo and run `make test-stem`
+## We clone our stem repo and run `make test-stem`
 - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
-## Check rust online with distcheck, to make sure we remove rust products
-- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
-## Check disable module dirauth with and without rust
-- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
-## Check NSS
+## We run rust on macOS, because we have seen macOS rust failures before
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
+## We check NSS
 - env: NSS_OPTIONS="--enable-nss"
 
   ## Allow the build to report success (with non-required sub-builds



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.1] Travis: Add a macOS chutney job, but don't wait for it to finish

2019-10-16 Thread teor
commit 1e0e23c1e48ebc388f7a16a08a3f12e01db15bfa
Author: teor 
Date:   Thu Sep 26 17:44:41 2019 +1000

Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.
---
 .travis.yml | 37 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  2 +-
 3 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f47fe8bb2..564c97dbf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,34 +27,33 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## clang is the default macOS compiler, so we use it for the macOS job
+## We run basic tests on macOS
 - compiler: clang
   os: osx
-## We include a single coverage build with the best options for coverage
-- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We only want to check these build option combinations once
-## (they shouldn't vary by compiler or OS)
-## We run coverage with hardening off, which seems like enough
-# - env: HARDENING_OPTIONS=""
+## We run chutney on Linux, because it's faster than chutney on macOS
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
 ## We check asciidoc with distcheck, to make sure we remove doc products
+## We use Linux clang, because there are no other Linux clang jobs
 - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-# We also try running a hardened clang build with chutney on Linux.
-- env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
   compiler: clang
+## We include a single coverage build with the best options for coverage
+- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
-  ## Uncomment to allow the build to report success (with non-required
-  ## sub-builds continuing to run) if all required sub-builds have
-  ## succeeded.  This is somewhat buggy currently: it can cause
-  ## duplicate notifications and prematurely report success if a
-  ## single sub-build has succeeded.  See
-  ## https://github.com/travis-ci/travis-ci/issues/1696
-  # fast_finish: true
+  ## Allow the build to report success (with non-required sub-builds
+  ## continuing to run) if all required sub-builds have succeeded.
+  fast_finish: true
 
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  # allow_failures:
-  #   - compiler: gcc
-  # os: linux
+  allow_failures:
+## macOS chutney is very slow, so we let the build finish before it's done
+## We'd like to fast finish, but still eventually show failures.
+## But Travis doesn't have that option.
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty
diff --git a/changes/ticket30860 b/changes/ticket30860
new file mode 100644
index 0..b946f735c
--- /dev/null
+++ b/changes/ticket30860
@@ -0,0 +1,3 @@
+  o Testing:
+- Run the chutney IPv6 networks as part of Travis CI.
+  Closes ticket 30860.
diff --git a/changes/ticket31859 b/changes/ticket31859
index 0eb8a42e9..dbc591e00 100644
--- a/changes/ticket31859
+++ b/changes/ticket31859
@@ -1,3 +1,3 @@
   o Testing:
-- Remove some redundant Travis CI jobs, to speed up CI.
+- Simplify the Travis CI build matrix, and optimise for build time.
   Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.2.9] Travis: Add a macOS chutney job, but don't wait for it to finish

2019-10-16 Thread teor
commit 1e0e23c1e48ebc388f7a16a08a3f12e01db15bfa
Author: teor 
Date:   Thu Sep 26 17:44:41 2019 +1000

Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.
---
 .travis.yml | 37 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  2 +-
 3 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f47fe8bb2..564c97dbf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,34 +27,33 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## clang is the default macOS compiler, so we use it for the macOS job
+## We run basic tests on macOS
 - compiler: clang
   os: osx
-## We include a single coverage build with the best options for coverage
-- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We only want to check these build option combinations once
-## (they shouldn't vary by compiler or OS)
-## We run coverage with hardening off, which seems like enough
-# - env: HARDENING_OPTIONS=""
+## We run chutney on Linux, because it's faster than chutney on macOS
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
 ## We check asciidoc with distcheck, to make sure we remove doc products
+## We use Linux clang, because there are no other Linux clang jobs
 - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-# We also try running a hardened clang build with chutney on Linux.
-- env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
   compiler: clang
+## We include a single coverage build with the best options for coverage
+- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
-  ## Uncomment to allow the build to report success (with non-required
-  ## sub-builds continuing to run) if all required sub-builds have
-  ## succeeded.  This is somewhat buggy currently: it can cause
-  ## duplicate notifications and prematurely report success if a
-  ## single sub-build has succeeded.  See
-  ## https://github.com/travis-ci/travis-ci/issues/1696
-  # fast_finish: true
+  ## Allow the build to report success (with non-required sub-builds
+  ## continuing to run) if all required sub-builds have succeeded.
+  fast_finish: true
 
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  # allow_failures:
-  #   - compiler: gcc
-  # os: linux
+  allow_failures:
+## macOS chutney is very slow, so we let the build finish before it's done
+## We'd like to fast finish, but still eventually show failures.
+## But Travis doesn't have that option.
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty
diff --git a/changes/ticket30860 b/changes/ticket30860
new file mode 100644
index 0..b946f735c
--- /dev/null
+++ b/changes/ticket30860
@@ -0,0 +1,3 @@
+  o Testing:
+- Run the chutney IPv6 networks as part of Travis CI.
+  Closes ticket 30860.
diff --git a/changes/ticket31859 b/changes/ticket31859
index 0eb8a42e9..dbc591e00 100644
--- a/changes/ticket31859
+++ b/changes/ticket31859
@@ -1,3 +1,3 @@
   o Testing:
-- Remove some redundant Travis CI jobs, to speed up CI.
+- Simplify the Travis CI build matrix, and optimise for build time.
   Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.4.0] Travis: Unroll the build matrix into matrix: include:

2019-10-16 Thread teor
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor 
Date:   Thu Sep 26 17:25:17 2019 +1000

Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.
---
 .travis.yml | 33 +
 1 file changed, 13 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
 
 compiler:
   - gcc
-  - clang
 
 os:
   - linux
-  - osx
 
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
 env:
   global:
 ## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
 ## We turn off asciidoc by default, because it's slow
 - ASCIIDOC_OPTIONS="--disable-asciidoc"
   matrix:
-## We want to use each build option at least once
-##
-## We don't list default variable values, because we set the defaults
-## in global (or the default is unset)
+## This matrix entry is required, but it doesn't actually create any jobs
 -
 
 matrix:
-  ## include creates builds with gcc, linux
+  ## include creates builds with gcc, linux, unless we override those defaults
   include:
+## gcc is the default compiler for most jobs, so we want a clang Linux job
+- compiler: clang
+## clang is the default macOS compiler, so we use it for the macOS job
+- compiler: clang
+  os: osx
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 ## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
   ## https://github.com/travis-ci/travis-ci/issues/1696
   # fast_finish: true
 
-  ## Careful! We use global envs, which makes it hard to exclude or
-  ## allow failures by env:
+  ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  exclude:
-## gcc on OSX is less useful, because the default compiler is clang.
-- compiler: gcc
-  os: osx
-## gcc on Linux with no env is redundant, because all the custom builds use
-## gcc on Linux
-- compiler: gcc
-  os: linux
-  env:
+  # allow_failures:
+  #   - compiler: gcc
+  # os: linux
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.2.9] Merge branch 'maint-0.2.9' into release-0.2.9

2019-10-16 Thread teor
commit 73b18f1f12d1a43f6f0febc0ee6c15776bf11a1a
Merge: f99a64eea c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:44 2019 +1000

Merge branch 'maint-0.2.9' into release-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Travis: Unroll the build matrix into matrix: include:

2019-10-16 Thread teor
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor 
Date:   Thu Sep 26 17:25:17 2019 +1000

Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.
---
 .travis.yml | 33 +
 1 file changed, 13 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
 
 compiler:
   - gcc
-  - clang
 
 os:
   - linux
-  - osx
 
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
 env:
   global:
 ## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
 ## We turn off asciidoc by default, because it's slow
 - ASCIIDOC_OPTIONS="--disable-asciidoc"
   matrix:
-## We want to use each build option at least once
-##
-## We don't list default variable values, because we set the defaults
-## in global (or the default is unset)
+## This matrix entry is required, but it doesn't actually create any jobs
 -
 
 matrix:
-  ## include creates builds with gcc, linux
+  ## include creates builds with gcc, linux, unless we override those defaults
   include:
+## gcc is the default compiler for most jobs, so we want a clang Linux job
+- compiler: clang
+## clang is the default macOS compiler, so we use it for the macOS job
+- compiler: clang
+  os: osx
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 ## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
   ## https://github.com/travis-ci/travis-ci/issues/1696
   # fast_finish: true
 
-  ## Careful! We use global envs, which makes it hard to exclude or
-  ## allow failures by env:
+  ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  exclude:
-## gcc on OSX is less useful, because the default compiler is clang.
-- compiler: gcc
-  os: osx
-## gcc on Linux with no env is redundant, because all the custom builds use
-## gcc on Linux
-- compiler: gcc
-  os: linux
-  env:
+  # allow_failures:
+  #   - compiler: gcc
+  # os: linux
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.2.9] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Merge branch 'bug31859_029' into bug31859_035

2019-10-16 Thread teor
commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor 
Date:   Tue Oct 1 17:20:16 2019 +1000

Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

 .travis.yml | 68 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
- ## We include a single coverage build with the best options for coverage
- - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We check asciidoc with distcheck, to make sure we remove doc products
 -## We use Linux clang, because there are no other Linux clang jobs
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--  compiler: clang
+ ## We include a single coverage build with the best options for coverage
+ - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +# We clone our stem repo and run `make test-stem`
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +## Check rust online with distcheck, to make sure we remove rust products
 +- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
 +## Check disable module dirauth with and without rust
 +- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +- env: MODULES_OPTIONS="--disable-module-dirauth"
 +## Check NSS
 +- env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS chutney is very slow, so we let the build finish before it's done
+ ## We'd like to fast finish, but still eventually show failures.
+ ## But Travis doesn't have that option.
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +## test-stem sometimes hangs on Travis
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
-   os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds 
use
- ## gcc on Linux
- - compiler: gcc
-   os: linux
-   env:
- ## offline rust builds for gcc on Linux are redundant, because we do an
- ## online rust build for gcc on Linux
- - compiler: gcc
-   os: linux
-   ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-   env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) 

[tor-commits] [tor/maint-0.4.2] Merge branch 'maint-0.4.0' into maint-0.4.1

2019-10-16 Thread teor
commit 400e31ad1937aeaa962349eef058945080c46daa
Merge: 13daf339a e483257e1
Author: teor 
Date:   Thu Oct 17 14:52:06 2019 +1000

Merge branch 'maint-0.4.0' into maint-0.4.1




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Merge branch 'maint-0.3.5' into release-0.3.5

2019-10-16 Thread teor
commit a2af6e2b1dbf09c88dd24c6803238e99485dce21
Merge: 996cbdac3 4b8e5ea0d
Author: teor 
Date:   Thu Oct 17 14:51:54 2019 +1000

Merge branch 'maint-0.3.5' into release-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge branch 'maint-0.3.5' into maint-0.4.0

2019-10-16 Thread teor
commit e483257e1bc826b5678fcbf13084fd5d811f2b12
Merge: a74c18069 4b8e5ea0d
Author: teor 
Date:   Thu Oct 17 14:51:58 2019 +1000

Merge branch 'maint-0.3.5' into maint-0.4.0

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.3.5] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

2019-10-16 Thread teor
commit 13daf339a903da74051ac9d51d8bb5b386be64f8
Merge: 4dcbbe416 e5dda7f66
Author: teor 
Date:   Thu Oct 17 14:51:02 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/release-0.2.9] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge branch 'bug31859_040' into bug31859_041

2019-10-16 Thread teor
commit e5dda7f66477dad699c654c54978bbad9a999847
Merge: 6f3f93d86 07db4141a
Author: teor 
Date:   Tue Oct 1 23:50:24 2019 +1000

Merge branch 'bug31859_040' into bug31859_041

Merge TOR_TEST_RNG_SEED in maint-0.4.1 into the coverage line
from bug31859_040.

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index bbba0e204,b3b8cb977..909a3d28d
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,50 -28,55 +28,55 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We check NSS
+ ## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+ - env: NSS_OPTIONS="--enable-nss"
+   compiler: clang
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We include a single coverage build with the best options for coverage
 -- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 +- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" 
TOR_TEST_RNG_SEED="636f766572616765"
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run rust on Linux, because it's faster than rust on macOS
+ ## We check rust offline
+ - env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  ## We check asciidoc with distcheck, to make sure we remove doc products
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
+ ## We check disable module dirauth
+ - env: MODULES_OPTIONS="--disable-module-dirauth"
+ ## We run rust on macOS, because we have seen macOS rust failures before
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
compiler: clang
- # We clone our stem repo and run `make test-stem`
+   os: osx
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
+ ## We clone our stem repo and run `make test-stem`
  - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
- ## Check rust online with distcheck, to make sure we remove rust products
- - env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
- ## Check disable module dirauth with and without rust
- - env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- - env: MODULES_OPTIONS="--disable-module-dirauth"
- ## Check NSS
- - env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS rust and chutney are very slow, so we let the build finish before
+ ## they are done.  We'd like to fast finish, but still eventually show
+ ## any failures in the build status. But Travis doesn't have that ability.
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+   compiler: clang
+   os: osx
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
  ## 

[tor-commits] [tor/maint-0.4.2] Travis: Allow the build to finish before the macOS Rust job

2019-10-16 Thread teor
commit b0bf7e7b606e45cff5988106febe157009c2f561
Author: teor 
Date:   Wed Oct 2 10:09:02 2019 +1000

Travis: Allow the build to finish before the macOS Rust job

When we merged TOR_RUST_VERSION from master, the allow_failures rule
did not match any more. Update it to make it match.

Closes 31859 for master.
---
 .travis.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.travis.yml b/.travis.yml
index ec3827d31..00c967e34 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -74,7 +74,7 @@ matrix:
 ## macOS rust and chutney are very slow, so we let the build finish before
 ## they are done.  We'd like to fast finish, but still eventually show
 ## any failures in the build status. But Travis doesn't have that ability.
-- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
   compiler: clang
   os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Merge branch 'maint-0.3.5' into maint-0.4.0

2019-10-16 Thread teor
commit e483257e1bc826b5678fcbf13084fd5d811f2b12
Merge: a74c18069 4b8e5ea0d
Author: teor 
Date:   Thu Oct 17 14:51:58 2019 +1000

Merge branch 'maint-0.3.5' into maint-0.4.0

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Travis: Split jobs, add essential jobs, remove redundant jobs

2019-10-16 Thread teor
commit 4482d6fde5b0b8a0261dd31889a23b789844a486
Author: teor 
Date:   Tue Oct 1 17:28:26 2019 +1000

Travis: Split jobs, add essential jobs, remove redundant jobs

Part of 31859 for 0.3.5.
---
 .travis.yml | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 1f555c69c..670b0536f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,14 +46,15 @@ matrix:
 ## We run chutney on macOS, because macOS Travis has IPv6
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
-# We clone our stem repo and run `make test-stem`
+## We clone our stem repo and run `make test-stem`
 - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
-## Check rust online with distcheck, to make sure we remove rust products
-- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
-## Check disable module dirauth with and without rust
-- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
-## Check NSS
+## We run rust on macOS, because we have seen macOS rust failures before
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
+## We check NSS
 - env: NSS_OPTIONS="--enable-nss"
 
   ## Allow the build to report success (with non-required sub-builds



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge branch 'bug31859_041' into bug31859_master

2019-10-16 Thread teor
commit 58746ad9ca4599fa40d6709228f79fbafaeb4976
Merge: 53116ca0b e5dda7f66
Author: teor 
Date:   Wed Oct 2 00:20:38 2019 +1000

Merge branch 'bug31859_041' into bug31859_master

Merge master's RUST_VERSION="nightly" into the macOS Rust job
from bug31859_041.

Drop master's RUST_VERSION="beta", because we only have two
Rust jobs now.

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index 94d9bf9cc,909a3d28d..ec3827d31
--- a/.travis.yml
+++ b/.travis.yml
@@@ -29,53 -27,56 +27,58 @@@ env
  - HARDENING_OPTIONS="--enable-expensive-hardening"
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
 +## Our default rust version is the minimum supported version
 +- RUST_VERSION="1.31.0"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We check NSS
+ ## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+ - env: NSS_OPTIONS="--enable-nss"
+   compiler: clang
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We include a single coverage build with the best options for coverage
  - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" 
TOR_TEST_RNG_SEED="636f766572616765"
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run rust on Linux, because it's faster than rust on macOS
+ ## We check rust offline
+ - env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  ## We check asciidoc with distcheck, to make sure we remove doc products
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
+ ## We check disable module dirauth
+ - env: MODULES_OPTIONS="--disable-module-dirauth"
+ ## We run rust on macOS, because we have seen macOS rust failures before
 -- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
++- env: RUST_VERSION="nightly" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
compiler: clang
- # We clone our stem repo and run `make test-stem`
+   os: osx
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
+ ## We clone our stem repo and run `make test-stem`
  - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
- ## Check rust online with distcheck, to make sure we remove rust products
- - env: DISTCHECK="yes" RUST_VERSION="beta" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
- ## Check disable module dirauth with and without rust
- - env: MODULES_OPTIONS="--disable-module-dirauth" RUST_VERSION="nightly" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- - env: MODULES_OPTIONS="--disable-module-dirauth"
- ## Check NSS
- - env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS rust and chutney are very slow, so we let the build finish before
+ ## they are done.  We'd like to fast finish, but still 

[tor-commits] [tor/maint-0.4.1] Merge branch 'maint-0.4.0' into maint-0.4.1

2019-10-16 Thread teor
commit 400e31ad1937aeaa962349eef058945080c46daa
Merge: 13daf339a e483257e1
Author: teor 
Date:   Thu Oct 17 14:52:06 2019 +1000

Merge branch 'maint-0.4.0' into maint-0.4.1

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Travis: Add a macOS chutney job, but don't wait for it to finish

2019-10-16 Thread teor
commit 1e0e23c1e48ebc388f7a16a08a3f12e01db15bfa
Author: teor 
Date:   Thu Sep 26 17:44:41 2019 +1000

Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.
---
 .travis.yml | 37 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  2 +-
 3 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f47fe8bb2..564c97dbf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,34 +27,33 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## clang is the default macOS compiler, so we use it for the macOS job
+## We run basic tests on macOS
 - compiler: clang
   os: osx
-## We include a single coverage build with the best options for coverage
-- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We only want to check these build option combinations once
-## (they shouldn't vary by compiler or OS)
-## We run coverage with hardening off, which seems like enough
-# - env: HARDENING_OPTIONS=""
+## We run chutney on Linux, because it's faster than chutney on macOS
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
 ## We check asciidoc with distcheck, to make sure we remove doc products
+## We use Linux clang, because there are no other Linux clang jobs
 - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-# We also try running a hardened clang build with chutney on Linux.
-- env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
   compiler: clang
+## We include a single coverage build with the best options for coverage
+- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
-  ## Uncomment to allow the build to report success (with non-required
-  ## sub-builds continuing to run) if all required sub-builds have
-  ## succeeded.  This is somewhat buggy currently: it can cause
-  ## duplicate notifications and prematurely report success if a
-  ## single sub-build has succeeded.  See
-  ## https://github.com/travis-ci/travis-ci/issues/1696
-  # fast_finish: true
+  ## Allow the build to report success (with non-required sub-builds
+  ## continuing to run) if all required sub-builds have succeeded.
+  fast_finish: true
 
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  # allow_failures:
-  #   - compiler: gcc
-  # os: linux
+  allow_failures:
+## macOS chutney is very slow, so we let the build finish before it's done
+## We'd like to fast finish, but still eventually show failures.
+## But Travis doesn't have that option.
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty
diff --git a/changes/ticket30860 b/changes/ticket30860
new file mode 100644
index 0..b946f735c
--- /dev/null
+++ b/changes/ticket30860
@@ -0,0 +1,3 @@
+  o Testing:
+- Run the chutney IPv6 networks as part of Travis CI.
+  Closes ticket 30860.
diff --git a/changes/ticket31859 b/changes/ticket31859
index 0eb8a42e9..dbc591e00 100644
--- a/changes/ticket31859
+++ b/changes/ticket31859
@@ -1,3 +1,3 @@
   o Testing:
-- Remove some redundant Travis CI jobs, to speed up CI.
+- Simplify the Travis CI build matrix, and optimise for build time.
   Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

2019-10-16 Thread teor
commit 13daf339a903da74051ac9d51d8bb5b386be64f8
Merge: 4dcbbe416 e5dda7f66
Author: teor 
Date:   Thu Oct 17 14:51:02 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1372' into maint-0.4.1

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge branch 'bug31859_029' into bug31859_035

2019-10-16 Thread teor
commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor 
Date:   Tue Oct 1 17:20:16 2019 +1000

Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

 .travis.yml | 68 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
- ## We include a single coverage build with the best options for coverage
- - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We check asciidoc with distcheck, to make sure we remove doc products
 -## We use Linux clang, because there are no other Linux clang jobs
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--  compiler: clang
+ ## We include a single coverage build with the best options for coverage
+ - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +# We clone our stem repo and run `make test-stem`
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +## Check rust online with distcheck, to make sure we remove rust products
 +- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
 +## Check disable module dirauth with and without rust
 +- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +- env: MODULES_OPTIONS="--disable-module-dirauth"
 +## Check NSS
 +- env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS chutney is very slow, so we let the build finish before it's done
+ ## We'd like to fast finish, but still eventually show failures.
+ ## But Travis doesn't have that option.
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +## test-stem sometimes hangs on Travis
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
-   os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds 
use
- ## gcc on Linux
- - compiler: gcc
-   os: linux
-   env:
- ## offline rust builds for gcc on Linux are redundant, because we do an
- ## online rust build for gcc on Linux
- - compiler: gcc
-   os: linux
-   ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-   env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) 

[tor-commits] [tor/maint-0.4.1] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Merge branch 'bug31859_040' into bug31859_041

2019-10-16 Thread teor
commit e5dda7f66477dad699c654c54978bbad9a999847
Merge: 6f3f93d86 07db4141a
Author: teor 
Date:   Tue Oct 1 23:50:24 2019 +1000

Merge branch 'bug31859_040' into bug31859_041

Merge TOR_TEST_RNG_SEED in maint-0.4.1 into the coverage line
from bug31859_040.

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)

diff --cc .travis.yml
index bbba0e204,b3b8cb977..909a3d28d
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,50 -28,55 +28,55 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We check NSS
+ ## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+ - env: NSS_OPTIONS="--enable-nss"
+   compiler: clang
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We include a single coverage build with the best options for coverage
 -- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 +- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS="" 
TOR_TEST_RNG_SEED="636f766572616765"
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run rust on Linux, because it's faster than rust on macOS
+ ## We check rust offline
+ - env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  ## We check asciidoc with distcheck, to make sure we remove doc products
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
+ ## We check disable module dirauth
+ - env: MODULES_OPTIONS="--disable-module-dirauth"
+ ## We run rust on macOS, because we have seen macOS rust failures before
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
compiler: clang
- # We clone our stem repo and run `make test-stem`
+   os: osx
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
+ ## We clone our stem repo and run `make test-stem`
  - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
- ## Check rust online with distcheck, to make sure we remove rust products
- - env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
- ## Check disable module dirauth with and without rust
- - env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- - env: MODULES_OPTIONS="--disable-module-dirauth"
- ## Check NSS
- - env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS rust and chutney are very slow, so we let the build finish before
+ ## they are done.  We'd like to fast finish, but still eventually show
+ ## any failures in the build status. But Travis doesn't have that ability.
+ - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+   compiler: clang
+   os: osx
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
  ## 

[tor-commits] [tor/maint-0.4.2] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Merge branch 'bug31859_035' into bug31859_040

2019-10-16 Thread teor
commit 07db4141abb228bc6848e520b6faa75b0015af72
Merge: 9e674d0eb 632e70739
Author: teor 
Date:   Tue Oct 1 23:46:28 2019 +1000

Merge branch 'bug31859_035' into bug31859_040

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.2] Travis: Unroll the build matrix into matrix: include:

2019-10-16 Thread teor
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor 
Date:   Thu Sep 26 17:25:17 2019 +1000

Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.
---
 .travis.yml | 33 +
 1 file changed, 13 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
 
 compiler:
   - gcc
-  - clang
 
 os:
   - linux
-  - osx
 
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
 env:
   global:
 ## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
 ## We turn off asciidoc by default, because it's slow
 - ASCIIDOC_OPTIONS="--disable-asciidoc"
   matrix:
-## We want to use each build option at least once
-##
-## We don't list default variable values, because we set the defaults
-## in global (or the default is unset)
+## This matrix entry is required, but it doesn't actually create any jobs
 -
 
 matrix:
-  ## include creates builds with gcc, linux
+  ## include creates builds with gcc, linux, unless we override those defaults
   include:
+## gcc is the default compiler for most jobs, so we want a clang Linux job
+- compiler: clang
+## clang is the default macOS compiler, so we use it for the macOS job
+- compiler: clang
+  os: osx
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 ## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
   ## https://github.com/travis-ci/travis-ci/issues/1696
   # fast_finish: true
 
-  ## Careful! We use global envs, which makes it hard to exclude or
-  ## allow failures by env:
+  ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  exclude:
-## gcc on OSX is less useful, because the default compiler is clang.
-- compiler: gcc
-  os: osx
-## gcc on Linux with no env is redundant, because all the custom builds use
-## gcc on Linux
-- compiler: gcc
-  os: linux
-  env:
+  # allow_failures:
+  #   - compiler: gcc
+  # os: linux
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Merge branch 'bug31859_035' into bug31859_040

2019-10-16 Thread teor
commit 07db4141abb228bc6848e520b6faa75b0015af72
Merge: 9e674d0eb 632e70739
Author: teor 
Date:   Tue Oct 1 23:46:28 2019 +1000

Merge branch 'bug31859_035' into bug31859_040

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.0] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.0] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Merge branch 'bug31859_029' into bug31859_035

2019-10-16 Thread teor
commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor 
Date:   Tue Oct 1 17:20:16 2019 +1000

Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

 .travis.yml | 68 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
- ## We include a single coverage build with the best options for coverage
- - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We check asciidoc with distcheck, to make sure we remove doc products
 -## We use Linux clang, because there are no other Linux clang jobs
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--  compiler: clang
+ ## We include a single coverage build with the best options for coverage
+ - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +# We clone our stem repo and run `make test-stem`
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +## Check rust online with distcheck, to make sure we remove rust products
 +- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
 +## Check disable module dirauth with and without rust
 +- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +- env: MODULES_OPTIONS="--disable-module-dirauth"
 +## Check NSS
 +- env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS chutney is very slow, so we let the build finish before it's done
+ ## We'd like to fast finish, but still eventually show failures.
+ ## But Travis doesn't have that option.
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +## test-stem sometimes hangs on Travis
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
-   os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds 
use
- ## gcc on Linux
- - compiler: gcc
-   os: linux
-   env:
- ## offline rust builds for gcc on Linux are redundant, because we do an
- ## online rust build for gcc on Linux
- - compiler: gcc
-   os: linux
-   ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-   env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) 

[tor-commits] [tor/maint-0.4.0] Merge branch 'bug31859_029' into bug31859_035

2019-10-16 Thread teor
commit f368f5bc370d23f2e1888faeeceecb1cea290242
Merge: 02840169d 1e0e23c1e
Author: teor 
Date:   Tue Oct 1 17:20:16 2019 +1000

Merge branch 'bug31859_029' into bug31859_035

While merging:
* leave out some redundant jobs and build matrix entries

 .travis.yml | 68 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 29 insertions(+), 45 deletions(-)

diff --cc .travis.yml
index ef2e41998,564c97dbf..1f555c69c
--- a/.travis.yml
+++ b/.travis.yml
@@@ -30,69 -21,40 +28,49 @@@ env
  ## We turn off asciidoc by default, because it's slow
  - ASCIIDOC_OPTIONS="--disable-asciidoc"
matrix:
- ## We want to use each build option at least once
- ##
- ## We don't list default variable values, because we set the defaults
- ## in global (or the default is unset)
+ ## This matrix entry is required, but it doesn't actually create any jobs
  -
- ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
- - RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
  
  matrix:
-   ## include creates builds with gcc, linux
+   ## include creates builds with gcc, linux, unless we override those defaults
include:
- ## We include a single coverage build with the best options for coverage
- - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
- ## We only want to check these build option combinations once
- ## (they shouldn't vary by compiler or OS)
- ## We run rust and coverage with hardening off, which seems like enough
- # - env: HARDENING_OPTIONS=""
+ ## We run basic tests on macOS
+ - compiler: clang
+   os: osx
+ ## We run chutney on Linux, because it's faster than chutney on macOS
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
  ## We check asciidoc with distcheck, to make sure we remove doc products
 -## We use Linux clang, because there are no other Linux clang jobs
  - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
- # We also try running a hardened clang build with chutney on Linux.
- - env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
--  compiler: clang
+ ## We include a single coverage build with the best options for coverage
+ - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+ ## We run chutney on macOS, because macOS Travis has IPv6
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +# We clone our stem repo and run `make test-stem`
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 +## Check rust online with distcheck, to make sure we remove rust products
 +- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
 +## Check disable module dirauth with and without rust
 +- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
 +- env: MODULES_OPTIONS="--disable-module-dirauth"
 +## Check NSS
 +- env: NSS_OPTIONS="--enable-nss"
  
-   ## Uncomment to allow the build to report success (with non-required
-   ## sub-builds continuing to run) if all required sub-builds have
-   ## succeeded.  This is somewhat buggy currently: it can cause
-   ## duplicate notifications and prematurely report success if a
-   ## single sub-build has succeeded.  See
-   ## https://github.com/travis-ci/travis-ci/issues/1696
-   # fast_finish: true
+   ## Allow the build to report success (with non-required sub-builds
+   ## continuing to run) if all required sub-builds have succeeded.
+   fast_finish: true
  
-   ## Careful! We use global envs, which makes it hard to exclude or
-   ## allow failures by env:
+   ## Careful! We use global envs, which makes it hard to allow failures by 
env:
## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
allow_failures:
+ ## macOS chutney is very slow, so we let the build finish before it's done
+ ## We'd like to fast finish, but still eventually show failures.
+ ## But Travis doesn't have that option.
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+   os: osx
 +## test-stem sometimes hangs on Travis
 +- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
  
-   exclude:
- ## gcc on OSX is less useful, because the default compiler is clang.
- - compiler: gcc
-   os: osx
- ## gcc on Linux with no env is redundant, because all the custom builds 
use
- ## gcc on Linux
- - compiler: gcc
-   os: linux
-   env:
- ## offline rust builds for gcc on Linux are redundant, because we do an
- ## online rust build for gcc on Linux
- - compiler: gcc
-   os: linux
-   ## TOR_RUST_DEPENDENCIES is spelt RUST_DEPENDENCIES in 0.3.2
-   env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
- 
  ## (Linux only) 

[tor-commits] [tor/maint-0.4.1] Travis: Unroll the build matrix into matrix: include:

2019-10-16 Thread teor
commit 8520071f2313ae6973082ca7cb5680a9df88ce78
Author: teor 
Date:   Thu Sep 26 17:25:17 2019 +1000

Travis: Unroll the build matrix into matrix: include:

The jobs should be the same, but Travis may display them differently.

Part of 31859.
---
 .travis.yml | 33 +
 1 file changed, 13 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index a2bc6395d..b18335d74 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,14 +5,12 @@ cache:
 
 compiler:
   - gcc
-  - clang
 
 os:
   - linux
-  - osx
 
-## The build matrix in the following stanza expands into builds for each
-## OS and compiler.
+## We don't use the build matrix cross-product, because it makes too many jobs
+## Instead, we list each job under matrix: include:
 env:
   global:
 ## The Travis CI environment allows us two cores, so let's use both.
@@ -23,15 +21,17 @@ env:
 ## We turn off asciidoc by default, because it's slow
 - ASCIIDOC_OPTIONS="--disable-asciidoc"
   matrix:
-## We want to use each build option at least once
-##
-## We don't list default variable values, because we set the defaults
-## in global (or the default is unset)
+## This matrix entry is required, but it doesn't actually create any jobs
 -
 
 matrix:
-  ## include creates builds with gcc, linux
+  ## include creates builds with gcc, linux, unless we override those defaults
   include:
+## gcc is the default compiler for most jobs, so we want a clang Linux job
+- compiler: clang
+## clang is the default macOS compiler, so we use it for the macOS job
+- compiler: clang
+  os: osx
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
 ## We only want to check these build option combinations once
@@ -52,18 +52,11 @@ matrix:
   ## https://github.com/travis-ci/travis-ci/issues/1696
   # fast_finish: true
 
-  ## Careful! We use global envs, which makes it hard to exclude or
-  ## allow failures by env:
+  ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  exclude:
-## gcc on OSX is less useful, because the default compiler is clang.
-- compiler: gcc
-  os: osx
-## gcc on Linux with no env is redundant, because all the custom builds use
-## gcc on Linux
-- compiler: gcc
-  os: linux
-  env:
+  # allow_failures:
+  #   - compiler: gcc
+  # os: linux
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Travis: Remove a redundant clang Linux job

2019-10-16 Thread teor
commit 4e4297830ec04da32dda1b9424847f4710cc202e
Author: teor 
Date:   Thu Sep 26 17:39:46 2019 +1000

Travis: Remove a redundant clang Linux job

Part of 31859.
---
 .travis.yml | 2 --
 changes/ticket31859 | 3 +++
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index b18335d74..f47fe8bb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,8 +27,6 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## gcc is the default compiler for most jobs, so we want a clang Linux job
-- compiler: clang
 ## clang is the default macOS compiler, so we use it for the macOS job
 - compiler: clang
   os: osx
diff --git a/changes/ticket31859 b/changes/ticket31859
new file mode 100644
index 0..0eb8a42e9
--- /dev/null
+++ b/changes/ticket31859
@@ -0,0 +1,3 @@
+  o Testing:
+- Remove some redundant Travis CI jobs, to speed up CI.
+  Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Travis: Split jobs, add essential jobs, remove redundant jobs

2019-10-16 Thread teor
commit 4482d6fde5b0b8a0261dd31889a23b789844a486
Author: teor 
Date:   Tue Oct 1 17:28:26 2019 +1000

Travis: Split jobs, add essential jobs, remove redundant jobs

Part of 31859 for 0.3.5.
---
 .travis.yml | 13 +++--
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 1f555c69c..670b0536f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,14 +46,15 @@ matrix:
 ## We run chutney on macOS, because macOS Travis has IPv6
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
-# We clone our stem repo and run `make test-stem`
+## We clone our stem repo and run `make test-stem`
 - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
-## Check rust online with distcheck, to make sure we remove rust products
-- env: DISTCHECK="yes" RUST_OPTIONS="--enable-rust 
--enable-cargo-online-mode"
-## Check disable module dirauth with and without rust
-- env: MODULES_OPTIONS="--disable-module-dirauth" 
RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
-## Check NSS
+## We run rust on macOS, because we have seen macOS rust failures before
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
+## We check NSS
 - env: NSS_OPTIONS="--enable-nss"
 
   ## Allow the build to report success (with non-required sub-builds



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.5] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5

___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.1] Travis: Add a macOS chutney job, but don't wait for it to finish

2019-10-16 Thread teor
commit 1e0e23c1e48ebc388f7a16a08a3f12e01db15bfa
Author: teor 
Date:   Thu Sep 26 17:44:41 2019 +1000

Travis: Add a macOS chutney job, but don't wait for it to finish

Since Travis macOS has IPv6 support (and Travis Linux does not), chutney
will now run its IPv6 networks as part of Travis CI.

But since chutney is slow, don't wait for the macOS chutney to finish.
(Travis have fixed the duplicate notification bug in fast_finish. So we
can use fast_finish and allow_failure to finish early. Unfortunately,
allow_failure also means we ignore failures in macOS chutney.)

Also make sure that we have:
* a compile on each platform, with each compiler,
* a check on each platform, and
* a check on each compiler.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes ticket 30860.
Closes ticket 31859 for 0.2.9.
---
 .travis.yml | 37 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  2 +-
 3 files changed, 22 insertions(+), 20 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index f47fe8bb2..564c97dbf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -27,34 +27,33 @@ env:
 matrix:
   ## include creates builds with gcc, linux, unless we override those defaults
   include:
-## clang is the default macOS compiler, so we use it for the macOS job
+## We run basic tests on macOS
 - compiler: clang
   os: osx
-## We include a single coverage build with the best options for coverage
-- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We only want to check these build option combinations once
-## (they shouldn't vary by compiler or OS)
-## We run coverage with hardening off, which seems like enough
-# - env: HARDENING_OPTIONS=""
+## We run chutney on Linux, because it's faster than chutney on macOS
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
 ## We check asciidoc with distcheck, to make sure we remove doc products
+## We use Linux clang, because there are no other Linux clang jobs
 - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
-# We also try running a hardened clang build with chutney on Linux.
-- env: CHUTNEY="yes" SKIP_MAKE_CHECK="yes" CHUTNEY_ALLOW_FAILURES="2"
   compiler: clang
+## We include a single coverage build with the best options for coverage
+- env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
-  ## Uncomment to allow the build to report success (with non-required
-  ## sub-builds continuing to run) if all required sub-builds have
-  ## succeeded.  This is somewhat buggy currently: it can cause
-  ## duplicate notifications and prematurely report success if a
-  ## single sub-build has succeeded.  See
-  ## https://github.com/travis-ci/travis-ci/issues/1696
-  # fast_finish: true
+  ## Allow the build to report success (with non-required sub-builds
+  ## continuing to run) if all required sub-builds have succeeded.
+  fast_finish: true
 
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
-  # allow_failures:
-  #   - compiler: gcc
-  # os: linux
+  allow_failures:
+## macOS chutney is very slow, so we let the build finish before it's done
+## We'd like to fast finish, but still eventually show failures.
+## But Travis doesn't have that option.
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
 
 ## (Linux only) Use the latest Linux image (Ubuntu Trusty)
 dist: trusty
diff --git a/changes/ticket30860 b/changes/ticket30860
new file mode 100644
index 0..b946f735c
--- /dev/null
+++ b/changes/ticket30860
@@ -0,0 +1,3 @@
+  o Testing:
+- Run the chutney IPv6 networks as part of Travis CI.
+  Closes ticket 30860.
diff --git a/changes/ticket31859 b/changes/ticket31859
index 0eb8a42e9..dbc591e00 100644
--- a/changes/ticket31859
+++ b/changes/ticket31859
@@ -1,3 +1,3 @@
   o Testing:
-- Remove some redundant Travis CI jobs, to speed up CI.
+- Simplify the Travis CI build matrix, and optimise for build time.
   Closes ticket 31859.



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.0] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.0] Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

2019-10-16 Thread teor
commit c660f479608aa6be68929bb6f4cbeee87c5521cc
Merge: 90de776ea 1e0e23c1e
Author: teor 
Date:   Thu Oct 17 14:49:52 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1369' into maint-0.2.9

 .travis.yml | 58 ++---
 changes/ticket30860 |  3 +++
 changes/ticket31859 |  3 +++
 3 files changed, 30 insertions(+), 34 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.5] Travis: Keep the macOS Rust job, but don't wait for it to finish

2019-10-16 Thread teor
commit 632e707397ce95632f4c059a0d285870624eaa33
Author: teor 
Date:   Tue Oct 1 17:32:46 2019 +1000

Travis: Keep the macOS Rust job, but don't wait for it to finish

Since Rust on macOS is slow, don't wait for the macOS Rust job to finish.
Instead, split rust into slow rust (macOS) and fast rust (Linux). And
allow the build to finish before slow rust finishes.

Also make sure that we have:
* a Rust build on each platform,
* a Rust build with each compiler, and
* a check on all our Rust builds.

Finally, sort builds: allow fail last, macOS first, slowest first.

Closes 31859 for 0.3.5.
---
 .travis.yml | 32 
 1 file changed, 20 insertions(+), 12 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index 670b0536f..65088d556 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -37,25 +37,30 @@ matrix:
 ## We run basic tests on macOS
 - compiler: clang
   os: osx
+## We check NSS
+## NSS is a fast job, clang is slower on Linux, so we do NSS clang
+- env: NSS_OPTIONS="--enable-nss"
+  compiler: clang
 ## We run chutney on Linux, because it's faster than chutney on macOS
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-## We check asciidoc with distcheck, to make sure we remove doc products
-- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We include a single coverage build with the best options for coverage
 - env: COVERAGE_OPTIONS="--enable-coverage" HARDENING_OPTIONS=""
-## We run chutney on macOS, because macOS Travis has IPv6
-- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
-  os: osx
-## We clone our stem repo and run `make test-stem`
-- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
+## We run rust on Linux, because it's faster than rust on macOS
+## We check rust offline
+- env: RUST_OPTIONS="--enable-rust" TOR_RUST_DEPENDENCIES=true
+## We check asciidoc with distcheck, to make sure we remove doc products
+- env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes"
 ## We check disable module dirauth
 - env: MODULES_OPTIONS="--disable-module-dirauth"
 ## We run rust on macOS, because we have seen macOS rust failures before
 - env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
   compiler: clang
   os: osx
-## We check NSS
-- env: NSS_OPTIONS="--enable-nss"
+## We run chutney on macOS, because macOS Travis has IPv6
+- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+  os: osx
+## We clone our stem repo and run `make test-stem`
+- env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes"
 
   ## Allow the build to report success (with non-required sub-builds
   ## continuing to run) if all required sub-builds have succeeded.
@@ -64,9 +69,12 @@ matrix:
   ## Careful! We use global envs, which makes it hard to allow failures by env:
   ## 
https://docs.travis-ci.com/user/customizing-the-build#matching-jobs-with-allow_failures
   allow_failures:
-## macOS chutney is very slow, so we let the build finish before it's done
-## We'd like to fast finish, but still eventually show failures.
-## But Travis doesn't have that option.
+## macOS rust and chutney are very slow, so we let the build finish before
+## they are done.  We'd like to fast finish, but still eventually show
+## any failures in the build status. But Travis doesn't have that ability.
+- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode"
+  compiler: clang
+  os: osx
 - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
   os: osx
 ## test-stem sometimes hangs on Travis



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.3.5] Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

2019-10-16 Thread teor
commit 702aa8f775591942f276286ab285fcb8fe80d32f
Merge: 7b9cb4c47 632e70739
Author: teor 
Date:   Thu Oct 17 14:50:28 2019 +1000

Merge remote-tracking branch 'tor-github/pr/1370' into maint-0.3.5

 .travis.yml | 87 +++--
 changes/ticket30860 |  3 ++
 changes/ticket31859 |  3 ++
 3 files changed, 43 insertions(+), 50 deletions(-)



___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


[tor-commits] [tor/maint-0.4.0] Merge branch 'maint-0.2.9' into maint-0.3.5

2019-10-16 Thread teor
commit 4b8e5ea0dce85bb96ce92f171246aa101feda4ac
Merge: 702aa8f77 c660f4796
Author: teor 
Date:   Thu Oct 17 14:51:50 2019 +1000

Merge branch 'maint-0.2.9' into maint-0.3.5




___
tor-commits mailing list
tor-commits@lists.torproject.org
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits


  1   2   3   4   >