* Provide an optional configuration setting to specify the minimum platform version to use in the network params file.
* Leave Cordform signature intact.
* Leave previous Gradle Plugin called signature intact.
* Incorporating feedback from PR review.
* Added minimum platform version validation check.
* Removed final 2 references to "default"
* Added changelog entry.
* Added constraint type information to vault states table.
* Added Vault Query criteria support for constraint data.
* Added documentation and changelog entry.
* Added missing @CordaSerializable.
* Fix minor bug in test setup and parsing code.
* Use binary encoding data types instead of serialize/deserialize.
* Optimized storage of constraints data.
Additional assertions on Vault Query constraint data contents (to validate encoding/decoding).
Tested with CompositeKey containing 10 keys.
* Addressing PR review feedback.
* Query by constraints type and data.
* Revert back accidentally removed code for contractStateType filtering.
* Incorporating final PR review feedback. Use @JvmOverloads on constructor.
* Make sure constraintInfo is class evolution friendly.
* Add test for SNI header to prevent changing it accidentally.
* added hardcoded values test to ensure hashing function and corda x500 name format can't be changed
The cordapp and cordformation plugins (from v4.0.30) are going to have ability to sign JARs (in cordformation signing will be by default), to enable signature constraints to work out of box Network Bootstrapper will not whitelist contracts form signed JARs.
For unsigned JARs the Network Bootstrapper behaviour is unchanged.
* ENT-2500: Refactoring to allow FirewallAuditService have inbound as well as outbound logging.
Change some visibility modifiers to `private`. Use in-place initialisation where possible.
* ENT-2500: Record accepted package coming into Float
* ENT-2500: Introduce optional BridgeAuditService in `nodeApi` module
* ENT-2500: Switch FirewallAuditService to use `ApplicationMessage` and bind outgoing message stats.
* ENT-2500: Introduce scheduled executor and audit service configuration.
* ENT-2500: Stats formatting.
* ENT-2500: Stats formatting unit test.
* ENT-2500: Minor changes to LoggingFirewallAuditService and its unit test.
* ENT-2500: Additional configuration parameter documentation update.
* ENT-2500: Supply optional parameter.
* ENT-2500: Address PR comments.
* ENT-2500: Make API more consistent by using `RoutingDirection`, re-jig `State` data structure, improve unit test.
* ENT-2500: Add breakdown by endpoint address.
* ENT-2500: Compilation fix after rebase in `master`.
* ENT-2500: Making `AuditServiceConfiguration` not optional and supplying default settings.
Also few minor changes.
* Add documentation for the useOpenSsl flag
* Use delegation for wrapping unchanged methods (removing actual and potential bugs)
* Replace reflective shorthands with proper argument names in wrappers.
* Mention default for useOpenSsl in documentation
* zookeeper doc
* explicitly mention hot/hot is not supported
* change zookeeper to ZooKeeper
* change doc link to v3.5.3
* add note stating only zookeeper v3.5.3-beta is compatible
* Provide AsyncLoggingContextSelector that inhibits use of thread local storage
* Turn on async logging via log4j properties file
* Mention async logging in the documentation and also explain how to turn it off when required.
* Formatting
* Typo
* Add shutdown hook to flush loggers.
* code review rework
* Ring buffer size to 256kB
* Set maximal log file size to 100MB - should slow down the rolling of log files and give us a bit more history on the cluster.
The old limit of max 10GB of compressed log files still stands.
* BoringSsl dependency
* Merge over boring_ssl changes
* Merge over boring_ssl changes
* Upgrade netty-tcnative (and netty to compatible version)
* Add openSSL flag to SSLConfiguration and implementations.
* Make SSL implementation switchable for Artemis
* Parameterize AMQP bridge tests on use of openSSL
* Plumb through open SSL flag to AMQP client/server.
* Add open ssl flag to reference.conf
* Slight clean-up
* Add LoggingTrustManagerWrapper for OpenSsl contexts
* Remove unneeded lazy and check for double wrapping
* Fix TrustMangerWrapper and test, clean-up
* Add key factory wrapper to get the current certificate chain out.
* Use cert chain returning key mananager factory to get local cert
* Force consistent netty-tcnative version across all dependencies
* Make proton wrapper tests check all combinations of client/server native/java SSL
* Add test netty server/client to run SSL tests with
* Simplify usage of test netty components and clean up
* Improve exception handling in NettyTestHandler
* Add openSSL test for X509UtilitiesTests
* Expose engine for test usage
* Add the X509 peer chain check from the socket based test
* Port of TLSAuthenticationTests to use Netty so we can use different SSL providers, add boringSSL tests
* Adapt tests to new config structure
* Readd `useOpenSsl` configuration
* Readd `useOpenSsl` configuration
* Fix up ArtemisTransport for OpenSSL plus tests
* Adapt auth tests
* Formatting
* Remove obsolte file
* Fix config misnomer
* Add SNI host logic to OpenSSL execution branch
* Remove TLS_DHE_RSA tests
* Make exception handling in the netty test infra deterministic
Database docs improvements 1) based on questions raised by customer in 'ENT-2421 Database Migration Tool limitations - Oracle database' 2) lack of SQL Server JDBC URL example 3) some typos fixed
Fix Liquibase quoting strategy for PostgreSQL to follow Corda convention.
In Liquibase for Postgres if schema name has uppercase or lowercase characters only then Liquibase would send it without double quotes and effectively make them lowercase.
Alter Postgres Liquibase dialect to wrap schema names in double quotes. This allows e.g. schemaName=ALICE be send as "ALICE" by Liquibase.
Corda persistence was already wrapping with double quotes, but certain cases in Liquibase were not following this. The result was that SQL run by Liquibase couldn't find schema (e.g. select ALICE.tablename ... in Postgres matched alice schema name not ALICE one).
The fix enables one integration test to be run now against standalone databases.
* CORDA-1726 Make sure test frameworks and nodes refuse to start on anything except the right Java versions
Move isValidJavaVersion(), hasMinimumJavaVersion() to Node as it can be use for check in DriverDSL for starting in-process node,
in-process node doesn't go via NodeStartup class where the correct Java version is checked.
Added safeguard to hasMinimumJavaVersion as some JDKs distributions may not have the update version number (e.g. AdoptOpenJDK) which causes unintended parse exception.
* CORDA-1726 Make sure test frameworks and nodes refuse to start on anything except the right Java versions - remove new test, for proper testing this would use reflection and field setting visibility modifiers which easly can has side effects on the subsequent tests
* Addressing PR comments.
* Update DJVM to load deterministic rt.jar into sandbox.
* Disallow invocations of notify(), notifyAll() and wait() APIs.
* Pass entire derivedMember to MemberVisitorImpl.
* Updates after review.
* Refactor MethodBody handlers to use EmitterModule.
* Fix to enable gradle build caching of test runs.
* Configure gradle build caching to be enabled.
* Generate dependency report and graph:
1) ./gradlew htmlDependencyReport
2) ./gradlew generateDependencyGraphCorda
* Strip out all Jacoco references to prevent Gradle Build Cache error:
"Caching disabled for task ':<module>:test': 'JaCoCo agent configured with `append = true`' satisfied"
* Revert jacoco back into jarFilter gradle build file.
Disable building deterministic modules (including jarFilter).
* Added Gradle build scan plugin.
* Set file encoding to prevent incorrect Gradle build cache keys across different machines.
https://guides.gradle.org/using-build-cache/#system_file_encoding
* Apply gradle build cache settings to buildSrc.
* Added targetted gradle build tasks to leverage cache.
* Updated URL's of several different test Gradle Cache instances.
* Updated CI batch build scripts.
* Updated script perms to be executable.
* Added CI smoke tests batch script.
* Use TestDev Labs gradle cache.
* Echo URL of Gradle Build Repository.
Echo exit status of each Gradle build command.
* Use environment variables to define Gradle Build Cache usage and URL.
* Customisation through parameters.
* Remove dependency graph generation plugin.
Align build cache settings across project and buildSrc gradle files.
* Remove buildSrc gradle build cache config.
* Revert definition of gradle build cache variables back to settings.gradle.
* Fix incorrect path.
* Aligned gradle build cache configuration across buildSrc and project.
* Minor updates to test scope.
* Minor updates to test scope.
* Update scripts to use GRADLE_HOME
* Exit on unset GRADLE_HOME
* Remove duplication following rebase from master.
* Remove fine-grained build task scripts.
* Added back Jacoco reporting.
* Revert jdk8u-deterministic module.
* Incorporating changes from PR review feedback.
* Workaround Jacoco issue associated with Gradle Build Cache test task.
* Update init script.
* Remove redundant build-scan declarations.
* Updates from PR review feedback.
* Remove GRADLE_HOME as no longer needed - everything is driven via gradle wrapper.
* Use CORDA prefix in system environment variable.