Releases: prebid/prebid-server-java
v1.71.0
What’s Changed
There are two major host-company configuration changes in this release:
- Make gdpr default value required config (#1422). This one's easy, just make sure you define
- Revise account configuration structure and migrate to stable JDBC contract (#1431).
- Please refer to changes in docs/application-settings.md for how account config SQL query has to be tuned.
- The
analytics-sampling-factor
setting no longer exists as a common configuration property. Analytics modules relying on this property should be adapted to rely on analytics.modules.<module-name>.sampling-factor property instead (or any like it in analytics module specific configuration sub-space).
Other General Updates
- Implement flag to allow VAST modification for unknown bidders (#1419) - see issue prebid/prebid-server#1967
- pricegranularity option handling added (#1435)
- Fix VtrackHandlerTest with updated Account (#1436)
- Fix default analytics events config handling (#1434)
- Add java 11 workflow (#1429)
- Add account CCPA enabled and per-request-type enabled flags (#1044)
- Add enabledOnly flag for
/info/bidders
endpoint (#1421) - Wrong duration in resolved request (#1420)
Bidder-Specific Updates
- Fix Pubmatic bid.ext.bidtype case-sensitivity (#1445)
- Smaato: Rework multi imp support and add adpod support (#1405)
- InteractiveOffers - Parameters changed & dynamic endpoint (#1417)
- Revert Triplelift Endpoint [open source id] (#1427)
- Rubicon: update passing DFP adUnit code to XAPI (#1403)
- Tappx: new bidder params (#1410)
Contributors
@And1sS, @IOTiagoFaria, @nickluck8, @nllerandi3lift, @rpanchyk, @schernysh and @snahornyi
v1.70.0
What’s Changed
General Changes
- Support additional GDPR-related AMP params (#1379) - issue 1817
- Align
/bidder/info
endpoint with Go behaviour (#1414) - related to issue 1788 - Remove Site object when both App and Site present (#1411) - this is related to issue 1947. This workaround may be removed once the Prebid.js update is done and rolled out to most publishers
- Allow app and site simultaneously in bid request and assume "app" channel in this case (#982)
- Add content-type header to /vtrack and /status endpoints (#1399)
- Update allowed metadata add dchain (#1398)
- Fix integration test against PBS version in debug header (#1416)
- Remove redundant meta model (#1415)
- Add headers to response debug section (#1147)
- Bump commons-compress from 1.19 to 1.21 (#1400)
Bidder-specific Changes
- Update TripleLift endpoint (#1418) - note, host companies using triplelift need to get a supplier_id from them
- IX: update required site id field to be more flexible (#1406)
- InteractiveOffers - New endpoint (#1408)
- Appnexus: make AdPodId optional (#1397)
- Support pods in video requests to Appnexus bidder (#1073)
- Rubicon: fix NPE caused by null deal bid price (#1395)
- Rubicon: Update site segTaxes, to work with 5 and 6 (#1404)
- Rubicon: convert boolean FPD to strings (#1389)
- Added medianet adapter (#1378)
- Sharethrough: Add support for GPID (#1394)
Contributors
@And1sS, @BraslavskiyAndrey, @IOTiagoFaria, @dependabot, @dependabot[bot], @garrix-fan, @laarchenko, @nickluck8, @rpanchyk, @schernysh and @snahornyi
v1.69.0
What’s Changed
Note: this release contains an important configuration file syntax change that's paving the way for a bigger change in the next release to support prebid/prebid-server#1672
See https://github.com/prebid/prebid-server-java/blob/master/docs/config-app.md -- settings.default-account-config
has changed from YAML to JSON.
General Changes
- Change default account config format to plain json (#1142)
- Fix AuctionContext model to be suitable for JSON encoding (#1385)
- Change Cache service to use
ttlseconds
instead ofexpiry
(#1384) - this aligns PBS-Java with PBS-Go and PBC-Java already supports either param. - Add missing header 'Content-Type' in /getuids response (#1382)
- Fix podconfig duration processing in video endpoint (#1392)
- Remove duplicated and obsolete docs (#1381)
- Fix NPE for missing imps, while resolving ext (#1373)
- Bump jetty-webapp from 9.4.41.v20210516 to 9.4.43.v20210629 (#1377)
- Add HttpResponseSender to generify HTTP output (#1290)
Bidder-Specific Changes
- IX bidder: make impTrackers to always be unique (#1396)
- Pubnative bidder: force currency to USD (#1387)
- Inmobi: user sync (#1386)
- Keywords creator code cleanup (#1383)
- Criteo: Fix fields mapping error when building bid from bidder response (#1380)
- Review IC bidder (#1372)
- Simplify bidder tests (#1374)
- Add Axonix bidder (#1376)
- Review PubmaticBidder (#1371)
Contributors
@And1sS, @dependabot, @dependabot[bot], @rpanchyk, @schernysh and @snahornyi
v1.68.0
What’s Changed
General Changes
- Remove TCF1 support (#1129). TCF1-formatted strings are ignored. Note that the adapter.BIDDER.openrtb2-web.tcf.userid_removed metric no longer measures anything. This issue is being discussed.
- Remove unnessaccery 'pbs-enforces-gdpr' test property (#1368)
- Simplify integration tests (#1356)
- Add auctionId to PBS events strings (#1327)
- Pass bidders' ext without 'bidder' wrapper (#1360) - issue prebid/prebid-server#1676
- Fix account fetching from stored requests for auctions (#1355)
- Fill initial bid request with all possible values from query parameters and headers during AMP processing (#1353)
- Validate bidder code for empty value (#1197)
- Eid permissions honor bidder aliases (#1207)
- Update PriceGranularity logic to work with missing values (#1324)
- Remove call to cache in bidder integration tests (#1329)
Bidder-specific Changes
- Change MarsMedia endpoint URL (#1370)
- Add SaLunamedia bidder (#1364)
- Change SaLunamedia endpoint url (#1367)
- Fix NullPointerException after MaxMindGeoLocationService could not find country by IP (#1366)
- Change SmartyAds usersync url (#1365)
- Pubmatic: Sending GPT slotname in impression extension (#1338)
- Add smilewanted bidder (#1357)
- New bidder brightmountain (#1362)
- Add evolution bidder (#1354)
- Outbrain adapter: overwrite tagid only if it exists (#1358)
- New bidder bidmyadz (#1352)
- Add bidscube bidder (#1350)
- Add kayzen bidder (#1346)
- New bidder adxcg (#1342)
- Add madvertise bidder (#1339)
- Criteo: Update Json validation schema and maintainer email (#1337)
- BeachfrontBidder: fix beachfront bid floor (#1334)
- Sovrn: Change Imp.bidfloor if invalid (#1331)
- RP adapter: update segtax logic (#1344)
- Avoid filling response extension with hooks trace output when no hooks have been executed (#1351)
- Introduce a framework for hooks at different stages of request processing (#1345)
- Update warnings for corrupted consent (#1348)
- Fill bids as much as possible before they are cached (#1326)
- Price Granularity: Update validation logic (#1343)
- New bidder: Bidmachine (#1328)
- update interactiveoffers contact info (#1335)
- remove lifestreet (#1336)
Contributors
@And1sS, @BraslavskiyAndrey, @nickluck8, @rpanchyk, @schernysh and @snahornyi
v1.67.0
What’s Changed
General Updates
- Implement x-prebid headers support (#1301)
- Bump httpclient from 4.5.5 to 4.5.13 (#1295)
- Update test cases for ext prebid meta (#1325)
- Add analytics metrics to docs (#1323)
- AnalyticsDelegator: Tolerate with not processed requests (#1322)
- Create one line logging for requested json (#1318)
- Make logged request to be without new line and space symbols (#1300)
- Bump jetty-servlets from 9.4.35.v20201120 to 9.4.41.v20210516 (#1312)
- Clean user.ext.digitrust when user ids not legal (#1158)
- Aws deploy instructions update (#1076)
Bidder Updates
- Pubmatic: add dctr and pmzoneid params (#1320)
- Pangle: add appid & placementid to bidder param (#1319)
- RubiconBidder: Copy seatbid.buyer to bid.ext.prebid.meta (#1313)
- AdOcean adapter - add support for mobile apps (#1317)
- Outbrain: Transform native eventtrackers (#1299)
- Log bidresponse validation (#1109)
- Interactiveoffers bidder (#1306)
- Between bidder: fix bid floor (#1315)
- New Bidder: Viewdeos (Alias Of Adtelligent) (#1316)
Contributors
@BraslavskiyAndrey, @dependabot, @dependabot[bot], @nickluck8, @rpanchyk and @snahornyi
v1.66.0
What’s Changed
General
- Support impression tracking on VAST wrappers (#1310)
- Update vastModifier to group inserted impression tags with existing (#1309)
- VAST modify case sensitive issue fix (#1308)
- Update VAST logic (#1271)
- Added Prefer deals targeting flag to determine winning bid comparison logic (#1182) Issue prebid/prebid-server#1355
- Fix windows build issues (#1307)
- Amp account fetch fix (#1303)
- Update AnalyticsReporterDelegator to tolerate with missing BidRequest (#1302)
- Bump hibernate-validator from 6.1.0.Final to 6.1.5.Final (#1298)
- Make generic HTTP exceptions less wordy (#1296)
- Add request.ext.prebid.trace flag (not used for now) (#1287)
- Add check for aliases pointing on disabled bidder (#1209)
- Extend setting native asset types to all requests (#1285)
- Allow Native Ad Exchange Specific Types (#1276)
- Turn on decompression support in Vert.x HTTP server (gzip and deflate as of Netty 4.1.31) (#1284)
Bidder
- New Adapter: Criteo (#1252)
- IX: Set bidVideo when category and duration is available (#1274)
- Add processing of imp.ext.data to mediagrid (#1293)
- Conversant: fix bid floor (#1291)
- New Adapter: Loopme (#1270)
- Loopme integration test update (#1294)
- Made account fetch as first step fro AMP (driven by modularity) (#1272)
- Add schain support to beachfront bidder (#1289)
- New Bidder: Adf (#1288)
- Handle not found stored auction response by throwing InvalidRequest e… (#1185)
- New Adapter: AlgoriX (#1275)
- Add metrics to track settings cache population if it is enabled (#1016)
- Pubstack analytics module (#1013)
Contributors
@BraslavskiyAndrey, @Bugxyb, @DGarbar, @RodionOrets, @dependabot, @dependabot[bot], @nickluck8, @rpanchyk, @schernysh, @snahornyi and @vsyso
v1.65.0
What’s Changed
General
- Fix ext.prebid.analytics flag to be tolerant for invalid input (#1283) - Prebid.js 4.37 is sending ext.prebid.analytics as an array. This fix throws it away -- fixed in 4.38.
- Implement analytics by code metrics (#1281) - new metrics: analytics.ADAPTER.auction.*
- Copy bidder headers before affecting them (#1279)
- Update AnalyticsReporter to support adapter analytics (#1238)
- Store original hostname in site.domain and put derived top-level domain at site.publisher.domain (#1277) - prebid/prebid-server#1813
- Pass Global Privacy Control header to bidders (#1186) - prebid/prebid-server#1712
- Remove overriding of fields for BidResponseCreator (#1273)
- Use ipv6 for geo location call if ipv4 is not defined (#1256)
- Fix IPv6 processing according to privacy ip masking (#1280)
- Moved bid enhancement logic before caching (#1266)
- Improve CookieSync and Setuid logging and metrics (#1253) - emit usersync..tcf.invalid when /setuid or /cookie_sync calls are blocked due to missing or invalid consent strings
Bidder Specific
- rubicon adapter: update segment logic (#1260)
Contributors
v1.64.0
What’s Changed
- InMobi: Updating support for sites (#1269)
- AppNexus: reform bid floor handling (#1261)
- Openx: use bidfloor if set - prebid.js adapter behavior (#1262)
- Tappx: rewrite schema in case of protocol in host param (#1267)
- Review bidders to cover not matched imp.id with bid.impid (#1264)
- Tappx: add path concat instead of rewrite (#1265)
Contributors
v1.63.0
What’s Changed
General
- Added basicEnforcementVendors fro TCF (#1236) (Issue prebid/prebid-server#1750)
- Add bid response imp validation and log for corresponding imp matching (#1259)
- Add bidderInfoResponse container as a first step to use BidInfo in workflow (#1254)
- Make bid immutable (#1249)
Bidder-Specific
- Resolve bidfloor currency for Rubicon bidder (#1117)
- Update Adyoulike endpoint to hit production servers (#1258)
- Kidoz: Update JSON Schema Reference To Type String (#1257)
- Orbidder: Update gvl vendor id and site media types (#1255)
- Bugfix POST requests with Adhese adapter (#1124)
- DMX: Enforcing w and h in imp (#1245)
- Configure Mediafuse allias for Adtelligent (#1251)
- Improvedigital bidder: Functionality update (#1175)
- Beachfront update (#1177)
- Implement Outbrain bidder (#1229)
- Implement Adyoulike bidder (#1194)
- Implement Unicorn bidder (#1201)
- Implement Jixie bidder (#1189)
- Implement Pangle Bidder (#1190)
- Implement Epom bidder (#1191)
Contributors
@BraslavskiyAndrey, @DGarbar, @RodionOrets, @rpanchyk, @sander-adhese and @snahornyi
v1.62.0
Notes
- This release contains the /setuid endpoint modifications outlined in prebid/prebid-server#1477 . A side effect of this change is that the usersync.BIDDER.tcf.blocked metric drops significantly as it is changed into a general setuid error metric (usersync.bad_requests) when the TCF consent string is missing or invalid. We'll fix this metric situation in the next release.
- The same change resulted in extra error log entries for missing consent strings in /cookie_sync and /setuid. The next release will also drop these to a 1% sample of errors.
- Turns out when PBS-Go and PBS-Java implemented prebid/prebid-server#745 we did them differently. Go is treating ext.prebid.debug as a boolean while Java is expecting 0 or 1. To be fair, the issue didn't clearly specify this. Anyhow, PBS-Java now supports wither 0 or false, 1 or true.
What’s Changed
General
- Implement bid adjustments by media type (#1226) (#1243) (issue 1601)
- Make /cookie_sync and /setuid respond with 400 for invalid gdpr consent (#1235) (issue 1477)
- Update setuid format parameter and make pixel depends on cookie type (#997) (also part of issue 1477)
- Store original bid cpm (#995) (issue 1526)
- Implement usersync method choosing according to filter settings from request (#1130) (issue 1554)
- Usersync URL supports format parameter (#1242) (also part of issue 1554)
- Support boolean for bidrequest.ext.prebid.debug together with integer (#1160)
- Fix Ortb2RequestFactory to throw error if StoredRequestProcessor fails (#1233)
- Add lookup of account from stored requests (#1231)
- Merge master into hook framework (#1228) - starting to refactor for modularity
- Refactored: Extracted Ortb2RequestFactory (#1224)
- Make generation of Bid Adm as a first step to remove duplicating call (#1214)
Bidder-Specific
- Update deepintent usersync redirect-url uid param (#1244)
- GumGum: adds pubId and irisid properties/parameters (#1184)
- Implement OneTag bidder (#1181)
- Update SmartyAds sync url and fix Decenterads imp.ext resolving (#1248)
- Decenterads adapter: align with cache request changes (#1246)
- Add Decenterads bidder. (#1167)
- RTB House: update parameters (#1240)
- Merge site object for SmartadserverBidder (#1225)
- beachfront: Changes to support real 204 (#1230)
- Openx: use bidfloor if set - prebid.js adapter behavior (#1218)
- Tappx changes - Backward compatible change of version (#1222)
- Add App support for Smaato (#1221)
- Adtarget, Adtelligent, Mediafuse: Update sync type (#1220)
- Mobfox: Add rout to adexcange (#1183)
- Change EngagedBDR bidder config (#1237)
- Update tappx and between usersync config (#1171)
- Adform bidder currency issue fix (#1232)
Contributors
@BraslavskiyAndrey, @DGarbar, @RodionOrets, @laurb9, @muuki88, @rpanchyk, @schernysh and @snahornyi