[[analysis-standard-analyzer]]
=== Standard Analyzer

An analyzer of type `standard` that is built of using
<<analysis-standard-tokenizer,Standard
Tokenizer>>, with
<<analysis-standard-tokenfilter,Standard
Token Filter>>,
<<analysis-lowercase-tokenfilter,Lower
Case Token Filter>>, and
<<analysis-stop-tokenfilter,Stop
Token Filter>>.

The following are settings that can be set for a `standard` analyzer
type:

[cols="<,<",options="header",]
|=======================================================================
|Setting |Description
|`stopwords` |A list of stopword to initialize the stop filter with.
Defaults to the english stop words.

|`max_token_length` |The maximum token length. If a token is seen that
exceeds this length then it is discarded. Defaults to `255`.
|=======================================================================

[[analysis-standard-analyzer]]
=== Standard Analyzer

An analyzer of type `standard` is built using the
<<analysis-standard-tokenizer,Standard
Tokenizer>> with the
<<analysis-standard-tokenfilter,Standard
Token Filter>>,
<<analysis-lowercase-tokenfilter,Lower
Case Token Filter>>, and
<<analysis-stop-tokenfilter,Stop
Token Filter>>.

The following are settings that can be set for a `standard` analyzer
type:

[cols="<,<",options="header",]
|=======================================================================
|Setting |Description
|`stopwords` |A list of stopword to initialize the stop filter with.
Defaults to the english stop words.

|`max_token_length` |The maximum token length. If a token is seen that
exceeds this length then it is discarded. Defaults to `255`.
|=======================================================================

Fix nonsensical sentence in standard analyzer documentation so that it is more understandable


[id="serverless-create-func-kn_{context}"]
= Creating functions

You can create a basic serverless function using the `kn` CLI.

You can specify the path, runtime, and template as flags on the command line, or use the `-c` flag to start the interactive experience in the terminal.

.Procedure

* Create a function project:
+
[source,terminal]
----
$ kn func create <path> -l <runtime> -t <template>
----
** Supported runtimes include `node`, `go`, `python`, `quarkus`, and `typescript`.
** Supported templates include `http` and `events`.
+
.Example command
[source,terminal]
----
$ kn func create -l typescript -t events examplefunc
----
+
.Example output
[source,terminal]
----
Project path:  /home/user/demo/examplefunc
Function name: examplefunc
Runtime:       typescript
Template:      events
Writing events to /home/user/demo/examplefunc
----

[id="serverless-create-func-kn_{context}"]
= Creating functions

You can create a basic serverless function using the `kn` CLI.

You can specify the path, runtime, template, and repository with the template as flags on the command line, or use the `-c` flag to start the interactive experience in the terminal.

.Procedure

* Create a function project:
+
[source,terminal]
----
$ kn func create -r <repository> -l <runtime> -t <template> <path>
----
** Supported runtimes include `node`, `go`, `python`, `quarkus`, and `typescript`.
** Supported templates include `http` and `events`.
+
.Example command
[source,terminal]
----
$ kn func create -l typescript -t events examplefunc
----
+
.Example output
[source,terminal]
----
Project path:  /home/user/demo/examplefunc
Function name: examplefunc
Runtime:       typescript
Template:      events
Writing events to /home/user/demo/examplefunc
----
+
** Alternatively, you can specify a repository that contains a custom template.
+
.Example command
[source,terminal]
----
$ kn func create -r https://github.com/boson-project/templates/ -l node -t hello-world examplefunc
----
+
.Example output
[source,terminal]
----
Project path:  /home/user/demo/examplefunc
Function name: examplefunc
Runtime:       node
Template:      hello-world
Writing events to /home/user/demo/examplefunc
----

Document the -r <repository> option of the `kn func create` command

Change argument order in a command


libframetime
============

A preloadable library, able to dump the frame times of any OpenGL application on Linux, on
any driver.

By default, the timing is written into /tmp/libframetime.out, but you can specify an
alternate file with the LIBFRAMETIME_FILE env var.

Usage
-----

----
LD_PRELOAD=path/to/libframetime.so dota2
----

Or with a custom output file:
----
LIBFRAMETIME_FILE=/tmp/dota2.frametime LD_PRELOAD=path/to/libframetime.so dota2
----

The accompanying awk script can be used to calculate the usual stats:
----
$ stats.awk < libframetime.out
----
----
Min/avg/max frametimes (us):    166 / 625.626 / 5955
Min/avg/max FPS:                167.926 / 1598.4 / 6024.1
----

libframetime
============

A preloadable library, able to dump the frame times of any OpenGL application on Linux, on
any driver.

By default, the timing is written into /tmp/libframetime.out, but you can specify an
alternate file with the LIBFRAMETIME_FILE env var.

Usage
-----

----
LD_PRELOAD=path/to/libframetime.so dota2
----

Or with a custom output file:
----
LIBFRAMETIME_FILE=/tmp/dota2.frametime LD_PRELOAD=path/to/libframetime.so dota2
----

The accompanying awk script can be used to calculate the usual stats:
----
$ stats.awk < libframetime.out
----
----
Min/avg/max frametimes (us):    166 / 625.626 / 5955
Min/avg/max FPS:                167.926 / 1598.4 / 6024.1

50/90/95/99 percentiles (us):   410 / 434 / 589 / 5018
----

Update readme with latest stats output

Update readme with latest stats output


== New Check and 2 Fixes
:docname: 20180406-new-check-and-2-fixes

I fixed 3 issues for which there are releases of the following components:

* `revapi-basic-features-0.7.1` that contains a fix for https://github.com/revapi/revapi/issues/119[#119] which means
that the semver transform should no longer crash when there is no prior version of artifacts
* `revapi-java-spi-0.15.1` that includes the definition of the new `serialVersionUIDChanged` check (prompted by
https://github.com/revapi/revapi/issues/120[#120])
* `revapi-java-0.16.0` that contains the implementation of `serialVersionUIDChanged` and additionally contains
an important fix that could cause problems be reported on wrong elements in some cases.
* `revapi-maven-plugin-0.10.1` that bundles the latest revapi-basic-features version

You are urged to upgrade especially to `revapi-java-0.16.0` to avoid some head scratching when examining the Revapi
reports.

Thanks go out to Ricardo Ferreira for reporting https://github.com/revapi/revapi/issues/120[#120] and Matthew Kavanagh
for his analysis of https://github.com/revapi/revapi/issues/119[#119].

include::../util/disqus.adoc[]

== New Check and 2 Fixes
:docname: 20180406-new-check-and-2-fixes

I fixed 3 issues for which there are releases of the following components:

* `revapi-basic-features-0.7.1` that contains a fix for https://github.com/revapi/revapi/issues/119[#119] which means
that the semver transform should no longer crash when there is no prior version of artifacts
* `revapi-java-spi-0.15.1` that includes the definition of the new `serialVersionUIDChanged`
https://revapi.org/modules/revapi-java/index.html#field_code_serialversionuid_code_changed[check] (prompted by
https://github.com/revapi/revapi/issues/120[#120])
* `revapi-java-0.16.0` that contains the implementation of `serialVersionUIDChanged` and additionally contains
an important fix that could cause problems be reported on wrong elements in some cases.
* `revapi-maven-plugin-0.10.1` that bundles the latest revapi-basic-features version

You are urged to upgrade especially to `revapi-java-0.16.0` to avoid some head scratching when examining the Revapi
reports.

Thanks go out to Ricardo Ferreira for reporting https://github.com/revapi/revapi/issues/120[#120] and Matthew Kavanagh
for his analysis of https://github.com/revapi/revapi/issues/119[#119].

include::../util/disqus.adoc[]

Add a link to the docs in the release announcement


= Vert.x Unit examples

Here you'll find some examples of how to use Vert.x unit to test your asynchronous applications.

Tests are located in the link:src/test/java/io/vertx/example/unit/test directory.

Examples can be run directly from the IDE.

== Vertx Unit Test

The link:src/test/java/io/vertx/example/unit/test/VertxUnitTest.java demonstrates how the Vert.x Unit API can be used to run tests using the Vert.x Unit test runner.

Run this example by running the `main` method.

== Junit

Vert.x Unit can be used with Junit:

* link:src/test/java/io/vertx/example/unit/test/MyJunitTest.java demonstrates how to use the Vert.x Unit Junit runner
 to execute your tests
* link:src/test/java/io/vertx/example/unit/test/ParameterizedTest.java demonstrates how to inject parameters into
 your Junit tests
* link:src/test/java/io/vertx/example/unit/test/RunOnContextTest.java demonstrates how to delegate Vert.x instance
 creation to Vert.x Unit and how to use a rule to run the test methods on the event loop (caution: they must be non-blocking)
* link:src/test/java/io/vertx/example/unit/test/JUnitAndAssertJTest.java demonstrates how to use AssertJ in
 combination with Vert.x Unit
* link:src/test/java/io/vertx/example/unit/test/JUnitAndHamcrestTest.java demonstrates how to use Hamcrest in
 combination with Vert.x Unit

All the tests can be run from your IDE, or directly with Maven:

```
mvn clean test
```

Update readme with blank info

Update readme with blank info


= SpringBoot WebApp Demo

SpringBoot looks like a nice way to get started.
This is a trivial webapp created using SpringBoot.

== HowTo

mvn spring-boot:run

then connect to http://localhost:8000/notaservlet

Note that is 8000 not the usual 8080 to avoid conflicts.
Change this in application.properties if you don't like it.

== War Deployment

It seems that you can't have both the instant-deployment convenience of Spring Boot
AND the security of a full WAR deployment in the same pom file.  You will need to
make several changes to deploy as a WAR file. See the section entitled
"Traditional Deployment"--"Create a deployable war file" in the
spring-boot reference manual (Section 73.1 in the current snapshot as of
this writing).

= SpringBoot WebApp Demo

SpringBoot looks like a nice way to get started.
This is a trivial webapp created using SpringBoot.

== HowTo

mvn spring-boot:run

then connect to

http://localhost:8000/notaservlet?name=Robin Smith

Note that is 8000 not the usual 8080 to avoid conflicts.
Change this in application.properties if you don't like it.

== War Deployment

It seems that you can't have both the instant-deployment convenience of Spring Boot
AND the security of a full WAR deployment in the same pom file.  You will need to
make several changes to deploy as a WAR file. See the section entitled
"Traditional Deployment"--"Create a deployable war file" in the
spring-boot reference manual (Section 73.1 in the current snapshot as of
this writing).

Add required "name" parameter in example


= Changelog

== Version 0.4.0

Date: unreleased

- Add encode/decode functions to JWS/JWT implementation. Them instead of return
  plain value, return a monadic either. That allows granular error reporting
  instead something like nil that not very useful. The previous sign/unsign
  are conserved for backward compatibility but maybe in future will be removed.
- Rename parameter `maxage` to `max-age` on jws implementation. This change
  introduces a little backward incompatibility.

== Version 0.3.0

Date: 2014-01-18

- First version splitted from monolitic buddy package.
- No changes from original version.

= Changelog

== Version 0.4.0

Date: unreleased

- Add encode/decode functions to JWS/JWT implementation. Them instead of return
  plain value, return a monadic either. That allows granular error reporting
  instead something like nil that not very useful. The previous sign/unsign
  are conserved for backward compatibility but maybe in future will be removed.
- Rename parameter `maxage` to `max-age` on jws implementation. This change
  introduces a little backward incompatibility.
- Django based generic signing is deprecated.

== Version 0.3.0

Date: 2014-01-18

- First version splitted from monolitic buddy package.
- No changes from original version.

Add deprecatio not on changelog.

Add deprecatio not on changelog.


To run the tests:

[source, bash]
----
./grailsw
grails> test-app
grails> open test-report
----

or

[source, bash]
----
./gradlew check
open build/reports/tests/index.html
----

Add Gradle check to testApp snippet

Add Gradle check to testApp snippet


= Spring Boot and Two DataSources

This project demonstrates how to use two `DataSource` s with Spring Boot.

It utilizes:

* Spring Data JPA/REST
* Flyway migrations for the two `DataSource` s
* Separate Hibernate properties for each `DataSource`
* Application properties with YAML
* Thymeleaf
* Unit tests for components

= Spring Boot and Two DataSources

This project demonstrates how to use two `DataSource` s with Spring Boot.

It utilizes:

* Spring Data https://github.com/spring-projects/spring-data-jpa[JPA] / https://github.com/spring-projects/spring-data-rest[REST]
* https://github.com/flyway/flyway[Flyway] migrations for the two `DataSource` s
* Separate Hibernate properties for each `DataSource` defined in the application.yml
* https://github.com/thymeleaf/thymeleaf[Thymeleaf]
* https://github.com/DataTables/DataTablesSrc[DataTables]
* Unit tests for components

Add DataTables and links to readme

Add DataTables and links to readme


= Database Table Replicator (DbShadow)
:Author: David Thompson, Matt Conroy
:Email: <dthompsn1@gmail.com> <matt@conroy.cc>
:Revision: 0.0.1 2017-02-08

== Description
Have you ever had the need to copy data from one database to another? How about between to different types of
databases? How about just verifying that your database tables between replicated instances are in sync?

DbShadow is a Java command line application that can help you perform these actions. Using the power of JDBC, it
can read data from one database instance and then using primary keys compare, propogate, and locate differences within
a separate database instance.

== ReleaseNotes
0.0.1 - Base code

== Usage

= Database Table Replicator (DbShadow)
:Author: David Thompson, Matt Conroy
:Email: <dthompsn1@gmail.com> <matt@conroy.cc>
:Revision: 0.0.1 2017-02-08

== Description
Have you ever had the need to copy data from one database to another? How about between to different types of
databases? How about just verifying that your database tables between replicated instances are in sync?

DbShadow is a Java command line application that can help you perform these actions. Using the power of JDBC, it
can read data from one database instance and then using primary keys compare, propogate, and locate differences within
a separate database instance.

== ReleaseNotes
0.0.1 - Base code

== Building
DbShadow uses Scala Build Tool (sbt) in order to build. Clone the repo and type
....
$ sbt clean compile
....

In order to package the system into a Java binary that's useful for somebody to use:
....
$ sbt clean universal:packageZipTarball
....
This will produce a tarball that can then be installed with a bash script for launching.

== Usage
Help usage is available with the command line.

$ dbshadow -- --help

More documentation to follow.

Add a little more docs. More to come.

Add a little more docs. More to come.


CAUTION: GraphQL: The root field releases has been removed. The root field release now takes no parameters and loads the active release.
icon:plus[] GraphQL: Nodes can now be loaded in the context of a schema. This will return all nodes which use the schema.

Add breaking GraphQL change to changelog


=== Apm-Server version HEAD
https://github.com/elastic/apm-server/compare/x...master[View commits]

==== Breaking changes

==== Bugfixes

==== Added

==== Deprecated

==== Known Issue

=== Apm-Server version HEAD
https://github.com/elastic/apm-server/compare/x...master[View commits]

==== Breaking changes

==== Bugfixes
*Bugfixes in fields.yml leading to ES schema changes*
- changed `context.system.title` to `context.system.process_title`, removed `transaction.context`, `trace.context` (already available on top level). {pull}10[10]

==== Added

==== Deprecated

==== Known Issue

Add minor schema changes to Changelog.

Add minor schema changes to Changelog.


[[Johnzon-Johnzon]]
Johnzon
~~~~~~~

*Available as of Camel 2.18*

Johnzon is a link:data-format.html[Data Format] which uses the
http://johnzon.apache.org/[Johnzon Library]

[source,java]
-------------------------------
from("activemq:My.Queue").
  marshal().json(JsonLibrary.Johnzon).
  to("mqseries:Another.Queue");
-------------------------------

[[JacksonXML-Dependencies]]
Dependencies
^^^^^^^^^^^^

To use Johnzon in your camel routes you need to add the dependency
on *camel-johnzon* which implements this data format.

If you use maven you could just add the following to your pom.xml,
substituting the version number for the latest & greatest release (see
link:download.html[the download page for the latest versions]).

[source,xml]
----------------------------------------------------------
<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-johnzon</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel core version -->
</dependency>
----------------------------------------------------------

[[Johnzon-Johnzon]]
Johnzon
~~~~~~~

*Available as of Camel 2.18*

Johnzon is a link:data-format.html[Data Format] which uses the
http://johnzon.apache.org/[Johnzon Library]

[source,java]
-------------------------------
from("activemq:My.Queue").
  marshal().json(JsonLibrary.Johnzon).
  to("mqseries:Another.Queue");
-------------------------------

[[Johnzon-Dependencies]]
Dependencies
^^^^^^^^^^^^

To use Johnzon in your camel routes you need to add the dependency
on *camel-johnzon* which implements this data format.

If you use maven you could just add the following to your pom.xml,
substituting the version number for the latest & greatest release (see
link:download.html[the download page for the latest versions]).

[source,xml]
----------------------------------------------------------
<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-johnzon</artifactId>
  <version>x.x.x</version>
  <!-- use the same version as your Camel core version -->
</dependency>
----------------------------------------------------------

Fix paragraph name in Johnzon docs for Gitbook


= bitcoinj-addons Release Process

== Main Release Process

. Update `CHANGELOG.adoc`
. Set versions
.. `README.adoc` (check/set bitcoinj version variable, too)
.. bitcoinj-dsl `ExtensionModule`
.. `gradle.properties`
. Commit version bump and changelog.
. Full build, test
.. `./gradlew clean jenkinsBuild install regTest`
.. Recommended: test with *OmniJ* regTests.
. Tag: `git tag -a v0.x.y -m "Release 0.x.y"`
. Push: `git push --tags origin master`
. Publish to Bintray:
.. `./gradlew bintrayUpload`
.. Confirm publish of artifacts in Bintray Web UI.
. Update github-pages site (including JavaDoc): `./gradlew publishSite`

== Announcements

. Not yet.

== After release

. Set versions back to -SNAPSHOT
.. `gradle.properties`
.. bitcoinj-groovy `ExtensionModule`
.. *Not* `README.adoc` -- it should match release version
. Commit and push to master

= bitcoinj-addons Release Process

== Main Release Process

. Update `CHANGELOG.adoc`
. Set versions
.. `README.adoc` (check/set bitcoinj version variable, too)
.. bitcoinj-dsl `ExtensionModule`
.. `gradle.properties`
. Commit version bump and changelog.
. Full build, test
.. `./gradlew clean buildCI install regTest`
.. Recommended: test with *OmniJ* regTests.
. Tag: `git tag -a v0.x.y -m "Release 0.x.y"`
. Push: `git push --tags origin master`
. Publish to Bintray:
.. `./gradlew bintrayUpload`
.. Confirm publish of artifacts in Bintray Web UI.
. Update github-pages site (including JavaDoc): `./gradlew publishSite`

== Announcements

. Not yet.

== After release

. Set versions back to -SNAPSHOT
.. `gradle.properties`
.. bitcoinj-groovy `ExtensionModule`
.. *Not* `README.adoc` -- it should match release version
. Commit and push to master

Update build-process (use `buildCI` target)


[role="xpack"]
[[fleet-apis]]

TIP: For the {kib} {fleet} APIs, see the
{fleet-guide}/fleet-api-docs.html[`Fleet API Documentation`].

== Fleet APIs

The following APIs support {fleet}'s use of {es} as a data store for internal
agent and action data. These APIs are experimental and for internal use by
{fleet} only.

* <<get-global-checkpoints,Get global checkpoints>>

// top-level
include::get-global-checkpoints.asciidoc[]

[role="xpack"]
[[fleet-apis]]
== Fleet APIs

TIP: For the {kib} {fleet} APIs, see the
{fleet-guide}/fleet-api-docs.html[Fleet API Documentation].

The following APIs support {fleet}'s use of {es} as a data store for internal
agent and action data. These APIs are experimental and for internal use by
{fleet} only.

* <<get-global-checkpoints,Get global checkpoints>>

// top-level
include::get-global-checkpoints.asciidoc[]

Relocate tip for Fleet APIs

[DOCS] Relocate tip for Fleet APIs


= Report an issue
:awestruct-layout: normalBase
:showtitle:

== Issue tracker

We welcome issue reports (bugs, improvements, new feature requests, ...) in our issue tracker:

*Show https://issues.jboss.org/browse/drools[the JIRA issue tracker].*

Log in and click on the button _Create Issue_ to report a bug, improvement or feature request.

== Pull requests on GitHub

Want to fix the issue yourself? Fork https://github.com/droolsjbpm[the git repository] and send in a pull request.
We usually process all pull requests within a few days.

== Kanban boards

* https://issues.jboss.org/secure/RapidBoard.jspa?rapidView=4016[Drools]
* https://issues.jboss.org/secure/RapidBoard.jspa?rapidView=3828[OptaPlanner]
* https://issues.jboss.org/secure/RapidBoard.jspa?rapidView=3972[jBPM]
* AppFormer (todo)
* https://issues.jboss.org/secure/RapidBoard.jspa?rapidView=3838[Designer.NEXT]

Add the known kanban boards

Add the known kanban boards


// set attributes usually set by Antora
ifndef::site-gen-antora[]
:moduledir: ..
:attachmentsdir: {moduledir}/assets/attachments
:examplesdir: {moduledir}/examples
:imagesdir: {moduledir}/assets/images
:partialsdir: {moduledir}/pages/_partials
endif::[]

:ProductName: Debezium
:debezium-version: 1.0.0.Final
:debezium-dev-version: 1.1
:debezium-kafka-version: 2.4.0
:debezium-docker-label: 1.0
:install-version: 1.0
:confluent-platform-version: 5.3.1
:strimzi-version: 0.13.0
:jira-url: https://issues.redhat.com
:prodname: Debezium
:assemblies: ../assemblies
:modules: ../../modules

:mysql-connector-plugin-download: https://repo1.maven.org/maven2/io/debezium/debezium-connector-mysql/1.0.0.Final/debezium-connector-mysql-1.0.0.Final-plugin.tar.gz

:mysql-version: 8.0

// set attributes usually set by Antora
ifndef::site-gen-antora[]
:moduledir: ..
:attachmentsdir: {moduledir}/assets/attachments
:examplesdir: {moduledir}/examples
:imagesdir: {moduledir}/assets/images
:partialsdir: {moduledir}/pages/_partials
endif::[]

:debezium-version: 1.0.0.Final
:debezium-dev-version: 1.1
:debezium-kafka-version: 2.4.0
:debezium-docker-label: 1.0
:install-version: 1.0
:confluent-platform-version: 5.3.1
:strimzi-version: 0.13.0
:jira-url: https://issues.redhat.com
:prodname: Debezium
:assemblies: ../assemblies
:modules: ../../modules

:mysql-connector-plugin-download: https://repo1.maven.org/maven2/io/debezium/debezium-connector-mysql/1.0.0.Final/debezium-connector-mysql-1.0.0.Final-plugin.tar.gz

:mysql-version: 8.0

Remove definition of unnecessary ProductName attribute in docs


// Allow examples to render correctly in previews despite being
// a nested directory
:idprefix:
:idseparator: -
:icons: font
:doc-guides: ../
:doc-examples: ../_examples
:imagesdir: ../../asciidoc/images
:includes: ../includes
:root: ../../asciidoc/

// Allow examples to render correctly in previews despite being
// a nested directory
:idprefix:
:idseparator: -
:icons: font
:doc-guides: ..
:doc-examples: ../_examples
:imagesdir: ../../asciidoc/images
:includes: ../includes
:root: ../../asciidoc/

Fix broken xrefs that use the doc-guides attribute


[id="security-container-content"]
= Securing container content
include::modules/common-attributes.adoc[]
:context: security-container-content

toc::[]

To ensure the security of the content inside your containers
you need to start with trusted base images, such as Red Hat
Universal Base Images, and add trusted software. To check the
ongoing security of your container images, there are both
Red Hat and third-party tools for scanning images.

// Security inside the container
include::modules/security-container-content-inside.adoc[leveloffset=+1]

// Red Hat Universal Base Images
include::modules/security-container-content-universal.adoc[leveloffset=+1]

// Container content scanning
include::modules/security-container-content-scanning.adoc[leveloffset=+1]

// Integrating external scanning tools with OpenShift
include::modules/security-container-content-external-scanning.adoc[leveloffset=+1]
.Additional resources
* xref:../../openshift_images/images-understand.adoc#images-imagestream-use_images-understand[Image stream objects]
* xref:../../rest_api/index.adoc#rest-api[{product-title} {product-version} REST APIs]

[id="security-container-content"]
= Securing container content
include::modules/common-attributes.adoc[]
:context: security-container-content

toc::[]

To ensure the security of the content inside your containers
you need to start with trusted base images, such as Red Hat
Universal Base Images, and add trusted software. To check the
ongoing security of your container images, there are both
Red Hat and third-party tools for scanning images.

// Security inside the container
include::modules/security-container-content-inside.adoc[leveloffset=+1]

// Red Hat Universal Base Images
include::modules/security-container-content-universal.adoc[leveloffset=+1]

// Container content scanning
include::modules/security-container-content-scanning.adoc[leveloffset=+1]

// Integrating external scanning tools with OpenShift
include::modules/security-container-content-external-scanning.adoc[leveloffset=+1]
.Additional resources
* xref:../../openshift_images/images-understand.adoc#images-imagestream-use_images-understand[Image stream objects]
// * xref::../../rest_api/index.adoc#rest-api[{product-title} {product-version} REST APIs]

Comment out ref to API reference page

Comment out ref to API reference page


[[plugins_list]]
== List of plugins

This is a non-exhaustive list of Erlang.mk plugins, sorted
alphabetically.

=== elixir.mk

An https://github.com/botsunit/elixir.mk[Elixir plugin] for
Erlang.mk. http://elixir-lang.org/[Elixir] is an alternative
language for the BEAM.

=== elvis.mk

An https://github.com/inaka/elvis.mk[Elvis plugin] for Erlang.mk.
Elvis is an https://github.com/inaka/elvis[Erlang style reviewer].

=== geas

https://github.com/crownedgrouse/geas[Geas] gives aggregated
information on a project and its dependencies, and is available
as an Erlang.mk plugin.

=== hexer.mk

An https://github.com/inaka/hexer.mk[Hex plugin] for Erlang.mk.
Hex is a https://hex.pm/[package manager for the Elixir ecosystem].

=== lfe.mk

An https://github.com/ninenines/lfe.mk[LFE plugin] for Erlang.mk.
LFE, or http://lfe.io/[Lisp Flavoured Erlang], is an alternative
language for the BEAM.

=== reload.mk

A https://github.com/bullno1/reload.mk[live reload plugin] for Erlang.mk.

[[plugins_list]]
== List of plugins

This is a non-exhaustive list of Erlang.mk plugins, sorted
alphabetically.

=== efene.mk

An https://github.com/ninenines/efene.mk[Efene plugin] for Erlang.mk.
http://efene.org/[Efene] is an alternative language for the BEAM.

=== elixir.mk

An https://github.com/botsunit/elixir.mk[Elixir plugin] for
Erlang.mk. http://elixir-lang.org/[Elixir] is an alternative
language for the BEAM.

=== elvis.mk

An https://github.com/inaka/elvis.mk[Elvis plugin] for Erlang.mk.
Elvis is an https://github.com/inaka/elvis[Erlang style reviewer].

=== geas

https://github.com/crownedgrouse/geas[Geas] gives aggregated
information on a project and its dependencies, and is available
as an Erlang.mk plugin.

=== hexer.mk

An https://github.com/inaka/hexer.mk[Hex plugin] for Erlang.mk.
Hex is a https://hex.pm/[package manager for the Elixir ecosystem].

=== lfe.mk

An https://github.com/ninenines/lfe.mk[LFE plugin] for Erlang.mk.
LFE, or http://lfe.io/[Lisp Flavoured Erlang], is an alternative
language for the BEAM.

=== reload.mk

A https://github.com/bullno1/reload.mk[live reload plugin] for Erlang.mk.

Add the Efene plugin to the list

Add the Efene plugin to the list


// Module included in the following assemblies:
//
// * installing/installing_bare_metal/installing-bare-metal.adoc
// * installing/installing_bare_metal/installing-restricted-networks-bare-metal.adoc
// * installing/installing_vsphere/installing-restricted-networks-vsphere.adoc
// * installing/installing_vsphere/installing-vsphere.adoc
// * registry/configuring-registry-storage/configuring-registry-storage-baremetal.adoc
// * registry/configuring-registry-storage/configuring-registry-storage-vsphere.adoc

[id="registry-change-management-state_{context}"]
= Change image registry ManagementState

To start the image registry, you must change `ManagementState` Image Registry Operator configuration from `Removed` to `Managed`.

.Procedure

* Change `ManagementState` Image Registry Operator configuration from `Removed` to `Managed`. For example:
+
[source,yaml]
----
apiVersion: imageregistry.operator.openshift.io/v1
kind: Config
metadata:
  creationTimestamp: <time>
  finalizers:
    - imageregistry.operator.openshift.io/finalizer
  generation: 3
  name: cluster
  resourceVersion:  <version>
  selfLink: <link>
spec:
  readOnly: false
  disableRedirect: false
  requests:
    read:
      maxInQueue: 0
      maxRunning: 0
      maxWaitInQueue: 0s
    write:
      maxInQueue: 0
      maxRunning: 0
      maxWaitInQueue: 0s
  defaultRoute: true
  managementState: Managed
----

// Module included in the following assemblies:
//
// * installing/installing_bare_metal/installing-bare-metal.adoc
// * installing/installing_bare_metal/installing-restricted-networks-bare-metal.adoc
// * installing/installing_vsphere/installing-restricted-networks-vsphere.adoc
// * installing/installing_vsphere/installing-vsphere.adoc
// * registry/configuring_registry_storage/configuring-registry-storage-baremetal.adoc
// * registry/configuring_registry_storage/configuring-registry-storage-vsphere.adoc
// * virt/virtual_machines/importing_vms/virt-importing-vmware-vm.adoc

[id="registry-change-management-state_{context}"]
= Changing the image registry's management state

To start the image registry, you must change the Image Registry Operator configuration's `managementState` from `Removed` to `Managed`.

.Procedure

* Change `managementState` Image Registry Operator configuration from `Removed` to `Managed`. For example:
+
[source,terminal]
----
$ oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"managementState":"Managed"}}'
----

Simplify command to change managementState

The working example shows the image registry operator config object, but the command to change the ManagementState by editing it is not provided.  As a reference, this would suffice: `oc edit configs.imageregistry.operator.openshift.io`.  However, a simpler instruction for the user would be to patch in place, command provided by this proposed commit.


= Packed deployments

We use the term 'packed deployment' to mean that everything required at runtime is built (if necessary) and packed into an archive, ready for deployment and execution in the target operating environment.

It is common to create 'uberjars' containing pre-compiled Clojure code, togther with dependent pre-compiled library code from Clojure and other JVM languages.

Advantages of this approach include:

* Start up time is fast, ideal for AWS Lambdas and for coping with sudden spikes in traffic, for example, using AWS auto-scaling groups.
* Immutable

Disadvantages include:

* Uberjars can be large, meaning they _can_ be costly to build, store and transfer across network links.
* Lossy uberjar build process, possible licensing issues and ambiguities.
* Require a full redeploy on every change
* Distance between dev and prod

NOTE: Coming soon, documentation about integration with `pack`.

= Packed deployments

We use the term 'packed deployment' to mean that everything required at runtime is built (if necessary) and packed into an archive, ready for deployment and execution in the target operating environment.

It is common to create 'uberjars' containing pre-compiled Clojure code, togther with dependent pre-compiled library code from Clojure and other JVM languages.

Advantages of this approach include:

* Start up time is fast, ideal for AWS Lambdas and for coping with sudden spikes in traffic, for example, using AWS auto-scaling groups.
* Immutable

Disadvantages include:

* Uberjars can be large, meaning they _can_ be costly to build, store and transfer across network links.
* Lossy uberjar build process, possible licensing issues and ambiguities.
* Require a full redeploy on every change
* Distance between dev and prod

== Creating an uberjar

From the top-level directory, run the following:

[source]
----
edge$ bin/uberjar main
----

This creates an uberjar named `main.jar`.

NOTE: By default, uberjars are built using the https://github.com/juxt/pack.alpha#capsule[*capsule* strategy] in
JUXT's https://github.com/juxt/pack.alpha[pack] tool.

== Running the uberjar

[source]
----
edge$ java -jar main.jar
----

Add documentation on building uberjars

Add documentation on building uberjars


== Spring Boot Application Plugin

The plugin `com.bmuschko.docker-spring-boot-application` is a highly opinionated plugin for projects applying the https://docs.spring.io/spring-boot/docs/current/reference/html/build-tool-plugins-gradle-plugin.html[Spring Boot plugin].
Under the covers the plugin preconfigures tasks for creating and pushing Docker images for your Spring Boot application.
The default configuration is tweakable via an exposed extension. The plugin https://docs.spring.io/spring-boot/docs/current/gradle-plugin/reference/html/#reacting-to-other-plugins[reacts] to either the `java` or `war` plugin.

include::31-usage.adoc[]

include::32-extension.adoc[]

include::33-tasks.adoc[]

include::34-examples.adoc[]

== Spring Boot Application Plugin

The plugin `com.bmuschko.docker-spring-boot-application` is a highly opinionated plugin for projects applying the https://docs.spring.io/spring-boot/docs/current/reference/html/build-tool-plugins-gradle-plugin.html[Spring Boot plugin].
Under the covers the plugin preconfigures tasks for creating and pushing Docker images for your Spring Boot application.
The default configuration is tweakable via an exposed extension. The plugin https://docs.spring.io/spring-boot/docs/current/gradle-plugin/reference/html/#reacting-to-other-plugins[reacts] to either the `java` or `war` plugin.

[IMPORTANT]
The plugin only supports projects that use a 2.x version of the Spring Boot plugin.

include::31-usage.adoc[]

include::32-extension.adoc[]

include::33-tasks.adoc[]

include::34-examples.adoc[]

Add note about supported Spring Boot plugin version


=== 5.0.0-M1

*Date of Release:* June 30, 2016

*Scope:* First milestone release of JUnit 5

==== Summary of Changes

===== JUnit Platform

- `org.junit.platform.console.ConsoleRunner` has been renamed to `ConsoleLauncher`

===== JUnit Jupiter

- `ExtensionContext.getElement()` now returns `Optional<AnnotatedElement>`.

===== JUnit Vintage

- ???

=== 5.0.0-M1

*Date of Release:* June 30, 2016

*Scope:* First milestone release of JUnit 5

==== Summary of Changes

The following is a list of global changes. For details regarding changes specific to the
Platform, Jupiter, and Vintage, consult the dedicated subsections.

.Package Migration
[cols="20,80"]
|===
| Old Base Package                 | New Base Package

| `org.junit.gen5.api`           | `org.junit.jupiter.api`
| `org.junit.gen5.commons`       | `org.junit.platform.commons`
| `org.junit.gen5.console`       | `org.junit.platform.console`
| `org.junit.gen5.engine.junit4` | `org.junit.vintage.engine`
| `org.junit.gen5.engine.junit5` | `org.junit.jupiter.engine`
| `org.junit.gen5.engine`        | `org.junit.platform.engine`
| `org.junit.gen5.gradle`        | `org.junit.platform.gradle.plugin`
| `org.junit.gen5.junit4.runner` | `org.junit.platform.runner`
| `org.junit.gen5.launcher`      | `org.junit.platform.launcher`
| `org.junit.gen5.surefire`      | `org.junit.platform.surefire.provider`
|===

===== JUnit Platform

- `org.junit.platform.console.ConsoleRunner` renamed to `ConsoleLauncher`

===== JUnit Jupiter

- `ExtensionContext.getElement()` now returns `Optional<AnnotatedElement>`

===== JUnit Vintage

- ???

Document package migration in release notes

Issue: #311


IronBee Reference Manual
========================
Brian Rectanus, Ivan Ristic
v0.9.0, 2010-2014
:doctype: book
:encoding: utf-8
:toc2:
:toclevels: 3

include::ch-preface.adoc[]

include::ch-introduction.adoc[]

include::ch-server-configuration.adoc[]

include::ch-ironbee-configuration.adoc[]

include::ch-diagnostics-devel-tools.adoc[]

include::ch-inspection.adoc[]

include::ch-rule-reference.adoc[]

include::ch-extending-ironbee.adoc[]

include::ch-installation-guide.adoc[]

include::ap-configuration-examples.adoc[]

include::ap-todo.adoc[]

include::ap-comparison-with-modsecurity.adoc[]

IronBee Reference Manual
========================
Brian Rectanus
v0.9.0, 2010-2014
:doctype: book
:encoding: utf-8
:toc2:
:toclevels: 3

include::ch-preface.adoc[]

include::ch-introduction.adoc[]

include::ch-server-configuration.adoc[]

include::ch-ironbee-configuration.adoc[]

include::ch-diagnostics-devel-tools.adoc[]

include::ch-inspection.adoc[]

include::ch-rule-reference.adoc[]

include::ch-extending-ironbee.adoc[]

include::ch-installation-guide.adoc[]

include::ap-configuration-examples.adoc[]

include::ap-todo.adoc[]

include::ap-comparison-with-modsecurity.adoc[]

docs: Remove Ivan as doc author (sorry Ivan, old asciidoc only supports one author).


[[new]]
= What's New in Spring Security 5.8

Spring Security 5.8 provides a number of new features.
Below are the highlights of the release.

* https://github.com/spring-projects/spring-security/pull/11638[gh-11638] - Refresh remote JWK when unknown KID error occurs
* https://github.com/spring-projects/spring-security/pull/11782[gh-11782] - @WithMockUser Supported as Merged Annotation
* https://github.com/spring-projects/spring-security/issues/11661[gh-11661] - Configurable authentication converter for resource-servers with token introspection
* https://github.com/spring-projects/spring-security/pull/11771[gh-11771] - `HttpSecurityDsl` should support `apply` method
* https://github.com/spring-projects/spring-security/pull/11232[gh-11232] - `ClientRegistrations#rest` defines 30s connect and read timeouts
* https://github.com/spring-projects/spring-security/pull/11464[gh-11464] - Remember Me supports SHA256 algorithm
* https://github.com/spring-projects/spring-security/pull/11908[gh-11908] - Make X-Xss-Protection header value configurable in ServerHttpSecurity

Update What's New for 5.8

Update What's New for 5.8


= Full Ergodox EZ build environment for Void Linux

Create a chroot like so:

[source]
xbps-install -S -R https://repo.voidlinux.eu/current -r /tmp/foo base-voidstrap

Then you can run.

INFO: /tmp/foo here must be absolute. Limitation of xbps-uunshare.

[source]
xbps-uunshare /tmp/foo xbps-install -- -S gcc wget unzip dfu-programmer zip make teensy_loader_cli git avr-gcc avr-libc

You can fetch qmk like so:

[source]
xbps-uunshare /tmp/foo git -- clone --depth 1 https://github.com/qmk/qmk_firmware.git

Build with

[source]
xbps-uunshare /tmp/foo /bin/sh -- -c '(cd /qmk_firmware && make ergodox-ez-default-teensy)'

= Full Ergodox EZ build environment for Void Linux

Create a chroot like so:

[source]
xbps-install -S -R https://repo.voidlinux.eu/current -r /tmp/foo base-voidstrap

Then you can run.

INFO: /tmp/foo here must be absolute. Limitation of xbps-uunshare.

[source]
xbps-uunshare /tmp/foo xbps-install -- -S gcc wget unzip dfu-programmer zip make teensy_loader_cli avr-gcc avr-libc

You can fetch qmk like so:

[source]
xbps-uunshare /tmp/foo git -- clone --depth 1 https://github.com/qmk/qmk_firmware.git

Build with

[source]
xbps-uunshare /tmp/foo /bin/sh -- -c '(cd /qmk_firmware && make ergodox-ez-default-teensy)'

Remove reference to git, prefer -b in further statement


[[release-notes-5.3.0-M1]]
== 5.3.0-M1

*Date of Release:* ❓

*Scope:* ❓

For a complete list of all _closed_ issues and pull requests for this release, consult the
link:{junit5-repo}+/milestone/23?closed=1+[5.3 M1] milestone page in the JUnit repository
on GitHub.

[[release-notes-5.3.0-M1-junit-platform]]
=== JUnit Platform

==== Bug Fixes

* ❓

==== Deprecations and Breaking Changes

* ❓

==== New Features and Improvements

* ❓

[[release-notes-5.3.0-M1-junit-jupiter]]
=== JUnit Jupiter

==== Bug Fixes

* ❓

==== Deprecations and Breaking Changes

* ❓

==== New Features and Improvements

* New `assertThrows` methods in `Assertions` provide a more specific failure
  message if the lambda returns a result instead of throwing the expected
  exception.

[[release-notes-5.3.0-M1-junit-vintage]]
=== JUnit Vintage

==== Bug Fixes

* ❓

==== Deprecations and Breaking Changes

* ❓

==== New Features and Improvements

* ❓

[[release-notes-5.3.0-M1]]
== 5.3.0-M1

*Date of Release:* ❓

*Scope:* ❓

For a complete list of all _closed_ issues and pull requests for this release, consult the
link:{junit5-repo}+/milestone/23?closed=1+[5.3 M1] milestone page in the JUnit repository
on GitHub.

[[release-notes-5.3.0-M1-junit-platform]]
=== JUnit Platform

==== Bug Fixes

* Full stacktrace is printed to the console, when running the `ConsoleLauncher`
  in `--details verbose` mode.

==== Deprecations and Breaking Changes

* ❓

==== New Features and Improvements

* ❓

[[release-notes-5.3.0-M1-junit-jupiter]]
=== JUnit Jupiter

==== Bug Fixes

* ❓

==== Deprecations and Breaking Changes

* ❓

==== New Features and Improvements

* New `assertThrows` methods in `Assertions` provide a more specific failure
  message if the lambda returns a result instead of throwing the expected
  exception.

[[release-notes-5.3.0-M1-junit-vintage]]
=== JUnit Vintage

==== Bug Fixes

* ❓

==== Deprecations and Breaking Changes

* ❓

==== New Features and Improvements

* ❓

Document `--details verbose` stacktrace emission fix


==== Changes to Configuration Model

In preparation for Hibernate 5.2 support the previous "SessionFactoryBean" notion has been removed. Now if you wish to customize `SessionFactory` creation you should instead register a custom `org.grails.orm.hibernate.connections.HibernateConnectionSourceFactory` in Spring.

==== IdentityEnumType Handling Changed

Previous versions of GORM shipped with a `org.grails.orm.hibernate.cfg.IdentityEnumType` class for altering the handling of enums. In order to support different versions of Hibernate 5.x which feature different signatures for the `org.hibernate.usertype.UserType` interface this class has been removed.

If you wish to obtain the same functionality you need to change your `mapping` block to:

[source,groovy]
----
static mapping = {
   myEnum enumType:"identity"
}
----

==== Changes to Support Hibernate 5.2

Hibernate 5.2 includes many breaking API changes, in order to support Hibernate 5.2 several classes have been removed or rewritten. Including:

* `org.grails.orm.hibernate.proxy.GroovyAwareJavassistLazyInitializer`
* `org.grails.orm.hibernate.proxy.GroovyAwareJavassistProxyFactory`
* `org.grails.orm.hibernate.persister.entity.GroovyAwareJoinedSubclassEntityPersister`
* `org.grails.orm.hibernate.persister.entity.GroovyAwareSingleTableEntityPersister`

Most of these classes are considered internal, however if you have extended or references these classes you may need to modify your code appropriately.

Update upgrade notes regarding Hibernate 5.2


[[vm-max-map-count]]
=== Virtual memory

Elasticsearch uses a <<default_fs,`mmapfs`>> directory by
default for 64bit systems to store its indices.  The default operating system limits on mmap
counts is likely to be too low, which may result in out of memory exceptions.

On Linux, you can increase the limits by running the following command as
`root`:

[source,sh]
-------------------------------------
sysctl -w vm.max_map_count=262144
-------------------------------------

To set this value permanently, update the `vm.max_map_count` setting in
`/etc/sysctl.conf`.  To verify after rebooting, run `sysctl vm.max_map_count`.

The RPM and Debian packages will configure this setting automatically.  No
further configuration is required.

[[vm-max-map-count]]
=== Virtual memory

Elasticsearch uses a <<default_fs,`mmapfs`>> directory by
default to store its indices.  The default operating system limits on mmap
counts is likely to be too low, which may result in out of memory exceptions.

On Linux, you can increase the limits by running the following command as
`root`:

[source,sh]
-------------------------------------
sysctl -w vm.max_map_count=262144
-------------------------------------

To set this value permanently, update the `vm.max_map_count` setting in
`/etc/sysctl.conf`.  To verify after rebooting, run `sysctl vm.max_map_count`.

The RPM and Debian packages will configure this setting automatically.  No
further configuration is required.

Remove another reference to 64-bit systems.


===== Delete Amazon Load Balancer

====== Type

+deleteAmazonLoadBalancer+

====== Description

This stage provides orchestration for deleting an Amazon Elastic Load Balancer. This is a destructive process, which cannot be reversed. If the provided +loadBalancerName+ is not found for _all_ provided +regions+, the operation will fail validation.

CAUTION: This operation marks the end of a Load Balancer's life. The process cannot be undone, and the configuration cannot be reconstituted. A load balancer of the same configuration will need to be recreated from scratch.

====== Services Involved

_orca_, _kato_, _oort_

====== Steps

_deleteAmazonLoadBalancer_, _forceCacheRefresh_, _monitorDelete_, _sendNotification_

====== Example Request Body
[source,javascript]
----
{
  "type": "deleteAmazonLoadBalancer",
  "loadBalancerName": "kato-main-frontend",
  "regions": ["us-east-1", "us-west-1", "us-west-2", "eu-west-1"],
  "credentials": "test"
}
----

====== Description of inputs

[width="100%",frame="topbot",options="header,footer"]
|======================
|Key               | Type   | Required | Value
|loadBalancerName  | string | true     | The name of the load balancer.
|regions           | array  | true     | An object that provides a named region to array of region names. For example, +["us-east-1", "us-west-1"]+ will inform the deployment engine to delete the ELB those specific regions.
|credentials       | string | true     | The named account credentials that are to be used for this operation.
|======================

===== Delete Amazon Load Balancer

====== Type

+deleteAmazonLoadBalancer+

====== Description

This stage provides orchestration for deleting an Amazon Elastic Load Balancer. This is a destructive process, which cannot be reversed.

CAUTION: This operation marks the end of a Load Balancer's life. The process cannot be undone, and the configuration cannot be reconstituted. A load balancer of the same configuration will need to be recreated from scratch.

====== Services Involved

_orca_, _kato_, _oort_

====== Steps

_deleteAmazonLoadBalancer_, _forceCacheRefresh_, _monitorDelete_

====== Example Request Body
[source,javascript]
----
{
  "type": "deleteAmazonLoadBalancer",
  "loadBalancerName": "kato-main-frontend",
  "regions": ["us-east-1", "us-west-1", "us-west-2", "eu-west-1"],
  "credentials": "test"
}
----

====== Description of inputs

[width="100%",frame="topbot",options="header,footer"]
|======================
|Key               | Type   | Required | Value
|loadBalancerName  | string | true     | The name of the load balancer.
|regions           | array  | true     | An object that provides a named region to array of region names. For example, +["us-east-1", "us-west-1"]+ will inform the deployment engine to delete from those specific regions.
|credentials       | string | true     | The named account credentials that are to be used for this operation.
|======================

Update and fix errors in delete ELB docs


[[breaking_70_plugins_changes]]
=== Plugins changes

==== Azure Repository plugin

* The legacy azure settings which where starting with `cloud.azure.storage.` prefix have been removed.
This includes `account`, `key`, `default` and `timeout`.
You need to use settings which are starting with `azure.client.` prefix instead.

* Global timeout setting `cloud.azure.storage.timeout` has been removed.
You must set it per azure client instead. Like `azure.client.default.timeout: 10s` for example.

See {plugins}/repository-azure-usage.html#repository-azure-repository-settings[Azure Repository settings].

==== Google Cloud Storage Repository plugin

* The repository settings `application_name`, `connect_timeout` and `read_timeout` have been removed and
must now be specified in the client settings instead.

See {plugins}/repository-gcs-client.html#repository-gcs-client[Google Cloud Storage Client Settings].

[[breaking_70_plugins_changes]]
=== Plugins changes

==== Azure Repository plugin

* The legacy azure settings which where starting with `cloud.azure.storage.` prefix have been removed.
This includes `account`, `key`, `default` and `timeout`.
You need to use settings which are starting with `azure.client.` prefix instead.

* Global timeout setting `cloud.azure.storage.timeout` has been removed.
You must set it per azure client instead. Like `azure.client.default.timeout: 10s` for example.

See {plugins}/repository-azure-repository-settings.html#repository-azure-repository-settings[Azure Repository settings].

==== Google Cloud Storage Repository plugin

* The repository settings `application_name`, `connect_timeout` and `read_timeout` have been removed and
must now be specified in the client settings instead.

See {plugins}/repository-gcs-client.html#repository-gcs-client[Google Cloud Storage Client Settings].

Fix broken cross link in documentation

[Docs] Fix broken cross link in documentation


= Spring Cloud Data Flow Reference Guide
Sabby Anandan; Marius Bogoevici; Eric Bottard; Mark Fisher; Ilayaperumal Gopinathan; Gunnar Hillert; Mark Pollack; Patrick Peralta; Glenn Renfro; Thomas Risberg; Dave Syer; David Turanski; Janne Valkealahti
:doctype: book
:toc:
:toclevels: 4
:source-highlighter: prettify
:numbered:
:icons: font
:hide-uri-scheme:

:spring-cloud-dataflow-docs: http://docs.spring.io/spring-cloud-dataflow/docs/{project-version}/reference
:spring-cloud-dataflow-docs-current: http://docs.spring.io/spring-cloud-dataflow/docs/current-SNAPSHOT/reference/html/
:github-repo: spring-projects/spring-cloud-dataflow
:github-code: http://github.com/{github-repo}

:dataflow-asciidoc: https://raw.githubusercontent.com/spring-cloud/spring-cloud-dataflow/master/spring-cloud-dataflow-docs/src/main/asciidoc

// ======================================================================================

include::preface.adoc[]
include::spring-cloud-dataflow-overview.adoc[]
include::architecture.adoc[]
include::getting-started.adoc[]
include::streams.adoc[]
include::tasks.adoc[]
include::dashboard.adoc[]
include::howto.adoc[]
include::appendix.adoc[]

// ======================================================================================

= Spring Cloud Data Flow Reference Guide
Sabby Anandan; Marius Bogoevici; Eric Bottard; Mark Fisher; Ilayaperumal Gopinathan; Gunnar Hillert; Mark Pollack; Patrick Peralta; Glenn Renfro; Thomas Risberg; Dave Syer; David Turanski; Janne Valkealahti
:doctype: book
:toc:
:toclevels: 4
:source-highlighter: prettify
:numbered:
:icons: font
:hide-uri-scheme:

:spring-cloud-dataflow-docs: http://docs.spring.io/spring-cloud-dataflow/docs/{project-version}/reference
:spring-cloud-dataflow-docs-current: http://docs.spring.io/spring-cloud-dataflow/docs/current-SNAPSHOT/reference/html/
:github-repo: spring-cloud/spring-cloud-dataflow
:github-code: http://github.com/{github-repo}

:dataflow-asciidoc: https://raw.githubusercontent.com/spring-cloud/spring-cloud-dataflow/master/spring-cloud-dataflow-docs/src/main/asciidoc

// ======================================================================================

include::preface.adoc[]
include::spring-cloud-dataflow-overview.adoc[]
include::architecture.adoc[]
include::getting-started.adoc[]
include::streams.adoc[]
include::tasks.adoc[]
include::dashboard.adoc[]
include::howto.adoc[]
include::appendix.adoc[]

// ======================================================================================

Fix GitHub repo url in adoc files

Fix GitHub repo url in adoc files


//
// Copyright (c) 2016-2017 Eclipse Microprofile Contributors:
// Red Hat
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

= Interoperable JWT RBAC for Microprofile
:author: Scott Stark; Pedro Igor Silva
:email: sstark@redhat.com
:revnumber: 1.0
:revdate: 2017-09-14
:revremark: Proposed Final Draft
:version-label!:
:sectanchors:
:doctype: book
:license: Apache License v2.0
:source-highlighter: coderay
:toc: left
:toclevels: 4
:sectnumlevels: 4
ifdef::backend-pdf[]
:pagenums:
endif::[]

include::license-alv2.asciidoc[]

include::background.asciidoc[]

include::interoperability.asciidoc[]

include::future-directions.asciidoc[]

include::sample-impl.asciidoc[]

//
// Copyright (c) 2016-2017 Eclipse Microprofile Contributors:
// Red Hat
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

= Eclipse MicroProfile Interoperable JWT RBAC
:author: Scott Stark; Pedro Igor Silva
:email: microprofile@googlegroups.com
:revnumber: 1.0
:revdate: 2017-09-14
:revremark: Proposed Final Draft
:version-label!:
:sectanchors:
:doctype: book
:license: Apache License v2.0
:source-highlighter: coderay
:toc: left
:toclevels: 4
:sectnumlevels: 4
ifdef::backend-pdf[]
:pagenums:
:numbered:
endif::[]

include::license-alv2.asciidoc[]

include::background.asciidoc[]

include::interoperability.asciidoc[]

include::future-directions.asciidoc[]

include::sample-impl.asciidoc[]

Update title and email. Add section numbers.


[[search-aggregations-metrics-geobounds-aggregation]]
=== Geo Bounds Aggregation

A metric aggregation that computes the bounding box containing all geo_point values for a field.

.Experimental!
[IMPORTANT]
=====
This feature is marked as experimental, and may be subject to change in the
future.  If you use this feature, please let us know your experience with it!
=====

Example:

[source,js]
--------------------------------------------------
{
    "query" : {
        "match" : { "business_type" : "shop" }
    },
    "aggs" : {
        "viewport" : {
            "geo_bounds" : {
                "field" : "location" <1>
                "wrap_longitude" : "true" <2>
            }
        }
    }
}
--------------------------------------------------

<1> The `geo_bounds` aggregation specifies the field to use to obtain the bounds
<2> `wrap_longitude` is an optional parameter which specifies whether the bounding box should be allowed to overlap the international date line. The default value is `true`

The above aggregation demonstrates how one would compute the bounding box of the location field for all documents with a business type of shop

The response for the above aggregation:

[source,js]
--------------------------------------------------
{
    ...

    "aggregations": {
        "viewport": {
            "bounds": {
                "top_left": {
                    "lat": 80.45,
                    "lon": -160.22
                },
                "bottom_right": {
                    "lat": 40.65,
                    "lon": 42.57
                }
            }
        }
    }
}
--------------------------------------------------

[[search-aggregations-metrics-geobounds-aggregation]]
=== Geo Bounds Aggregation

A metric aggregation that computes the bounding box containing all geo_point values for a field.

.Experimental!
[IMPORTANT]
=====
This feature is marked as experimental, and may be subject to change in the
future.  If you use this feature, please let us know your experience with it!
=====

Example:

[source,js]
--------------------------------------------------
{
    "query" : {
        "match" : { "business_type" : "shop" }
    },
    "aggs" : {
        "viewport" : {
            "geo_bounds" : {
                "field" : "location", <1>
                "wrap_longitude" : true <2>
            }
        }
    }
}
--------------------------------------------------

<1> The `geo_bounds` aggregation specifies the field to use to obtain the bounds
<2> `wrap_longitude` is an optional parameter which specifies whether the bounding box should be allowed to overlap the international date line. The default value is `true`

The above aggregation demonstrates how one would compute the bounding box of the location field for all documents with a business type of shop

The response for the above aggregation:

[source,js]
--------------------------------------------------
{
    ...

    "aggregations": {
        "viewport": {
            "bounds": {
                "top_left": {
                    "lat": 80.45,
                    "lon": -160.22
                },
                "bottom_right": {
                    "lat": 40.65,
                    "lon": 42.57
                }
            }
        }
    }
}
--------------------------------------------------

Fix missing comma and boolean true

Docs: Fix missing comma and boolean true

Closes #9350


Fix missing comma and boolean true


:libVersion: 0.1.7

# ADAL

image:https://api.bintray.com/packages/jmspt/maven/adal/images/download.svg[Build Status,link=https://bintray.com/jmspt/maven/adal/_latestVersion]

Android Development Accelaration Library

Add the dependency in the form:
[source, groovy, subs='attributes']
dependencies {
  /* Include all modules */
  compile 'com.massivedisaster.adal:adal:{libVersion}'
  /* Specific modules*/
  compile 'com.massivedisaster.adal:adal-accounts:{libVersion}'
  compile 'com.massivedisaster.adal:adal-adapters:{libVersion}'
  compile 'com.massivedisaster.adal:adal-analytics:{libVersion}'
  compile 'com.massivedisaster.adal:adal-bus:{libVersion}'
  compile 'com.massivedisaster.adal:adal-fragments:{libVersion}'
  compile 'com.massivedisaster.adal:adal-managers:{libVersion}'
  compile 'com.massivedisaster.adal:adal-network:{libVersion}'
  compile 'com.massivedisaster.adal:adal-utils:{libVersion}'
  compile 'com.massivedisaster.adal:adal-location:{libVersion}'
}

### License
[GNU LESSER GENERAL PUBLIC LICENSE](LICENSE.md)

Add readme reference to license.

Add readme reference to license.


= clojuTRE
clojuTRE
2017-09-02
:jbake-type: event
:jbake-edition: 2017
:jbake-link: http://clojutre.org/2017/
:jbake-location: Tampere, Finland
:jbake-start: 2017-09-92
:jbake-end: 2017-09-02

clojuTRE is a free Clojure conference organized by http://www.metosin.fi/[Metosin]. The event has single track, late start, short talks (20 minutes and 5 minutes Q&A) and a funky after party for networking, discussions and draft beer. We welcome both newbies and seasoned Clojurists.

= clojuTRE
clojuTRE
2017-09-02
:jbake-type: event
:jbake-edition: 2017
:jbake-link: http://clojutre.org/2017/
:jbake-location: Tampere, Finland
:jbake-start: 2017-09-02
:jbake-end: 2017-09-02

clojuTRE is a Clojure conference organized by http://www.metosin.fi/[Metosin]. The event has single track, late start, short talks (20 minutes and 5 minutes Q&A) and a funky after party for networking, discussions and draft beer. We welcome both newbies and seasoned Clojurists.

Fix type on Clojutre start date

Fix type on Clojutre start date