<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>
GitLab
</title>



<style>img {
max-width: 100%; height: auto;
}
</style>
</head>
<body>
<div class="content">
<h3>
Hideki Yamane pushed to branch debian/sid
at <a href="https://salsa.debian.org/java-team/nailgun">Debian Java Maintainers / nailgun</a>
</h3>
<h4>
Commits:
</h4>
<ul>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/4c7db88f2c3a7a22450746449f892dcc6176619d">4c7db88f</a></strong>
<div>
<span>by martylamb</span>
<i>at 2012-11-23T21:28:43Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Initial commit
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/cc895982f57f16fd0f747134c68d884e591ab012">cc895982</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-23T21:43:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">update README, making sure I have git set up properly...
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e575cfe263ced2d1ea70099f5445ddc13ea4b08f">e575cfe2</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-25T19:09:49Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">mavenized
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/250578ff5bae9e3685212d02f3da5ad5b067607d">250578ff</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-25T19:11:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">mavenized
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/615ccdcb00a88176e22262f23bfeb55ed37efcf1">615ccdcb</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-25T19:14:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[maven-release-plugin] prepare release v0.9.1
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/db6eb149541704df35213ae9038c75528a72ae0f">db6eb149</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-25T19:14:10Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[maven-release-plugin] prepare for next development iteration
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5f0d73d1b9df70fe8c37ccf811e1d9be115b1b81">5f0d73d1</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-25T23:28:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">updating poms for publication to maven central
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/a21c9208a8b43801a02443a93a6f6923a66d931d">a21c9208</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-25T23:34:20Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">updating poms for publication to maven central
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/66b468cca1f54454a8fb8a8dee39f34f078116f9">66b468cc</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-11-30T02:02:34Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Comment out gpg stuff for now.  Need to set up artifact signing properly for maven central repo
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/005fcb49d0875dda7e1a7ed201a8becd1bbd9fb7">005fcb49</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-12-03T00:38:21Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">setup artifact signing properly(?) for release to maven central
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/085ecdcdbb8264a3708e5aae0da27fd72bcf03bb">085ecdcd</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-12-03T00:44:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[maven-release-plugin] prepare release nailgun-all-0.9.1
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/66388448ad5ef34555bec924c62a8518e6943ba3">66388448</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-12-03T00:48:08Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">fix git url in developerconnection
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/3767ecdd6ceba29d9d90797f5d0d00767456e573">3767ecdd</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-12-03T00:49:48Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">fix git url in developerconnection
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/8957dd2d8bf489324ea24add71cfdb4628b51c09">8957dd2d</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-12-03T01:00:34Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">reverse effects of failed mvn release:prepare to try again
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/cd3ff159548c2ba60fcd1f3341611b1bf6e8997b">cd3ff159</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-12-03T01:01:12Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[maven-release-plugin] prepare release nailgun-all-0.9.1
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/71c65df529cfaade612669302a00f0706a42e76a">71c65df5</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2012-12-03T01:01:20Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[maven-release-plugin] prepare for next development iteration
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/a0d96d12c5bb42ea248b727ae2412009cf856485">a0d96d12</a></strong>
<div>
<span>by Víctor M. Valenzuela</span>
<i>at 2012-12-30T22:29:06Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">add ng binary to .gitignore</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/db3e6f35d7d903198d381bfd243ad8ba514e7ce7">db3e6f35</a></strong>
<div>
<span>by vemv</span>
<i>at 2012-12-30T23:10:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">prevent NailStats consumers from reading stale values
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/00ca24ecb59bec8a907a363d9ece9f1a7c2e4cc8">00ca24ec</a></strong>
<div>
<span>by martylamb</span>
<i>at 2012-12-31T16:35:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #3 from vemv/patch-1

add ng binary to .gitignore</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e48c47a6e49a46fca3127011d51c264f6242fd7f">e48c47a6</a></strong>
<div>
<span>by martylamb</span>
<i>at 2012-12-31T16:35:28Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #4 from vemv/master

prevent NailStats consumers from reading stale values</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/a296ba08566c2dfacf11c4e94ed1e846566cdcb4">a296ba08</a></strong>
<div>
<span>by vemv</span>
<i>at 2013-03-17T00:34:52Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Exclude ng executable from version control.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6227faf4b5102b515cebff8d2a2f1a8123bd0745">6227faf4</a></strong>
<div>
<span>by vemv</span>
<i>at 2013-03-17T01:38:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Allow providing non-static main methods. Not known to work yet.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6e0d1ed72fdfbbfc20b7e756418805896fa23c6e">6e0d1ed7</a></strong>
<div>
<span>by vemv</span>
<i>at 2013-03-22T23:56:42Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Allow the clients to set the ClassLoader, so as to load dynamically generated classes.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/a7b6a3674197f546b3cf602bff40ab86f5069301">a7b6a367</a></strong>
<div>
<span>by martylamb</span>
<i>at 2013-03-25T17:43:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #7 from vemv/master

Facilitate the use of Nailgun to other JVM languages</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/673d0c1e539c0b6d2e6c2a3907f918d59694e0e0">673d0c1e</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-07-16T09:08:29Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Avoid constructing a FilePermission object in checkRead if base manager is null.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/88dd92f637addc1b2d925a7cc55da056eae5073e">88dd92f6</a></strong>
<div>
<span>by martylamb</span>
<i>at 2013-07-23T12:04:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #11 from jimpurbrick/master

Avoid constructing a FilePermission object in checkRead if base manager ...</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9c3885aa598a67af1e936794e9ca05a50a9ca6ab">9c3885aa</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-09-26T02:50:41Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add initial support for a new context.isClientRunning() API,
which allows nails to test for client disconnection and is
demonstrated by a new Heartbeat.java example.

The new API is implemented by sending a heartbeat chunk from the
client every 100ms which the server looks for to determine whether the
client is still alive. In order to read client heartbeats even when
there is pending stdin data to be read, NGInputStream stores pending
stdin data in a byte buffer and sends startinput chunks to the client
when it is ready to receive new data. This primitive flow control may
slightly degrade throughput, but as nailgun clients and servers are
expected to run on the same host the impact should be negligible.

The heartbeat support can be tested by running ./ng
com.martiansoftware.nailgun.examples.Heartbeat which should print one
hash per second until the client is killed at which point the exit
code of 42 should be shown in the server log. Running cat /dev/zero |
./ng com.martiansoftware.nailgun.examples.Heartbeat tests that the API
works when the client is sending data that is not read by the
nail. Running ./ng com.martiansoftware.nailgun.examples.Echo tests
that the API works when the nail is reading but the client is not
sending data and cat /dev/zero | ./ng
com.martiansoftware.nailgun.examples.Echo tests that the API works
when the client is sending data that the nail is reading.

Needs testing and probably fixing on Windows.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/05c9eaf31dbfe6ac7ebc5b62e19798b86efedadf">05c9eaf3</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-10-18T14:45:15Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add support for NGClientListeners and win32 support.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/745b9cce6d03114c1980f1ca15fd2729a3b028fa">745b9cce</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-10-25T15:32:00Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix partial reading of chunk payloads and serialization of sent chunks in win32
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e4079f64e820035b61d2ceb42e02eeb9fa72711e">e4079f64</a></strong>
<div>
<span>by martylamb</span>
<i>at 2013-10-28T15:59:11Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #15 from jimpurbrick/master

Add support for NGClientListeners and win32 support.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2cb49d6aec2f0979837fd055741ba15a3cb7ea8e">2cb49d6a</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-10-29T09:18:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Block main on chunk read rather than looping reading from client stream. Simplify synchronization. Add JavaDocs.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/65ec52591372f21b19f45708966a11925efbd18a">65ec5259</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-10-29T09:23:09Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">print message to server log on client disconnection
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/d6167fb7c8bc53f8490618bb32b4d3f6db529d41">d6167fb7</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-10-29T21:31:46Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use FixedThreadPool instead of CachedThreadPool for NGStream reader threads, name threads and notify threads blocked in waitForChunk on disconnection.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/fcc24ecd63ead63f160e96f6a0640f6b4280f72d">fcc24ecd</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-10-29T21:37:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #16 from jimpurbrick/master

Use fixed size thread pool in NGInputStream, fix race condition and simplify synchronization.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/8c3f26b6cf5d6aa3d64639f64ee2ba540c463602">8c3f26b6</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-11-19T14:19:15Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add support for NGHeartbeatListeners and configurable heartbeat timeout
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5915c1f84c70dc763627dfde549c7ab07d712164">5915c1f8</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-11-19T14:23:33Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #18 from jimpurbrick/master

Add support for NGHeartbeatListeners and configurable heartbeat timeout</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2453a76eae4bffca4476361d4cf50bded9287b7d">2453a76e</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-11-22T14:11:55Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Test send interval after every select call, rather than relying on timeouts, so that reads don't surppess heartbeats.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9cf2720e6c4c7b798b3ee3b724768b0d4df52793">9cf2720e</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-11-22T15:10:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #19 from jimpurbrick/master

Test send interval after every select call, rather than relying on timeo...</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6f66e4a3b57e5215ff34820dc5ea58ff43abf4dd">6f66e4a3</a></strong>
<div>
<span>by DrSlump</span>
<i>at 2013-11-23T13:36:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Forward isatty on *nix as part of the environment
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/473b77cd8e13dc5e44f48549dd5a2f434505afc3">473b77cd</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-12-11T09:48:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Increase visibility of NGContext methods to allow integration testing.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6a0226efdd69f3a16f00bf07ca8274c31cbb9942">6a0226ef</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-12-11T12:48:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Close NGInputStream before sending exit code to client to avoid races. Allow NGClientListeners to throw InterruptedExceptions to interrupt main thread. Don't call clientDisconnected handlers during normal shutdown.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/4cac9ae177a9a7e641615b106140093c3d28771a">4cac9ae1</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2013-12-11T12:51:57Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #22 from jimpurbrick/master

Close NGInputStream before sending exit code to client to avoid races. Allow NGClientListeners to throw InterruptedExceptions to interrupt main thread. Don't call clientDisconnected handlers during normal shutdown.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/36733dd0629e7739ef440c8c14849bd1e0bc51cf">36733dd0</a></strong>
<div>
<span>by Vladislav Hristov</span>
<i>at 2014-02-10T22:52:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Allow java classes to close stdout/stderr

When the client calls a class, where either stdout or stderr is closed
the socket connection to the client is closed and no further data is
sent. This includes data transmitted over the other stream and exit
codes.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/445f046e035389a081b4a36196955f531c46055e">445f046e</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2014-02-13T20:30:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #25 from vhristov/for-issue23

Allow java classes to close stdout/stderr</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/144f7f7d3e78426a50baaa736e105af07508c3c3">144f7f7d</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2014-03-21T09:51:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Reduce thread synchronization overhead.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6b2dc37db5dd5f6b6d5504ca9685bd578a495f15">6b2dc37d</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2014-03-21T10:42:03Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #26 from jimpurbrick/master

Reduce thread synchronization overhead.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5b2b1d85e219b66e5b70be038d361c926f42c72c">5b2b1d85</a></strong>
<div>
<span>by Ben Armstrong</span>
<i>at 2014-04-03T16:09:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">VMS aliases should be defined as foreign commands</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ce4e6f0228cc1db6361a0bc59a3ecf2c38f05184">ce4e6f02</a></strong>
<div>
<span>by martylamb</span>
<i>at 2014-04-05T13:36:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #20 from drslump/forward-isatty

Forward isatty on *nix as part of the environment</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/65bd753ba3fcf1e38f9770dfb3755fb7e5e03d38">65bd753b</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2014-04-05T13:42:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">fix NPE when nailgun classes are in the boot classpath.  Weird case hit by a JRuby user.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/035db6eb93b424ddd958ed391b4d000591d868b2">035db6eb</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2014-04-05T13:53:11Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">minor refactor to satisfy pedantic compile and clarify variable name
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/a789fa3f4eefcd24018d4fd89fc9037427533f52">a789fa3f</a></strong>
<div>
<span>by Marty Lamb</span>
<i>at 2014-04-05T13:54:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #24; suspect /usr/local/bin directory did not previously exist for user.  This should work whether it exists or not.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/286eaf3558d1c8b47e2768f41b4f0e445456c766">286eaf35</a></strong>
<div>
<span>by martylamb</span>
<i>at 2014-04-07T20:40:42Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #29 from bg/master

VMS aliases should be defined as foreign commands</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b512ff372890bb53b19d89594256c8f9b738b9be">b512ff37</a></strong>
<div>
<span>by Paolo G. Giarrusso</span>
<i>at 2014-05-10T11:33:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add Apache 2 license file - fix #14

I did not pick the license myself, of course, I just looked at http://martiansoftware.com/nailgun/license.html, then I created LICENSE.txt and picked the GitHub template, and finally I copied the copyright notice (the first line) from the website.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6c2008bf761f14b598ee703903d93e8e6e822f9a">6c2008bf</a></strong>
<div>
<span>by martylamb</span>
<i>at 2014-05-29T17:39:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #31 from Blaisorblade/patch-2

Add Apache 2 license file - fix #14</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/8a2425ef6b544cab3dd4d59a3aa621cb7360a472">8a2425ef</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2014-06-12T13:34:46Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Always call clientDisconnected to avoid race.
Call clientDisconnected on all registered listeners on disconnection.
Always print to server log when disconnection detected to aid debugging.
Use ExecutorService per NGInputStream instance to enable test isolation.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/df35649c56b793f9a37e6beb02b0d0dee57b4fda">df35649c</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2014-06-12T13:38:04Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #33 from jimpurbrick/master

Always call clientDisconnected to avoid race.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/0a364b113a934da18fedc0081d4849e5c421d11d">0a364b11</a></strong>
<div>
<span>by Thomas Peiselt</span>
<i>at 2014-08-21T07:18:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">prevent invalid java doc from failing the build in java 8.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ac8a4d74288a5c2955358b9150ca96cd5478fa3b">ac8a4d74</a></strong>
<div>
<span>by Seth Pellegrino</span>
<i>at 2014-10-09T23:47:44Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add prefix to makefile

Homebrew has requested the ability to specify an install prefix.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e20aaa3618f88209f1c343233c0fcf5c15ecef70">e20aaa36</a></strong>
<div>
<span>by lauri-elevant</span>
<i>at 2014-11-15T21:01:26Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Parse UTF-8 arguments

Simple fix to enable passing UTF-8 on commandline (with properly set up locale of course). Before all multibyte UTF-8 characters were garbled. Due to UTF-8 ASCII back-compat this should produce no ill effects..</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/a3437007a222e153658eb91a8f87a7c2e9c681d4">a3437007</a></strong>
<div>
<span>by Ben Gertzfield</span>
<i>at 2014-11-24T19:20:23Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Explicitly close PrintStreams so they flush to the client socket before it's closed.

We ran into an issue in Buck where the nailgun C client would have its
socket closed unexpectedly by the server before it received the exit
command (X).

I went through NGSession with a fine-toothed comb and found its use of
PrintStream was unsafe: it used the constructor `PrintStream(OutputStream out)`
which explicitly does not flush any data unless you call `flush()` or `close()`.

This diff simply ensures we always explicitly call `PrintStream.close()` to
flush all data before closing the client socket in `NGSession`.

The vast majority of this diff is whitespace changes due to adding a
try / catch block (I assume we can't add dependencies on Java 7
try-with-resources), so add `?w=1` to the end of the github URL to
view it without whitespace changes
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9e775755a88da79de820d31019af13e4c7b973c5">9e775755</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2014-11-24T20:38:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #52 from bgertzfield/flush-print-streams

Explicitly close PrintStreams so they flush to the client socket</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6f39efa91e60c1e0aa9ae11477c27e3b5f90c5a0">6f39efa9</a></strong>
<div>
<span>by martylamb</span>
<i>at 2015-04-10T21:27:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #42 from dispanser/master

prevent invalid java doc from failing the build in java 8.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7f1e1bc712bec6ad375f7d0e6cdc46323126b448">7f1e1bc7</a></strong>
<div>
<span>by martylamb</span>
<i>at 2015-04-10T21:29:07Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #51 from lauri-elevant/patch-2

Parse UTF-8 arguments</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7e561e80dbff910e42d322f170b991ff665e946e">7e561e80</a></strong>
<div>
<span>by martylamb</span>
<i>at 2015-04-10T21:29:58Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #45 from sethp-jive/homebrew-prefix

Add prefix to makefile</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ae328fd6189cecb854d4290fc26da86d05739376">ae328fd6</a></strong>
<div>
<span>by Gahl Saraf</span>
<i>at 2015-04-29T14:37:53Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove second definition of buf
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/aeb1712ff16f7f532e7790008359f28aba05c627">aeb1712f</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-04-30T16:31:05Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #54 from gsaraf/fix_compile_error

Remove second definition of buf</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/95b668e1fe889004921b3c5c3c4222cfeb6c93a7">95b668e1</a></strong>
<div>
<span>by Natthu Bharambe</span>
<i>at 2015-05-19T15:26:04Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Handle system call errors in nailgun client

This is https://github.com/facebook/buck/commit/371f502640527492eda2046f0dcc4afb2d5216bf,
which fixes https://github.com/facebook/buck/issues/262.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7f8efc6b41599d459e26957daed937aa2c3fb836">7f8efc6b</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-05-19T17:22:58Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #56 from sdwilsh/master

Handle system call errors in nailgun client</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/879cfb135969a5a9b822f03784e95e99a0ed2b33">879cfb13</a></strong>
<div>
<span>by Ben Hyland</span>
<i>at 2015-05-20T10:25:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">don't generate errors when heartbeating on a socket already closed by the server
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/dc7e6c9649499196493b0d4780783b77ff459441">dc7e6c96</a></strong>
<div>
<span>by martylamb</span>
<i>at 2015-05-21T15:01:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #57 from benhyland/master

handle errors on heartbeat when the server closed the socket already</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9138a3ef7905fa94a3ae8df18ac946960ac25f6b">9138a3ef</a></strong>
<div>
<span>by Ben Hyland</span>
<i>at 2015-05-22T11:34:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">OSX doesn't seem to have MSG_NOSIGNAL
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7e6630881177efc0fe851d4d68ce1ac2e139002c">7e663088</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-06-15T15:02:09Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #58 from benhyland/master

OSX doesn't seem to have MSG_NOSIGNAL</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e1af5bfe1999f82198f1a3e42ad9f50a2dd86c0b">e1af5bfe</a></strong>
<div>
<span>by Ben Hyland</span>
<i>at 2015-08-12T11:19:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">ignore ECONNRESET as well as EPIPE when sending hearbeats
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/67455d9a616dcd0dd3edbae33a3c85a0c009c011">67455d9a</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-08-12T15:42:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #69 from benhyland/master

ignore ECONNRESET as well as EPIPE when sending heartbeats</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c5ca972b03be74e0ee1a9ddf46e277619761e889">c5ca972b</a></strong>
<div>
<span>by Ben Hamilton</span>
<i>at 2015-08-31T17:34:12Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add support for Unix domain sockets using JNA
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/3e54c5f1e9bd03f381dacaff330f789e963ae2c0">3e54c5f1</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-09-01T13:57:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #71 from bhamiltoncx/unix-domain-socket

Add support for local (Unix domain) sockets using JNA</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/718c25326caef1c3ccf8a7126af807fdcff8df63">718c2532</a></strong>
<div>
<span>by Ben Hamilton</span>
<i>at 2015-09-01T19:41:52Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix deadlock in NGUnixDomainServerSocket if a thread called close() while another was blocked in accept()
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/df39545f4fb63fb3cd3051932e89ddba91e5827f">df39545f</a></strong>
<div>
<span>by Ben Hamilton</span>
<i>at 2015-09-01T20:04:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix possible race condition
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/040f35ec60eca27ef641a526eaae7e27e7f8bd9c">040f35ec</a></strong>
<div>
<span>by Ben Hamilton</span>
<i>at 2015-09-01T20:14:52Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Better use of atomic get-and-set.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/28643d53ced099000197a6a033df08b2aea3ed2d">28643d53</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-09-01T20:23:14Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #73 from bhamiltoncx/fix-close-deadlock

Fix close deadlock</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/283c792bbb26efce1fd567af32610c16d4c4e0ab">283c792b</a></strong>
<div>
<span>by Ben Hamilton</span>
<i>at 2015-09-25T19:14:48Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Reference counted operations for connected sockets to prevent races
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7adb931c4f3d6d72f6c775afe3cea52d6b380eeb">7adb931c</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-09-28T12:53:41Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #76 from bhamiltoncx/fix-fd-reuse-race

Fix nasty FD re-use race condition in NGUnixDomainSocket</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/0fd2dd4884dca4f434066f436511bb7bfae8dcbf">0fd2dd48</a></strong>
<div>
<span>by Ben Hamilton</span>
<i>at 2015-11-12T07:27:28Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Python port of Nailgun client

We have a lot of Buck users who struggle to compile the native Nailgun C client.

This ports the client to pure Python instead. I tested this with the Buck
Nailgun server on Linux 3.10.75 with Python 2.6 and OS X 10.10.4 with Python 2.7.

This client doesn't yet work on Windows, since Python `select.select()` doesn't
handle a mix of sockets and file handles on Windows.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/1ad9ad9d2d17c895144a9ee0e7acb1d3d90fb66f">1ad9ad9d</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2015-11-12T10:09:05Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #80 from bhamiltoncx/nailgun-client-py

Python port of Nailgun client</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7ee9c9e446222947bd8e57963ca2047954c61f44">7ee9c9e4</a></strong>
<div>
<span>by Ben Hamilton</span>
<i>at 2017-07-17T14:10:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add debug logging
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b2760d98a64b31d48df7796a81c683ccb343dc89">b2760d98</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-17T14:11:06Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">support for windows named pipes
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f272f0d8908ab167cd42f1af2781881fc6b3b690">f272f0d8</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:11:15Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use Java 1.8 in nailgun-server
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e448362c05f2649ce4016d45c7fad6d70107b2f0">e448362c</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:11:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make instanceCounter thread safe
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9b9b73ab42e31935e155aa1c23cf7904c9858b95">9b9b73ab</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:11:33Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make NGSession variables final
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/12a79d19db64d0ba8d962e8e140afb67ed77d859">12a79d19</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:11:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">NGServer - make variables final and fix sync issue with allNailStats
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7aeaf4d67e75dfa3af6e55b8de6d3da33c320cca">7aeaf4d6</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:11:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">NGServer - use AtomicBoolean for shutdown
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6132afee8f8b136add5d7772dbd35e0f04ae2dd1">6132afee</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:12:09Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">NGServer - use AtomicBoolean for running
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/94af899bd50be75d2f1c735a2552f0f288043424">94af899b</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:12:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fixing thread safety in NGSessionPool
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/97c4446ae95e7d7d25542b3a932d6b5e0ba1751e">97c4446a</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-07-17T14:12:23Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix thread safety in NailStats
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/91112be71df690d3ecb3169bf3c0087a3ead79e5">91112be7</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T18:34:52Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #91 from ilya-klyuchnikov/sync-fb-01

Add debug logging</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e261c2ccfe777d3642af244dda88aeb85630bde9">e261c2cc</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T18:54:15Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #92 from ilya-klyuchnikov/sync-fb-02

support for windows named pipes</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5e33f2d12d712331883120838b6f8e1ed7064bf3">5e33f2d1</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T18:57:28Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #93 from ilya-klyuchnikov/sync-fb-03

Use Java 1.8 in nailgun-server</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ed089b26bec09cd47c319edce64a18f5ec2c673e">ed089b26</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T18:59:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #94 from ilya-klyuchnikov/sync-fb-04

Make instanceCounter thread safe</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ff0ba9e09a7463929598199663b815b467c6acbe">ff0ba9e0</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T19:01:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #95 from ilya-klyuchnikov/sync-fb-05

Make NGSession variables final</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2a673b07c58e1d1626d5ddf2ec21f6ae29801423">2a673b07</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T19:02:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #96 from ilya-klyuchnikov/sync-fb-06

NGServer - make variables final and fix sync issue with allNailStats</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/94d1237e8c23ba94565e9a62144f1bc910d814e1">94d1237e</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T19:03:43Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #97 from ilya-klyuchnikov/sync-fb-07

NGServer - use AtomicBoolean for shutdown</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/4f89636fbc2ad0318067c0c39c1a51c53114fb0c">4f89636f</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T19:04:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #98 from ilya-klyuchnikov/sync-fb-08

NGServer - use AtomicBoolean for running</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/917ffa421c8f9fc31ecaf3c098799c21981c656f">917ffa42</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T19:05:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #99 from ilya-klyuchnikov/sync-fb-09

Fixing thread safety in NGSessionPool</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e7fa6c7e4fc3e4acf049b2ec2f02373e96e848d2">e7fa6c7e</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-17T19:07:14Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #100 from ilya-klyuchnikov/sync-fb-10

Fix thread safety in NailStats</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2e0644f870e45cf23ec2066b5c705be1b1b75de5">2e0644f8</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:21:06Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Easy: Ignore SIGPIPE when Python nailgun client sends heartbeat
Summary: When shutting down the Python nailgun client, we might
need to send a heartbeat during the shutdown process.

If the server closes its socket while this is happening, we
would get SIGPIPE and crash the Python nailgun client.

The C client handles this by ignoring SIGPIPE on heartbeats,
so we will do the same in the Python client.

Test Plan: Add a `throw new RuntimeException()` to Buck. Run
`buck build //path/to:target`. Previously, Python client
would crash with SIGPIPE. Now, it cleanly shuts down.

Imported from https://github.com/facebook/buck/commit/d81acc472ca16122194a0214570401235e5ec5c0
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/31bcaaffb0e91052985a9eff5b8bbb9c95512e26">31bcaaff</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:24:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Easy: Fix calling Python Nailgun client directly from command line
Summary: I renamed some parameters to `NailgunConnection` in
a refactor but forgot to update the codepath which runs
when `ng.py` is invoked from the CLI.

Test Plan: python third-party/nailgun/pynailgun/ng.py --nailgun-server=local:.buckd/sock com.facebook.buck.cli.Main build buck

Previously, it crashed with an invalid parameter error. Now, it runs.

Imported from https://github.com/facebook/buck/commit/572644fc2b6d5b207676169bd2b2d8333b88d881
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/05facb9ebc9143e7d355abbda18b2e006b257ca4">05facb9e</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:34:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Easy: Fix calling Python Nailgun client directly from command line
Summary: I renamed some parameters to `NailgunConnection` in
a refactor but forgot to update the codepath which runs
when `ng.py` is invoked from the CLI.

Test Plan: python third-party/nailgun/pynailgun/ng.py --nailgun-server=local:.buckd/sock com.facebook.buck.cli.Main build buck

Previously, it crashed with an invalid parameter error. Now, it runs.

Imported from https://github.com/facebook/buck/commit/572644fc2b6d5b207676169bd2b2d8333b88d881
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/550b75b250c20e075e2a479f06f1d34e920b2e2f">550b75b2</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:35:44Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Easy: Fix Python 2.7 check in ng.py
Summary: We needed to check if `memoryview()` was present to support
Python 2.6 in the Nailgun Python client.

Evidently `'foo' in dir(__builtin__)` works in the Python REPL but not
from a module.

This changes the logic to work both from the Python REPL and from
a module.

Test Plan: `buck build buck`, kill buckd PID, confirm stack trace includes
`recv_into_memoryview()` and not `recv_to_buffer_with_copy()`.

Imported from https://github.com/facebook/buck/commit/02e721f2fbca3f7cae4232abb560f6851de0385f
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/17e8ecae1cf7568858e0676d6bdd6f519b72d6fc">17e8ecae</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:36:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix Python launcher failing to use buckd if run outside of project root
Summary: I found some engineers were running buck from directories outside
the root of the repository.

In this case, the Python launcher would fail to connect to `buckd`, because
we were passing it a relative path to the Unix domain socket which was
hard-coded to `.buckd/sock`.

This fixes the issue by updating `pynailgun` to support a `cwd` parameter
to tell it to chdir to the project root (and then restore it) before
connecting to the socket.

We could pass the full absolute path to the socket, but Unix domain
sockets are extremely limited in length (somewhere around 60 bytes)
so using a relative path if possible is much more reliable.

Test Plan: `cd` into subdirectory, run Buck command twice. Before,
would not use buckd. Now, it does.

Imported from https://github.com/facebook/buck/commit/a74e8cbc3552f36f1d0b770715bd4dc1315a6a8f
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b053d60d527eb5be84ade5402d0f9d1cee8f1495">b053d60d</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:37:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Update Python Nailgun client to handle socket.error exceptions
Summary: Users on Linux reported the new Python Nailgun client
was leaking `socket.error` exceptions.

This caused the client (at least on Linux) to incorrectly exit with an
error code when shutting down the server, since the server abruptly
Closes the socket without sending an exit code when we do that.

This fixes the Python client to turn `socket.error` exceptions
into `NailgunException`s with code `CONNECTION_BROKEN` to mirror
the behavior of the C client.

Now, the Buck wrapper for the Python Nailgun client will correctly
ignore connection broken errors when shutting down the server.

Imported from https://github.com/facebook/buck/commit/126cdd1da4d1d6c72dfa59afd6c9cd668bb8ca46
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b1d058f5c4d2455317b94b2dd3390f2b807a90f7">b1d058f5</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:39:08Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">ng.py fix

Imported from https://github.com/facebook/buck/commit/c0c9f980e9b2371761cc401ef2d9a429ac8c3f9f
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/d96e21a598d8b959e6ef0adf6ec8256a0bcd1f84">d96e21a5</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:39:58Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">ng.py: abstracting nailgun transport
Summary: Preparing for implementation of windows named pipes

Imported from https://github.com/facebook/buck/commit/fc4ee54d69113909b53cb481653229b43731e012
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/d1ea2e4d951f994d7f8a272907f24222c7552f32">d1ea2e4d</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:41:04Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">restoring ng.py to work with python2.6

Importing from https://github.com/facebook/buck/commit/badea1926e28e77836223fa2524f96b5b1adfec2
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/213c7ebc90eb4067ff86a0026d382fbe904a6c8c">213c7ebc</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-07-31T10:41:48Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">ng.py: windows pipes

Imported from https://github.com/facebook/buck/commit/8ab4505c44883d019907ab02e73583ac2a24d7f8
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/da68a507bae8c6017119d82f8384f8fe534c7f03">da68a507</a></strong>
<div>
<span>by Jim Purbrick</span>
<i>at 2017-07-31T11:05:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #102 from ilya-klyuchnikov/fb-sync

ng.py: contributing back facebook changes</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/eb42b14b55c53bd628faa1027ecc020f758e9f49">eb42b14b</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-03T16:35:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">import from fb: test_ng.py
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c0a45a3feae5e23d785cc88f19f33ba9e33e7b9a">c0a45a3f</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-03T16:58:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">shaded uber jar - for testing
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/05921e0eedda28854e90f72789b3b8ab40e40fa9">05921e0e</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">enabling test and running it with uber jar
test is run: `mvn package, python -m pynailgun.test_ng`
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/aec08fb112237df6a1e1503829e04ce4ec73e4f4">aec08fb1</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">running a set of tests in a row
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b694d040d90ca567f60a427e53e2512a5ea7afa4">b694d040</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">adding *.pyc to .gitignore
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2788c7111ada0b71401859b4046fa40a8ea3d4cf">2788c711</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">NGServer: printing the information about connection details after server is really ready

After socket is bound server is ready to accept connections.
Other tools (test_ng, buckd) can use this line from output to make sure that server is ready to accept connections.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c7e8de03f8615a46477c1fbd161f2d6cb85bc6a7">c7e8de03</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">test_ng.py: running 50 tests in a row
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f6e18e6ecb60664806c810b721aaca0fa50abc56">f6e18e6e</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">CI for test_ng.py
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/a2d2b987af6660f37c935aa78417a8652511f451">a2d2b987</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Named Pipe Server Using Overlapped I/O: waiting for a signal

According to https://msdn.microsoft.com/en-us/library/windows/desktop/aa365603(v=vs.85).aspx a server using overlapped IO should wait for a signal.
Also distinguishing between closing a session and shutting down the whole server socket
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7ee04fc9e8d3326447b7f1e00e1b786c8a3abb1b">7ee04fc9</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-08T01:36:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">test fix
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ab6fba00de2031b7fa04a076fa809a1995ffa9a4">ab6fba00</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-08-09T19:10:43Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">comments
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c42bb3f71273251619b0b78f7e72d3c9357ef1a9">c42bb3f7</a></strong>
<div>
<span>by mlamb</span>
<i>at 2017-10-14T14:49:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">update README to reflect transfer to Facebook
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/3bfa27f250b84f2893d5a536ac70962d584250f7">3bfa27f2</a></strong>
<div>
<span>by mlamb</span>
<i>at 2017-10-14T20:06:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">updated README to preempt license concerns
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f84402f81d68cf16226e6b621863f0684237a6f6">f84402f8</a></strong>
<div>
<span>by Andrew Gaul</span>
<i>at 2017-10-25T04:09:05Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Correct hyperlink
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5b960682ad5b3b6942e01d046b1ae0ccf380dc29">5b960682</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-10-25T05:15:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #106 from gaul/readme

Correct hyperlink</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/22a2798d5f487449b48b243118ebe23e1b819cf5">22a2798d</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-10-25T05:44:10Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Nailgun is maintained by Buck team now
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ed4d668496bf05465cc05363f5b4c2f796c8ca44">ed4d6684</a></strong>
<div>
<span>by Sergey Tyurin</span>
<i>at 2017-10-25T05:45:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make NGInputStream thread safe
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/05bf498d800ccdf4f5ceed0a284bc0201baf2198">05bf498d</a></strong>
<div>
<span>by Šmucr Jan</span>
<i>at 2017-10-25T05:47:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix an exception thrown if the user specifies (only) a port to bind to
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c5eed04dc3918ce8961c8019572cae8e1936ca2b">c5eed04d</a></strong>
<div>
<span>by Kris Wilson</span>
<i>at 2017-10-25T05:49:48Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Clean up trailing whitespace in ng.c
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b2c42be05bc20c96048c7cd10ad855750c2b6c51">b2c42be0</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-10-25T16:29:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #103 from ilya-klyuchnikov/test-ng-fix

test-ng.py and fixes for reliable testing</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/af623fddedfdca010df46302a0711ce0e2cc1ba6">af623fdd</a></strong>
<div>
<span>by Timur Alperovich</span>
<i>at 2017-11-13T17:12:30Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a pointer to a ruby client.

Adds a pointer to a ruby client implementation for nailgun.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7f2e15e7ae682b52721f3c0969d95a10577a23ce">7f2e15e7</a></strong>
<div>
<span>by Eugene Yokota</span>
<i>at 2017-11-28T03:13:33Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Windows Named Pipes: Allow reading fewer bytes

Ref https://github.com/facebook/nailgun/pull/92

`read(b, off, len)` can sometimes be called when the length is unknown. This changes so that it uses the number of available bytes returned from `GetOverlappedResult` function, copies the bytes, and returns it.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/75e054835a1e16811f76823ad0dbcac1b14adaf3">75e05483</a></strong>
<div>
<span>by Eugene Yokota</span>
<i>at 2017-12-01T19:18:55Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add requireStrictLength parameter

This adds requireStrictLength parameter to NGWin32NamedPipeSocket and NGWin32NamedPipeServerSocket so the socket can return an inputstream whose `read(byte[], int, int)` requires exact length, as opposed to passing in a buffer array.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/e3416a6cf640493abdcb0224789adc222c3bc733">e3416a6c</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2017-12-04T11:47:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #109 from eed3si9n/wip/windows

Windows Named Pipes: Allow reading fewer bytes</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/05c9699b7d65bf123bc53a521e08727da7448ddb">05c9699b</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-11T02:50:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Better thread control in NGInputStream + small perf enhancements
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9acfd3926bed067eab84eb0bfe8c850a4e3eb31a">9acfd392</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-11T16:06:15Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Better thread control in NGInputStream + small perf enhancements (#113)

</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/d29e25385a9ced9dad2eac02076e53450269b5cc">d29e2538</a></strong>
<div>
<span>by Dwight Guth</span>
<i>at 2018-01-16T22:36:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">fix race between NGInputStream and NGOutputStream on the output socket

This race condition occurs when either NGInputStream or NGOutputStream
begins writing a chunk to the output socket, writes the length of the chunk,
then the chunk type is written incorrectly by the other class. This leads to an
"Unexpected chunk type" error that can occur when a child thread inherits the NGInputStream
and NGOutputStream from its parent thread, and a read of stdin and a write of stdout race with each
other.

We fix this by synchronizing NGInputStream on the underlying DataOutputStream in the same
way which NGOutputStream does.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/0007cabf99543012e75e8d5ebfc37db09d05a009">0007cabf</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-17T19:34:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #114 from dwightguth/race

fix race between NGInputStream and NGOutputStream on the output socket</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/41cb59e8af99e458d1fd6b0d1a8787034eca76de">41cb59e8</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-19T02:41:20Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge remote-tracking branch 'upstream/master'
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/be57ec4c749675f020a47d9e2cc4f6b9b89ad72f">be57ec4c</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-22T23:39:32Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Nailgun version 0.9.3
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ee9fb68f382e11c386ac8ecf4418eb60082d4ed6">ee9fb68f</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-23T01:00:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #117 from sbalabanov/nailgun.0.9.3_1

Nailgun.0.9.3</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2e016d6f3d3d945ab1314686433c5afa9afd1bf2">2e016d6f</a></strong>
<div>
<span>by Hideki Yamane</span>
<i>at 2018-01-29T13:09:46Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">enable to use some hardening flags

- Maybe CC is not only gcc (e.g. clang)
- add $(CPPFLAGS) and $(LDFLAGS) for hardening
- at least -O3 is not best for default variable, -O2 is better
- sometimes debug information is necessary
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2b0ade9c035ffc37d072cdb3683c269531f83a99">2b0ade9c</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-29T17:34:47Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #118 from henrich/master

enable to use some hardening flags</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b0c2f25b860d3e396d2f617593f6113a6b0031c5">b0c2f25b</a></strong>
<div>
<span>by Andrew Gaul</span>
<i>at 2018-01-30T16:57:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Close resource InputStream after use
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/505c6e64a91df313ea959d101b2b22bf84a13b47">505c6e64</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-01-30T18:23:42Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #121 from gaul/close-resources

Close resource InputStream after use</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/4331cbc446ffe093d78952453e98ccb65d7bfd99">4331cbc4</a></strong>
<div>
<span>by Ilya Klyuchnikov</span>
<i>at 2018-02-05T20:38:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">using jna 4.4.0 (#124)

</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9d4ed7fdc68416f82b4c76335a3dd39d2e013fc4">9d4ed7fd</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-02-06T07:44:08Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refactor input and output streams as thin wrappers
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/2a2c9719581aa92e1e763ebae772c296818596ad">2a2c9719</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-02-06T18:23:10Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #122 from sbalabanov/inputstream

Refactor input and output streams as thin wrappers</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f1951fe093fb3830121b4527523eb993d0d4b901">f1951fe0</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-02-09T20:16:00Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Nailgun client to send heartbeats from a dedicated thread
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c86919efd68a0d974e116078a5c7ef1a65c4f997">c86919ef</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-02-09T22:31:23Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #125 from sbalabanov/master

Nailgun client to send heartbeats from a dedicated thread</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c34506edef29a96cb53a543ac29d210bda743f03">c34506ed</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-02-21T23:03:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Better client disconnect reason
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7bd809f68d99435ff89326d61b232553d5c8f3ad">7bd809f6</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-02-23T17:59:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #126 from sbalabanov/master

Better client disconnect reason</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/aa4efa0d79965c9b9d95b75e7529a491eb381895">aa4efa0d</a></strong>
<div>
<span>by Andrew Valencik</span>
<i>at 2018-03-04T21:10:06Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Initial work on python 3 compatibility

Fixes bytes handling
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5ead3c8499c0ab09cd49595ba255576dd9219ffe">5ead3c84</a></strong>
<div>
<span>by Andrew Valencik</span>
<i>at 2018-03-04T21:10:06Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add multiple Python versions to TravisCI

To easily support multiple python versions in TravisCI the core build
type has changed from `java` to `python`.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/219571fe3ee366ef13fe52c5b3ced5aa64cfd9f0">219571fe</a></strong>
<div>
<span>by Taras Tsugrii</span>
<i>at 2018-03-04T21:15:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #128 from valencik/python3

Add Python3 support</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/3f84f918f591a618876a9da061fb439897a5d4b9">3f84f918</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-03-31T00:37:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove class reference from nailgun stats
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f9c1d5a437cbeaf3f54a793cc2f58d9b41da0c6a">f9c1d5a4</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-03-31T00:56:29Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #131 from sbalabanov/master

Remove class reference from nailgun stats</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/8527739665d86ed45490af3a9c69d78d5b6267a6">85277396</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-05T06:39:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Proper handle SocketException on nail termination
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5ac5c59698e0dcdbd1f2bf614d5210b4a0ba98e3">5ac5c596</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-06T18:19:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #132 from sbalabanov/master

Proper handle SocketException on nail termination</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/bdf8fa18bf9dd2a75f62d4ea58426de3cee122e9">bdf8fa18</a></strong>
<div>
<span>by LolHens</span>
<i>at 2018-04-18T11:27:11Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">fixed windows build
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b9f24f0c97667bcb69f59f36743eb4835443b790">b9f24f0c</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-18T22:01:49Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #135 from LolHens/master

Fixed Windows target</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f64789b445badf471fa59519de80f24fedbda48f">f64789b4</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-18T22:08:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Revert "Fixed Windows target"
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/8e82b96044f5ede93920a99fee49230b3026a856">8e82b960</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-18T22:09:07Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #137 from facebook/revert-135-master

Revert "Fixed Windows target"</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/ceb292ed982dad9584be6429b5109e703b5abf09">ceb292ed</a></strong>
<div>
<span>by LolHens</span>
<i>at 2018-04-19T07:19:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">fixed windows target
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/1c9822cb694582599498b9c91f9a5aa65e43ddf6">1c9822cb</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-19T17:31:32Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #139 from LolHens/master

Fixed Windows target</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/22387c698de580faaf9c8ffaa5da71aad5e3004a">22387c69</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-19T19:07:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refactor NGCommunicator and NGSession for proper socket closure if NGSession.exit() is called
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/da3212e3f74629e89b7d8bfbb02f58fadfb16a3d">da3212e3</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-20T00:20:34Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Move nail command context to NGCommunicator for encapsulation
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/604b49b69c48f782cefded77deb2828b68bc6a75">604b49b6</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-04-20T06:45:10Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #140 from sbalabanov/master

Refactor NGSession.exit procedure</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/49d4e84cbdd974bb10ac66a1c5ec9b078e4394d9">49d4e84c</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-15T18:41:07Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Graceful termination for client and server
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/0545595fdd1eb1475a22e666bebd9041852884d3">0545595f</a></strong>
<div>
<span>by Taras Tsugrii</span>
<i>at 2018-06-16T00:25:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #142 from sbalabanov/master

Graceful termination for client and server</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/23e3ded24e719e6eb85213791c1ad8bc4159d1db">23e3ded2</a></strong>
<div>
<span>by Taras Tsugrii</span>
<i>at 2018-06-20T01:32:46Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[Python] Fix Python 2 clients using unicode characters.

If server sends a unicode character to the client and client does not
have an IO encoding explicitly set to utf-8, client would crash trying
to convert utf-8 to ascii.

This change also avoid unnecessary decoding/encoding.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b0afef5f31bf0ab4e29856f2dee1c1142b1869b6">b0afef5f</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-20T01:37:07Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #143 from ttsugriy/python3

[Python] Fix Python 2 clients using unicode characters.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/59a97670df6521df5a8b3bf0fb0549d01e02b10c">59a97670</a></strong>
<div>
<span>by Taras Tsugrii</span>
<i>at 2018-06-20T21:27:34Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[Python] Reformat all python sources using black.

Make formatting consistent and deterministic using https://github.com/ambv/black
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c0a790be33d70e21856770adc2de2d7eead50c67">c0a790be</a></strong>
<div>
<span>by Taras Tsugrii</span>
<i>at 2018-06-20T21:57:06Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[Python3] Fix incorrect handling of bytes from server.

Server sends bytes to the client which should be converted to string
before printed to stdout/stderr. Before this change an attempt to encode
them was made instead of decode causing a crash.
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/46bf9ec78a966623aaa05b6de755905f6e93f31d">46bf9ec7</a></strong>
<div>
<span>by Philip Jameson</span>
<i>at 2018-06-20T22:29:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #144 from ttsugriy/python3

[Python] Reformat all python sources using black.</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/caff77685ad68d017585cf31a5f93af848b64f5c">caff7768</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-28T00:41:32Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add google-java-format
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7425d2d206b3f675b715f9763e74ca5d22f30389">7425d2d2</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-28T01:54:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Reformat java files with google-java-format
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6e25938fd6b6952be39479861e1827c19359bba1">6e25938f</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-28T02:53:04Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Change maven definitions to indicate code ownership by Facebook
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f65fadcfee22cc97c6908f4a8690b4f56a9e322f">f65fadcf</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-28T05:31:29Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Support running JUnit5 tests with maven
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/4010a0eca0f23f573c029688b8ad43754f5c41af">4010a0ec</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-28T06:21:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Reorganize Nailgun clients
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/329b687cc81dffb1c6cdf7028856784e8dfd4006">329b687c</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-06-28T06:35:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix NGServer.isAlive() and NGSessionPool.shutdown()
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/843f76c5d57aba2994c609de8593e88742c5d7de">843f76c5</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-06T18:23:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add google-code-format as a maven plugin
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6094921b824fcf5737c807fce793a2205c01a790">6094921b</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-17T21:21:11Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add NGServerTest
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6dc23c68a05a0fda5821bba097f30d33a8f713c5">6dc23c68</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-18T00:47:08Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">add NGSessionPoolTest and Mockito
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/87ecee77862537b7111c0b625e39825224bbfd1b">87ecee77</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-18T22:59:05Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">add NGSessionTest
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/fce3bae89cdf19f5f9ddba73cb9cc287b75144e9">fce3bae8</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-19T17:19:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">remove NGConstants.getVersion()
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/793ab5b338c567c83b7bc0a64c247465d1cfa739">793ab5b3</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-19T18:35:49Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix Nailgun version retrieval for tests
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/37de6f170b244f089e1ce7c5c8bf2dfa48b3a078">37de6f17</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-21T02:17:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refactor NGSession for better error processing
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/fb3435f308659cf682ec37f912dcb2976e0e1fc6">fb3435f3</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-22T02:03:14Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Reformat NGServer
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/fe97012488e25bcff3cff9da3dfacfafb499da09">fe970124</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-30T23:45:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Codestyle and formatting changes
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/80aa448d3526089cb0093c6b917d3b39f2ed5856">80aa448d</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-30T23:53:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Very important comment
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/3f5d5c29a1b86aeb12b2518809d0be16a21e0253">3f5d5c29</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-07-31T00:00:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Formatting changes to NGServer
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/7db884134fa98c0c565c0d4cd82b882de0f24f47">7db88413</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-03T19:25:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix listening socket termination on Linux
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/c2c7ae730b7689a870df7701b69606f17d478ad3">c2c7ae73</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-03T20:02:34Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Improve NGServer shutdown workflow

Summary:

Test Plan:

Reviewers:

Subscribers:

Tasks:

Tags:
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/f6229501ee3a6fea4c0ef41f3253263dfaaf2e16">f6229501</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-03T22:39:41Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Test for writes for NGCommunicator

Summary:

Test Plan:

Reviewers:

Subscribers:

Tasks:

Tags:
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/d331a525ee03c79bcaf2b00245e75583c4b04f07">d331a525</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-06T19:28:02Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Update JNA
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/75e53c2445c8aa0b713904ef250d6cd07c07ae28">75e53c24</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-06T19:36:12Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix maven warning in examples
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/477634cbc2ee3edf030846024c08f6cf554bc348">477634cb</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-06T20:00:04Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix Windows tests - not using system JNA
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/5a20f6b4a9b66eb10f79620e0325706e86b9370a">5a20f6b4</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-06T21:01:08Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix AppVeyor tests
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b5d78e1062b7cc5e785ae9e50dab2be97afdf532">b5d78e10</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-08-07T00:15:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #147 from sbalabanov/master

Reengineer Nailgun</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/275645564be745ec5c81a8c8529abb6a90cb74ac">27564556</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-10-08T22:49:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Nailgun 1.0.0
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/19e0d9ab4321730f0063efd7d742bd82ff9d8c1c">19e0d9ab</a></strong>
<div>
<span>by Taras Tsugrii</span>
<i>at 2018-10-13T05:37:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #151 from sbalabanov/master

Nailgun 1.0.0</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/319c1a7ed6ec4f557468fe4df404d8e716845a70">319c1a7e</a></strong>
<div>
<span>by Sergey Balabanov</span>
<i>at 2018-10-17T02:45:07Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make project dully compatible to FB opensource standards
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/dfa8827e153352dde04e97ed1005563f068a4475">dfa8827e</a></strong>
<div>
<span>by Taras Tsugrii</span>
<i>at 2018-10-17T02:59:43Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge pull request #152 from sbalabanov/master

Make project fully compatible to FB opensource standards</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b7b37a1d60d7795d04a48a645245bec1ae7f7959">b7b37a1d</a></strong>
<div>
<span>by Hideki Yamane</span>
<i>at 2018-10-19T22:57:02Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Merge tag 'nailgun-all-1.0.0' into debian/sid
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/9cacc0585f03d3bcd8bf7edd1ba062a9b6c86519">9cacc058</a></strong>
<div>
<span>by Hideki Yamane</span>
<i>at 2018-10-19T23:03:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">refresh patches
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/b22f8ddc7a7503738535c090eb2fedc90bf4a782">b22f8ddc</a></strong>
<div>
<span>by Hideki Yamane</span>
<i>at 2018-10-19T23:04:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add debian/gbp.conf
</pre>
</li>
<li>
<strong><a href="https://salsa.debian.org/java-team/nailgun/commit/6c74a17ff88683b22af461d6bf3d3b202c6615d6">6c74a17f</a></strong>
<div>
<span>by Hideki Yamane</span>
<i>at 2018-10-19T23:14:02Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add Build-Depends: libfmt-maven-plugin-java
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#a5cc2925ca8258af241be7e5b0381edf30266302">
.gitignore
</a>
</li>
<li class="file-stats">
<a href="#dea01dd89a3b602828e630677fde5d77c06441c8">
.travis.yml
</a>
</li>
<li class="file-stats">
<a href="#0834ae016f8fea5cff771880c0be1d55299732ff">
<span class="new-file">
+
CODE_OF_CONDUCT.md
</span>
</a>
</li>
<li class="file-stats">
<a href="#3f454a98e586d1aa0d322e19afd5e67e08f2d3c8">
<span class="new-file">
+
CONTRIBUTING.md
</span>
</a>
</li>
<li class="file-stats">
<a href="#79b82ce9b64a924266619555502f890dd80c83b9">
LICENSE.txt
</a>
</li>
<li class="file-stats">
<a href="#836efb6e25a091dcb4ff8e1dbb2f0be6a5cbf14c">
Makefile
</a>
</li>
<li class="file-stats">
<a href="#8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d">
README.md
</a>
</li>
<li class="file-stats">
<a href="#43b9d80d1f50472e56afb94a061257af5b53182b">
appveyor.yml
</a>
</li>
<li class="file-stats">
<a href="#9c96da0e9f91d7d8937b69b524702c106258f0d1">
debian/changelog
</a>
</li>
<li class="file-stats">
<a href="#58ef006ab62b83b4bec5d81fe5b32c3b4c2d1cc2">
debian/control
</a>
</li>
<li class="file-stats">
<a href="#67df3adc98b97f87d2c73e4a05f22a987c3a5a7b">
<span class="new-file">
+
debian/gbp.conf
</span>
</a>
</li>
<li class="file-stats">
<a href="#0c60a1270f33e7be979cc11940f5286899526aaf">
debian/patches/disable_install_target.patch
</a>
</li>
<li class="file-stats">
<a href="#ac4e8aae9eb7e696f4c17933c8104938ead7e7ae">
debian/patches/name_define_as_ng-nailgun_ng.c.patch
</a>
</li>
<li class="file-stats">
<a href="#62be39184918dd2f21bb421295a4b2d059f010d7">
nailgun-client/ng.c

nailgun-client/c/ng.c
</a>
</li>
<li class="file-stats">
<a href="#38eb7fdc1bd5dc1c159987a22f2ec1a274730f0b">
pynailgun/__init__.py

nailgun-client/py/__init__.py
</a>
</li>
<li class="file-stats">
<a href="#59459f0edfb8a0397399c630dacf47a88bb12bb2">
pynailgun/ng.py

nailgun-client/py/ng.py
</a>
</li>
<li class="file-stats">
<a href="#ffe34573f31af05e50fe94881a8f55b97b8d94b4">
pynailgun/test_ng.py

nailgun-client/py/test_ng.py
</a>
</li>
<li class="file-stats">
<a href="#dfeb444c9a11f62a0837c0e7f2ef7a602db74066">
nailgun-examples/pom.xml
</a>
</li>
<li class="file-stats">
<a href="#02f82e5225811beea7ef482383de10c034530c5f">
nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/DumpAll.java

nailgun-examples/src/main/java/com/facebook/nailgun/examples/DumpAll.java
</a>
</li>
<li class="file-stats">
<a href="#bbb812622afc7f6c93fa4d2a6df0d832bc976e80">
nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Echo.java

nailgun-examples/src/main/java/com/facebook/nailgun/examples/Echo.java
</a>
</li>
<li class="file-stats">
<a href="#4680d6c6725b3c2c1239062d20723b148233e2f0">
<span class="new-file">
+
nailgun-examples/src/main/java/com/facebook/nailgun/examples/Exit.java
</span>
</a>
</li>
<li class="file-stats">
<a href="#1adfcf974a49610d337dafaba52c9a44cc3b202c">
<span class="new-file">
+
nailgun-examples/src/main/java/com/facebook/nailgun/examples/Hash.java
</span>
</a>
</li>
<li class="file-stats">
<a href="#a8dc4dee822b426fd695afa69356f0c0561804c2">
<span class="new-file">
+
nailgun-examples/src/main/java/com/facebook/nailgun/examples/Heartbeat.java
</span>
</a>
</li>
<li class="file-stats">
<a href="#eb015c25ea2f24dfa4ff352c05b590ccee171151">
nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/HelloWorld.java

nailgun-examples/src/main/java/com/facebook/nailgun/examples/HelloWorld.java
</a>
</li>
<li class="file-stats">
<a href="#8a43de039893cd9aba12594f490cbe7a110029e5">
nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Prompt.java

nailgun-examples/src/main/java/com/facebook/nailgun/examples/Prompt.java
</a>
</li>
<li class="file-stats">
<a href="#543142361e987d50735aa572521ac6d225087b11">
<span class="new-file">
+
nailgun-examples/src/main/java/com/facebook/nailgun/examples/Stack.java
</span>
</a>
</li>
<li class="file-stats">
<a href="#0d9e1d340d58f49e250808ea26c15a65aafb7659">
<span class="new-file">
+
nailgun-examples/src/main/java/com/facebook/nailgun/examples/ThreadTest.java
</span>
</a>
</li>
<li class="file-stats">
<a href="#934f99c04b4204ebb72410ba2c055aa2f9cf866c">
<span class="deleted-file">

nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Exit.java
</span>
</a>
</li>
<li class="file-stats">
<a href="#33b76bf00733bb4f0d970fd8a59d6197db532b31">
<span class="deleted-file">

nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Hash.java
</span>
</a>
</li>
<li class="file-stats">
<a href="#12adfd5103dc03832d70c78bc2fc609e696e4c20">
<span class="deleted-file">

nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Heartbeat.java
</span>
</a>
</li>
</ul>
<h5>The diff was not included because it is too large.</h5>

</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #777;">

<br>
<a href="https://salsa.debian.org/java-team/nailgun/compare/e83326975d1b2de03f53cdddb9f7fee0790a673c...6c74a17ff88683b22af461d6bf3d3b202c6615d6">View it on GitLab</a>.
<br>
You're receiving this email because of your account on salsa.debian.org.
If you'd like to receive fewer emails, you can
adjust your notification settings.

</p>
</div>
</body>
</html>