forked from googleads/googleads-python-lib
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
423 lines (365 loc) · 17 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
9.0.0 -- 11/14/17
* Added support and examples for DFP v201711
* Removed support and examples for DFP v201611
* DFP PQL queries can now accept simple python dicts for variable substitution.
* Resolved issues:
- Issue 230: https://github.com/googleads/googleads-python-lib/issues/230
8.1.0 -- 10/11/17
* Added support for AdWords v201710.
* Resolved issues:
- Issue 224: https://github.com/googleads/googleads-python-lib/issues/224
- Issue 228: https://github.com/googleads/googleads-python-lib/issues/228
8.0.0 -- 8/22/17
* Removed support and examples for AdWords v201609.
* Resolved issues:
- Issue 219: https://github.com/googleads/googleads-python-lib/issues/219
- Issue 220: https://github.com/googleads/googleads-python-lib/issues/220
7.0.0 -- 8/15/17
* Added support and examples for DFP v201708.
* Removed support and examples for DFP v201608.
6.1.0 -- 8/9/17:
* Added support for AdWords v201708.
6.0.0 -- 6/27/17:
* Removed support for AdWords v201607.
* Improved logging support. Can now specify logging configuration from the
configuration file.
* Added new GoogleAccessTokenClient, a non-refreshable client that only requires
the access token.
* Resolved issues:
- Issue 84: https://github.com/googleads/googleads-python-lib/issues/84
- Issue 171: https://github.com/googleads/googleads-python-lib/issues/171
5.6.0 -- 6/01/17:
* Added support for AdWords v201705.
5.5.0 -- 5/23/17:
* Added more expressive python utility to build DFP PQL statements.
* Support building DFP SOAP entities with native python date/datetime objects.
* Added support and examples for DFP v201705.
* Removed support and examples for DFP v201605.
5.4.0 -- 4/25/17:
* Resolved issues:
- Issue 200: https://github.com/googleads/googleads-python-lib/issues/200
- Issue 196: https://github.com/googleads/googleads-python-lib/issues/196
5.3.0 -- 3/20/17:
* Removed support for AdWords v201605.
* Removed examples for AdWords v201605.
* Added support for the complete set of DFP report download options.
* Resolved issues:
- Issue 169: https://github.com/googleads/googleads-python-lib/issues/169
5.2.0 -- 3/1/17:
* Added support for AdWords v201702.
* Resolved issues:
- Issue 110: https://github.com/googleads/googleads-python-lib/issues/110
- Issue 180: https://github.com/googleads/googleads-python-lib/issues/180
5.1.0 -- 2/13/17:
* Added support for DFP v201702.
* Removed examples for DFP v201605.
* Removed support for DFP v201602.
* Resolved issues:
- Issue 166: https://github.com/googleads/googleads-python-lib/issues/166
- Issue 176: https://github.com/googleads/googleads-python-lib/issues/176
Issue 177: https://github.com/googleads/googleads-python-lib/issues/177
5.0.0 -- 1/13/17:
* BREAKING CHANGE: The underlying suds client now has cache enabled. By default,
suds uses FileCache which requires access to local file system and will break
users using Google App Engine. For more details on how to configure or disable
caching, see the README.
* The library will now automatically apply a monkey patch to the suds-jurko
dependency on initialization that will modify the suds.transport.http module.
The patch modifies HttpTransport's send method such that it can detect and
decompress a gzip encoded SOAP body.
* Added new "enable_compression" optional keyword argument for AdWordsClient and
DfpClient. If set True, the client will request gzip compression and
automatically decompress the SOAP body for you. For more details on this
feature, see:
https://developers.google.com/adwords/api/docs/guides/bestpractices?hl=en#use_compression
* Resolved issues:
Issue 77: https://github.com/googleads/googleads-python-lib/issues/77
Issue 97: https://github.com/googleads/googleads-python-lib/issues/97
* Resolved pull requests:
PR 79: https://github.com/googleads/googleads-python-lib/pull/79
PR 81: https://github.com/googleads/googleads-python-lib/pull/81
PR 91: https://github.com/googleads/googleads-python-lib/pull/91
PR 99: https://github.com/googleads/googleads-python-lib/pull/99
4.8.0 -- 11/29/16:
* Added support for DFP v201611.
* Removed support for DFP v201508 and v201511.
* Removed examples for DFP v201602.
* Resolved issues:
Issue 138: https://github.com/googleads/googleads-python-lib/issues/138
Issue 147: https://github.com/googleads/googleads-python-lib/issues/147
Issue 152: https://github.com/googleads/googleads-python-lib/issues/152
Issue 158: https://github.com/googleads/googleads-python-lib/issues/158
Issue 162: https://github.com/googleads/googleads-python-lib/issues/162
* Resolved Pull Requests:
PR 163: https://github.com/googleads/googleads-python-lib/pull/163
4.7.0 -- 10/25/16:
* Removed support for AdWords v201603.
4.6.1 -- 9/30/16:
* Added support for AdWords v201609.
* The library now automatically applies filters to log output to sanitize its
contents of sensitive data. For more details on how to configure logging or
disable log filtering, see the README.
* The library will now log warnings if it detects that it is being run with
Python versions below 2.7.9.
4.5.1 -- 8/30/2016:
* Resolved issue #148:
https://github.com/googleads/googleads-python-lib/issues/148
4.5.0 -- 8/26/2016
* AdWordsClient's initializer no longer requires the user_agent field. This
field is also now validated to ensure that it only contains ASCII characters.
* Removed support and examples for AdWords v201601.
* Removed upgrade_ad_url example for AdWords v201605 and v201607.
4.4.0 -- 8/23/2016
* Removed support for DFP v201505.
* Added support for DFP v201608.
* Removed examples for DFP v201508 and v201511.
4.3.0 -- 7/29/2016
* Added support for AdWords v201607.
4.2.0 -- 6/13/2016
* Removed support and examples for AdWords v201509.
* The AdWords ReportDownloader now accepts a "client_customer_id" keyword
argument that overrides the default client customer ID.
* For utilities such as the ReportDownloader or BatchJobHelper, data points
about usage are now sent in the user-agent of API requests by default. This
can be disabled with the new include_utilities_in_user_agent configuration in
the googleads.yaml file.
* Added a new parallel_report_download.py example.
* Resolved issues:
Issue #122: https://github.com/googleads/googleads-python-lib/issues/122
Issue #123: https://github.com/googleads/googleads-python-lib/issues/123
4.1.0 -- 5/26/2016
* Added support for AdWords v201605.
* Added new use_raw_enum_values keyword argument to the AdWords ReportDownloader
utility.
4.0.0 -- 5/17/2016
* Add support for DFP v201605.
* Removed examples for DFP v201505.
* Removed support for DFP v201502.
* Improved proxy support.
* BREAKING CHANGE: The googleads.common.LoadFromStorage function has been
updated to accommodate the current proxy support. This will break users with
a proxy configured. Check out the changes in our sample googleads.yaml file
to see the new format.
3.15.0 -- 4/11/2016
* Removed support for AdWords v201506.
* Resolved issues:
Issue #108: https://github.com/googleads/googleads-python-lib/issues/108
Issue #111: https://github.com/googleads/googleads-python-lib/issues/111
3.14.0 -- 3/25/2016
* Added support for AdWords v201603.
* Resolved Issues:
Issue #105: https://github.com/googleads/googleads-python-lib/issues/105
Issue #106: https://github.com/googleads/googleads-python-lib/issues/106
3.13.0 -- 2/23/2016
* Added support for DFP v201602.
* Removed support for DFP v201411.
* Removed examples for DFP v201502.
* The library now applies a temporary patch to the suds-jurko dependency that
resolves multiple issues. This patch will be removed when the suds-jurko
library publicly exposes its 0.7 release. Thanks to GitHub user adiharush for
suggesting the patch!
* The LoadFromStorage function can now load credentials for either the
installed application or service account (.p12 files only) OAuth2 flows.
* The googleads.yaml configuration file has been updated to reflect the changes
to the LoadFromStorage function.
* Resolved Issues:
Issue #58: https://github.com/googleads/googleads-python-lib/issues/58
Issue #62: https://github.com/googleads/googleads-python-lib/issues/62
Issue #63: https://github.com/googleads/googleads-python-lib/issues/63
Issue #68: https://github.com/googleads/googleads-python-lib/issues/68
Issue #78: https://github.com/googleads/googleads-python-lib/issues/78
3.12.0 -- 02/01/2016
* Removed DoubleClick Ad Exchange content. This API has been sunset.
* Added support for AdWords v201601.
* Updated the AdWords account_management get_account_hierarchy.py example to
properly handle the case where ManagedCustomerService.get returns multiple
pages of results.
* Refactored AdWords upload_offline_conversions.py example, moved to
remarketing.
* Refactored AdWords add_complete_campaigns_using_batch_job.py example, moved to
campaign_management.
* The AdWords BatchJobHelper and IncrementalUploadHelper utilities now
initialize URLs for v201601 and up.
* The AdWords IncrementalUploadHelper is now serializable.
3.11.0 -- 11/24/2015
* Removed support for AdWords v201502.
* Added incremental upload support to BatchJobHelper.
* Added the add_keywords_using_incremental_batch_job.py to advanced_operations
examples.
* Moved add_complete_campaigns_using_batch_job.py to advanced_operations.
* The BatchJobHelper can now be used to parse the BatchJob response. Examples
have been updated to demonstrate this.
* The xmltodict library has been added as a new dependency.
* Added option to set additional scopes in generate_refresh_token.py for
AdWords and DFP.
3.10.0 - 11/17/2015
* Removed support for DFP v201405 and v201408.
* Removed examples for v201411.
* Added support for DFP v201511.
3.9.0 - 10/23/2015
* The AdWords BatchJobHelper has been updated and added to the core library.
* Updates to add_complete_campaigns_using_batch_job.py example.
* Fixed issue #85.
3.8.1 - 10/19/2015
* Added BatchJobService example for AdWords v201509.
* Removed GeoLocationService from AdWords v201509 because it isn't available
in this version.
3.8.0 - 10/7/2015
* Removed DFA from GoogleAds SOAP Client Library.
* Added support for AdWords v201509.
* Replaced references to MCC accounts with AdWords manager accounts.
* Added upload_media_bundle as a new misc example for AdWords v201509.
* Added add_html5_ad as a new advanced_operations example for AdWords v201509.
* Added add_crm_based_user_list as a new remarketing example for AdWords
v201509.
3.7.1 - 9/4/2015
* Fixed issue #68.
* Updated the get_keywords AdWords sample.
3.7.0 - 8/20/2015
* Update ServiceAccount constructor to open p12 file in binary mode.
* Added support for v201508 for the Doubleclick for Publishers Client Library.
* Removed support for v201403 for the Doubleclick for Publishers Client Library.
3.6.0 - 7/31/2015
* Removed support for AdWords v201409.
* Removed examples for AdWords v201409.
3.5.0 - 6/26/2015
* Added support for v201506 of the AdWords Client Library.
* Reporting parameters in ReportDownloader utility now in **kwargs.
* Added new "include_zero_impressions" reporting parameter as keyword argument
for ReportDownloader utility methods.
3.4.1 - 5/22/2015
* Fixed issue #55
* Fixed issue #57
3.4.0 - 5/19/2015
* Added support for DFP v201505.
* Removed examples for DFP v201405.
3.3.0 - 3/25/2015
* Fixed issue #47.
* Removed support for AdWords v201406.
* Removed examples for AdWords v201406.
3.2.0 - 3/12/2015
* Added support for v201502 of the AdWords Client Library.
* Removed CampaignAdExtensionService (from v201502).
* Added AccountLabelService (to v201502)
* Added hard feed types examples, moved to new "extensions" examples.
* Added example for shared sets.
* Minor fixes to reporting examples.
* Updated some existing samples for new API version.
* DFP clients now require you to set an application name.
3.1.1 - 2/25/2015
* Added new example for migrating to Upgraded URLS.
* Updated examples to reference final URLs.
3.1.0 - 2/17/2015
* Added support for v201502 for the DoubleClick for Publishers Client Library.
* Removing support for v201311, v201308, and v201306.
* Removed examples for v201403.
* Updated ForecastService examples.
* Added PackageService, ProductPackageService, and ProductPackageItemService.
* Fixed comments and settings for targetAll in add_ad_groups.py examples.
3.0.1 - 1/21/2015
* Push with updated PyDocs.
3.0.0 - 1/5/2015
* Three new dependencies have been added: httplib2, oauth2client, and pysocks.
* One dependency has been removed: oauthlib
* BREAKING CHANGE: Python3 versions < 3.3 are no longer supported.
* BREAKING CHANGE: The https_proxy argument for the GoogleRefreshTokenClient has
been deprecated. It has been replaced by proxy_info, which is an optional
argument taking an httplib2.ProxyInfo instance.
* PYTHON2 ONLY: You may now authorize with Service Accounts using the new
GoogleServiceAccountClient. As of this release, it will only work with
Python2.
* Added new Service Account authorization examples for AdWords, DFA, and DFP.
* The googleads.yaml file has been refactored to reflect the changes to proxy
support.
* WARNING: As of this release, you must set disable_ssl_certificate_validation
to False when using Python3.
* Added new examples for DFP Sales Manager: PremiumRateService, BaseRateService,
ExchangeRateService, RateCardService, WorkflowRequestService, ProductService,
ProductTemplateService.
2.3.0 - 12/05/2014
* Removed v201402 support.
* The return_money_in_micros argument has been removed from the AdWords
ReportDownloader.
* Fixed issue #33: Bad output generated by get_keyword_ideas.py.33
* Fixed issue #37: https_proxy wouldn't work for AdWords ReportDownloader.
* Fixed issue #39: AdWords ReportDownloader couldn't download report via
BytesIO.
* Fixed issue #41: estimate_keyword_traffic couldn't handle case where
clicksPerDay or impressionsPerDay were 0.
* Accepted Pull Request #45: Added manual refresh option to
GoogleRefreshTokenClient.
2.2.0 - 11/11/2014
* Added support for v201411 of the DoubleClick for Publishers Client
Library.
* Added SharedAdUnitService and AdExclusionRuleService.
* Fixed issue for float support as 'not iterable' (Fixed issue #36).
* Added App Engine AdWords example.
2.1.0 - 10/09/2014
* Added support for v201409 of the AdWords/DoubleClick Ad Exchange Client
Library.
* Added convenience method for setting Client Customer Id to AdWordsClient.
* Added ReportDownloader convenience methods.
* Fixed upload_offline_conversions example. (Fixed issue #24)
* Fixed issue creating complex types. (Fixed issue #18)
2.0.2 - 09/03/2014
=================
* Added Ad Customizer example for AdWords.
* Extend timeout on SUDs to correspond to access token expiry.
2.0.1 - 08/20/2014
=================
* Added support for v201408 for DFP client library.
* Removed RateCardCustomizationService and RateCardCustomizationGroupService,
replaced with PremiumRateService.
* Changed OAuth2 scope to https://www.googleapis.com/auth/dfp/
* Changed DFP endpoint to https://ads.google.com/
2.0.0 - 07/22/2014
=================
* AdGroups/Campaigns no longer renamed on remove/delete in examples, obsolete.
* GoogleAdsValueError now thrown when returnMoneyInMicros is sent with v201406.
1.0.7 - 07/7/2014
=================
* Added support for v201406 of the AdWords/DoubleClick Ad Exchange Client
Library.
* Added CampaignSharedSetService, LabelService, SharedCriterionService, and
SharedSetService for AdWords.
* Updated AdWords OAuth2 scope.
See: https://developers.google.com/adwords/api/docs/guides/authentication.
1.0.6 - 05/29/2014
==================
* Add support for v201405 for DFP client library.
1.0.5 - 05/07/2014
==================
* Fixed an issue where PQL fields weren't encoding properly / not handling None
responses correctly. This resolves issue #9.
* Fixed an issue where the AdWords ReportDownloader would fail when downloading
gzipped reports. Now better documents the need to use binary files in this
case. This resolves issue #6.
* Fixed an artifact from issue #5, ReportDownloader now sets https_proxy before
retrieving the WSDL.
1.0.4 - 04/22/2014
==================
* Fixed a bug where https_proxy wasn't set for retrieving the API WSDL. This
resolves issue #5.
1.0.3 - 04/02/2014
==================
* The common module's LoadFromStorage method now parses the yaml file with
safe_load rather than load.
* Fixed a typo in examples/dfa/authentication/create_dfa_client_without_yaml.py
(the service was 'CampaignService' instead of 'campaign'). This resolves
issue #4.
* Changed examples/dfa/authentication/create_dfa_client_without_yaml.py to run
against the DFA test environment in order to match all other DFA examples.
* Changed common._PackForSuds to force suds to serialize empty objects into XML.
There are many use cases for this in Google's Ads APIs, such as passing empty
search criteria into DFA search methods in order to select everything.
1.0.2 - 03/20/2014
==================
* Fixed a typo in examples/dfp/authentication/generate_refresh_token.py (there
was a trailing comma after the scope).
1.0.1 - 03/13/2014
==================
* Fixed a bug with the AdWords ReportDownloader failing to decode unicode
characters in reports. This resolves issue #1.
1.0.0 - 03/05/2014
==================
Initial version of the googleads Python library.