Skip to content

Commit

Permalink
Merge pull request #418 from PagerDuty/prep-v1.5.0
Browse files Browse the repository at this point in the history
Prepare CHANGELOG for v1.5.0 release
  • Loading branch information
theckman committed Jan 22, 2022
2 parents b6af2c1 + 1ae3e14 commit 2d51a3e
Show file tree
Hide file tree
Showing 2 changed files with 117 additions and 13 deletions.
106 changes: 104 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,111 @@
# Changelog

## [v1.5.0](https://github.com/PagerDuty/go-pagerduty/tree/v1.5.0) (2022-01-22) - BREAKING CHANGES

[Milestone](https://github.com/PagerDuty/go-pagerduty/milestone/2)
[Full Changelog](https://github.com/PagerDuty/go-pagerduty/compare/v1.4.3...v1.5.0)

**NOTICE**

This release is special, and intentionally includes breaking API changes without
bumping the module's major version. We apologize for any inconveience this
causes, but we felt this approach was better than incurring the cost of
releasing v2 today. Specifically, we believed it was best to break the API, so
that you became aware of features you depended on that were not working as you
expected. We welcome your feedback on this decision via a GitHub issue.

These changes largely fix API issues that would have made it impossible for the
this module to be used correctly. Most often this is due to incorrect or invalid
struct fields, others were a lack of required inputs to specific actions.

We commit henceforth to maintaining API compatibility for future v1 releases.

**Highlights**

- Add support for handling signature verification of V3 Webhook requests.
- Update `APIError` type to provide more helpful error strings.
- Add support for API debugging, by allowing capture of the request/response from the API.
- Added various missing fields to different structs.
- Add support for response plays, fetching audit records, and setting up email filters.

**Breaking changes**

- Fix the ResponderRequest input/output structures [\#328](https://github.com/PagerDuty/go-pagerduty/pull/328) ([CerealBoy](https://github.com/CerealBoy))
- Fix overlapping struct fields in Incident, Service, and User types [\#332](https://github.com/PagerDuty/go-pagerduty/pull/332) ([theckman](https://github.com/theckman))
- Remove *http.Response return from different API methods. [\#357](https://github.com/PagerDuty/go-pagerduty/pull/357) [\#358](https://github.com/PagerDuty/go-pagerduty/pull/358) [\#359](https://github.com/PagerDuty/go-pagerduty/pull/359) [\#360](https://github.com/PagerDuty/go-pagerduty/pull/360) [\#361](https://github.com/PagerDuty/go-pagerduty/pull/361) ([theckman](https://github.com/theckman))
- Add missing required From parameter to ManageIncidentAlerts [\#380](https://github.com/PagerDuty/go-pagerduty/pull/380) ([theckman](https://github.com/theckman))
- Fix mismatches between REST API and struct definitions [\#396](https://github.com/PagerDuty/go-pagerduty/pull/396) [\#414](https://github.com/PagerDuty/go-pagerduty/pull/414) ([theckman](https://github.com/theckman))
- Update pagination query params to conform to API spec [\#405](https://github.com/PagerDuty/go-pagerduty/pull/405) ([theckman](https://github.com/theckman)

**Closed issues**

- incident.ID or incident.Id [\#218](https://github.com/PagerDuty/go-pagerduty/issues/218) ([mblaschke](https://github.com/mblaschke))
- Improper unmarshalling [\#232](https://github.com/PagerDuty/go-pagerduty/issues/232) ([Erog38](https://github.com/Erog38))
- Update initialisms / acronyms to be capitalized [\#268](https://github.com/PagerDuty/go-pagerduty/issues/268) ([theckman](https://github.com/theckman))
- Add IncidentDetails.Title field and mark IncidentDetails.Description as deprecated [\#277](https://github.com/PagerDuty/go-pagerduty/issues/277) ([theckman](https://github.com/theckman))
- Remove *http.Response returns from API methods [\#305](https://github.com/PagerDuty/go-pagerduty/issues/305) ([theckman](https://github.com/theckman))
- Add ability to create or update integrations with email filter rules [\#315](https://github.com/PagerDuty/go-pagerduty/issues/315) ([gerardocorea](https://github.com/gerardocorea))
- EscalationRule struct should accept a slice of APIReference rather then APIObject for Targets [\#316](https://github.com/PagerDuty/go-pagerduty/issues/316) ([gerardocorea](https://github.com/gerardocorea))
- User slice fields missing omitempty [\#343](https://github.com/PagerDuty/go-pagerduty/issues/343) ([theckman](https://github.com/theckman))
- Should all fields in Service type be omitempty [\#348](https://github.com/PagerDuty/go-pagerduty/issues/348) ([callumj](https://github.com/callumj))
- ManageIncidentsOptions doesn't take EscalationLevel [\#364](https://github.com/PagerDuty/go-pagerduty/issues/364) ([sim1s](https://github.com/sim1s))
- Setting conference information in new incident [\#373](https://github.com/PagerDuty/go-pagerduty/issues/373) ([bparlidoordash](https://github.com/bparlidoordash))
- Validate that all structure formats and method signatures work with PagerDuty API [\#389](https://github.com/PagerDuty/go-pagerduty/issues/389) ([theckman](https://github.com/theckman))
- When creating an incident, consumers shouldn't need to set the Type field [\#390](https://github.com/PagerDuty/go-pagerduty/issues/390) ([theckman](https://github.com/theckman))
- Reduce code duplication in analytics.go [\#393](https://github.com/PagerDuty/go-pagerduty/issues/393) ([theckman](https://github.com/theckman))
- Add support for fetching Audit Records [\#394](https://github.com/PagerDuty/go-pagerduty/issues/394) ([theckman](https://github.com/theckman))

**Merged pull requests**

- Add assignees to log entry [\#237](https://github.com/PagerDuty/go-pagerduty/pull/237) ([tautvydass](https://github.com/tautvydass))
- Add support for better API debugging; start v1.5.0 development [\#325](https://github.com/PagerDuty/go-pagerduty/pull/325) ([theckman](https://github.com/theckman))
- Fix the ResponderRequest input/output structures [\#328](https://github.com/PagerDuty/go-pagerduty/pull/328) ([CerealBoy](https://github.com/CerealBoy))
- Fix overlapping struct fields & last golint errors [\#332](https://github.com/PagerDuty/go-pagerduty/pull/332) ([theckman](https://github.com/theckman))
- Add comment indicating IncidentDetails.Description is deprecated [\#333](https://github.com/PagerDuty/go-pagerduty/pull/333) ([theckman](https://github.com/theckman))
- Update APIError.Error() to provide more helpful error messages [\#334](https://github.com/PagerDuty/go-pagerduty/pull/334) ([theckman](https://github.com/theckman))
- Add comment above IncidentDetails.Alerts field explaining behaviors [\#335](https://github.com/PagerDuty/go-pagerduty/pull/335) ([theckman](https://github.com/theckman))
- Correct formatting of deprecation notices. [\#340](https://github.com/PagerDuty/go-pagerduty/pull/340) ([dsymonds](https://github.com/dsymonds))
- Fix `pd schedule override create`. [\#341](https://github.com/PagerDuty/go-pagerduty/pull/341) ([dsymonds](https://github.com/dsymonds))
- allow setting suppress to false [\#345](https://github.com/PagerDuty/go-pagerduty/pull/345) ([cluarkhpe](https://github.com/cluarkhpe))
- Swap two transposed words in the README file [\#350](https://github.com/PagerDuty/go-pagerduty/pull/350) ([theckman](https://github.com/theckman))
- Fixing link to PD API Reference [\#356](https://github.com/PagerDuty/go-pagerduty/pull/356) ([stmcallister](https://github.com/stmcallister))
- Remove returned *http.Response from incident-related methods [\#357](https://github.com/PagerDuty/go-pagerduty/pull/357) ([theckman](https://github.com/theckman))
- Remove returned *http.Response from business svc related methods [\#358](https://github.com/PagerDuty/go-pagerduty/pull/358) ([theckman](https://github.com/theckman))
- Remove returned *http.Response from svc dependency related methods [\#359](https://github.com/PagerDuty/go-pagerduty/pull/359) ([theckman](https://github.com/theckman))
- Remove returned *http.Response from tag-related methods [\#360](https://github.com/PagerDuty/go-pagerduty/pull/360) ([theckman](https://github.com/theckman))
- Remove returned *http.Response from ruleset-related methods [\#361](https://github.com/PagerDuty/go-pagerduty/pull/361) ([theckman](https://github.com/theckman))
- implement missing maintenance-window subcommands [\#363](https://github.com/PagerDuty/go-pagerduty/pull/363) ([Hsn723](https://github.com/Hsn723))
- Add json field incidents_responders to Incident struct [\#365](https://github.com/PagerDuty/go-pagerduty/pull/365) ([sostakas](https://github.com/sostakas))
- Adding escalation level to ManageIncidentOptions [\#366](https://github.com/PagerDuty/go-pagerduty/pull/366) ([sim1s](https://github.com/sim1s))
- Add v3 webhook signature verification [\#370](https://github.com/PagerDuty/go-pagerduty/pull/370) ([theckman](https://github.com/theckman))
- Fix test after merging #332 (2f47dfc62321b) [\#371](https://github.com/PagerDuty/go-pagerduty/pull/371) ([theckman](https://github.com/theckman))
- Add title to ManageIncidentOptions [\#372](https://github.com/PagerDuty/go-pagerduty/pull/372) ([d33d33](https://github.com/d33d33))
- Add Service and User to LogEntry [\#377](https://github.com/PagerDuty/go-pagerduty/pull/377) ([theckman](https://github.com/theckman))
- Add missing required parameeter to ManageIncidentAlerts [\#380](https://github.com/PagerDuty/go-pagerduty/pull/380) ([theckman](https://github.com/theckman))
- Handle unexpected type changes in PagerDuty REST API error responses [\#382](https://github.com/PagerDuty/go-pagerduty/pull/382) ([theckman](https://github.com/theckman))
- Add omitempty JSON tag to User slice fields [\#383](https://github.com/PagerDuty/go-pagerduty/pull/383) ([theckman](https://github.com/theckman))
- Add omitempty JSON tag to specific Service fields [\#384](https://github.com/PagerDuty/go-pagerduty/pull/384)([theckman](https://github.com/theckman))
- Add support for adding email filters for Generic Email Integrations [\#385](https://github.com/PagerDuty/go-pagerduty/pull/385) ([theckman](https://github.com/theckman))
- Support adding conference bridge when creating or managing incidents [\#391](https://github.com/PagerDuty/go-pagerduty/pull/391) ([theckman](https://github.com/theckman))
- Mark Type struct field deprecated, for incident creation + management [\#392](https://github.com/PagerDuty/go-pagerduty/pull/392) ([theckman](https://github.com/theckman))
- Fix some mismatches between REST API and struct definitions [\#396](https://github.com/PagerDuty/go-pagerduty/pull/396) ([theckman](https://github.com/theckman))
- refactor: Reduce code duplication in analytics.go [\#397](https://github.com/PagerDuty/go-pagerduty/pull/397) ([t-junjie](https://github.com/t-junjie))
- Add support for escalation_policy.on_call_handoff_notifications field [\#401](https://github.com/PagerDuty/go-pagerduty/pull/401) ([zonorti](https://github.com/zonorti))
- Missing incident fields [\#402](https://github.com/PagerDuty/go-pagerduty/pull/402) ([zonorti](https://github.com/zonorti))
- Add extension enable [\#403](https://github.com/PagerDuty/go-pagerduty/pull/403) ([zonorti](https://github.com/zonorti))
- Add support for response_plays [\#404](https://github.com/PagerDuty/go-pagerduty/pull/404) ([petetanton](https://github.com/petetanton))
- Update pagination query to conform to API spec [\#405](https://github.com/PagerDuty/go-pagerduty/pull/405) ([theckman](https://github.com/theckman))
- add createStatusUpdate [\#406](https://github.com/PagerDuty/go-pagerduty/pull/406) ([kkawamura](https://github.com/kkawamura))
- feat: Add support for fetching Audit Records [\#408](https://github.com/PagerDuty/go-pagerduty/pull/408) ([t-junjie](https://github.com/t-junjie))
- Fix linter issues, update ResponsePlays API before v1.5.0 release [\#410](https://github.com/PagerDuty/go-pagerduty/pull/410) ([theckman](https://github.com/theckman))
- Second batch of fixes for API incompatibilities [\#414](https://github.com/PagerDuty/go-pagerduty/pull/414) ([theckman](https://github.com/theckman))
- Find a way to gracefully avoid one breaking change in #405 [\#416](https://github.com/PagerDuty/go-pagerduty/pull/416) ([theckman](https://github.com/theckman))
- Fix linter issues introduced by final PR merges [\#417](https://github.com/PagerDuty/go-pagerduty/pull/417) ([theckman](https://github.com/theckman))

## [v1.4.3](https://github.com/PagerDuty/go-pagerduty/tree/v1.4.3) (2021-11-13)

[Milestone](https://github.com/PagerDuty/go-pagerduty/milestone/6)
[Full Changelog](https://github.com/PagerDuty/go-pagerduty/compare/v1.4.1...v1.4.3)
[Milestone](https://github.com/PagerDuty/go-pagerduty/milestone/6)
[Full Changelog](https://github.com/PagerDuty/go-pagerduty/compare/v1.4.2...v1.4.3)

**Highlights**
- Mitigate PagerDuty REST API bug that would result in a JSON parsing failure when reading an error response from the API. Prior to `v1.4.0` our error parsing logic was not impacted by the bug.
Expand Down
24 changes: 13 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,17 +44,19 @@ pd service list

### Client Library

#### NOTICE: Breaking API Changes in master branch

As part of the upcoming `v1.5.0` release, we will be fixing features that have
never worked correctly and require a breaking API change to fix. One example is
the issue reported in [\#232](https://github.com/PagerDuty/go-pagerduty/issues/232),
as well as a handful of other examples within the
[v1.5.0 milestone](https://github.com/PagerDuty/go-pagerduty/milestone/2).

As a result, the `master` branch now contains breaking changes since the last
`v1.4.x` release. We will clearly highlight the breaking changes in the `v1.5.0`
release notes when it's ready.
#### NOTICE: Breaking API Changes in v1.5.0

As part of the `v1.5.0` release, we have fixed features that have never worked
correctly and require a breaking API change to fix. One example is the issue
reported in [\#232](https://github.com/PagerDuty/go-pagerduty/issues/232), as
well as a handful of other examples within the [v1.5.0
milestone](https://github.com/PagerDuty/go-pagerduty/milestone/2).

If you are impacted by a breaking change in this release, you should audit the
functionality you depended on as it may not have been working. If you cannot
upgrade for some reason, the `v1.4.x` line of releases should still work. At the
time of writing `v1.4.3` was the latest, and we intend to backport any critical
fixes for the time being.

#### Example Usage

Expand Down

0 comments on commit 2d51a3e

Please sign in to comment.