-
Notifications
You must be signed in to change notification settings - Fork 20.6k
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
Breaking change to the data module in 3.5.0 #4665
Comments
Thanks for the report. I agree this is an unintended breaking change that we should fix in 3.5.1. Marking for team discussion. Perhaps we can leave the current solution for jQuery 4.0.0 and in 3.5.1 apply original @gibson042’s suggestion of appending a space to event names before storing in the internal data storage. This solution can break code that relied on the private Some possible consumer are web browsers, I think Firefox is using this API for jQuery event support in DevTools. If that’s still the case, do you know, @bzbarsky, who at Mozilla we could contact to coordinate any changes to this API? |
Any chance on quick 3.5.1 release? |
@rjaros our release process is pretty involved and we still need to discuss & iron out the fix. Don’t expect it within days, more like a few weeks. |
We’ll monitor the situation. If we get info about many more projects broken by this change, we’ll try to get the fix out quicker. No promises about specific timing, though: it’s Easter and we’re all volunteers. |
@mgol it seems we are affected by the aforementioned change too: twbs/bootstrap#30553 Should I open another issue? |
@XhmikosR no, let’s track all similar bugs in this issue. |
So, basically the failures can be seen here where I updated jQuery to v3.5.0 and adapted our tests: CI errors The code is quite old, since our v3.3.4. |
Indeed this is also affecting our system (InvoicePlane), jQuery 3.5.0 is tiggering many erros and also breaking the whole JS functonality. Indeed braking changes should not be implemented in a normal release, but instead in a mainrelease (^4.0.0) in jQuery as this will automatically break all projects which are based on jQuery and trust it to not include breaking changes within the same mainversion. Also we had to change our package.json to not update to jQuery 3.5.0 and stay on ~3.4.1 for not running into this issue. For us the eror was: |
We appreciate the quick notification on this breakage and intend to release an update relatively soon but as @mgol said it's Easter weekend. Whatever you were doing on Friday morning before 3.5.0 was released, continue to do that until 3.5.1 is released. |
@jasonLaster or @nchevobbe might know whether there are Mozilla dependencies here? |
Thanks, Boris. @jasonLaster / @nchevobbe could you point me to the code that handles jQuery listeners in Firefox? Same question to @paulirish; Chrome supports framework listeners and this could affect that support. |
Hello @mgol |
I was thinking about it a bit more, my conclusions:
Because of the above, I'd only revert the data change, deferring it to jQuery 4.0.0. PR incoming. |
@XhmikosR Note that this fix won't fix all the other breakages with Bootstrap 3 due to the But at least for them there's a workaround for devs using Bootstrap. |
@mgol are you sure our issue can be worked around? The error that affects us all of our versions since v3.3.4 is because of the changes in #4603 (AFAICT) and Here is the relevant WIP PR which fixes the issue https://github.com/twbs/bootstrap/pull/30559/files#diff-6ef28a975ef633bb3b3318b9917df9e5R338 |
@XhmikosR Not this issue, this issue we'll fix, most likely by reverting the change to The PR you linked to also applies updates for the changes to |
Ah, yeah those changes are only in our tests so people should read the release notes when it comes to their code. I'm mostly concerned about the Thanks for the help! |
@XhmikosR - are we to understand that for Bootstrap 3 the only fix needed is the one for |
@boris-petrov yeah, no other code seems to be affected from the other changes AFAICT; our CI passes. @Johann-S please have another look in case I missed something. |
The change in jquerygh-4603 made the object returned by `elem.data()` a prototype-less object. That's a desired change to support keys colliding with Object.prototype properties but it's also a breaking change so it has to wait for jQuery 4.0.0. A 3.x-only test was added to avoid breaking it in the future on this branch. Fixes jquerygh-4665 Ref jquerygh-4603
Version 3.5.0 of jquery introduced a [breaking change](jquery/jquery#4665) that was fixed in version 3.5.1.
jQuery 3.5.1 has been released: https://blog.jquery.com/2020/05/04/jquery-3-5-1-released-fixing-a-regression/ |
It will sound like we're not letting you catch breath, and I hate to be that guy, but.. any ETA on a NuGet update? thanks for the hard work, guys :) |
The jQuery team only maintains the |
I guess this is why linters say to use |
Tooltips in HeatMaps were breaking because of jquery 3.5.0 bug jquery/jquery#4665. Upgrading to 3.5.1 resolves our tooltip issue. Bug-Url: https://bugzilla.redhat.com/1853894 Change-Id: I730130af80158cb93c5eca5efa4a2160a77ccb1f Signed-off-by: Scott J Dickerson <sdickers@redhat.com>
I'm using these versions and I can't get the toggle "hamburger"(or any other collapse button) feature to work bootrstrap on laravel, any suggestions? "devDependencies": { |
@ManuC84 Did you run |
…add source maps to files included from node_modules
…add source maps to files included from node_modules
…add source maps to files included from node_modules (#67)
…add source maps to files included from node_modules (#67)
The change to the data module made here:
https://github.com/jquery/jquery/pull/4603/files#diff-38fa4ad21a97c2bf8d5b91d033df3335
breaks projects that depend on
hasOwnProperty()
function availability.An example: snapappointments/bootstrap-select#2430
Many other project can be affected as well.
Such change should not be introduced as a minor version upgrade.
The text was updated successfully, but these errors were encountered: