Skip to content

Upgrade to 9.28.0 #212

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 813 commits into from
Jan 30, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
813 commits
Select commit Hold shift + click to select a range
d4f57ee
bidResponseFilter Module : do not run if not configured (#12362)
dgirardi Oct 24, 2024
51f329e
Contxtful Bid Adapter : initial release (#12256)
sebastienrufiange Oct 24, 2024
34f0a55
Prebid 9.17.0 release
prebidjs-release Oct 24, 2024
aafef47
Increment version to 9.18.0-pre
prebidjs-release Oct 24, 2024
260a1b6
Preciso Bid adapter : Native implemented (#12278)
NikhilGopalChennissery Oct 24, 2024
9073a02
Showheroes Bid Adapter : full rework of the adapter (#12283)
FilipStamenkovic Oct 25, 2024
80fbc98
QortexRtdProvider: Supports new Qortex bid enrichment process (#12173)
shilohannese Oct 25, 2024
6ae5759
Appnexus Bid Adapter: Copy video over to custom native fields so it c…
JaroVDH Oct 25, 2024
1ca84d7
Add sizes... again... (#12371)
robertrmartinez Oct 25, 2024
3a2d06e
LiveIntent UserId Module : add support for sharethrough, sonobi, vida…
3link Oct 28, 2024
39a7888
Equativ Bid Adapter: initial release, Smartadserver Bid Adapter: take…
krzysztofequativ Oct 28, 2024
19c6382
PubMatic bid adapter add ortb2 device (#11783)
jwrosewell Oct 28, 2024
9058a09
NextMillenniumBidAdapter: Added OpenRTB 2.6 parameters support: `bcat…
mhlm Oct 28, 2024
aaafef7
Connatix Bid Adapter : listen for user id's (#12312)
OctaviaS20 Oct 29, 2024
1da994f
Impactify Bid Adapter: fix uspConsent logic (#12332)
disparate1 Oct 29, 2024
16b49d1
Increase caching of sampling rate cookie (#12380)
danielsao Oct 29, 2024
2fdecc6
Qortex Rtd Provider : implements rate limiting options for qortex enr…
shilohannese Oct 29, 2024
16642a5
KRKPD-1667: replaces triggerPixel with fetch (#39) (#12387)
nickllerandi Oct 30, 2024
190f540
Core: allow renderAd on main document for bids with a renderer (#12391)
dgirardi Oct 31, 2024
b4efa80
rubicon Bid Adapter : add support for twin ad units (#12328)
ourcraig Oct 31, 2024
f8e4790
Prebid 9.18.0 release
prebidjs-release Oct 31, 2024
fa473d7
Increment version to 9.19.0-pre
prebidjs-release Oct 31, 2024
451a82b
smartxBidAdapter: add propagation of aderror event (#12388)
renebaudisch Oct 31, 2024
91b1407
AdagioAnalyticsAdapter: track revelant ad-units only (#12383)
osazos Oct 31, 2024
45e9277
Missena Bid Adapter : send coppa and autoplay (#12352)
pdamoc Oct 31, 2024
0209218
Snigel Bid Adapter: add placement counter and adapter version field (…
snigelweb Oct 31, 2024
d4f7d81
Added init event for yandexAnalyticsAdapter (#12386)
Stanislavsky34200 Oct 31, 2024
7214c8e
Rubicon bid adapter/response media type (#12401)
apukh-magnite Nov 4, 2024
adf9964
holid Bid Adapter : only iframe sync on gdpr consent (#12416)
patmmccann Nov 5, 2024
3f3fe13
Missena Bid Adapter : send all params (#12415)
pdamoc Nov 5, 2024
e39d671
HadronId System : not use localStorage for writing on it (#12378)
jlaso Nov 5, 2024
7504055
easybid added (#12417)
gchicoye Nov 6, 2024
ee61757
Removed setting the AV_WIDTH/AV_HEIGHT, bidWidth/bidHeight to `imp.ex…
s-solodovnikov Nov 6, 2024
655712c
Sparteo Bid Adapter: Add Prebid.JS Version (#12419)
tanguylemeur-sparteo Nov 6, 2024
7bca55c
nextMillennium Bid Adapter : added supply chain support (#12421)
mhlm Nov 6, 2024
c8edf5b
Biddo invamia bid adapters: import common code (#12409)
patmmccann Nov 7, 2024
fe4a2cc
Prebid 9.19.0 release
prebidjs-release Nov 7, 2024
1205401
Increment version to 9.20.0-pre
prebidjs-release Nov 7, 2024
b60d732
Nativo Bid Adapter: support native and video (#12134)
doctafaustus Nov 8, 2024
05a1065
Gamera Rtd Provider: Initial release (#12424)
aleksatr Nov 8, 2024
e348fc8
Ssp_geniee Bid Adapter : fix imuid module and spec.js (#12428)
gn-daikichi Nov 8, 2024
f71023d
LiveIntent UserId Module: add IP and User Agent Configuration Paramet…
peixunzhang Nov 8, 2024
54a6383
Core: allow renderers without URLs (#12426)
dgirardi Nov 9, 2024
fa30e97
StroeerCore Bid Adapter: add the ortb2 site extension to the request …
philipwatson Nov 11, 2024
805714c
CadentApertureMX Bid Adapter : remove bidder code validation (#12404)
patmmccann Nov 11, 2024
e16c01f
51Degrees RTD submodule: optimise ORTB2 enrichment speed (#12394)
jwrosewell Nov 12, 2024
112beee
Core: set string for regs.ext.gpc (#12436)
dgirardi Nov 12, 2024
ee9534b
Adkernel Bid Adapter: add revbid alias (#12439)
ckbo3hrk Nov 13, 2024
04ae817
allow outstream when placement is inStream (#12440)
ybootin Nov 13, 2024
1c6318e
WURFL RTD Module: enrich the ortb2.device object with WURFL data (#12…
lucor Nov 14, 2024
b941544
Smarthub: renaming Smarthub to Attekmi (#12432)
SmartHubSolutions Nov 14, 2024
62307a3
ehealthcaresolutions Bid Adapter : initial release (#12384)
pranavsheth Nov 14, 2024
fee94cd
Vdo.ai Bid Adapter : update to prebid version 9 (#12284)
vdo-ai-tech Nov 14, 2024
bb586b8
Brid Bid Adapter : user sync and response changes (#12248)
grajzer Nov 14, 2024
ee12e82
AdMatic Bid Adapter : add adt alias (#12451)
fatihkaya84 Nov 15, 2024
f44c6cf
Support for InBannerVideo (IBV) Field in Bid Response (#12453)
pm-nitin-shirsat Nov 15, 2024
84226e0
Revert "Support for InBannerVideo (IBV) Field in Bid Response (#12453…
ChrisHuie Nov 15, 2024
a9de3c1
New bid adapter: Adverxo (#12376)
dev-adverxo Nov 15, 2024
eb130ca
AdagioRtdProvider: add number of pages in session data (#12450)
osazos Nov 16, 2024
72566c2
gppControl: accept flat section data (#12444)
dgirardi Nov 16, 2024
8b039f4
Core: add analytics option to markWinningBidAsUsed (#12437)
dgirardi Nov 16, 2024
7c5700f
New User ID Submodule: Rewarded Interest (#12340)
thede-ri Nov 16, 2024
9ef4335
Brave utils: initial commit (#12412)
patmmccann Nov 16, 2024
3b7b434
- FIX: Replace deprecated pageXOffset and pageYOffset with scrollX an…
vivekyadav15 Nov 16, 2024
874c337
Update adkernelBidAdapter.js (#12233)
lyricwulf Nov 16, 2024
70471f7
PgamSSP Bid Adapter: add gvlid (#12464)
PGAMSSP Nov 18, 2024
86cbc21
RichAudience Bid Adapter: add support to adomain (#12465)
richaudience Nov 18, 2024
a42abdd
Adkernel Bid Adapter: add spinx alias (#12460)
ckbo3hrk Nov 18, 2024
b67898b
Media impact and adpartner bid adapters: reduce duplication (#12411)
patmmccann Nov 18, 2024
c6bf9cb
gppControl: check for usnat consent version (#12469)
dgirardi Nov 19, 2024
7c95dc0
Various adapters: setting imp secure (#12385)
mkomorski Nov 19, 2024
5bc249c
Rubicon Bid Adapter: expand fastlane EID protocol and pass p_site.mob…
apukh-magnite Nov 19, 2024
de49e52
Video Support (#12457)
soman Nov 20, 2024
24cf886
FIX: Update adUnit attachment to use adUnitCode selector in rubiconBi…
harrykingriches Nov 20, 2024
09f9632
contxtfulBidAdapter: revamp the sampling of events (#12466)
sebhtml Nov 20, 2024
6a76566
Update adverxoBidAdapter_spec.js (#12478)
ChrisHuie Nov 20, 2024
b05916d
Hadron RTD : cleaning things up (#12480)
jlaso Nov 20, 2024
835a3d3
InMobi Bid Adapter : initial release (#12449)
yuva-inmobi-1 Nov 21, 2024
a60d667
PubMatic Bid Adapter : support for InBannerVideo (IBV) Field in Bid R…
pm-nitin-shirsat Nov 21, 2024
e11a511
PubMatic Bid Adapter: Updated default TTL and added mediaType based T…
pm-azhar-mulla Nov 21, 2024
bdc2edc
Prebid 9.20.0 release
prebidjs-release Nov 21, 2024
a0d075a
Increment version to 9.21.0-pre
prebidjs-release Nov 21, 2024
48997e5
Qortex RTD Module: support messaging dispatch & receive + rate limits…
rrochwick Nov 21, 2024
8a95ab2
StroeerCore Bid Adapter: Add campaignType property to the bid's meta …
philipwatson Nov 22, 2024
5401652
AdagioAnalyticsAdapter: stop trying to read sizes of sizeless ad-unit…
Abyfall Nov 22, 2024
337c0aa
allow video outstream on any placement except instream (#12491)
ybootin Nov 22, 2024
31ae262
IntentIq ID & Analytics Modules : support domainName parameter (#12434)
dmytro-po Nov 22, 2024
9361e17
Userid module: propagate ortb2.user.ext.eids to userIdsAsEids even if…
justadreamer Nov 23, 2024
e3e9ce0
Bidtheatre Bidder Adapter: initial release (#12485)
andreasgreen Nov 23, 2024
b3577cc
TargetVideo Bid Adapter : user sync and response changes (#12461)
grajzer Nov 24, 2024
8832e84
Adkernel: add OppaMedia alias (#12506)
ckbo3hrk Nov 26, 2024
894f60b
Contxtful RTD Module: support ui events (#12398)
sebastienrufiange Nov 26, 2024
8f0bb73
nextMillennium Bid Adapter: Fixed a bug when there were several bids …
mhlm Nov 26, 2024
b319bcc
Contxtful RTD Module: added defer param (#12499)
sebastienrufiange Nov 26, 2024
c5da2ad
Utiq ID module: add netID support (#12494)
mcrokes Nov 26, 2024
99e888c
Copper6ssp Bid Adapter: add gvl_id (#12498)
Copper6SSP Nov 27, 2024
36f60c1
vastTrackers: make request and auction info available to VAST tracker…
dgirardi Nov 27, 2024
8056514
IntentIq ID & Analytics Modules : CMP values and browser detection bu…
dmytro-po Nov 27, 2024
789d500
Updates the Lotame User ID module to honor a publisher-supplied stora…
Tonsil Nov 27, 2024
c8dc64c
Prebid 9.21.0 release
prebidjs-release Nov 27, 2024
15f7e93
Increment version to 9.22.0-pre
prebidjs-release Nov 27, 2024
957d1fa
Adkernel: add Pixelpluses alias (#12520)
ckbo3hrk Nov 29, 2024
f7e44cc
Add kuantyx alias (#12523)
adserver-online Nov 30, 2024
f7e8034
Mobian Bid Adapter : push context data to GAM (#12389)
arielmtk Dec 2, 2024
cafb7f7
AGT-388: Add missed params and return old params (#12524)
DimaIntentIQ Dec 2, 2024
0b8d774
Refactor craftBidAdapter (#12517)
crumbjp Dec 2, 2024
7facccb
Qortex RTD module : code removal & cleanup (#12515)
rrochwick Dec 3, 2024
d014440
Price floors module : accept null floors (#12295)
mkomorski Dec 3, 2024
0175c36
Medianet Analytics Adapter: ADD bid properties in logs and small fix …
vivekyadav15 Dec 3, 2024
dfd1932
Core: fix bug where adRenderSucceeded event payloads are sometimes mi…
dgirardi Dec 3, 2024
a8dccf5
Add adtarget gvlid (#12531)
GeneGenie Dec 3, 2024
a7fb4ad
Currency Module: Adding auction delay handling (#12364)
mkomorski Dec 3, 2024
6398c68
BeOpAdapter - First Party Cookie read and set (#16) (#12486)
sebrobert Dec 3, 2024
1475988
Core: fix bug where queue is processed before processQueue is called …
dgirardi Dec 3, 2024
72b5262
richAudience Bid Adapter : update functionality of bid param: keywor…
richaudience Dec 4, 2024
189a7ce
Prebid Core: Added TTL validation for suppressing expired ads (#12532)
pm-azhar-mulla Dec 4, 2024
8b00a5d
Prebid 9.22.0 release
prebidjs-release Dec 4, 2024
a9958be
Increment version to 9.23.0-pre
prebidjs-release Dec 4, 2024
5e1a3c2
Equativ Bid Adapter: add support for video media type (#12514)
krzysztofequativ Dec 4, 2024
840f5ab
Core: remove individual bids from cache when minBidCacheTTL is set (#…
dgirardi Dec 4, 2024
7d7e540
Various bid adapters: Currency config cleanup (#12102)
mkomorski Dec 4, 2024
438522e
Bidmatic Bid Adapter: add syncing (#12541)
GeneGenie Dec 4, 2024
ec420b6
Missena Bid Adapter : refactor getUserSyncs, send screen size (#12497)
pdamoc Dec 4, 2024
08467c8
Core: support adAuctionHeaders (#12542)
dgirardi Dec 5, 2024
6a2c4cd
Goldfish Ads RTD Adapter: Fix Description Typo (#12550)
keithdoggett Dec 5, 2024
272d67c
Bump path-to-regexp and express (#12552)
dependabot[bot] Dec 6, 2024
f9327ff
Core & multiple modules: replace `deepAccess` with optional chaining …
gwhigs Dec 6, 2024
0ca1fee
targeting keys issue when sendAllBids is true (#12518)
pm-priyanka-deshmane Dec 6, 2024
06024e8
Yandex Metrica Analytics: updated links to the interface (#12548)
Dec 6, 2024
80364ce
sspBC Bid Adapter : added support for transactionID and update tests …
wojciech-bialy-wpm Dec 6, 2024
05d9c74
Core: Sync between ortb2Imp and mediaTypes (#12423)
mkomorski Dec 9, 2024
e364847
Fix deep access (#12558)
ChrisHuie Dec 9, 2024
7aa0638
craftBidAdapter: Fix netRevenue (#12536)
crumbjp Dec 9, 2024
df356f5
Unicorn Bid Adapter : fix net revenue (#12509)
ctylim Dec 9, 2024
39e6418
Compass Bid Adapter : add gvlid (#12561)
CompassSSP Dec 9, 2024
84a2278
AdMatic Bid Adapter: adt sync url updated (#12565)
fatihkaya84 Dec 11, 2024
0b1c521
Nexverse Bid Adapter : initial relese (#12297)
anand-nexverse Dec 11, 2024
528519d
Ensure the correct winning bid is recorded if an adapter is returning…
bjorn-lw Dec 11, 2024
b4d6dd4
Adagio rtd provider: fix traffic going outside the ab test (#12563)
Abyfall Dec 11, 2024
892f2bc
Equativ Bid Adapter: support native bid requests (#12566)
jefftmahoney Dec 11, 2024
9ec218d
feat: auctionsCounter at adUnit level (#12557)
Pratik3307 Dec 11, 2024
f5ab059
Core: fix bug where FPD enrichments can modify bidder configuration (…
dgirardi Dec 12, 2024
52de91d
Rise Bid Adapter: Add ORTB2 device data to request payload (#12017)
jwrosewell Dec 12, 2024
0aa1fc0
nextMillennium Bid Adapter : added gpid support (#12567)
JacobKlein26 Dec 12, 2024
f0adee0
Reading advertiserDomains from adv response. (#12573)
antosarho Dec 12, 2024
91ae090
Added page view ID to Kobler bid adapter. (#12556)
acsbendi Dec 12, 2024
3782de4
PBS Adapter: fix inconsistency in how bidderconfig is merged, with a …
dgirardi Dec 12, 2024
0310305
Mobian RTD Module: Docs Update (#12576)
richmtk Dec 12, 2024
c42cff1
Prebid 9.23.0 release
prebidjs-release Dec 12, 2024
fb8fb3d
Increment version to 9.24.0-pre
prebidjs-release Dec 12, 2024
9fe52d9
Lasso Bid Adapter : add npi support (#12545)
victorlassomarketing Dec 13, 2024
0a0325f
Initial commit for ResponsiveAds bid adapter (#12554)
pzagor2 Dec 16, 2024
faace6f
Bridgeupp Bidder Adapter : initial release (#12549)
sharon-bridgeupp Dec 16, 2024
cb1dc74
AcuityAds Bid Adapter: add gvlid (#12581)
AcuityAdsIntegrations Dec 16, 2024
28b44c9
Use credentials in requests in Aniview Bid Adapter (#12579)
s-solodovnikov Dec 16, 2024
2106a40
Add screen and viewport to ad request (#12553)
antosarho Dec 16, 2024
9d8af28
Add first-party data handling to kueezRtbBidAdapter (#12503)
saar120 Dec 16, 2024
e2a4631
AdGeneration Bid Adapter : change endpoint and add ortb converter (#1…
ss-toshihide-tajima Dec 16, 2024
b39d070
Rediads Bid Adapter : initial release (#12525)
rediads Dec 17, 2024
e060b74
Greenbids Bidder Adapter (#12510)
jeremy-greenbids Dec 17, 2024
8686d9e
Brainx Bid Adapter : initial release (#12413)
Hugh0222 Dec 17, 2024
d3f3696
dfpAdServerVideo: set vconp (continuous playblack on) when playbackme…
dgirardi Dec 18, 2024
cc2e8d2
PBS Adapter: only include known bidders in eidpermissions (#12594)
dgirardi Dec 18, 2024
cc3e707
Bug fix: Export getProperties method (#12587)
vivekyadav15 Dec 18, 2024
8162df6
Adf Bid Adapter: use common ortb2 data (#12582)
braizhas Dec 18, 2024
c13b1b8
33across ID System: Include hashed email from storage (#12529)
carlosfelix Dec 18, 2024
6fe63f6
Smarthub Bid Adapter : set skipPbsAliasing to false (#12601)
SmartHubSolutions Dec 19, 2024
2baacb1
AdMatic Bid Adapter : add yobee alias (#12588)
fatihkaya84 Dec 19, 2024
5ddf361
Integration example: Create id_lift_measurement.html (#12577)
patmmccann Dec 19, 2024
1bd2a88
AdPlayerPro Video Module : add PLCMT (#12593)
artemAdp Dec 19, 2024
22ced7d
adtelligent bid adapter: add new allias (#12559)
Gunnar97 Dec 19, 2024
eee512b
Doceree AdManager Bid Adapter : maintainence (#12578)
Doceree-techStack Dec 19, 2024
cd6997b
Prebid 9.24.0 release
prebidjs-release Dec 19, 2024
cb18124
Increment version to 9.25.0-pre
prebidjs-release Dec 19, 2024
2f713dd
PBS Adapter: handle edge case with duplicated EID permissions (#12595)
dgirardi Dec 19, 2024
eb225a8
Autoplay detection update: ignore NotSupportedError exceptions (#12603)
github-matthieu-wipliez Dec 23, 2024
059e77f
Taboola bid adapter add ortb2 device (#11750)
jwrosewell Dec 26, 2024
9ec45f6
Adagio Bid Adapter: Add full ORTB2 device data to request payload (#1…
jwrosewell Dec 26, 2024
6e42abe
Vidazoo Bid Adapter: Add ORTB2 device data to request payload (#12074)
jwrosewell Dec 26, 2024
9b15b22
ImRtdProvider: add imuid param (#12475)
eknis Dec 26, 2024
24e1780
TNC Id Module : user input url validation and optimizations (#12527)
annavane Dec 26, 2024
0a14016
Goldbach Bid Adapter: connecting to new backend, reduced bid paramete…
bevenio Dec 26, 2024
9d733b5
Yield one bid adapter: Conditionally stop sending push_sync requests …
alukonin1 Dec 26, 2024
7651cb3
Aniview: send `format` and `w`/`h` with banner request + refactoring …
s-solodovnikov Dec 26, 2024
1ae6814
Update with testing params (#12600)
victorlassomarketing Dec 26, 2024
12e70fd
nextMillenniumBidAdapter: Added support `imp.video.pos` and `imp.bann…
mhlm Dec 26, 2024
0419f1a
Retailspot bidAdapter : Endpoint update (#12602)
rs-guian Dec 26, 2024
3bfc452
Revert "Vidazoo Bid Adapter: Add ORTB2 device data to request payload…
patmmccann Dec 27, 2024
08a8481
LuponMedia BidAdapter: Add adomain to bidResponse (#12604)
adxpremium Dec 27, 2024
db7bb11
Prebid 9.25.0 release
prebidjs-release Dec 27, 2024
b6cd2e6
Increment version to 9.26.0-pre
prebidjs-release Dec 27, 2024
a88e801
Akcelo bid adapter : initial release (#12583)
rogerDyl Dec 27, 2024
376a491
Analytics adapters: attach arbitrary labels to analytics events (#12597)
dgirardi Dec 27, 2024
97594d9
Mobian RTD Provider: Adds prefix to ortb data as per config (#12596)
arielmtk Dec 30, 2024
a363b69
Mobian RTD Module: Documentation update (#12608)
richmtk Dec 31, 2024
f030154
Attekmi add new alias artechnology (#12609)
SmartHubSolutions Dec 31, 2024
7e0cda1
Escalax Bid Adapter: initial release (#12483)
escalax Jan 2, 2025
6ba8de6
Adkernel: add UrekaMedia alias (#12614)
ckbo3hrk Jan 4, 2025
03a2ea5
Adtrgtme bid adapter changes (#12580)
tarasmatokhniuk Jan 4, 2025
e16153e
MadSense Bid Adapter : initial release (#12546)
madsenseops Jan 4, 2025
5e57caa
Bitmedia Bidder Adapter : initial release (#12610)
BitmediaDevTeam Jan 4, 2025
a8f4d5b
Nexverse Bid Adapter : remove slash from the endpoint (#12617)
yogeshverse Jan 6, 2025
83ba93c
Prebid 9.26.0 release
prebidjs-release Jan 6, 2025
64df88d
Increment version to 9.27.0-pre
prebidjs-release Jan 6, 2025
445ca14
AdagioRtdProvider: always set session.expiry (#12611)
Abyfall Jan 6, 2025
3d91b5c
YieldlabBidAdapter forward consent under param gdpr_consent (#12623)
rey1128 Jan 7, 2025
1f838f8
Orbit soft bid Module: Change aliases (#12628)
VitalyOrbit Jan 8, 2025
b2d1619
Equativ Bid Adapter: add warning messages for audio-related propertie…
jefftmahoney Jan 8, 2025
a63a49c
Contxtful Bid Adapter: Updates the default sampling rate (#12622)
sebastienrufiange Jan 8, 2025
6790c78
PBjs Core : fix creation of per-bidder syncOptions (#12615)
wojciech-bialy-wpm Jan 8, 2025
9cad047
Eskimi Bid Adapter: use credentials in requests (#12629)
AndriusFromLTU Jan 8, 2025
24c4a07
ConceptX Bid Adapter: add gvlid (#12632)
cpcpn-emil Jan 9, 2025
44ce97e
JW Player Video Adapter: Determine Size before player is rendered (#1…
karimMourra Jan 9, 2025
fab7207
IX Bid Adapter: fix request options field [PB-3461] (#12637)
shahinrahbariasl Jan 9, 2025
7a210da
Vidazoo bid adapter add ortb2 device (#12640)
jwrosewell Jan 10, 2025
16d892e
Blue Bid Adapter : initial release (#12513)
maqtulio Jan 13, 2025
743f100
OpenX Bid Adapter : support native (#12625)
gmiedlar-ox Jan 13, 2025
ea87c0e
33across ID System: Store hashed email when feature is enabled via co…
carlosfelix Jan 13, 2025
09fa200
encode hints in report (#12652)
DimaIntentIQ Jan 14, 2025
f499398
UserID: allow any contents in EIDs (#12651)
dgirardi Jan 14, 2025
f1019c1
symitriDapRtdProvider - Enable X2 Tokenize endpoint (#12636)
jpalladino84 Jan 15, 2025
0954a82
Missena Bid Adapter : send bid sizes (#12560)
pdamoc Jan 15, 2025
ea2aaa9
Adloox Analytics Module: apply 'js' param constraint (#12618)
jimdigriz Jan 15, 2025
ac89272
LiveIntent Rtd Provider: initial release (#12631)
wi101 Jan 15, 2025
8ed696d
fix: source and account params (#12657)
escalax Jan 15, 2025
c52ee5d
feat(docs): updates permutive GDPR docs (#12660)
mcgizzle Jan 15, 2025
b5f9de7
Rise Bid Adapters: native and multiformat support (#12653)
michachen Jan 15, 2025
8ed14d8
fix: error logging (#12656)
sebastienrufiange Jan 15, 2025
3fd2066
EPlanning Bid Adapter : adding support for schain (#12635)
maximilianozurita Jan 16, 2025
634ff5d
AcuityAds Bid Adapter: add endpointId param (#12644)
AcuityAdsIntegrations Jan 16, 2025
f14229a
SharedIdSystem: add configurable inserter (#12664)
dgirardi Jan 16, 2025
e0fe3ac
feat: session marker (#12634)
sebastienrufiange Jan 16, 2025
582e649
native Rendering : fix bug where click trackers are not fired (#12655)
dgirardi Jan 16, 2025
6b37ddc
Prebid 9.27.0 release
prebidjs-release Jan 16, 2025
57e1767
Increment version to 9.28.0-pre
prebidjs-release Jan 16, 2025
32689b4
Change expected nodes greater than 2 to less than or equal to 2 (#12670)
maximilianozurita Jan 17, 2025
b6ce350
Bump live-connect dependency (#12677)
3link Jan 21, 2025
cfe1e79
Liveintent Id Module: support for additional eid (#12659)
patmmccann Jan 21, 2025
5b0024e
ZetaGlobalSspAnalytics Adapter: domain and page (#12674)
asurovenko-zeta Jan 21, 2025
7eb00b5
GPP MSPA Control Module: add support for usnat version 2 (#12667)
dgirardi Jan 21, 2025
9355e47
PubMatic Analytics Adapter: Moving slot level parameters to root leve…
pm-priyanka-deshmane Jan 21, 2025
57936b2
WURFL Rtd Provide: add wurfl_id to device.ext (#12675)
lucor Jan 22, 2025
65aade6
OMS Adapter: add video support, test coverage and update documentatio…
siminkovladyslav Jan 22, 2025
da5039e
Bump undici from 6.19.8 to 6.21.1 (#12679)
dependabot[bot] Jan 22, 2025
b19ae7c
feat: signal ext.ibv and pass it through [PB-3505] (#12666)
ccorbo Jan 22, 2025
2e9b00a
Pubmatic analytics: fix whitespace (#12684)
dgirardi Jan 22, 2025
e5bf921
Improve Digital Bid Adapter : remove razr creative logic (#12678)
cciocov Jan 22, 2025
e5da6c8
Consumable Bid Adapter: remove EID non-objects (#12646)
jpiros Jan 22, 2025
75cb76f
Prebid 9.28.0 release
prebidjs-release Jan 23, 2025
b81b172
Merge tag '9.28.0' into PFG-3775
anastasiiapankivFS Jan 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 29 additions & 8 deletions creative/renderers/native/renderer.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,16 @@ function loadScript(url, doc) {
});
}

function getRenderFrames(node) {
return Array.from(node.querySelectorAll('iframe[srcdoc*="render"]'))
}

function getInnerHTML(node) {
const clone = node.cloneNode(true);
getRenderFrames(clone).forEach(node => node.parentNode.removeChild(node));
return clone.innerHTML;
}

export function getAdMarkup(adId, nativeData, replacer, win, load = loadScript) {
const {rendererUrl, assets, ortb, adTemplate} = nativeData;
const doc = win.document;
Expand All @@ -58,21 +68,32 @@ export function getAdMarkup(adId, nativeData, replacer, win, load = loadScript)
return win.renderAd(payload);
});
} else {
return Promise.resolve(replacer(adTemplate ?? doc.body.innerHTML));
return Promise.resolve(replacer(adTemplate ?? getInnerHTML(doc.body)));
}
}

export function render({adId, native}, {sendMessage}, win, getMarkup = getAdMarkup) {
const {head, body} = win.document;
const resize = () => sendMessage(MESSAGE_NATIVE, {
action: ACTION_RESIZE,
height: body.offsetHeight,
width: body.offsetWidth
});
const resize = () => {
// force redraw - for some reason this is needed to get the right dimensions
body.style.display = 'none';
body.style.display = 'block';
sendMessage(MESSAGE_NATIVE, {
action: ACTION_RESIZE,
height: body.offsetHeight,
width: body.offsetWidth
});
}
function replaceMarkup(target, markup) {
// do not remove the rendering logic if it's embedded in this window; things will break otherwise
const renderFrames = getRenderFrames(target);
Array.from(target.childNodes).filter(node => !renderFrames.includes(node)).forEach(node => target.removeChild(node));
target.insertAdjacentHTML('afterbegin', markup);
}
const replacer = getReplacer(adId, native);
head && (head.innerHTML = replacer(head.innerHTML));
replaceMarkup(head, replacer(getInnerHTML(head)));
return getMarkup(adId, native, replacer, win).then(markup => {
body.innerHTML = markup;
replaceMarkup(body, markup);
if (typeof win.postRenderAd === 'function') {
win.postRenderAd({adId, ...native});
}
Expand Down
2 changes: 1 addition & 1 deletion integrationExamples/gpt/hello_world.html
Original file line number Diff line number Diff line change
Expand Up @@ -92,4 +92,4 @@ <h5>Div-1</h5>
</div>
</body>

</html>
</html>
173 changes: 173 additions & 0 deletions integrationExamples/gpt/id_lift_measurement.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,173 @@
<!DOCTYPE html>
<html lang="en">

<head>
<title>Measure Lift of Multiple ID Modules</title>
<script>
const FAILSAFE_TIMEOUT = 2000;
const ID_MODULES = [
{
name: "id1",
params: { key1: "value1", key2: "value2" }
},
{
name: "id2",
params: { key3: "value3", key4: "value4" }
},
{
name: "id3",
params: { key5: "value5", key6: "value6" }
}
];
const TREATMENT_RATE = 0.95; // 95% chance to include an ID module
const targetingArray = [];

const adUnits = [
{
code: 'test-div',
mediaTypes: {
banner: {
sizes: [[300, 250], [300, 600], [728, 90]]
},
},
bids: [
{
bidder: 'rubicon',
params: {
accountId: '1001',
siteId: '113932',
zoneId: '535510'
}
}
]
}
];

var pbjs = pbjs || {};
pbjs.que = pbjs.que || [];

var googletag = googletag || {};
googletag.cmd = googletag.cmd || [];

// Randomly enable each ID module based on dice rolls
ID_MODULES.forEach(module => {
const isEnabled = Math.random() < TREATMENT_RATE;
targetingArray.push(`${module.name}:${isEnabled ? 't1' : 't0'}`);

if (isEnabled) {
pbjs.que.push(function () {
pbjs.mergeConfig({
userSync: {
userIds: [
{
name: module.name,
params: module.params
}
],
syncDelay: 5000,
auctionDelay: 1000,
}
});
});
}
});

googletag.cmd.push(function () {
googletag.pubads().disableInitialLoad();
googletag.pubads().setTargeting("abg", targetingArray);
});

pbjs.que.push(function () {
pbjs.setConfig({ debug: true });
pbjs.addAdUnits(adUnits);
pbjs.requestBids({
bidsBackHandler: sendAdserverRequest
});
});

function sendAdserverRequest() {
if (pbjs.adserverRequestSent) return;
pbjs.adserverRequestSent = true;
googletag.cmd.push(function () {
pbjs.setTargetingForGPTAsync();
googletag.pubads().refresh();
});
}

setTimeout(function () {
sendAdserverRequest();
}, FAILSAFE_TIMEOUT);
</script>

<script>
(function () {
var gads = document.createElement('script');
gads.async = true;
gads.type = 'text/javascript';
gads.src = 'https://securepubads.g.doubleclick.net/tag/js/gpt.js';
var node = document.getElementsByTagName('script')[0];
node.parentNode.insertBefore(gads, node);
})();
</script>

<script>
googletag.cmd.push(function () {
googletag.defineSlot('/112115922/FL_PB_MedRect', [[300, 250], [300, 600], [728, 90]], 'test-div').addService(googletag.pubads());
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
</script>
</head>

<body>
<script>
pbjs.que.push(function () {
pbjs.getUserIdsAsync().then(ids => {
document.getElementById('ids-div').innerHTML = JSON.stringify(ids, null, ' ');
document.getElementById('eids-div').innerHTML = JSON.stringify(pbjs.getUserIdsAsEids(), null, ' ');
});
});
</script>

<h2>Measure Lift of Multiple ID Modules</h2>

<h4>Generated IDs:</h4>
<pre id="ids-div" style="border:1px solid #333; padding:5px; overflow: auto"></pre>

<h4>Generated EIDs:</h4>
<pre id="eids-div" style="border:1px solid #333; padding:5px; overflow: auto"></pre>

<!-- Instructions Section -->
<h3>Instructions</h3>
<ol>
<li>Ensure that the `abg` key is definied in GAM targeting with all possible keys. Each value will be a combination of the following six possible key-value pairs:
<ul>
<li><code>id1:t0</code></li>
<li><code>id1:t1</code></li>
<li><code>id2:t0</code></li>
<li><code>id2:t1</code></li>
<li><code>id3:t0</code></li>
<li><code>id3:t1</code></li>
</ul>
</li>
<li>In Google Ad Manager (GAM), create a report with the following setup:
<ul>
<li><strong>Dimensions</strong>: Ad Unit, Key-Value Targeting (`abg`).</li>
<li><strong>Metrics</strong>: Impressions, Revenue.</li>
<li><strong>Filters</strong>: Include the `abg` key in the report.</li>
</ul>
</li>
<li>Analyze the report for each ID module:
<ul>
<li>Filter by combinations of `t1` (treatment) and `t0` (control) for each ID module (e.g., `id1:t1`, `id1:t0`).</li>
<li>Compare performance metrics (eg Impressions, Revenue) for the `t1` vs. `t0` values.</li>
<li>Calculate lift for each module using the formula:
<pre>Lift (%) = ((Treatment Metric / Treatment Rate - Control Metric / Control Rate) / (Control Metric / Control Rate)) * 100</pre>
Replace "Metric" with the relevant performance metric.
</li>
</ul>
</li>
</ol>
</body>

</html>
Loading
Loading