Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...


An issue is required for

Everything else, in particular:

  • Anything that changes functionality or behavior relevant to users

  • Anything that changes functionality or behavior relevant to other components

  • Anything that adds a feature
Multiple commits may refer to the same issue, if the issue is fixed in multiple steps.
[FLINK-1234] [runtime] Runtime support some cool new thing
[FLINK-1234] [java api] Add hook for cool thing to java api
[FLINK-1234] [scala api] Add hook for that thing to scala api
[FLINK-1234] [optimizer] Make optimizer aware that it can exploit this thing

Pull Requests

External contributions are submitted through pull requests.
Committers must also create pull requests to open their code for review under certain circumstances.
A pull request with comments/additional signoff is required for anything that
  •   breaks the public APIs
  •   adds methods to the public APIs (that will need to be kept stable from them on)
  •   alters user-facing behavior (e.g., mutability of types, null value handling, window semantics, ...)
  •   adds user-facing knobs (switches, config parameters, execution option on the execution environment)
  •   adds additional maven dependencies
  •   changes the way components interact
  •   touches highly sensitive and performance critical parts, such memory management or network stack
==> Changes that come with a pull request should have one or more issues associated with them.
Anyone that wants to have comments or some additional pairs of eyes in the code should make a pull request as well
.

Naming scheme for commits

The basic naming scheme for commits is 
[issue|hotfix] [component] Message
for example
[FLINK-9876] [streaming] Extend state checkpointing protocol

...

or

[hotfix] [docs] Extend state checkpointing protocol
Tags are encouraged, especially for changes that affect a single component. Changes that affect many components may omit the tag.