You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jun 13, 2024. It is now read-only.
First off - let me thank everyone involved in this project. It's amazing! The universal native bridge portion alone is a golden egg.
I'm building cordova apps with Ember, and was seeing some strange breakages that are being caused by the javascript prototype extensions that ace uses colliding with some behavior of Ember. I was able to temporarily work around them for now by simply dropping Extensions.js from the cordova_plugins.js manifest (not using any features that depend on the extensions)
Now, I realize that this problem is not a fault of ace by itself - Ember's prototype extensions are ..extensive.. (wayy more evil there than in Extensions.js), and we're on the path towards removing them from our projects entirely (Ember provides alternate ways to use the utility functions).
After browsing the code, it doesn't seem like these extensions are used in many places, and in some cases might be there to simply provide a more "java-like" syntax (though I could be mistaken).
tldr;
I wanted to see how the maintainers of this project would feel about moving away from JS prototype extensions. I'd be happy to contribute a branch for review, if "no extensions" sounds like a desirable goal for maximal compatibility with various projects.
In the meantime, I'll be profiling the actual conflicts more in-depth (sorry for the lack of details!), and perhaps starting to tinker with the no-extensions refactors, but I don't want to be maintaining a personal fork if you all disagree (would probably approach it from the ember side in that case, since a supported path already exists).
Thanks for reading, and thanks again for this project!
The text was updated successfully, but these errors were encountered:
I was able to solve my issue (it was a conflict with Array.prototype.removeAt).
I refactored "in place" by replacing calls like data.removeAt(1) with ace.Extensions.removeAt.call(data, 1)
and then did some further refactors to removeAt(data, 1) by storing a local reference to ace.Extensions.removeAt.call
I still need to verify my changes further (and run tests if available?) - I should have some time later this week to do a proper PR and writeup.
EDIT - my branch has some serious issues. Was trying to get fancy with .call() and it just doesn't work. Will be reverting my last commit before continuing. No need to review the branch at this time, but I'd still be interested in any "no extensions" commentary from project maintainers. Thanks!
Hello!
First off - let me thank everyone involved in this project. It's amazing! The universal native bridge portion alone is a golden egg.
I'm building cordova apps with Ember, and was seeing some strange breakages that are being caused by the javascript prototype extensions that ace uses colliding with some behavior of Ember. I was able to temporarily work around them for now by simply dropping
Extensions.js
from thecordova_plugins.js
manifest (not using any features that depend on the extensions)Now, I realize that this problem is not a fault of ace by itself - Ember's prototype extensions are ..extensive.. (wayy more evil there than in
Extensions.js
), and we're on the path towards removing them from our projects entirely (Ember provides alternate ways to use the utility functions).After browsing the code, it doesn't seem like these extensions are used in many places, and in some cases might be there to simply provide a more "java-like" syntax (though I could be mistaken).
tldr;
I wanted to see how the maintainers of this project would feel about moving away from JS prototype extensions. I'd be happy to contribute a branch for review, if "no extensions" sounds like a desirable goal for maximal compatibility with various projects.
In the meantime, I'll be profiling the actual conflicts more in-depth (sorry for the lack of details!), and perhaps starting to tinker with the no-extensions refactors, but I don't want to be maintaining a personal fork if you all disagree (would probably approach it from the ember side in that case, since a supported path already exists).
Thanks for reading, and thanks again for this project!
The text was updated successfully, but these errors were encountered: