Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revamp the test and run fork process infrastructure #449

Merged
merged 12 commits into from
May 2, 2018

Commits on May 1, 2018

  1. Inherit process input stream from Bloop

    Otherwise, `System.console() == null`.
    jvican committed May 1, 2018
    Configuration menu
    Copy the full SHA
    dcda31f View commit details
    Browse the repository at this point in the history
  2. Revamp the test and run fork process infrastructure

    1. Migrate to `NuProcess` and avoid the annoying Java and Scala process
    APIs. Nuprocess gives us a better foundation to deal with stdout and
    stderr, as well as processing standard input from the host process
    (Bloop). `NuProcess` will also be more efficient than our previous
    approach.
    
    2. Migrate test server and the whole `runMain` machinery to `Task` so
    that we can have a finer control over it. Note that now these actions
    can be cancelled!
    jvican committed May 1, 2018
    Configuration menu
    Copy the full SHA
    15d2176 View commit details
    Browse the repository at this point in the history
  3. Disable TestLogginSpec

    It fails spuriously with good reason: Bloop doesn't yet support
    concurrent clients. When we do, we'll re-enable this test suite.
    jvican committed May 1, 2018
    Configuration menu
    Copy the full SHA
    8ffc937 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    ba8e3ea View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    984f29b View commit details
    Browse the repository at this point in the history
  6. Upgrade nuProcess and modernize nailgun test

    The modernization makes sure that:
    
    1. All processes that call bloop do provide an empty or inherited input
    stream in both the server part and the client part.
    
    2. The implementation is task based so that we can remove the annoying
    thread sleep + have automatic shutdown of the processes if the timeout
    is not met.
    jvican committed May 1, 2018
    Configuration menu
    Copy the full SHA
    b37ea71 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    51455d5 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    a336542 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    060b7d4 View commit details
    Browse the repository at this point in the history
  10. Remove unnecessary log

    jvican committed May 1, 2018
    Configuration menu
    Copy the full SHA
    6ae0e49 View commit details
    Browse the repository at this point in the history

Commits on May 2, 2018

  1. Don't return from the client until nailgun server is down

    I think this is one of the reasons why our nailgun-based test infrastructure has been traditionally not very stable. Let's see if this fixes it.
    jvican committed May 2, 2018
    Configuration menu
    Copy the full SHA
    42d0f10 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3175510 View commit details
    Browse the repository at this point in the history