Commit Graph

19 Commits

Author SHA1 Message Date
Ethan Atkins b2d7ba3aec Disable virtual io in CI
The travis tty does not work with virtual io. We should disable virtual
io by default when sbt detects that it's being run in CI but until we
release 1.4.0-M3 or 1.4.0-RC1, we need this flag to fix the travis
output.
2020-08-19 11:26:38 -07:00
Eugene Yokota 0b94b68fb5 Rename to sbtn 2020-08-13 22:56:02 -04:00
Ethan Atkins 48fa28e566 Add installNativeThinClient task
This allows a user to install the native thin client into a particular
directory (e.g. /usr/local/bin). I also made buildNativeThinClient have
a file dependency on the classpath so that it can be incremental if the
classpath hasn't changed. This is useful if the user has run
buildNativeThinClient for testing and then decides to install it once
it's been validated without having to rebuild (which takes a minimum of
about 30 seconds on my laptop).
2020-08-06 07:58:53 -07:00
Ethan Atkins 5e2fe77434 Disable server tests on windows ci
The server tests fail often which makes CI very painful.
2020-08-05 18:14:11 -07:00
Ethan Atkins e1103d1557 Fix TestServer for windows
There were two issues with the server tests on windows
1) Sometimes client connections fail on the first attempt but
   will succeed with retries
2) It is possible for named pipes to leak which causes subsequent
   tests to be unable to run
3) ClientTest did not handle lines with carriage returns correctly

Issue #1 is fixed with retries. Issue #2 is fixed by using a
unique temp directory for each test run. Issue #3 was fixed by
simplifying the output stream cache to only cache the bytes returned
and then letting scala do the line splitting for us in linesIterator.

After these changes, all of the server tests work on appveyor.
2020-06-29 09:44:24 -07:00
Ethan Atkins 0fbb748115 fixup! Update appveyor.yml 2020-06-29 08:59:52 -07:00
Ethan Atkins e878660ef3 Update appveyor.yml
Appveyor supports uploading build artifacts that can be downloaded after
the build completes. This can be used to build and distribute graalvm
native images for mac, linux and windows since appveyor supports all
three of these platforms.  Appveyor allows custom builds based on the
git branch. Since building the graalvm native images is slow, the new
config will only build the native image when a branch called
`build-graal` is pushed. Otherwise it will run the normal scripted tests
that it has always run.
2020-06-24 11:24:15 -07:00
Eugene Yokota ee0310f7d3 Drop Visual Studio 2015 testing 2019-09-19 13:37:11 -04:00
Ethan Atkins ec281d8a14 Add coursier cache to CI
These locations are taken from https://get-coursier.io/docs/cache.
2019-08-01 11:57:29 -07:00
Ethan Atkins 4b915ff69e Run more scripted tests on windows
Given that there are io differences between windows and posix systems,
we should aim to run the tests that do a lot of io on windows. There are
a few tests that don't work because of some platform specific issues so
I added a filter that excludes these tests on windows in ScriptedTests.
2019-05-11 22:01:49 -07:00
Ethan Atkins 81481a8af5 Disable supershell in CI
The supershell output is distracting in CI. I added a system property,
sbt.ci, to explicitly set whether or not sbt is running in a ci build.
It was not at all obvious to me if the BUILD_NUMBER or CI environment
variables were set on travis or appveyor.
2019-03-30 11:51:47 -07:00
Ethan Atkins 47b85b98c0 Run windows tests on visual studio 2015 and 2017
I've noticed that it's possible to write code that works on one but not
the other.
2019-03-22 09:32:35 -07:00
Eugene Yokota 0221858217 improve Windows build 2018-01-31 00:04:23 -05:00
Eugene Yokota 1f9a8bf310 start an instance of sbt in the background 2018-01-30 23:46:12 -05:00
Eugene Yokota 0a3900f53d Add Library interface
Fixes #3821

Initially I missed why #3821 was failing.

Looking at it again, the error message reads:

```
Caused by: java.lang.IllegalArgumentException: Interface (NGWin32NamedPipeLibrary) of library=kernel32 does not extend Library
        at com.sun.jna.Native.loadLibrary(Native.java:566)
        at sbt.internal.NGWin32NamedPipeLibrary.<clinit>(NGWin32NamedPipeLibrary.java:38)
        ... 7 more
```

Inside `Native.loadLibrary`, it requires the "library" interface to extend `com.sun.jna.Library`, which this adds.
2017-12-22 16:10:46 -05:00
Eugene Yokota 13e1862c2f set jna.nosys to true programmatically
Previously I was seeing the error upon the first scripted test. I thought it was because Main was somehow not early enough. It might just be because scripted technically runs as part of the build.

Ref sbt/io#110
2017-12-21 00:08:56 -05:00
Eugene Yokota bc4d3d5031 just scripted actions/* 2017-12-19 03:24:51 -05:00
Eugene Yokota 3507403a36 -Djna.nosys=true 2017-12-19 02:46:46 -05:00
Eugene Yokota ec5bdc2381 Add Windows testing 2017-12-18 23:24:20 -05:00