[confirmed] windows bug
Closed this issue · 14 comments
ember-intl/ember-intl#251 (comment)
I'll see if i can round up a windows machine/vm here..
basically, consumers often use path.join
for one reason or another, but this results in different paths provided and breaks the tree construction and potentially other things.
The solution, is for broccoli-funnel to "normalize" user input to something it internally prefers to deal with posix. This will make funnel usage more portable.
I suspect the following will be sufficient.
var path = require('path');
function normalize(filePath) {
if (path.sep !== '/') {
return filePath.split(path.sep).join('/')
}
return filePath;
}
I'm about to head out for dinner, but will address this either when i return or in the AM.
I believe joliss/node-walk-sync#18 address this, but will confirm on my windows machine tonight.
I'm still having the issue with ember 1.13.12.
I'm still having the issue with ember 1.13.12.
Can you provide a reproduction (or describe whats going on?) unfortunately without more info its hard to resolve.
I'm still getting the error message as described here:
jasonmit/ember-cli-moment-shim#19
Unfortunately i've reverted back to 1.13.8 so i don't have my package.json anymore. If you would like i can try and upgrade again and get all my current packages and versions.
I have these global versions though.
npm: 3.3.12
node: v5.0.0
ember-cli: 1.13.12
os: win32 x64.
Don't know if this matters but when i do npm --v
i get 3.3.12 but when i do ember --version
it comes up with npm version of 2.14.10.
@Kilowhisky can you share
npm ls broccoli-funnel broccoli-merge-trees broccoli-caching-writer ember-cli-moment
myapp@0.0.1 C:\Projects\GIT\myapp
├─┬ ember-cli@1.13.12
│ ├─┬ broccoli-config-loader@1.0.0
│ │ └── broccoli-caching-writer@2.2.0
│ ├── broccoli-funnel@1.0.0
│ ├── broccoli-merge-trees@1.0.0
│ └─┬ broccoli-sourcemap-concat@2.0.2
│ └── broccoli-caching-writer@2.2.0
├─┬ ember-cli-babel@5.1.6
│ ├─┬ broccoli-babel-transpiler@5.5.0
│ │ └── broccoli-merge-trees@1.0.0
│ └── broccoli-funnel@1.0.0
├─┬ ember-cli-blanket@0.6.2
│ ├── broccoli-funnel@0.2.15
│ └── broccoli-merge-trees@0.2.4
└─┬ ember-cli-less@1.5.2
└─┬ broccoli-less-single@0.6.0
└── broccoli-caching-writer@2.2.0
I'm using my own custom moment instead of ember-cli-moment. I still make use of the ember-cli-moment-shim though.
myapp@0.0.1 C:\Projects\GIT\myapp
└── ember-cli-moment-shim@0.6.2
@Kilowhisky strange ember-cli-moment-shim has a dependency on broccoli-funnel I am surprised it doesn't show up during npm ls broccoli-funnel
https://github.com/jasonmit/ember-cli-moment-shim/blob/master/package.json#L24
Anyways, yes something seems fishy.
Same problem here, as described in quaertym/ember-cli-compass-compiler#65
i believe this is sorted out
I am still getting this issue. Seems to be a problem with the way path.normalize and path.join work on windows. Right now I have several of each and I get the error
Error: ENOENT: no such file or directory, mkdir 'C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\tmp\funnel-output_path-MC8q0Jpj.tmp\out\pages'
at Error (native)
at Object.fs.mkdirSync (fs.js:842:18)
at Funnel.applyPatch [as _applyPatch] (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:291:10)
at Funnel.<anonymous> (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:250:10)
at Array.forEach (native)
at Funnel.processFilters (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:249:9)
at Funnel.build (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-funnel\index.js:172:10)
at C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\broccoli-plugin\read_compat.js:61:34
at lib$rsvp$$internal$$tryCatch (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1036:16)
at lib$rsvp$$internal$$invokeCallback (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1048:17)
at lib$rsvp$$internal$$publish (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1019:11)
at lib$rsvp$asap$$flush (C:\Users\FA-0042\Documents\Projects\salesforce\JohnsonControls\buildresources\node_modules\rsvp\dist\rsvp.js:1198:9)
at _combinedTickCallback (node.js:376:9)
at process._tickCallback (node.js:407:11)
at Function.Module.runMain (module.js:449:11)
at startup (node.js:142:18)
at node.js:939:3
but if I remove the path.normalize and path.join statements it builds just fine
Changing my path statements to path.posix.normalize
and path.posix.join
worked for me
@iDev0urer reproduction please and we can reopen, otherwise it isn't really actionable.
I have this bug in windows, is it still open?