Skip to content

Releases: prebid/prebid-server-java

v1.71.0

30 Aug 18:35
Compare
Choose a tag to compare

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

13 Aug 09:14
Compare
Choose a tag to compare

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

30 Jul 07:29
Compare
Choose a tag to compare

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 of expiry (#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

15 Jul 10:12
Compare
Choose a tag to compare

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

23 Jun 05:45
Compare
Choose a tag to compare

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

11 Jun 09:13
Compare
Choose a tag to compare

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

26 May 08:13
Compare
Choose a tag to compare

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

@DGarbar, @rpanchyk, @schernysh and @snahornyi

v1.64.0

14 May 08:53
Compare
Choose a tag to compare

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

@RodionOrets and @rpanchyk

v1.63.0

12 May 04:46
Compare
Choose a tag to compare

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

27 Apr 09:21
Compare
Choose a tag to compare

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