[Git][java-team/nailgun][debian/sid] 213 commits: Initial commit

Hideki Yamane gitlab at salsa.debian.org
Sat Oct 20 00:48:51 BST 2018


Hideki Yamane pushed to branch debian/sid at Debian Java Maintainers / nailgun


Commits:
4c7db88f by martylamb at 2012-11-23T21:28:43Z
Initial commit

- - - - -
cc895982 by Marty Lamb at 2012-11-23T21:43:18Z
update README, making sure I have git set up properly...

- - - - -
e575cfe2 by Marty Lamb at 2012-11-25T19:09:49Z
mavenized

- - - - -
250578ff by Marty Lamb at 2012-11-25T19:11:13Z
mavenized

- - - - -
615ccdcb by Marty Lamb at 2012-11-25T19:14:01Z
[maven-release-plugin] prepare release v0.9.1

- - - - -
db6eb149 by Marty Lamb at 2012-11-25T19:14:10Z
[maven-release-plugin] prepare for next development iteration

- - - - -
5f0d73d1 by Marty Lamb at 2012-11-25T23:28:24Z
updating poms for publication to maven central

- - - - -
a21c9208 by Marty Lamb at 2012-11-25T23:34:20Z
updating poms for publication to maven central

- - - - -
66b468cc by Marty Lamb at 2012-11-30T02:02:34Z
Comment out gpg stuff for now.  Need to set up artifact signing properly for maven central repo

- - - - -
005fcb49 by Marty Lamb at 2012-12-03T00:38:21Z
setup artifact signing properly(?) for release to maven central

- - - - -
085ecdcd by Marty Lamb at 2012-12-03T00:44:45Z
[maven-release-plugin] prepare release nailgun-all-0.9.1

- - - - -
66388448 by Marty Lamb at 2012-12-03T00:48:08Z
fix git url in developerconnection

- - - - -
3767ecdd by Marty Lamb at 2012-12-03T00:49:48Z
fix git url in developerconnection

- - - - -
8957dd2d by Marty Lamb at 2012-12-03T01:00:34Z
reverse effects of failed mvn release:prepare to try again

- - - - -
cd3ff159 by Marty Lamb at 2012-12-03T01:01:12Z
[maven-release-plugin] prepare release nailgun-all-0.9.1

- - - - -
71c65df5 by Marty Lamb at 2012-12-03T01:01:20Z
[maven-release-plugin] prepare for next development iteration

- - - - -
a0d96d12 by Víctor M. Valenzuela at 2012-12-30T22:29:06Z
add ng binary to .gitignore
- - - - -
db3e6f35 by vemv at 2012-12-30T23:10:50Z
prevent NailStats consumers from reading stale values

- - - - -
00ca24ec by martylamb at 2012-12-31T16:35:01Z
Merge pull request #3 from vemv/patch-1

add ng binary to .gitignore
- - - - -
e48c47a6 by martylamb at 2012-12-31T16:35:28Z
Merge pull request #4 from vemv/master

prevent NailStats consumers from reading stale values
- - - - -
a296ba08 by vemv at 2013-03-17T00:34:52Z
Exclude ng executable from version control.

- - - - -
6227faf4 by vemv at 2013-03-17T01:38:54Z
Allow providing non-static main methods. Not known to work yet.

- - - - -
6e0d1ed7 by vemv at 2013-03-22T23:56:42Z
Allow the clients to set the ClassLoader, so as to load dynamically generated classes.

- - - - -
a7b6a367 by martylamb at 2013-03-25T17:43:16Z
Merge pull request #7 from vemv/master

Facilitate the use of Nailgun to other JVM languages
- - - - -
673d0c1e by Jim Purbrick at 2013-07-16T09:08:29Z
Avoid constructing a FilePermission object in checkRead if base manager is null.

- - - - -
88dd92f6 by martylamb at 2013-07-23T12:04:50Z
Merge pull request #11 from jimpurbrick/master

Avoid constructing a FilePermission object in checkRead if base manager ...
- - - - -
9c3885aa by Jim Purbrick at 2013-09-26T02:50:41Z
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.

- - - - -
05c9eaf3 by Jim Purbrick at 2013-10-18T14:45:15Z
Add support for NGClientListeners and win32 support.

- - - - -
745b9cce by Jim Purbrick at 2013-10-25T15:32:00Z
Fix partial reading of chunk payloads and serialization of sent chunks in win32

- - - - -
e4079f64 by martylamb at 2013-10-28T15:59:11Z
Merge pull request #15 from jimpurbrick/master

Add support for NGClientListeners and win32 support.
- - - - -
2cb49d6a by Jim Purbrick at 2013-10-29T09:18:13Z
Block main on chunk read rather than looping reading from client stream. Simplify synchronization. Add JavaDocs.

- - - - -
65ec5259 by Jim Purbrick at 2013-10-29T09:23:09Z
print message to server log on client disconnection

- - - - -
d6167fb7 by Jim Purbrick at 2013-10-29T21:31:46Z
Use FixedThreadPool instead of CachedThreadPool for NGStream reader threads, name threads and notify threads blocked in waitForChunk on disconnection.

- - - - -
fcc24ecd by Jim Purbrick at 2013-10-29T21:37:18Z
Merge pull request #16 from jimpurbrick/master

Use fixed size thread pool in NGInputStream, fix race condition and simplify synchronization.
- - - - -
8c3f26b6 by Jim Purbrick at 2013-11-19T14:19:15Z
Add support for NGHeartbeatListeners and configurable heartbeat timeout

- - - - -
5915c1f8 by Jim Purbrick at 2013-11-19T14:23:33Z
Merge pull request #18 from jimpurbrick/master

Add support for NGHeartbeatListeners and configurable heartbeat timeout
- - - - -
2453a76e by Jim Purbrick at 2013-11-22T14:11:55Z
Test send interval after every select call, rather than relying on timeouts, so that reads don't surppess heartbeats.

- - - - -
9cf2720e by Jim Purbrick at 2013-11-22T15:10:59Z
Merge pull request #19 from jimpurbrick/master

Test send interval after every select call, rather than relying on timeo...
- - - - -
6f66e4a3 by DrSlump at 2013-11-23T13:36:50Z
Forward isatty on *nix as part of the environment

- - - - -
473b77cd by Jim Purbrick at 2013-12-11T09:48:22Z
Increase visibility of NGContext methods to allow integration testing.

- - - - -
6a0226ef by Jim Purbrick at 2013-12-11T12:48:59Z
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.

- - - - -
4cac9ae1 by Jim Purbrick at 2013-12-11T12:51:57Z
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.
- - - - -
36733dd0 by Vladislav Hristov at 2014-02-10T22:52:31Z
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.

- - - - -
445f046e by Jim Purbrick at 2014-02-13T20:30:35Z
Merge pull request #25 from vhristov/for-issue23

Allow java classes to close stdout/stderr
- - - - -
144f7f7d by Jim Purbrick at 2014-03-21T09:51:40Z
Reduce thread synchronization overhead.

- - - - -
6b2dc37d by Jim Purbrick at 2014-03-21T10:42:03Z
Merge pull request #26 from jimpurbrick/master

Reduce thread synchronization overhead.
- - - - -
5b2b1d85 by Ben Armstrong at 2014-04-03T16:09:31Z
VMS aliases should be defined as foreign commands
- - - - -
ce4e6f02 by martylamb at 2014-04-05T13:36:35Z
Merge pull request #20 from drslump/forward-isatty

Forward isatty on *nix as part of the environment
- - - - -
65bd753b by Marty Lamb at 2014-04-05T13:42:16Z
fix NPE when nailgun classes are in the boot classpath.  Weird case hit by a JRuby user.

- - - - -
035db6eb by Marty Lamb at 2014-04-05T13:53:11Z
minor refactor to satisfy pedantic compile and clarify variable name

- - - - -
a789fa3f by Marty Lamb at 2014-04-05T13:54:13Z
Fix #24; suspect /usr/local/bin directory did not previously exist for user.  This should work whether it exists or not.

- - - - -
286eaf35 by martylamb at 2014-04-07T20:40:42Z
Merge pull request #29 from bg/master

VMS aliases should be defined as foreign commands
- - - - -
b512ff37 by Paolo G. Giarrusso at 2014-05-10T11:33:36Z
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.
- - - - -
6c2008bf by martylamb at 2014-05-29T17:39:16Z
Merge pull request #31 from Blaisorblade/patch-2

Add Apache 2 license file - fix #14
- - - - -
8a2425ef by Jim Purbrick at 2014-06-12T13:34:46Z
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.

- - - - -
df35649c by Jim Purbrick at 2014-06-12T13:38:04Z
Merge pull request #33 from jimpurbrick/master

Always call clientDisconnected to avoid race.
- - - - -
0a364b11 by Thomas Peiselt at 2014-08-21T07:18:13Z
prevent invalid java doc from failing the build in java 8.

- - - - -
ac8a4d74 by Seth Pellegrino at 2014-10-09T23:47:44Z
Add prefix to makefile

Homebrew has requested the ability to specify an install prefix.

- - - - -
e20aaa36 by lauri-elevant at 2014-11-15T21:01:26Z
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..
- - - - -
a3437007 by Ben Gertzfield at 2014-11-24T19:20:23Z
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

- - - - -
9e775755 by Jim Purbrick at 2014-11-24T20:38:40Z
Merge pull request #52 from bgertzfield/flush-print-streams

Explicitly close PrintStreams so they flush to the client socket
- - - - -
6f39efa9 by martylamb at 2015-04-10T21:27:25Z
Merge pull request #42 from dispanser/master

prevent invalid java doc from failing the build in java 8.
- - - - -
7f1e1bc7 by martylamb at 2015-04-10T21:29:07Z
Merge pull request #51 from lauri-elevant/patch-2

Parse UTF-8 arguments
- - - - -
7e561e80 by martylamb at 2015-04-10T21:29:58Z
Merge pull request #45 from sethp-jive/homebrew-prefix

Add prefix to makefile
- - - - -
ae328fd6 by Gahl Saraf at 2015-04-29T14:37:53Z
Remove second definition of buf

- - - - -
aeb1712f by Jim Purbrick at 2015-04-30T16:31:05Z
Merge pull request #54 from gsaraf/fix_compile_error

Remove second definition of buf
- - - - -
95b668e1 by Natthu Bharambe at 2015-05-19T15:26:04Z
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.

- - - - -
7f8efc6b by Jim Purbrick at 2015-05-19T17:22:58Z
Merge pull request #56 from sdwilsh/master

Handle system call errors in nailgun client
- - - - -
879cfb13 by Ben Hyland at 2015-05-20T10:25:54Z
don't generate errors when heartbeating on a socket already closed by the server

- - - - -
dc7e6c96 by martylamb at 2015-05-21T15:01:25Z
Merge pull request #57 from benhyland/master

handle errors on heartbeat when the server closed the socket already
- - - - -
9138a3ef by Ben Hyland at 2015-05-22T11:34:01Z
OSX doesn't seem to have MSG_NOSIGNAL

- - - - -
7e663088 by Jim Purbrick at 2015-06-15T15:02:09Z
Merge pull request #58 from benhyland/master

OSX doesn't seem to have MSG_NOSIGNAL
- - - - -
e1af5bfe by Ben Hyland at 2015-08-12T11:19:27Z
ignore ECONNRESET as well as EPIPE when sending hearbeats

- - - - -
67455d9a by Jim Purbrick at 2015-08-12T15:42:24Z
Merge pull request #69 from benhyland/master

ignore ECONNRESET as well as EPIPE when sending heartbeats
- - - - -
c5ca972b by Ben Hamilton at 2015-08-31T17:34:12Z
Add support for Unix domain sockets using JNA

- - - - -
3e54c5f1 by Jim Purbrick at 2015-09-01T13:57:45Z
Merge pull request #71 from bhamiltoncx/unix-domain-socket

Add support for local (Unix domain) sockets using JNA
- - - - -
718c2532 by Ben Hamilton at 2015-09-01T19:41:52Z
Fix deadlock in NGUnixDomainServerSocket if a thread called close() while another was blocked in accept()

- - - - -
df39545f by Ben Hamilton at 2015-09-01T20:04:25Z
Fix possible race condition

- - - - -
040f35ec by Ben Hamilton at 2015-09-01T20:14:52Z
Better use of atomic get-and-set.

- - - - -
28643d53 by Jim Purbrick at 2015-09-01T20:23:14Z
Merge pull request #73 from bhamiltoncx/fix-close-deadlock

Fix close deadlock
- - - - -
283c792b by Ben Hamilton at 2015-09-25T19:14:48Z
Reference counted operations for connected sockets to prevent races

- - - - -
7adb931c by Jim Purbrick at 2015-09-28T12:53:41Z
Merge pull request #76 from bhamiltoncx/fix-fd-reuse-race

Fix nasty FD re-use race condition in NGUnixDomainSocket
- - - - -
0fd2dd48 by Ben Hamilton at 2015-11-12T07:27:28Z
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.

- - - - -
1ad9ad9d by Jim Purbrick at 2015-11-12T10:09:05Z
Merge pull request #80 from bhamiltoncx/nailgun-client-py

Python port of Nailgun client
- - - - -
7ee9c9e4 by Ben Hamilton at 2017-07-17T14:10:18Z
Add debug logging

- - - - -
b2760d98 by Ilya Klyuchnikov at 2017-07-17T14:11:06Z
support for windows named pipes

- - - - -
f272f0d8 by Sergey Tyurin at 2017-07-17T14:11:15Z
Use Java 1.8 in nailgun-server

- - - - -
e448362c by Sergey Tyurin at 2017-07-17T14:11:25Z
Make instanceCounter thread safe

- - - - -
9b9b73ab by Sergey Tyurin at 2017-07-17T14:11:33Z
Make NGSession variables final

- - - - -
12a79d19 by Sergey Tyurin at 2017-07-17T14:11:40Z
NGServer - make variables final and fix sync issue with allNailStats

- - - - -
7aeaf4d6 by Sergey Tyurin at 2017-07-17T14:11:54Z
NGServer - use AtomicBoolean for shutdown

- - - - -
6132afee by Sergey Tyurin at 2017-07-17T14:12:09Z
NGServer - use AtomicBoolean for running

- - - - -
94af899b by Sergey Tyurin at 2017-07-17T14:12:16Z
Fixing thread safety in NGSessionPool

- - - - -
97c4446a by Sergey Tyurin at 2017-07-17T14:12:23Z
Fix thread safety in NailStats

- - - - -
91112be7 by Jim Purbrick at 2017-07-17T18:34:52Z
Merge pull request #91 from ilya-klyuchnikov/sync-fb-01

Add debug logging
- - - - -
e261c2cc by Jim Purbrick at 2017-07-17T18:54:15Z
Merge pull request #92 from ilya-klyuchnikov/sync-fb-02

support for windows named pipes
- - - - -
5e33f2d1 by Jim Purbrick at 2017-07-17T18:57:28Z
Merge pull request #93 from ilya-klyuchnikov/sync-fb-03

Use Java 1.8 in nailgun-server
- - - - -
ed089b26 by Jim Purbrick at 2017-07-17T18:59:39Z
Merge pull request #94 from ilya-klyuchnikov/sync-fb-04

Make instanceCounter thread safe
- - - - -
ff0ba9e0 by Jim Purbrick at 2017-07-17T19:01:24Z
Merge pull request #95 from ilya-klyuchnikov/sync-fb-05

Make NGSession variables final
- - - - -
2a673b07 by Jim Purbrick at 2017-07-17T19:02:35Z
Merge pull request #96 from ilya-klyuchnikov/sync-fb-06

NGServer - make variables final and fix sync issue with allNailStats
- - - - -
94d1237e by Jim Purbrick at 2017-07-17T19:03:43Z
Merge pull request #97 from ilya-klyuchnikov/sync-fb-07

NGServer - use AtomicBoolean for shutdown
- - - - -
4f89636f by Jim Purbrick at 2017-07-17T19:04:37Z
Merge pull request #98 from ilya-klyuchnikov/sync-fb-08

NGServer - use AtomicBoolean for running
- - - - -
917ffa42 by Jim Purbrick at 2017-07-17T19:05:39Z
Merge pull request #99 from ilya-klyuchnikov/sync-fb-09

Fixing thread safety in NGSessionPool
- - - - -
e7fa6c7e by Jim Purbrick at 2017-07-17T19:07:14Z
Merge pull request #100 from ilya-klyuchnikov/sync-fb-10

Fix thread safety in NailStats
- - - - -
2e0644f8 by Ilya Klyuchnikov at 2017-07-31T10:21:06Z
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

- - - - -
31bcaaff by Ilya Klyuchnikov at 2017-07-31T10:24:19Z
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

- - - - -
05facb9e by Ilya Klyuchnikov at 2017-07-31T10:34:13Z
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

- - - - -
550b75b2 by Ilya Klyuchnikov at 2017-07-31T10:35:44Z
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

- - - - -
17e8ecae by Ilya Klyuchnikov at 2017-07-31T10:36:38Z
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

- - - - -
b053d60d by Ilya Klyuchnikov at 2017-07-31T10:37:59Z
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

- - - - -
b1d058f5 by Ilya Klyuchnikov at 2017-07-31T10:39:08Z
ng.py fix

Imported from https://github.com/facebook/buck/commit/c0c9f980e9b2371761cc401ef2d9a429ac8c3f9f

- - - - -
d96e21a5 by Ilya Klyuchnikov at 2017-07-31T10:39:58Z
ng.py: abstracting nailgun transport
Summary: Preparing for implementation of windows named pipes

Imported from https://github.com/facebook/buck/commit/fc4ee54d69113909b53cb481653229b43731e012

- - - - -
d1ea2e4d by Ilya Klyuchnikov at 2017-07-31T10:41:04Z
restoring ng.py to work with python2.6

Importing from https://github.com/facebook/buck/commit/badea1926e28e77836223fa2524f96b5b1adfec2

- - - - -
213c7ebc by Ilya Klyuchnikov at 2017-07-31T10:41:48Z
ng.py: windows pipes

Imported from https://github.com/facebook/buck/commit/8ab4505c44883d019907ab02e73583ac2a24d7f8

- - - - -
da68a507 by Jim Purbrick at 2017-07-31T11:05:35Z
Merge pull request #102 from ilya-klyuchnikov/fb-sync

ng.py: contributing back facebook changes
- - - - -
eb42b14b by Ilya Klyuchnikov at 2017-08-03T16:35:39Z
import from fb: test_ng.py

- - - - -
c0a45a3f by Ilya Klyuchnikov at 2017-08-03T16:58:31Z
shaded uber jar - for testing

- - - - -
05921e0e by Ilya Klyuchnikov at 2017-08-08T01:36:39Z
enabling test and running it with uber jar
test is run: `mvn package, python -m pynailgun.test_ng`

- - - - -
aec08fb1 by Ilya Klyuchnikov at 2017-08-08T01:36:39Z
running a set of tests in a row

- - - - -
b694d040 by Ilya Klyuchnikov at 2017-08-08T01:36:39Z
adding *.pyc to .gitignore

- - - - -
2788c711 by Ilya Klyuchnikov at 2017-08-08T01:36:39Z
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.

- - - - -
c7e8de03 by Ilya Klyuchnikov at 2017-08-08T01:36:39Z
test_ng.py: running 50 tests in a row

- - - - -
f6e18e6e by Ilya Klyuchnikov at 2017-08-08T01:36:39Z
CI for test_ng.py

- - - - -
a2d2b987 by Ilya Klyuchnikov at 2017-08-08T01:36:40Z
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

- - - - -
7ee04fc9 by Ilya Klyuchnikov at 2017-08-08T01:36:40Z
test fix

- - - - -
ab6fba00 by Ilya Klyuchnikov at 2017-08-09T19:10:43Z
comments

- - - - -
c42bb3f7 by mlamb at 2017-10-14T14:49:22Z
update README to reflect transfer to Facebook

- - - - -
3bfa27f2 by mlamb at 2017-10-14T20:06:59Z
updated README to preempt license concerns

- - - - -
f84402f8 by Andrew Gaul at 2017-10-25T04:09:05Z
Correct hyperlink

- - - - -
5b960682 by Sergey Tyurin at 2017-10-25T05:15:25Z
Merge pull request #106 from gaul/readme

Correct hyperlink
- - - - -
22a2798d by Sergey Tyurin at 2017-10-25T05:44:10Z
Nailgun is maintained by Buck team now

- - - - -
ed4d6684 by Sergey Tyurin at 2017-10-25T05:45:13Z
Make NGInputStream thread safe

- - - - -
05bf498d by Šmucr Jan at 2017-10-25T05:47:39Z
Fix an exception thrown if the user specifies (only) a port to bind to

- - - - -
c5eed04d by Kris Wilson at 2017-10-25T05:49:48Z
Clean up trailing whitespace in ng.c

- - - - -
b2c42be0 by Ilya Klyuchnikov at 2017-10-25T16:29:36Z
Merge pull request #103 from ilya-klyuchnikov/test-ng-fix

test-ng.py and fixes for reliable testing
- - - - -
af623fdd by Timur Alperovich at 2017-11-13T17:12:30Z
Add a pointer to a ruby client.

Adds a pointer to a ruby client implementation for nailgun.
- - - - -
7f2e15e7 by Eugene Yokota at 2017-11-28T03:13:33Z
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.

- - - - -
75e05483 by Eugene Yokota at 2017-12-01T19:18:55Z
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.

- - - - -
e3416a6c by Ilya Klyuchnikov at 2017-12-04T11:47:37Z
Merge pull request #109 from eed3si9n/wip/windows

Windows Named Pipes: Allow reading fewer bytes
- - - - -
05c9699b by Sergey Balabanov at 2018-01-11T02:50:36Z
Better thread control in NGInputStream + small perf enhancements

- - - - -
9acfd392 by Sergey Balabanov at 2018-01-11T16:06:15Z
Better thread control in NGInputStream + small perf enhancements (#113)


- - - - -
d29e2538 by Dwight Guth at 2018-01-16T22:36:36Z
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.

- - - - -
0007cabf by Sergey Balabanov at 2018-01-17T19:34:40Z
Merge pull request #114 from dwightguth/race

fix race between NGInputStream and NGOutputStream on the output socket
- - - - -
41cb59e8 by Sergey Balabanov at 2018-01-19T02:41:20Z
Merge remote-tracking branch 'upstream/master'

- - - - -
be57ec4c by Sergey Balabanov at 2018-01-22T23:39:32Z
Nailgun version 0.9.3

- - - - -
ee9fb68f by Sergey Balabanov at 2018-01-23T01:00:36Z
Merge pull request #117 from sbalabanov/nailgun.0.9.3_1

Nailgun.0.9.3
- - - - -
2e016d6f by Hideki Yamane at 2018-01-29T13:09:46Z
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

- - - - -
2b0ade9c by Sergey Balabanov at 2018-01-29T17:34:47Z
Merge pull request #118 from henrich/master

enable to use some hardening flags
- - - - -
b0c2f25b by Andrew Gaul at 2018-01-30T16:57:54Z
Close resource InputStream after use

- - - - -
505c6e64 by Sergey Balabanov at 2018-01-30T18:23:42Z
Merge pull request #121 from gaul/close-resources

Close resource InputStream after use
- - - - -
4331cbc4 by Ilya Klyuchnikov at 2018-02-05T20:38:37Z
using jna 4.4.0 (#124)


- - - - -
9d4ed7fd by Sergey Balabanov at 2018-02-06T07:44:08Z
Refactor input and output streams as thin wrappers

- - - - -
2a2c9719 by Sergey Balabanov at 2018-02-06T18:23:10Z
Merge pull request #122 from sbalabanov/inputstream

Refactor input and output streams as thin wrappers
- - - - -
f1951fe0 by Sergey Balabanov at 2018-02-09T20:16:00Z
Nailgun client to send heartbeats from a dedicated thread

- - - - -
c86919ef by Sergey Balabanov at 2018-02-09T22:31:23Z
Merge pull request #125 from sbalabanov/master

Nailgun client to send heartbeats from a dedicated thread
- - - - -
c34506ed by Sergey Balabanov at 2018-02-21T23:03:45Z
Better client disconnect reason

- - - - -
7bd809f6 by Sergey Balabanov at 2018-02-23T17:59:22Z
Merge pull request #126 from sbalabanov/master

Better client disconnect reason
- - - - -
aa4efa0d by Andrew Valencik at 2018-03-04T21:10:06Z
Initial work on python 3 compatibility

Fixes bytes handling

- - - - -
5ead3c84 by Andrew Valencik at 2018-03-04T21:10:06Z
Add multiple Python versions to TravisCI

To easily support multiple python versions in TravisCI the core build
type has changed from `java` to `python`.

- - - - -
219571fe by Taras Tsugrii at 2018-03-04T21:15:16Z
Merge pull request #128 from valencik/python3

Add Python3 support
- - - - -
3f84f918 by Sergey Balabanov at 2018-03-31T00:37:01Z
Remove class reference from nailgun stats

- - - - -
f9c1d5a4 by Sergey Balabanov at 2018-03-31T00:56:29Z
Merge pull request #131 from sbalabanov/master

Remove class reference from nailgun stats
- - - - -
85277396 by Sergey Balabanov at 2018-04-05T06:39:37Z
Proper handle SocketException on nail termination

- - - - -
5ac5c596 by Sergey Balabanov at 2018-04-06T18:19:13Z
Merge pull request #132 from sbalabanov/master

Proper handle SocketException on nail termination
- - - - -
bdf8fa18 by LolHens at 2018-04-18T11:27:11Z
fixed windows build

- - - - -
b9f24f0c by Sergey Balabanov at 2018-04-18T22:01:49Z
Merge pull request #135 from LolHens/master

Fixed Windows target
- - - - -
f64789b4 by Sergey Balabanov at 2018-04-18T22:08:27Z
Revert "Fixed Windows target"

- - - - -
8e82b960 by Sergey Balabanov at 2018-04-18T22:09:07Z
Merge pull request #137 from facebook/revert-135-master

Revert "Fixed Windows target"
- - - - -
ceb292ed by LolHens at 2018-04-19T07:19:37Z
fixed windows target

- - - - -
1c9822cb by Sergey Balabanov at 2018-04-19T17:31:32Z
Merge pull request #139 from LolHens/master

Fixed Windows target
- - - - -
22387c69 by Sergey Balabanov at 2018-04-19T19:07:24Z
Refactor NGCommunicator and NGSession for proper socket closure if NGSession.exit() is called

- - - - -
da3212e3 by Sergey Balabanov at 2018-04-20T00:20:34Z
Move nail command context to NGCommunicator for encapsulation

- - - - -
604b49b6 by Sergey Balabanov at 2018-04-20T06:45:10Z
Merge pull request #140 from sbalabanov/master

Refactor NGSession.exit procedure
- - - - -
49d4e84c by Sergey Balabanov at 2018-06-15T18:41:07Z
Graceful termination for client and server

- - - - -
0545595f by Taras Tsugrii at 2018-06-16T00:25:59Z
Merge pull request #142 from sbalabanov/master

Graceful termination for client and server
- - - - -
23e3ded2 by Taras Tsugrii at 2018-06-20T01:32:46Z
[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.

- - - - -
b0afef5f by Sergey Balabanov at 2018-06-20T01:37:07Z
Merge pull request #143 from ttsugriy/python3

[Python] Fix Python 2 clients using unicode characters.
- - - - -
59a97670 by Taras Tsugrii at 2018-06-20T21:27:34Z
[Python] Reformat all python sources using black.

Make formatting consistent and deterministic using https://github.com/ambv/black

- - - - -
c0a790be by Taras Tsugrii at 2018-06-20T21:57:06Z
[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.

- - - - -
46bf9ec7 by Philip Jameson at 2018-06-20T22:29:18Z
Merge pull request #144 from ttsugriy/python3

[Python] Reformat all python sources using black.
- - - - -
caff7768 by Sergey Balabanov at 2018-06-28T00:41:32Z
Add google-java-format

- - - - -
7425d2d2 by Sergey Balabanov at 2018-06-28T01:54:45Z
Reformat java files with google-java-format

- - - - -
6e25938f by Sergey Balabanov at 2018-06-28T02:53:04Z
Change maven definitions to indicate code ownership by Facebook

- - - - -
f65fadcf by Sergey Balabanov at 2018-06-28T05:31:29Z
Support running JUnit5 tests with maven

- - - - -
4010a0ec by Sergey Balabanov at 2018-06-28T06:21:19Z
Reorganize Nailgun clients

- - - - -
329b687c by Sergey Balabanov at 2018-06-28T06:35:16Z
Fix NGServer.isAlive() and NGSessionPool.shutdown()

- - - - -
843f76c5 by Sergey Balabanov at 2018-07-06T18:23:24Z
Add google-code-format as a maven plugin

- - - - -
6094921b by Sergey Balabanov at 2018-07-17T21:21:11Z
Add NGServerTest

- - - - -
6dc23c68 by Sergey Balabanov at 2018-07-18T00:47:08Z
add NGSessionPoolTest and Mockito

- - - - -
87ecee77 by Sergey Balabanov at 2018-07-18T22:59:05Z
add NGSessionTest

- - - - -
fce3bae8 by Sergey Balabanov at 2018-07-19T17:19:37Z
remove NGConstants.getVersion()

- - - - -
793ab5b3 by Sergey Balabanov at 2018-07-19T18:35:49Z
Fix Nailgun version retrieval for tests

- - - - -
37de6f17 by Sergey Balabanov at 2018-07-21T02:17:22Z
Refactor NGSession for better error processing

- - - - -
fb3435f3 by Sergey Balabanov at 2018-07-22T02:03:14Z
Reformat NGServer

- - - - -
fe970124 by Sergey Balabanov at 2018-07-30T23:45:54Z
Codestyle and formatting changes

- - - - -
80aa448d by Sergey Balabanov at 2018-07-30T23:53:31Z
Very important comment

- - - - -
3f5d5c29 by Sergey Balabanov at 2018-07-31T00:00:35Z
Formatting changes to NGServer

- - - - -
7db88413 by Sergey Balabanov at 2018-08-03T19:25:18Z
Fix listening socket termination on Linux

- - - - -
c2c7ae73 by Sergey Balabanov at 2018-08-03T20:02:34Z
Improve NGServer shutdown workflow

Summary:

Test Plan:

Reviewers:

Subscribers:

Tasks:

Tags:

- - - - -
f6229501 by Sergey Balabanov at 2018-08-03T22:39:41Z
Test for writes for NGCommunicator

Summary:

Test Plan:

Reviewers:

Subscribers:

Tasks:

Tags:

- - - - -
d331a525 by Sergey Balabanov at 2018-08-06T19:28:02Z
Update JNA

- - - - -
75e53c24 by Sergey Balabanov at 2018-08-06T19:36:12Z
Fix maven warning in examples

- - - - -
477634cb by Sergey Balabanov at 2018-08-06T20:00:04Z
Fix Windows tests - not using system JNA

- - - - -
5a20f6b4 by Sergey Balabanov at 2018-08-06T21:01:08Z
Fix AppVeyor tests

- - - - -
b5d78e10 by Sergey Balabanov at 2018-08-07T00:15:37Z
Merge pull request #147 from sbalabanov/master

Reengineer Nailgun
- - - - -
27564556 by Sergey Balabanov at 2018-10-08T22:49:40Z
Nailgun 1.0.0

- - - - -
19e0d9ab by Taras Tsugrii at 2018-10-13T05:37:18Z
Merge pull request #151 from sbalabanov/master

Nailgun 1.0.0
- - - - -
319c1a7e by Sergey Balabanov at 2018-10-17T02:45:07Z
Make project dully compatible to FB opensource standards

- - - - -
dfa8827e by Taras Tsugrii at 2018-10-17T02:59:43Z
Merge pull request #152 from sbalabanov/master

Make project fully compatible to FB opensource standards
- - - - -
b7b37a1d by Hideki Yamane at 2018-10-19T22:57:02Z
Merge tag 'nailgun-all-1.0.0' into debian/sid

- - - - -
9cacc058 by Hideki Yamane at 2018-10-19T23:03:24Z
refresh patches

- - - - -
b22f8ddc by Hideki Yamane at 2018-10-19T23:04:38Z
Add debian/gbp.conf

- - - - -
6c74a17f by Hideki Yamane at 2018-10-19T23:14:02Z
Add Build-Depends: libfmt-maven-plugin-java

- - - - -


30 changed files:

- .gitignore
- .travis.yml
- + CODE_OF_CONDUCT.md
- + CONTRIBUTING.md
- LICENSE.txt
- Makefile
- README.md
- appveyor.yml
- debian/changelog
- debian/control
- + debian/gbp.conf
- debian/patches/disable_install_target.patch
- debian/patches/name_define_as_ng-nailgun_ng.c.patch
- nailgun-client/ng.c → nailgun-client/c/ng.c
- pynailgun/__init__.py → nailgun-client/py/__init__.py
- pynailgun/ng.py → nailgun-client/py/ng.py
- pynailgun/test_ng.py → nailgun-client/py/test_ng.py
- nailgun-examples/pom.xml
- nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/DumpAll.java → nailgun-examples/src/main/java/com/facebook/nailgun/examples/DumpAll.java
- nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Echo.java → nailgun-examples/src/main/java/com/facebook/nailgun/examples/Echo.java
- + nailgun-examples/src/main/java/com/facebook/nailgun/examples/Exit.java
- + nailgun-examples/src/main/java/com/facebook/nailgun/examples/Hash.java
- + nailgun-examples/src/main/java/com/facebook/nailgun/examples/Heartbeat.java
- nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/HelloWorld.java → nailgun-examples/src/main/java/com/facebook/nailgun/examples/HelloWorld.java
- nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Prompt.java → nailgun-examples/src/main/java/com/facebook/nailgun/examples/Prompt.java
- + nailgun-examples/src/main/java/com/facebook/nailgun/examples/Stack.java
- + nailgun-examples/src/main/java/com/facebook/nailgun/examples/ThreadTest.java
- − nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Exit.java
- − nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Hash.java
- − nailgun-examples/src/main/java/com/martiansoftware/nailgun/examples/Heartbeat.java


The diff was not included because it is too large.


View it on GitLab: https://salsa.debian.org/java-team/nailgun/compare/e83326975d1b2de03f53cdddb9f7fee0790a673c...6c74a17ff88683b22af461d6bf3d3b202c6615d6

-- 
View it on GitLab: https://salsa.debian.org/java-team/nailgun/compare/e83326975d1b2de03f53cdddb9f7fee0790a673c...6c74a17ff88683b22af461d6bf3d3b202c6615d6
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-java-commits/attachments/20181019/0eda273b/attachment.html>


More information about the pkg-java-commits mailing list