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
Replace underscore with lodash, update backbone to 1.3.3 #842
Conversation
I think if we do move this way we'll need to retain underscore (for older backbone usage), allow the user to opt in to using lodash, and possibly spit out a deprecation notice if using underscore or older backbone so we can migrate them forward. This is a helpful resource: https://github.com/lodash/lodash/wiki/Migrating |
@sgtcoolguy -- I wonder if lodash could be included in a |
Why don't wee keep For that we also need to bundle another version of the modules under |
That would separate the |
@brentonhouse, yes that's right. |
@sgtcoolguy I've made sgtcoolguy#1 to resolve the merge conflicts. |
I'm getting this error when compiling an app:
|
According to migrating doc, |
…ash's _.mergeWith to merge the alloy plugins to babel we use with any user-defined plugins/presets from sourceMapper.OPTIONS_OUTPUT.presets
Now, |
But we still need to verify the generated code for controller that uses databinding, specifically the |
@feons I've merged titanium_mobile#9512, which means our current master branch is broken with alloy apps until we get this fix in (or disable some of the transpilation/hack the sdk). I think it's important to move us forward here, though I realize it's not a great situation to force a breaking change to Alloy. I'd love if anyone has any ideas how we may be able to hack babel's transpile to avoid this specific issue, cc @hansemannn @janvennemann @feons |
@sgtcoolguy I know it's not an ideal solution, but I am all in for this, even as a breaking change. And also pro calling it "Alloy 2.0" - it's about time. If developers want to use an old version, they can. And even if we need to push CLI to the next major for his, I'd still agree with that. Getting ES6/7/8 support is the most fundamental gap we are closing right now, so let's push on that. |
JIRA: Related to https://jira.appcelerator.org/browse/TIMOB-24980
https://jira.appcelerator.org/browse/ALOY-1168
Description:
I originally planned to use Lodash's mergeWith to implement TIMOB-24980, but we use underscore. I can bring in lodash's mergeWith special for this case, and have in a separate PR #843
While this works, I think it'd be generally helpful to update our 3rd-party library here.
So, this PR proposes we:
_.mergeWith
to deeply merge the source mapper options and retain any user plugins/presets.However, this is likely a breaking change, as there have been changes in behavior/method naming from underscore to loads, and we expose the library used as the
_
global, so these changes propagate to the user's apps.