internal

Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Renamed src/main/groovy to src/main/java in core

    • -153
    • +0
    ./AbstractExecHandleBuilder.java
  1. … 2531 more files in changeset.
Replace usage of `String#format` with good old string concatenation

The rationale behind this change is that while `String#format` is usually admitted as good for readability (this is arguable),

in practice it is very bad for performance. Since Java 6, the JVM (the JIT, to be correct) does a pretty good job at optimizing

string concatenation. However, it is only capable to do so if we're using "dirty" string concatenations (using `+`), or `StringBuilder`.

However, usage of `StringBuilder` is not recommended either for 2 reasons:

1. it significantly decreases code readability

2. in Java 9, String concatenation is even more optimized thanks to `invokedynamic`, and code using `StringBuilder` will *not* benefit

from this optimization.

There are sill leftover `String#format` calls in the code, in the following cases:

- the call is used to generate an exception message. That's 90% of the remaining calls.

- the call is obviously a debug message, often used in `toString` (because as we all know, `toString` should only be used for debugging)

- the format includes specific number formatting patterns

- I missed it

  1. … 225 more files in changeset.
Deprecating LoggingManager.setLevel()

+review REVIEW-5912

    • -1
    • +1
    ./worker/child/SystemApplicationClassLoaderWorker.java
  1. … 34 more files in changeset.
Moved classes out of o.g.internal.logging.internal to remove this package.

    • -1
    • +1
    ./worker/child/SystemApplicationClassLoaderWorker.java
  1. … 81 more files in changeset.
Tweaks to some method return types.

fix unknown OS integTests

- fix java.net.ssl properties not considered for forking singleusedaemon

+review REVIEW-5889

  1. … 3 more files in changeset.
Moved internal logging classes from 'core' to 'logging' project.

    • -2
    • +2
    ./worker/child/SystemApplicationClassLoaderWorker.java
  1. … 418 more files in changeset.
Use asm instead of jarjar to relocate the worker process bootstrap classes.

    • -2
    • +2
    ./worker/child/ApplicationClassesInSystemClassLoaderWorkerFactory.java
    • -94
    • +80
    ./worker/child/WorkerProcessClassPathProvider.java
  1. … 4 more files in changeset.
rename getSystemProperties to getMutableSystemProperties

+review REVIEW-5889

  1. … 3 more files in changeset.
minor code cleanups after code review

+review REVIEW-5889

  1. … 1 more file in changeset.
Busted up some package cycles and switched on classcycle checks for 'messaging' project.

    • -1
    • +1
    ./worker/child/SystemApplicationClassLoaderWorker.java
  1. … 32 more files in changeset.
Moved `o.g.messaging.*` to `o.g.internal.*`.

    • -1
    • +1
    ./worker/DefaultSingleRequestWorkerProcessBuilder.java
    • -4
    • +4
    ./worker/DefaultWorkerProcessBuilder.java
    • -1
    • +1
    ./worker/DefaultWorkerProcessFactory.java
    • -1
    • +1
    ./worker/child/ActionExecutionWorker.java
    • -3
    • +3
    ./worker/child/ApplicationClassesInSystemClassLoaderWorkerFactory.java
    • -5
    • +5
    ./worker/child/SystemApplicationClassLoaderWorker.java
  1. … 283 more files in changeset.
Changed single and multi- request worker implementations to much better deal with the worker process crashing or exiting unexpectedly.

Also deal with and better report a failure to load the worker implementation classes.

    • -2
    • +18
    ./worker/DefaultMultiRequestWorkerProcessBuilder.java
    • -9
    • +18
    ./worker/DefaultSingleRequestWorkerProcessBuilder.java
  1. … 4 more files in changeset.
Merge branch 'release' into 'master'

    • -1
    • +1
    ./worker/DefaultSingleRequestWorkerProcessBuilder.java
    • -1
    • +1
    ./worker/DefaultWorkerProcessBuilder.java
    • -1
    • +1
    ./worker/DefaultWorkerProcessFactory.java
  1. … 5 more files in changeset.
Limiting test worker classpath to only necessary jars

+review REVIEW-5898

    • -1
    • +1
    ./DefaultSingleUseWorkerProcessBuilder.java
  1. … 5 more files in changeset.
Javadocs.

    • -0
    • +14
    ./worker/MultiRequestWorkerProcessBuilder.java
    • -1
    • +1
    ./worker/SingleRequestWorkerProcessBuilder.java
Fixed multi-request worker implementation when used outside Gradle core.

    • -0
    • +3
    ./worker/DefaultMultiRequestWorkerProcessBuilder.java
  1. … 3 more files in changeset.
Introduced a multi-request worker, which represents a worker process that handles zero or more requests.

    • -0
    • +142
    ./worker/DefaultMultiRequestWorkerProcessBuilder.java
    • -107
    • +12
    ./worker/DefaultSingleRequestWorkerProcessBuilder.java
    • -3
    • +7
    ./worker/DefaultWorkerProcessFactory.java
    • -0
    • +21
    ./worker/MultiRequestWorkerProcessBuilder.java
    • -2
    • +2
    ./worker/SingleRequestWorkerProcessBuilder.java
    • -0
    • +31
    ./worker/WorkerControl.java
    • -0
    • +73
    ./worker/request/Receiver.java
    • -0
    • +23
    ./worker/request/RequestProtocol.java
    • -0
    • +27
    ./worker/request/ResponseProtocol.java
    • -0
    • +101
    ./worker/request/WorkerAction.java
  1. … 11 more files in changeset.
Moved worker process classes into their own package.

    • -216
    • +0
    ./DefaultSingleRequestWorkerProcessBuilder.java
    • -167
    • +0
    ./DefaultWorkerProcessBuilder.java
    • -31
    • +0
    ./SingleRequestWorkerProcessBuilder.java
    • -146
    • +0
    ./child/ApplicationClassesInSystemClassLoaderWorkerFactory.java
    • -96
    • +0
    ./child/BootstrapSecurityManager.java
    • -112
    • +0
    ./child/SystemApplicationClassLoaderWorker.java
  1. … 78 more files in changeset.
Moved a class to live with some related classes.

    • -0
    • +1
    ./child/ApplicationClassesInSystemClassLoaderWorkerFactory.java
    • -0
    • +1
    ./child/WorkerProcessClassPathProvider.java
    • -0
    • +86
    ./streams/EncodedStream.java
  1. … 6 more files in changeset.
Renamed an interface.

    • -0
    • +216
    ./DefaultSingleRequestWorkerProcessBuilder.java
    • -216
    • +0
    ./DefaultSingleUseWorkerProcessBuilder.java
    • -0
    • +31
    ./SingleRequestWorkerProcessBuilder.java
    • -24
    • +0
    ./SingleUseWorkerProcessBuilder.java
  1. … 5 more files in changeset.
Fixed single use worker processes so that it actually works.

Previously would hang when used from a plugin. Also improved handling to get rid of the hang when the worker process crashes for some reason.

    • -5
    • +5
    ./DefaultSingleUseWorkerProcessBuilder.java
  1. … 4 more files in changeset.
Kill the worker process if there is some failure during startup and establishing the connection with the worker process.

  1. … 1 more file in changeset.
Allow `ExecHandle.abort()` to be called with no effect when the process has already completed for whatever reason.

  1. … 1 more file in changeset.
Some improvements to error reporting when unable to invoke a method on the worker process implementation.

    • -5
    • +19
    ./DefaultSingleUseWorkerProcessBuilder.java
    • -0
    • +27
    ./WorkerProcessException.java
  1. … 1 more file in changeset.
Added a convenience for implementing worker processes that run a single operation, return the result and then exit.

    • -104
    • +0
    ./AbstractWorkerProcessBuilder.java
    • -0
    • +202
    ./DefaultSingleUseWorkerProcessBuilder.java
    • -0
    • +161
    ./DefaultWorkerProcessBuilder.java
    • -53
    • +13
    ./DefaultWorkerProcessFactory.java
    • -0
    • +24
    ./SingleUseWorkerProcessBuilder.java
    • -0
    • +52
    ./WorkerProcessSettings.java
    • -2
    • +2
    ./child/ApplicationClassesInSystemClassLoaderWorkerFactory.java
  1. … 5 more files in changeset.
Changed the API for creating worker processes, so that the worker action must always be supplied.

Also introduced a couple of interfaces to present the API.

    • -0
    • +104
    ./AbstractWorkerProcessBuilder.java
    • -0
    • +28
    ./WorkerProcessFactory.java
    • -2
    • +2
    ./child/ApplicationClassesInSystemClassLoaderWorkerFactory.java
  1. … 26 more files in changeset.
rework java.ssl property handling

consider java.ssl.* as immutable only when using the daemon.

  1. … 4 more files in changeset.
handle ssl properties as immutable

+review REVIEW-5889

  1. … 1 more file in changeset.
change tmpdir behaviour or daemon

- only set tmpdir explicitly when it was configured as an explicit input argument

- adapt couple of integ tests to reflect this behaviour

  1. … 10 more files in changeset.