pagerduty 2.1.1 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8dbc9c23955ddbec1d3d5d97d54bbbae4a7ebb95daecbb0ef0a0f579249303b9
4
- data.tar.gz: 7c9a40200d5f494945ea09ca0d1915e4fd31e2c890f3145155d4b9355f195f21
3
+ metadata.gz: 5a28c0400ef717442b4cb3acdab94f93ab4ebb3f84463379ed70677b681f384b
4
+ data.tar.gz: b958f49fd7a23616456aa0b1a83938967dd4fcb03ca815aee206c02550eb414b
5
5
  SHA512:
6
- metadata.gz: 34b67d774b87ed6d165239c3617cd2e99ac3bcefacbefb369bca243758ecab129cd1fe2c50533b28a96b196aa0308b817a80dab88915e7cd0ac56f00ccd66172
7
- data.tar.gz: d6a312ee4ba7a98085cf6a352d5781ffe78224e2f1c1ab413b199bfbea618ea753e69bd4be418339c3c40f72afe1efe08649b5f8b47c81b48fbbd7f823919e9b
6
+ metadata.gz: 49fdf0151d0463187d060956fa47701ae5ef80a79bbda8b634e0996dc477927d5734c788ed4c533c0c7b94e24479733e9968aa75258506a1f9efd18f4c251065
7
+ data.tar.gz: 8673300cb3b8b1d1e1476df52dc7fa1493c480a3197e941b55a93fd4f81d72a316861f34e97c00f08eb21a4878185fe486e02e6805c01f3e6b5083797783f410
data/CHANGELOG.md ADDED
@@ -0,0 +1,476 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog], and this project adheres to
6
+ [Semantic Versioning].
7
+
8
+ [Keep a Changelog]: https://keepachangelog.com/en/1.0.0/
9
+ [Semantic Versioning]: https://semver.org/spec/v2.0.0.html
10
+
11
+ ## [Unreleased]
12
+
13
+ [Unreleased]: https://github.com/envato/pagerduty/compare/v4.0.0...HEAD
14
+
15
+ ## [4.0.0] - 2022-02-14
16
+
17
+ ### Removed
18
+
19
+ - Remove support for Ruby versions lower than 2.3 ([#78]).
20
+
21
+ - Removed the deprecated way of creating a Pagerduty instance ([#79]).
22
+
23
+ ```diff
24
+ - pagerduty = Pagerduty.new("<integration-key>")
25
+ + pagerduty = Pagerduty.build(integration_key: "<integration-key>", api_version: 1)
26
+ pagerduty.trigger("<incident description>")
27
+ incident.acknowledge
28
+ incident.resolve
29
+ ```
30
+
31
+ - Removed the deprecated `get_incident` and `service_key` methods from the
32
+ `Pagerduty::EventsApiV1::Incident` class ([#79]). `incident` provides a replacement
33
+ for the `get_incident` method. The `service_key` method has no replacement.
34
+
35
+ ```diff
36
+ pagerduty = Pagerduty.build(integration_key: "<integration-key>", api_version: 1)
37
+ - incident = pagerduty.get_incident("<incident-key>")
38
+ + incident = pagerduty.incident("<incident-key>")
39
+ incident.trigger("<incident description>")
40
+ incident.acknowledge
41
+ incident.resolve
42
+ ```
43
+
44
+ - Removed the `PagerdutyIncident` class. Instead, use the
45
+ `Pagerduty::EventsApiV1::Incident` class ([#79]).
46
+
47
+ ### Added
48
+
49
+ - Test on Ruby 3.0 and 3.1 in CI build ([#74], [#80]).
50
+
51
+ ### Changed
52
+
53
+ - The explicit `json` gem runtime dependency has been removed ([#78]).
54
+ - Use GitHub Actions for CI build instead of TravisCI ([#73]).
55
+ - The default git branch has been renamed to `main` ([#77]).
56
+
57
+ ### Fixed
58
+
59
+ - Resolved `Net::HTTPServerException` deprecation warning in test suite([#75]).
60
+
61
+ [4.0.0]: https://github.com/envato/pagerduty/compare/v3.0.0...v4.0.0
62
+ [#73]: https://github.com/envato/pagerduty/pull/73
63
+ [#74]: https://github.com/envato/pagerduty/pull/74
64
+ [#75]: https://github.com/envato/pagerduty/pull/75
65
+ [#78]: https://github.com/envato/pagerduty/pull/77
66
+ [#78]: https://github.com/envato/pagerduty/pull/78
67
+ [#79]: https://github.com/envato/pagerduty/pull/79
68
+ [#80]: https://github.com/envato/pagerduty/pull/80
69
+
70
+ ## [3.0.0] - 2020-04-20
71
+
72
+ ### Added
73
+
74
+ - A new mechanism for instantiating a Pagerduty instance ([#64]).
75
+
76
+ ```ruby
77
+ pagerduty = Pagerduty.build(integration_key: "<my-integration-key>",
78
+ api_version: 1)
79
+ ```
80
+
81
+ This new method will return an instance that implements requested PagerDuty
82
+ Events API version.
83
+
84
+ - Support for the [Pagerduty Events API version 2][events-v2-docs] ([#66]).
85
+
86
+ ```ruby
87
+ pagerduty = Pagerduty.build(
88
+ integration_key: "<my-integration-key>",
89
+ api_version: 2
90
+ )
91
+ incident = pagerduty.trigger(
92
+ summary: "summary",
93
+ source: "source",
94
+ severity: "critical"
95
+ )
96
+ incident.acknowledge
97
+ incident.resolve
98
+ ```
99
+
100
+ - Added an `incident` method to the Pagerduty Events API V1 instance ([#67]).
101
+ This is intended as a drop-in replacement for the now-deprecated
102
+ `get_incident` method.
103
+
104
+ ```ruby
105
+ pagerduty = Pagerduty.build(
106
+ integration_key: "<integration-key>",
107
+ api_version: 1
108
+ )
109
+ incident = pagerduty.incident("<incident-key>")
110
+ ```
111
+
112
+ ### Deprecated
113
+
114
+ - Using `new` on `Pagerduty` ([#64]). This works, but will be removed in the
115
+ next major version.
116
+
117
+ ```diff
118
+ - pagerduty = Pagerduty.new("<integration-key>")
119
+ + pagerduty = Pagerduty.build(integration_key: "<integration-key>", api_version: 1)
120
+ pagerduty.trigger("<incident description>")
121
+ incident.acknowledge
122
+ incident.resolve
123
+ ```
124
+
125
+ Instead, use the new `Pagerduty.build` method (see above).
126
+
127
+ - The `get_incident` method is now deprecated ([#67]). It still works, but
128
+ will be removed in the next major release. Please migrate to the new
129
+ `incident` method, that works in exactly the same way.
130
+
131
+ ```diff
132
+ pagerduty = Pagerduty.new("<integration-key>")
133
+ - incident = pagerduty.get_incident("<incident-key>")
134
+ + incident = pagerduty.incident("<incident-key>")
135
+ incident.trigger("<incident description>")
136
+ incident.acknowledge
137
+ incident.resolve
138
+ ```
139
+
140
+ ### Changed
141
+
142
+ - `Pagerduty` is no longer a class. It's now a Ruby module ([#64]). This will
143
+ break implementations that use `Pagerduty` in their inheritance tree.
144
+
145
+ - `PagerdutyIncident` no-longer inherits from `Pagerduty` and its initializer
146
+ parameters have changed ([#64]). Actually, it's now an alias of the
147
+ `Pagerduty::EventsApiV1:Incident` class.
148
+
149
+ ### Removed
150
+
151
+ - Can no longer specify a new incident key when triggering from an `Incident`
152
+ object ([#64]).
153
+
154
+ This will now raise an `ArgumentError`. eg.
155
+
156
+ ```ruby
157
+ incident1 = pagerduty.trigger('first incident', incident_key: 'one') # this'll work fine
158
+ incident2 = incident1.trigger('second incident', incident_key: 'two') # this no-longer works.
159
+ ```
160
+
161
+ The difference is in the object we're calling the method on.
162
+
163
+ Instead always use the pagerduty object when triggering new incidents (with
164
+ new incident keys).
165
+
166
+ This works with the Events API V1:
167
+
168
+ ```ruby
169
+ incident1 = pagerduty.trigger('first incident', incident_key: 'one')
170
+ incident2 = pagerduty.trigger('second incident', incident_key: 'two')
171
+ ```
172
+
173
+ And this is even better, as it works with both the Events API V1 and V2:
174
+
175
+ ```ruby
176
+ incident1 = pagerduty.incident('one').trigger('first incident')
177
+ incident2 = pagerduty.incident('two').trigger('second incident')
178
+ ```
179
+
180
+ [3.0.0]: https://github.com/envato/pagerduty/compare/v2.1.3...v3.0.0
181
+ [events-v2-docs]: https://developer.pagerduty.com/docs/ZG9jOjExMDI5NTgw-events-api-v2-overview
182
+ [#64]: https://github.com/envato/pagerduty/pull/64
183
+ [#66]: https://github.com/envato/pagerduty/pull/66
184
+ [#67]: https://github.com/envato/pagerduty/pull/67
185
+
186
+ ## [2.1.3] - 2020-02-10
187
+
188
+ ### Added
189
+
190
+ - Test against Ruby 2.6 and 2.7 in CI ([#55], [#63]).
191
+
192
+ - Add project metadata to the gemspec ([#57]).
193
+
194
+ - A downloads badge to the readme ([#58]).
195
+
196
+ - This changelog document ([#59]).
197
+
198
+ ### Fixed
199
+
200
+ - Realign with latest Rubocop style ([#54], [#62]).
201
+
202
+ ### Removed
203
+
204
+ - Test files are no longer included in the gem file ([#60]).
205
+
206
+ [2.1.3]: https://github.com/envato/pagerduty/compare/v2.1.2...v2.1.3
207
+ [#54]: https://github.com/envato/pagerduty/pull/54
208
+ [#55]: https://github.com/envato/pagerduty/pull/55
209
+ [#57]: https://github.com/envato/pagerduty/pull/57
210
+ [#58]: https://github.com/envato/pagerduty/pull/58
211
+ [#59]: https://github.com/envato/pagerduty/pull/59
212
+ [#60]: https://github.com/envato/pagerduty/pull/60
213
+ [#62]: https://github.com/envato/pagerduty/pull/62
214
+ [#63]: https://github.com/envato/pagerduty/pull/63
215
+
216
+ ## [2.1.2] - 2018-09-18
217
+
218
+ ### Fixed
219
+
220
+ - Remove leading and trailing whitespace in the gem post-install message
221
+ ([#53]).
222
+
223
+ - Realign with latest Rubocop style ([#53]).
224
+
225
+ - Update the links to Pagerduty official API documentation.
226
+
227
+ - Don't specify Ruby patch versions in Travis CI build configuration. Remove
228
+ the toil involved in keeping these up to date.
229
+
230
+ ### Removed
231
+
232
+ - Remove gem post-install message.
233
+
234
+ [2.1.2]: https://github.com/envato/pagerduty/compare/v2.1.1...v2.1.2
235
+ [#53]: https://github.com/envato/pagerduty/pull/53
236
+
237
+ ## [2.1.1] - 2018-03-06
238
+
239
+ ### Added
240
+
241
+ - Test against Ruby 2.4 and 2.5 in CI ([#51]).
242
+
243
+ ### Fixed
244
+
245
+ - Removed version restrictions on the `rubocop` development dependency, and
246
+ realigned code with the latest version. ([#51]).
247
+
248
+ ### Removed
249
+
250
+ - Ruby 1.9.3 and Ruby 2.0.0 from the CI build ([#51]).
251
+
252
+ [2.1.1]: https://github.com/envato/pagerduty/compare/v2.1.0...v2.1.1
253
+ [#51]: https://github.com/envato/pagerduty/pull/51
254
+
255
+ ## [2.1.0] - 2016-01-19
256
+
257
+ ### Added
258
+
259
+ - Rubocop configuration and align syntax ([#32], [#35], [#38], [#43]).
260
+
261
+ - Documentation describing how to resolve an existing incident ([#34]).
262
+
263
+ - Print Ruby warnings during the CI build ([#36]).
264
+
265
+ - Remove restrictions on `bundler` development dependency ([#37]).
266
+
267
+ - Test against Ruby 2.3 in CI ([#41]).
268
+
269
+ - Add support for HTTP proxy ([#47]).
270
+
271
+ ### Fixed
272
+
273
+ - `Pagerduty#get_incident` raises `ArgumentError` if the provided incident key
274
+ is `nil` ([#46]).
275
+
276
+ [2.1.0]: https://github.com/envato/pagerduty/compare/v2.0.1...v2.1.0
277
+ [#32]: https://github.com/envato/pagerduty/pull/32
278
+ [#34]: https://github.com/envato/pagerduty/pull/34
279
+ [#35]: https://github.com/envato/pagerduty/pull/35
280
+ [#36]: https://github.com/envato/pagerduty/pull/36
281
+ [#37]: https://github.com/envato/pagerduty/pull/37
282
+ [#38]: https://github.com/envato/pagerduty/pull/38
283
+ [#41]: https://github.com/envato/pagerduty/pull/41
284
+ [#43]: https://github.com/envato/pagerduty/pull/43
285
+ [#46]: https://github.com/envato/pagerduty/pull/46
286
+ [#47]: https://github.com/envato/pagerduty/pull/47
287
+
288
+ ## [2.0.1] - 2015-03-29
289
+
290
+ ### Added
291
+
292
+ - Moved specs to RSpec 3.0 ([#30]).
293
+
294
+ - Test against Ruby 2.2 in CI ([#31]).
295
+
296
+ ### Changed
297
+
298
+ - Rename `HttpTransport#send` to `httpTransport#send_payload`. This avoids
299
+ shawdowing `Object#send` ([#29]).
300
+
301
+ [2.0.1]: https://github.com/envato/pagerduty/compare/v2.0.0...v2.0.1
302
+ [#29]: https://github.com/envato/pagerduty/pull/29
303
+ [#30]: https://github.com/envato/pagerduty/pull/30
304
+ [#31]: https://github.com/envato/pagerduty/pull/31
305
+
306
+ ## [2.0.0] - 2014-05-26
307
+
308
+ ### Added
309
+
310
+ - The `description` argument in the `PagerdutyIncident#acknowledge` and
311
+ `PagerdutyIncident#resolve` methods is now optional. As specified by the
312
+ API ([#19]).
313
+
314
+ - YARD class and method documentation. In addition to updating the readme
315
+ ([#20]).
316
+
317
+ ### Changed
318
+
319
+ - `Pagerduty#trigger` arguments have changed to accept all available options
320
+ provided by the API, rather than just `details` ([#19]).
321
+
322
+ ```ruby
323
+ pagerduty.trigger(
324
+ "incident description",
325
+ incident_key: "my unique incident identifier",
326
+ client: "server in trouble",
327
+ client_url: "http://server.in.trouble",
328
+ details: {my: "extra details"},
329
+ )
330
+ ```
331
+
332
+ This is breaking in the case where providing a `details` hash:
333
+
334
+ ```ruby
335
+ # This no longer works post v2.0.0. If you're
336
+ # providing details in this form, please migrate.
337
+ pagerduty.trigger("desc", key: "value")
338
+
339
+ # Post v2.0.0 this is how to send details (migrate to this please).
340
+ pagerduty.trigger("desc", details: {key: "value"})
341
+ ```
342
+
343
+ - `Pagerduty` class initialiser no longer accepts an `incident_key`. This
344
+ attribute can now be provided when calling the `#trigger` method (see above)
345
+ ([#19]).
346
+
347
+ - `PagerdutyException` now extends from `StandardError` rather than
348
+ `Exception`. This may affect how you rescue the error. i.e. `rescue
349
+ StandardError` will now rescue a `PagerdutyException` where it did not
350
+ before ([#21]).
351
+
352
+ [2.0.0]: https://github.com/envato/pagerduty/compare/v1.4.1...v2.0.0
353
+ [#19]: https://github.com/envato/pagerduty/pull/19
354
+ [#20]: https://github.com/envato/pagerduty/pull/20
355
+ [#21]: https://github.com/envato/pagerduty/pull/21
356
+
357
+ ## [1.4.1] - 2014-05-21
358
+
359
+ ### Added
360
+
361
+ - Set HTTP open and read timeouts to 60 seconds ([#16]).
362
+
363
+ - Add tests and a CI build (TravisCI) ([#17]).
364
+
365
+ - Add `bundler`, `rake` and `rspec-given` as development dependencies ([#17]).
366
+
367
+ - Extract (private) `HttpTransport` class, for single responsibility and ease
368
+ of testing ([#18]).
369
+
370
+ ### Changed
371
+
372
+ - Raise errors instead of throwing them ([#17]).
373
+
374
+ ### Fixed
375
+
376
+ - Use the OS default `CA path` rather than explicitly setting one ([#18]).
377
+
378
+ [1.4.1]: https://github.com/envato/pagerduty/compare/v1.4.0...v1.4.1
379
+ [#16]: https://github.com/envato/pagerduty/pull/16
380
+ [#17]: https://github.com/envato/pagerduty/pull/17
381
+ [#18]: https://github.com/envato/pagerduty/pull/18
382
+
383
+ ## [1.4.0] - 2014-04-02
384
+
385
+ ### Added
386
+
387
+ - Support TLS to the Pagerduty API ([#14]).
388
+
389
+ [1.4.0]: https://github.com/envato/pagerduty/compare/v1.3.4...v1.4.0
390
+ [#14]: https://github.com/envato/pagerduty/pull/14
391
+
392
+ ## [1.3.4] - 2013-02-12
393
+
394
+ ### Fixed
395
+
396
+ - Update `Rakefile` to word with recent versions of RDoc
397
+
398
+ ### Changed
399
+
400
+ - Enforce `json` gem to versions 1.7.7 and above.
401
+
402
+ [1.3.4]: https://github.com/envato/pagerduty/compare/v1.3.3...v1.3.4
403
+
404
+ ## [1.3.3] - 2012-12-12
405
+
406
+ ### Changed
407
+
408
+ - Allow `json` gem versions 1.5 and above.
409
+
410
+ [1.3.3]: https://github.com/envato/pagerduty/compare/v1.3.2...v1.3.3
411
+
412
+ ## [1.3.2] - 2012-10-31
413
+
414
+ ### Fixed
415
+
416
+ - `details` are now correctly passed in the API call.
417
+
418
+ [1.3.2]: https://github.com/envato/pagerduty/compare/v1.3.1...v1.3.2
419
+
420
+ ## [1.3.1] - 2012-10-19
421
+
422
+ ### Fixed
423
+
424
+ - Consolidated all Pagerduty definitions to be a `class`.
425
+
426
+ [1.3.1]: https://github.com/envato/pagerduty/compare/v1.3.0...v1.3.1
427
+
428
+ ## [1.3.0] - 2012-10-18
429
+
430
+ ### Added
431
+
432
+ - Add ability to set the incident key via the initializer.
433
+
434
+ ### Changed
435
+
436
+ - Perform release with `bundler` instead of `jeweller`.
437
+ - Manage all gem dependencies in the gemspec file.
438
+ - Remove dependency on `curb`.
439
+
440
+ [1.3.0]: https://github.com/envato/pagerduty/compare/v1.1.1...v1.3.0
441
+
442
+ ## [1.1.1] - 2010-11-17
443
+
444
+ ### Fixed
445
+
446
+ - Specify `json` and `curb` gems as dependencies in the default gem group.
447
+
448
+ ### Added
449
+
450
+ - Prevent the `.bundle` directory from being added to the git repository.
451
+
452
+ [1.1.1]: https://github.com/envato/pagerduty/compare/v1.1.0...v1.1.1
453
+
454
+ ## [1.1.0] - 2010-11-16
455
+
456
+ ### Added
457
+
458
+ - New `Pagerduty#get_incident` method.
459
+
460
+ [1.1.0]: https://github.com/envato/pagerduty/compare/v1.0.1...v1.1.0
461
+
462
+ ## [1.0.1] - 2010-11-16
463
+
464
+ ### Fixed
465
+
466
+ - Specify `json` and `curb` gems as dependencies.
467
+
468
+ [1.0.1]: https://github.com/envato/pagerduty/compare/v1.0.0...v1.0.1
469
+
470
+ ## [1.0.0] - 2010-11-16
471
+
472
+ ### Added
473
+
474
+ - Library released as Open Source!
475
+
476
+ [1.0.0]: https://github.com/envato/pagerduty/releases/tag/v1.0.0