-
-
Notifications
You must be signed in to change notification settings - Fork 114
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
Changed templating-tools to require uglify-js from NPM #234
Conversation
Ok, so over here I get the result that I should be getting in the Meteor repo. I think I know why though, for your tests you are pulling the package from Atmosphere, whereas over there it comes from the repo. Just a theory here. |
I am unsure why would system's node be important here? To my understanding Meteor should bundle NPM with it and have it used it to install Babili? |
@mitar The Babili minifier won't run in Node versions older than 4. |
But why would system's node be used? I thought Meteor is not using it anymore? |
@benjamn, I think @mitar is right here, Meteor doesn't use the system's version of node usually, in the Meteor repo itself, we have to use the correct version because we are building Meteor, but over here they aren't. They just download a release and use the devkit like most other people would. I will change that back. |
I agree that changing the The Node version here is only used for the Hexo docs if I'm not mistaken. With that being said, I don't really see a harm in bumping the Node version for that to a more recent version. Regardless, that's a task for a separate PR/commit. |
On a side note, that one test will continue to fail over here since Blaze does not use the meteor/devel version of |
I think I see where @mitar was coming from in asking. If something isn't broke it doesn't need fixing, and from what I can see, he is one of the main people over here in Blaze, so he knows better than anyone what changes need made. |
I found our problem. Digging further into the Blaze code reveals that there is now a complete incompatibility between Blaze and Meteor because of this change. Blaze is using the UglifierJS beautify function, which Babili does not support, Babili is one way. So, instead of making their test pass, I think we should just have Blaze use uglify on their end as their own package. |
That said, I can do one of two things for you guys, I can rewrite spacebars-compiler to use UglifyJS from npm, or I can create a new package exclusively for Blaze that exports UglifyJS, up to you @mitar, this is more your project. |
We could consider just pinning
|
That is a much better option than I came up with, I will update it and push it, I hate to have so many pushes, but my computer is sooo slow that tests take hours to run, even a single package. Gotta love rocking a single core AMD. |
Not a huge deal, I don't think. Don't be afraid to push new commits either (instead of amending previous commits). It might make it a lot more clear how things have progressed. We can always squash at the end! |
I will make a push on my test branch of |
Actually, I have just been rebasing and squashing as I go, to reduce the workload on you guys. |
Alright! Blaze now passes, even though it fails because of my lack of the S3 keys to push the docs...you might wanna update that in the CI script, since passing CI is required to merge. |
Ok, don't merge, |
Found the issue, you can only have 1 version of a package installed at a time, and the version of |
Nope, still failing on |
For those who are interested, the issue that is causing the test to fail is here. |
So, now we have to figure out how to cope with this. |
I meant you don't need to do that, and it might be helpful if you didn't. Squashing is one button at the end and it's actually nice to see what you've changed/tried in each commit to provide advice instead of trying to guess.
I think you actually have a circular dependency that may not be getting considered here and I don't know if you can actually fix the tests without . If you haven't changed that submodule reference to point to the modified Blaze branch with the fixed I think the |
Ah okay, I will stop squashing my commits then. The thing is, I see why you say circular dependency, because |
Ok, so I keep getting this error and I cannot figure out why, I get the error if the folder is there, and I get it if it's not there. If I remove the .npm folder entirely, then meteor --get-ready just crashes.
|
Ok, given that I am having these issues with this. I have an idea, and I want MDG guidance. |
Ok, so I found out why |
Nope wrong yet again. Turns out meteor is installing the |
So I think we should depend on the NPM package. I do not know why this does not work. |
@mitar It's the timeout, installing the |
Or you know, I could just still be depending on a package that I didn't include in the shrinkwrap. That might just be it. |
Also, in my |
Ok, so I ran an ssh on one of my builds and I am completely perplexed. The |
Ok, I have the problem pegged now, and I need MDG help to fix it. I have been testing the package locally, and what happens is while building the package, EDIT: Nevermind, I fixed it, turns out I need to |
Great news @mitar. I am done and will be out of your hair. All of the code is building correctly and all tests pass. You can merge whenever you want. Then we can update the reference in the meteor repo and meteor should build and pass all of its tests and we can close these PRs. |
Ok, not done yet, now the blaze tests are failing. In particular video:
|
Looks good. Thanks. |
@sethmurphy18 Your tests above seem to have failed spectacularly however the main repo CircleCI seems to be passing with those same commits merged: https://circleci.com/gh/meteor/blaze/tree/master. I don't actually see the specific Anyhow, the Things look okay other than that. |
Oh, I missed that. @abernix, thanks for catching that. @sethmurphy18, could you make another pull request moving |
Sure no problem. |
We are also going to have to update the references to the |
I have been working with @abernix and @benjamn to replace uglify with the babili minifer in the minifier-js package to provide better ES6 support in Meteor (see meteor/meteor#8378 and meteor/meteor#8397). We have hit a roadblock, though, because the templating-tools tests are failing. I have made the changes suggested by @abernix that will make the code pass. The minifier is actually removing some of the newlines in the code, causing the tests to fail. This PR would fix that issue. I also had to update the version of node that Circle is using because Babili requires at least Node 4.