-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Handling shifts in alias support #12250
Comments
"Hardcoded" aliases overwrite the previous alias if it has the same name So all of these:
would have the alias point to the adapter that loaded last (either as the "actual" bidder or as a "hardcoded" alias). and this:
would point to what specified by the first |
Conclusion: pbjs.aliasBidder('magnite', 'rubicon', override=TRUE) is called, the override succeeds |
Type of issue
Enhancement
Description
Recently #12215 attempted to pull an alias out into a standalone adapter. In a few months, Magnite is going to release a significant upgrade to the 'rubicon' adapter that some publishers will want to test in a transitionary way.
I propose that PBJS should have documented conventions for supporting both of these types of changes.
A first step would be define how does the system work right now if the same biddercode could be interpreted in different ways. i.e. what happens when:
Not sure we've ever explicitly defined what should happen in these scenarios, but we probably should.
Minimally, the goal here is to define what bidders should do to make changes as easy as possible for publishers. If the ideal requires breaking changes, then we should put it on the list for 10.0.
Below are some thoughts on transitioning between base adapter biddercodes and aliases.
Aliased biddercode converted to a standalone base adapter
This uses the scenario in #12215 as an example. That is was withdrawn as a PR doesn't change the likelihood that a future bidder will probably want to make a similar change.
Time 1
Time 2
Time 3
The publisher's adunits still refer to dichange as a bidder
The publisher has built their PBJS package with just dichangeBidAdapter.js. Life is good.
Formerly standalone biddercode converted to an alias in a new base adapter
This is a thing that Magnite is going to do this next year.
Time 1
Time 2
Time 3
3. The publisher is ready to try the new Magnite-based rubicon, so they call pbjs.aliasBidder('magnite', 'rubicon', override=TRUE)
Time 4
tldr
3.3 is the outstanding development requirement
The text was updated successfully, but these errors were encountered: