-
Notifications
You must be signed in to change notification settings - Fork 9.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cut v1.2.0 #2059
Cut v1.2.0 #2059
Conversation
* [FEATURE] Enable the use of query parameters in `/graph` URLs. | ||
* [FEATURE] PromQL: Add `minute()` function. | ||
* [FEATURE] Add GCE service discovery. | ||
* [FEATURE] Allow job names to start with a digit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIRC we actually changed that PR to allow arbitrary job names now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. I'd write "Allow all valid label values as job names in config files."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
@@ -1,3 +1,43 @@ | |||
## 1.2.0 / 2016-10-07 | |||
|
|||
* [FEATURE] Enable the use of query parameters in `/graph` URLs. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe more like "Cleaner encoding of query parameters in /graph
URLs" or so?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
* [FEATURE] Allow disabling local storage. | ||
* [FEATURE] EC2 service discovery: Expose `ec2_instance_state`. | ||
* [FEATURE] HTTP basic auth and TLS support for remote write path. | ||
* [FEATURE] Support for relabelling in remote write path. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a heads-up: this and remote write configuration in general aren't documented yet. Remote write in general should be documented as experimental. I filed two issues:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I marked those features as belonging to an experimental part of the project.
Below changes are not considered breaking because they affect parts marked as | ||
experimental or unstable: | ||
|
||
* [CHANGE] Remote write path does not use gRPC anymore. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, the remote write path is now configured via the configuration file, not via a flag anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still under "experimental" scope, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Added.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
* [FEATURE] Enable the use of query parameters in `/graph` URLs. | ||
* [FEATURE] PromQL: Add `minute()` function. | ||
* [FEATURE] Add GCE service discovery. | ||
* [FEATURE] Allow job names to start with a digit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes. I'd write "Allow all valid label values as job names in config files."
* [FEATURE] EC2 service discovery: Expose `ec2_instance_state`. | ||
* [FEATURE] HTTP basic auth and TLS support for remote write path. | ||
* [FEATURE] Support for relabelling in remote write path. | ||
* [ENHANCEMENT] Add `go_import_path` to Travis so it works on a fork. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a build internal and I wouldn't mention it here, as it doesn't help me as operator when reviewing a version update changelog.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you believe it's important to mention such commits, I'd use a different group for such changes and move it to the bottom.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [FEATURE] HTTP basic auth and TLS support for remote write path. | ||
* [FEATURE] Support for relabelling in remote write path. | ||
* [ENHANCEMENT] Add `go_import_path` to Travis so it works on a fork. | ||
* [ENHANCEMENT] Makefile: Promu installation now logged. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Dito.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [CLEANUP] Export various identifiers for better code reuse. | ||
* [CLEANUP] Cleanup code issues reported by goreport and added link to | ||
goreport in README.md. | ||
* [CLEANUP] Various other minor code cleanups and fixed typos. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, this got quite spammy but I recall us having agreed long ago to only list changes that affect operators and users long ago.
This is largely noise to people who want to find out if and why the should upgrade.
* [CLEANUP] Consolidate web API contexts. Update `common/route` vendoring. | ||
* [CLEANUP] Storage: Chunk code in own package. Added Utilization method. | ||
* [CLEANUP] Export various identifiers for better code reuse. | ||
* [CLEANUP] Cleanup code issues reported by goreport and added link to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [CLEANUP] Add contexts to PromQL and storage interfaces. | ||
* [CLEANUP] Consolidate web API contexts. Update `common/route` vendoring. | ||
* [CLEANUP] Storage: Chunk code in own package. Added Utilization method. | ||
* [CLEANUP] Export various identifiers for better code reuse. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user. Only package users might be interested, who are not tied to the versioning scheme of the binary releases.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [CLEANUP] More tests for PromQL time functions. | ||
* [CLEANUP] Add contexts to PromQL and storage interfaces. | ||
* [CLEANUP] Consolidate web API contexts. Update `common/route` vendoring. | ||
* [CLEANUP] Storage: Chunk code in own package. Added Utilization method. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user. Only package users might be interested, who are not tied to the versioning scheme of the binary releases.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [CLEANUP] Remove DNS resolution dependency from tests. | ||
* [CLEANUP] More tests for PromQL time functions. | ||
* [CLEANUP] Add contexts to PromQL and storage interfaces. | ||
* [CLEANUP] Consolidate web API contexts. Update `common/route` vendoring. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [BUGFIX] Handle NaN in `changes()` correctly. | ||
* [CLEANUP] Remove DNS resolution dependency from tests. | ||
* [CLEANUP] More tests for PromQL time functions. | ||
* [CLEANUP] Add contexts to PromQL and storage interfaces. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
is down. | ||
* [BUGFIX] Handle NaN in `changes()` correctly. | ||
* [CLEANUP] Remove DNS resolution dependency from tests. | ||
* [CLEANUP] More tests for PromQL time functions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [BUGFIX] Do not fail Consul discovery on Prometheus startup when Consul | ||
is down. | ||
* [BUGFIX] Handle NaN in `changes()` correctly. | ||
* [CLEANUP] Remove DNS resolution dependency from tests. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Irrelevant to the user.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [FEATURE] Support for relabelling in remote write path. | ||
* [ENHANCEMENT] Add `go_import_path` to Travis so it works on a fork. | ||
* [ENHANCEMENT] Makefile: Promu installation now logged. | ||
* [ENHANCEMENT] Fingerprint locking: Avoid having contended mutexes on |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very implementation specific. Not every user will understand what this means for them in practice.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed as per general discussion.
* [ENHANCEMENT] Makefile: Promu installation now logged. | ||
* [ENHANCEMENT] Fingerprint locking: Avoid having contended mutexes on | ||
same cacheline. | ||
* [ENHANCEMENT] Avoid slow `defer` in the `seriesMap.get` hot spot. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very implementation specific. Not every user will understand what this means for them in practice.
Possibly consolidate the performance improvements into a single understandable entry.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consolidated into "Various performance improvements in local storage."
* [BUGFIX] Zookeeper service discovery: Remove deleted nodes. | ||
* [BUGFIX] Zookeeper service discovery: Resync state after Zookeeper failure. | ||
* [BUGFIX] Remove JSON from HTTP Accept header. | ||
* [BUGFIX] Update govalidator vendoring to fix URL validation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For the user this means fixed Alertmanager URL flags, which is not clear.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changed.
I do not recall anything like that. I (strongly) think the changelog should document all changes, for all audiences (operators, builders, developers, users, …). Obviously, I wouldn't document "added a period at the end of doc comment", in those cases we should make the call and just summarize it as "various code cleanups", as I have done here. As usual, I'm willing to bend to a majority decision of qualified people. Before changing anything in this PR, could we have a quick straw poll what the target audience of the changelog should be? @fabxc and myself have already cast their vote. @grobie seems to be on the same train as @fabxc (which would hint towards the existence of such an undocumented agreement). (Although I have to say that the comment @grobie was referring to is actually relevant to operators, should said operators maintain a fork of Prometheus, which might be common in larger organizations that audit code and build their own binaries from it.) |
Changelog should be aimed primarily at users. If someone wants a blog by blow they can look at the commit history. My blog being the only usable source of user-relevant changelog info would not be good for the project IMHO. |
I'm confident anyone maintaining an internal fork and audits changes will not trust a changelog regardless of its verbosity. They also know how to run Yes, it does include a few commits adding periods to doc comments or whatnot – those are a pollution of history and waste of everyone's time in the first place. (Dozens of people are emailed about it, and at least 5 of them are taking action on each of them.) |
As someone who has to regularly review and apply updates of software, I Changes to internal code structure, test setup, build infrastructure, etc. The small active developer audience continuously being interested in such On Fri, Oct 7, 2016, 10:57 Brian Brazil notifications@github.com wrote:
|
Thanks for casting your votes. I think we have quorum. I'll update the documentation and this PR accordingly. |
It now follows the policy of only documenting user-relevant changes.
CHANGELOG abbreviated according to new guideline and all other comments addressed. I also removed again the separate CHANGES section for experimental features. The intention was to not have a big and fat breaking change on top of the list (for a minor release). Now I have grouped all changes to the remote write path at the bottom of the list and marked them cleary as experimental so people don't get scared about the breaking changes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. LGTM
Thanks everybody. Now working on the remaining steps for the release. |
It's about time.
@brian-brazil @fabxc @juliusv @grobie all good? Anything else that has to go in?