It is:
- quicker to install
- easier to get repeatable results
- Takes up less space (130MB/15k files vs 190MB/23k files)
- nicer to user (has better help)
These changes do a number of things:
- Add colours to the output so I can easily see which issues against a
release are still open
- Order the Jira issues by update date (so oldest updated are at the
bottom) - the older issuer will likely cherry-pick better if done in
the bottom to top order
- Add an `--unmerged` flag to only show un-merged issues in the output
- Attempt to find the PR# and merge commit from master branch for a
given jira issue. This won't cope with the case where we have multiple
PRs targeting one issue.
This adds ASF license headers to all the .rst and .md files with the
exception of the Pull Request template (as that is included verbatim
when opening a Pull Request on Github which would be messy)
This is a script that checks if the Jira's marked as fixed in a release
are actually merged in - getting this working is helpful to me in
preparing 1.10.1
- Dictionary creation should be written by dictionary literal
- Python’s default arguments are evaluated once when the function is defined, not each time the function is called (like it is in say, Ruby). This means that if you use a mutable default argument and mutate it, you will and have mutated that object for all future calls to the function as well.
- Functions calling sets which can be replaced by set literal are now replaced by set literal
- Replace list literals
- Some of the static methods haven't been set static
- Remove redundant parentheses
When working towards a release it is convenient to
be able to compare
what has been merged into the current branch and
what has not.
Closes#2231 from bolkedebruin/AIRFLOW-1091
Some big UX improvements to the PR tool:
AIRFLOW-423: commit messages are automatically wrapped at 50 characters. Paragraph breaks and tab indents are preserved. The first line of the commit is NOT forced to be 72 characters because handling this on subsequent lines is challenging. This is also deployed throughout the PR tool to make long status messages prettier.
https://issues.apache.org/jira/browse/AIRFLOW-423
AIRFLOW-424: this commit fixes a number of whitespace and formatting issues. It’s only contribution to functionality is that the JIRA resolution process is a little clearer.
https://issues.apache.org/jira/browse/AIRFLOW-424
AIRFLOW-426: I think this one is pretty cool. If the PR author mentions a JIRA issue anywhere in their PR (including on GitHub or buried in a commit), then the PR tool will automatically add it to the PR title. It even catches misformatted ones. So if the 20th commit mentions “AIRFLOW - -426” somewhere in its body, you’ll still get “[AIRFLOW-426]” in the squash commit subject.
https://issues.apache.org/jira/browse/AIRFLOW-426
AIRFLOW-427: You can now run the PR tool from anywhere (previously you had to be `cd`'d to the Airflow git repo or set an env var)
https://issues.apache.org/jira/browse/AIRFLOW-427
[AIRFLOW-423] Add reflow function to PR tool
The reflow function takes a string and wraps
it to a specified width. It preserves
paragraph breaks and 4+ space indentation.
[AIRFLOW-424] Make JIRA process more clear
Small improvements to UX around
closing JIRA issues.
Also a number of whitespace edits
to clean up the PR tool code.
[AIRFLOW-426] Automatically add JIRA references in PR Tool
When squashing commits, the PR tool will automatically add a reference
to any JIRA issue found in the PR body or commits.
[AIRFLOW-427] Automatically set AIRFLOW_GIT_LOCATION
Previously, you had to run this file from the airflow git
directory unless you set an AIRFLOW_GIT env var.
Closes#1728 from jlowin/pr-tool
Previously, the “fail” function was called, which exited the entire
program. By returning from this function, we allow the JIRA loop to
resume and users can continue closing other issues.
Previously, we always used the PR title as the squash commit subject.
Now, if the squash contains only one commit, then we use the commit
message for the squash commit message. If the squash contains more than
one commit, we default to the old behavior (using the PR title). We
still ask if the user wants to include the PR body, but we only ask if
they want to include the individual commits if there was more than one.