Skip to content
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

Error: EEXIST, file already exists #3413

Closed
fivetwentysix opened this issue Mar 4, 2015 · 133 comments
Closed

Error: EEXIST, file already exists #3413

fivetwentysix opened this issue Mar 4, 2015 · 133 comments
Assignees

Comments

@fivetwentysix
Copy link

file changed templates/application.hbs
EEXIST, file already exists '/Users/fivetwentysix/testapp/tmp/caching-writer-dest-dir_GE6biD.tmp'
Error: EEXIST, file already exists '/Users/fivetwentysix/testapp/tmp/caching-writer-dest-dir_GE6biD.tmp'
    at Error (native)
    at Object.fs.symlinkSync (fs.js:852:18)
    at symlink (/Users/fivetwentysix/testapp/node_modules/ember-cli/node_modules/symlink-or-copy/index.js:82:14)
    at Function.symlinkOrCopySync (/Users/fivetwentysix/testapp/node_modules/ember-cli/node_modules/symlink-or-copy/index.js:58:5)
    at /Users/fivetwentysix/testapp/node_modules/ember-cli/node_modules/broccoli-sourcemap-concat/node_modules/broccoli-caching-writer/index.js:103:21
    at lib$rsvp$$internal$$tryCatch (/Users/fivetwentysix/testapp/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:489:16)
    at lib$rsvp$$internal$$invokeCallback (/Users/fivetwentysix/testapp/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:501:17)
    at lib$rsvp$$internal$$publish (/Users/fivetwentysix/testapp/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:472:11)
    at lib$rsvp$asap$$flush (/Users/fivetwentysix/testapp/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:1290:9)
    at process._tickCallback (node.js:355:11)

Happens when I save any file with ember serve running.

This happens on a brand new project created with ember-cli-0.1.15

Here's a sample repo: https://github.com/fivetwentysix/ember-test-app

@ghost
Copy link

ghost commented Mar 4, 2015

This is happening to me too. Fresh app with 0.1.2-beta.1. Maybe something has changed in a dependency upstream?

https://gist.github.com/Soliah/edc8f012cc9e6800005d

@btecu
Copy link
Contributor

btecu commented Mar 4, 2015

Any of you using outputPaths?

#3365

@wstrinz
Copy link

wstrinz commented Mar 4, 2015

I'm getting this too, tried with multiple versions of ember-cli. Not using outputPaths as far as I know, just a plain old ember new myapp.

@mariozig
Copy link

mariozig commented Mar 4, 2015

@fivetwentysix aside from stopping the server prior to making changes, have you found any sort of work around for this?

I'm experiencing it too in an unadulterated stock ember app on:

version: 0.2.0-beta.1
node: 0.12.0
npm: 2.1.8

@btecu no outputPaths here. Obviously it's referenced in node_modules/ember-cli/lib/broccoli/ember-app.js but the app i just tested on is a fresh install of ember cli, a newed up app, and no modifications other than rewriting a project file out.

@btecu
Copy link
Contributor

btecu commented Mar 4, 2015

Probably a bad idea, but what I did to get around this problem was editing app/node_modules/ember-cli/node_modules/symlink-or-copy/copy-dereference/index.js and replace
fs.writeFileSync(dest, contents, { flag: 'wx', mode: srcStats.mode }) with
fs.writeFileSync(dest, contents, { flag: 'w', mode: srcStats.mode })

Restart ember server afterwards...

@bobbyhubbard
Copy link

Same issue here. See broccolijs/node-symlink-or-copy#4

@mariozig
Copy link

mariozig commented Mar 4, 2015

@bobbyhubbard are you sure it's the same bug? nodejs/node-v0.x-archive#8651 says it was fixed in node: 0.12.0 and i'm definitely seeing it with that version.

@stickbyatlas
Copy link

Hi folks - an hour ago, I did an npm update in my project directory. Immediately afterward, I started noticing the same crashing behaviour after changing a file while serving. Like others here, I suspect this has to do with an upstream dependency completely breaking everything, but I have no idea which one it could be. Would it be useful to share the contents of package.json here?

(For the record, the 'already existing' file is tmp/class-tmp_cache_dir-85EAruZ0.tmp , which is only relevant in that it's also a tmp/... file. The last step in the trace is Object.fs.symlinkSync. Would be happy to share the rest of the trace if it'll help.)

@fivetwentysix
Copy link
Author

This is why npm needs something similar to gemfile.lock

@stickbyatlas
Copy link

If I knew how to reverse / undo npm update, I'd do it in a heartbeat. I can't even parse the output of the command, it's just a jumble of different dependency trees and conflict warnings. Every time I think "maybe Javascript has finally matured," something like this happens, the whole building topples, and I yearn for a classic, vetted language with a massive standard library.

@dopin
Copy link

dopin commented Mar 4, 2015

I'm getting this too. I'm not sure if this works but if you specify "rimraf":"2.2.8" in package.json, it fixes.
rimraf 2.3.0 is just released about 7 hours ago from now.

@ghost
Copy link

ghost commented Mar 4, 2015

Confirming @dopin's suggestion of forcing rimraf to 2.2.8 works. Make sure to add this to dependencies and not devDependencies.

@JohnRodney
Copy link

@dopin's suggestion did not work for me. I tried cloning (broken), installing (broken), open old files (worked). Something new in the way that cache files are stored. If I just delete all the cache files with the commonatliy of "caching-writer-dest-dir{otherjunkhere}" then it saved ONCE fine. Next time back to broken.

@fotinakis
Copy link
Contributor

Hitting this too just in the last few hours, yikes yikes...

@gevious
Copy link

gevious commented Mar 4, 2015

thats the danger of being an early adopter ;)

@tehmaestro
Copy link

Yup, same here. I just updated Ember to 1.11 beta. If I go back to 1.10, will this go away?
EDIT: No it doesn't. Ignore the referenced issue.

EDIT2: It appears that there is an issue when the project is being watched. If I run ember build manually, every time, I don't get any errors.

@DenizOkcu
Copy link

@dopin 's fix works for me too.
Additional information:
npm install with rimraf v2.3.0:

npm WARN unmet dependency /home/{*}/node_modules/broccoli-caching-writer/node_modules/rimraf requires glob@'^4.4.1' but will load
npm WARN unmet dependency /home/{*}/node_modules/glob,
npm WARN unmet dependency which is version 4.0.5
npm WARN unmet dependency /home/{*}/node_modules/broccoli-es6modules/node_modules/broccoli-caching-writer/node_modules/rimraf requires glob@'^4.4.1' but will load
npm WARN unmet dependency /home/{*}/node_modules/glob,
npm WARN unmet dependency which is version 4.0.5
npm WARN unmet dependency /home/{*}/node_modules/broccoli-es6modules/node_modules/esperanto/node_modules/sander/node_modules/rimraf requires glob@'^4.4.1' but will load
npm WARN unmet dependency /home/{*}/node_modules/glob,
npm WARN unmet dependency which is version 4.0.5
npm WARN unmet dependency /home/{*}/node_modules/broccoli-sourcemap-concat/node_modules/broccoli-caching-writer/node_modules/rimraf requires glob@'^4.4.1' but will load
npm WARN unmet dependency /home/{*}/node_modules/glob,
npm WARN unmet dependency which is version 4.0.5

@olivierlesnicki
Copy link

Same here!

file changed controllers/journey.js
EEXIST, file already exists '/Users/pro/Workbench/Centrica/Github/home-move/tmp/class-tmp_cache_dir-fIzB9FpE.tmp'
Error: EEXIST, file already exists '/Users/pro/Workbench/Centrica/Github/home-move/tmp/class-tmp_cache_dir-fIzB9FpE.tmp'
    at Object.fs.symlinkSync (fs.js:741:18)
    at symlink (/Users/pro/Workbench/Centrica/Github/home-move/node_modules/ember-cli/node_modules/symlink-or-copy/index.js:82:14)
    at Function.symlinkOrCopySync [as sync] (/Users/pro/Workbench/Centrica/Github/home-move/node_modules/ember-cli/node_modules/symlink-or-copy/index.js:58:5)
    at /Users/pro/Workbench/Centrica/Github/home-move/node_modules/ember-cli/node_modules/broccoli-sourcemap-concat/node_modules/broccoli-caching-writer/index.js:103:21
    at lib$rsvp$$internal$$tryCatch (/Users/pro/Workbench/Centrica/Github/home-move/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:489:16)
    at lib$rsvp$$internal$$invokeCallback (/Users/pro/Workbench/Centrica/Github/home-move/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:501:17)
    at lib$rsvp$$internal$$publish (/Users/pro/Workbench/Centrica/Github/home-move/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:472:11)
    at Object.lib$rsvp$asap$$flush [as _onImmediate] (/Users/pro/Workbench/Centrica/Github/home-move/node_modules/ember-cli/node_modules/promise-map-series/node_modules/rsvp/dist/rsvp.js:1290:9)
    at processImmediate [as _immediateCallback] (timers.js:345:15)

@olivierlesnicki
Copy link

I confirm that specifying "rimraf":"2.2.8" as a dependency fixed it.

@badazz91
Copy link

badazz91 commented Mar 4, 2015

Hey guys,

I tried it with "rimraf":"2.3.0" - still getting the same issue.

I tried it with both ember-cli 0.1.15 and 0.2.0-beta.1.

version: 0.2.0-beta.1
node: 0.12.0
npm: 2.1.8

@olivierlesnicki
Copy link

@badazz91 Try rimraf 2.2.8 not 2.3.0

@jmurphyau
Copy link
Contributor

@olivierlesnicki - Could you update your comment? It should be 'rimraf' but you've put 'rifraf'

@badazz91
Copy link

badazz91 commented Mar 4, 2015

@olivierlesnicki ok using

`"rimraf":"2.2.8"`` as a dependency and a fresh npm install did the trick.

Also I noticed, that if you are using broccoli-sass and node 0.12.0 you need to make sure that you are using this version

"broccoli-sass": "^0.4.0" in your package.json

Thanks.

@stickbyatlas
Copy link

So, I totally don't even know what rimraf is, but this did the trick for me.
Thanks, all!

aymerick added a commit to aymerick/kowa that referenced this issue Mar 4, 2015
@BilalBudhani
Copy link

After adding "rimraf":"2.2.8" in my package.json everything started working. Thanks @dopin

@wautersj
Copy link

wautersj commented Mar 4, 2015

I confirm that the issue was resolved after adding "rimraf":"2.2.8" as a dependency and redoing npm

@ryanlabouve
Copy link
Contributor

Yup. Thanks @dopin! Adding "rimraf":"2.2.8" as a dependency worked for me too.

@iRonin
Copy link

iRonin commented Jul 13, 2015

If you encounter this issue with ember-cli-rails check Multiple (web server) workers cause multiple build servers and race conditions

kvz added a commit to kvz/jekyll-fix-titlecase that referenced this issue Sep 21, 2015
- inherits update
- v3.2.2
- lockfile@2
- v3.2.3
- Remove optional graceful-fs dependency
  See tapjs/tapjs#85
- v3.2.4
- use fs, not graceful-fs
- v3.2.5
- fix tests
- v3.2.6
- new Glob: options are optional, even with cb
  Fix #77
- v3.2.7
- regenerate test fixture
- Emit match events marked with / for dirs
  Close #81
  Close #82
  Thanks @cowboy @isaacbw
- v3.2.8
- Assert that match is never emitted after end
  Re comments from @cowboy in #81
- Mark appropriately, without premature end
  Fix #83
  Do the stat() call only when necessary, right before emitting the event
  and then moving on to the next item (or EOF) in the queue.
- v3.2.9
- minimatch@latest
- v3.2.10
- don't use ^ for version
- v3.2.11
- Use ^ for minimatch version
- v4.0.0
- Don't use 0.8 with travis
- set debug based on NODE_DEBUG env
- Fix #88 Don't fail to return on empty/comment patterns
- v4.0.1
- Ensure callback is not called multiple times on error
  Fix #85
- once-ify the callback
- regenerate test fixtures
- fix incorrect root on windows
- v4.0.2
- optionally depend on graceful-fs 3.x
- v4.0.3
- test: fix double-require fs
- Fix negation bug
  This addresses the bug where starting a pattern with ! was not
  respecting negation.
  Fixes #62
  Fixes #105
- run test fixture regeneration
- Support use-strict by moving function def out of while loop
- Ignore node_modules
  Ensure node_modules/ doesn't get checked in by mistake
- v4.0.4
- bump minimatch
- bump minimatch
- isc license
- v4.0.5
- replace outdated warning with awesome gif
- re #116: Make graceful-fs a proper dependency
- v4.0.6
- include funny gif in test fixture
- failing test and TODO comments for updated Bash 4.3 globstar behavior
- refactor _process into less unreasonable bits
- remove depth/maxDepth options
  Glob just goes until hiting ELOOP right now anyway, and
  once Bash 4.3 style behavior is implemented, the depth
  will be an even less necessary guard for globstars.  It
  already is unnecessary for non-globstar globs.
- Bash 4.3 globstar behavior
  This also organizes a lot of stuff and de-duplicates some of the
  de-duplication logic that was happening before.
  The logic for handling globstar directory traversals (and avoiding
  directory traversals for symlinked dirs) is not particularly
  optimized.  In fact, I'd be surprised if this change was not a
  pretty significant performance regression in general.  But at least
  it's more correct, so now we can start analyzing the performance
  and optimizing where it makes sense without becoming even more
  committed to incorrect behavior.
- benchmark care of @joliss
- Add benchmark/profiling scripts and fixture stuff
- add oh-my-glob.gif to npmignore to reduce package size
- Add CI build status and dependencies info in readme
- fix profile script cd
- Add contribution info
- Move sync glob function into separate class
  Step 1 of zalgo removal.
  Makes sync glob a bit faster, but I suspect that it'd be faster yet to
  just stat stuff rather than detect directories via a failed readdir,
  since the cost of error object creation and GC might be too heavy.  More
  profiling and investigation is needed.
  Before:
      $ npm run bench
      ...
      Node glob.sync timing:
      100000
      real	0m28.484s
      user	0m21.532s
      sys	0m3.331s
      Node glob async timing:
      100000
      real	0m39.003s
      user	0m29.359s
      sys	0m6.753s
  After:
      Node glob.sync timing:
      100000
      real	0m11.541s
      user	0m8.832s
      sys	0m1.665s
      Node glob async timing:
      100000
      real	0m38.648s
      user	0m29.320s
      sys	0m6.421s
  So, this cuts out about half of the time which was mostly being spent in
  silly function-wrapping and poorly factored code.
  Re #78
- move common functions into common.js
- prefer multivar to leading comma
- consistent semis
- remove deprecated bits
  That was from waaayyyy back in version 2.0.
- Refactor async glob, tests passing
- just use regular fs
  The only thing we use fds for in this util is readdir, and
  it's already cached and inflight-guarded anyway.
- put benchmark script in TMPDIR instead of project
  Too tedious to continually switch back and forth between tests and
  profiling
- GlobStar: Don't leave lstat information on the table
  This speeds up the ** benchmark considerably, by removing a LOT
  of unnecessary stats and readdirs.
- the return of pause/resume
- quieter pause/resume test
- Merge branch 'splitsync'
  Merging as --no-ff since there was a removal of the pause/resume along
  the way and some other unnecessary breaking stuff.  Also, this is a
  major refactor.
  Even though no behavior *should* have changed, the performance
  improvement is so major I'm considering bumping the major version number
  on general principle, since the extreme speed increase might break
  programs.
  Fix #78
- v4.1.0
- add inflight dep
- v4.1.1
- v4.1.2-beta
- sync: throw if cb provided
  Fixes confounding bug in #128.
- v4.1.2
- Properly return results from sync mark:true globs
  Fix #129
- v4.1.3
- Use manual iteration rather than Array.map. Tiny perf bump.
- only include needed files in npm publish
- remove graceful-fs
- quieter test
- Fixed accidental global var in _readdir
- Add test for global leakage, and catch another leaked global
- v4.1.4
- fix stat event not having the stat
- test for stat object return
- global-leakage test
- v4.1.5
- No need to ignore benchmark-fixture
  Benchmark fixture is placed in TMPDIR now.
- Better documentation
- handle globstar symlinks the same as Bash 4.3
  Fixes #135
- v4.1.6
- Add nodir flag
  Fix #121
- do nothing after abort() is called
- add glob.hasMagic function
- add some missing options and info to the doc
- v4.2.0
- has-magic test
- v4.2.1
- Fixed a misspelling in the README.
- Remove second copy of `nocase` option notes
  There were two copies of the `nocase` option documentation with two different wordings for the same thing. Removed one of them, the one which seemed less polished.
- Use localeCompare for sorting strings
  The better to unicode
- Sort readdir results
  Fix #143
- v4.2.2
- Use minimatch 2.x
- v4.3.0
- Corrected four minor typos in README.md
  Line 34: so `a{/b/c,bcd}` would expand into `a/b/c` and `abc*d*\.
  Line 39: Matches 0 or more characters in a sin*g*le path portion
  Line 103: glob.hasMagic(patter*n*, [options])
  Line 134: Create a Glob object by instanti*ati*ng the `glob.Glob` class.
- Bump minimatch dep
  Fixes #145
- Fix non-deterministic test
- v4.3.1
- Make nocase-nomagic test pass on Windows
  Just normalize slashes for justice.
- make all tests pass on windows
- Correct slash behavior for dirs passed as pattern
- v4.3.2
- Settle on single quotes
- make readdir-order test deterministic
- v4.3.3
- test setup remove npm-debug.log file
- Revert "Sort readdir results"
  This reverts commit bbaa547a9bd695ca71b6f1c40d6423acae1d1eef.
  Rationale:
  isaacs/node-glob#143 (comment)
- v4.3.4
- Merge pull request #138 from mikeobrien/readmetweak
  Fixed a misspelling in the README.
- Merge pull request #141 from benhutchins/patch-1
  Remove second copy of `nocase` option notes
- use newer tap
- v4.3.5
- New: Added ignore option (fixes #115)
- ignore tests DRY-up
  Just list the cases, and then do them all async and sync
- Ignore code cleanup and factoring
- v4.4.0
- Provide ref to #167 in 'callback provided to sync' error
- v4.4.1
- Fix broken symlink handling
  Root cause isaacs/rimraf#65
  Root cause ember-cli/ember-cli#3413
  Root cause Rich-Harris/sander#1
  Fix #170
- v4.4.2
- note about deprecation of {sync:true} option in favor of glob.sync() method
- Add 'follow' option to follow directory symlinks in ** matches
  Fix #139
- Remove extra stat in mark/stat end flow
  This also is an annoying race condition that delays the 'match'
  event unnecessarily in many cases.
- Always cache based on absolute path
  This was resulting in some weird behavior especially in the ignore
  case, and sometimes causes 'mark' to not detect dirs properly.
  It's also a blocker for doing realpath and marking together, since
  otherwise it can't tell that it's already statted a particular dir.
- FIXUP follow test
- Realpath support
  Close #148
  Close #142
- Properly exclude files from /-ending patterns
  When the cwd was set, it'd change the absolute path to always be
  slash-free, so filtering based on `/` at the end of a pattern wasn't
  working.
  Fix #158
- v4.5.0
- Deprecate comments and negation
- v5.0.0
- test: Merge mark, add sync nodir, failing cases for #174
- Fix nodir/mark regression from absolute-ifying cache keys
  Fix #174
- v5.0.1
- Ensure that cache keys are always absolute paths
  This would have prevented the regression introduced in 4.5.0 in mark and
  nodir being used in conjunction with cwd.
- Fix for 0.10, where path.isAbsolute is not exposed
- test: nonull failing cases for #176
- Fix nonull regression (fixes #176)
- v5.0.2
- doc fixup: remove duplicate mention of statCache
- fix interaction between realpath and cwd options
  Fix #181
- v5.0.3
- use `path-is-absolute` polyfill module
  It's the same code as `path.isAbsolute()` in Node 0.12 and iojs.
  https://github.com/sindresorhus/path-is-absolute
- v5.0.4
- quote the versions in .travis.yml so they're matched correctly
  The current one matches Node `0.1` and `0.11`.
  Also test on `iojs`.
- v5.0.5
- Better global detection
  Newer versions of node-tap don't create a TAP_Global_Harness global
- tap 1.x
- v5.0.6
- Don't lose weird readdir errors
  Fixes #197
- v5.0.7
- test-regen
- v5.0.8
- reduce cases where tests need to be regenerated
- v5.0.9
- Test base-matching
- add more sync cb thrower tests
- ignore .nyc_output, upgrade tap, use coverage, rm fixtures
- v5.0.10
- Remove duplicate option description
  `nonull` was listed twice in the options descriptions.
- Use graceful-fs if available
- v5.0.11
- Revert "Use graceful-fs if available"
  This reverts commit f09292b72c58b03416dbc60230aa2647ba47daec.
- v5.0.12
- Do not emit 'match' events for ignored items
  Fix #194
- v5.0.13
- Treat ENOTSUP like ENOTDIR in readdir
  Fix #205
- Fix some 'use strict' errors
- Use js for benchmark cleanup
  Fix #199
- Generate fixtures more effectively, with -O instead of eval
- Test for when readdir raises ENOTSUP
  Treat as if it had raised ENOTDIR instead.
- Handle ENOTSUP for sync glob as well as async
  Hopefully fix #208.  At any rate, a better test that verifies it's doing
  what it claims to be doing.
- v5.0.14

- Merge pull request #1860 from megawac/memoize-lu
  Only coerce address to a string once
- Quote reserved word property names in tests
- Update _.map docs for consistency with _.each
- Merge pull request #1863 from acgessler/patch-2
  Update _.map docs for consistency with _.each
- Make _.uniq work with sorted = true and an iteratee. Fixes #1866
- Merge pull request #1867 from akre54/sorted-uniq-with-iteratee
  Make _.uniq work with sorted = true and an iteratee
- use _.contains in _.uniq instead of indexOf
- Merge pull request #1868 from akre54/uniq-contains
  use _.contains in _.uniq instead of indexOf
- Simplify flatten implementation and add startIndex to syntax
- Use flatten and omit and pick
- Flatten supports null; Loop instead of push.apply
- Merge pull request #1685 from megawac/flatten
  Rework internal flatten function
- indexOf and lastIndexOf simplifications
- Merge pull request #1876 from megawac/indexof-s
  indexOf and lastIndexOf simplifications
- Fixes #1883 — hides _.iteratee behind a veil of silence...
- variable/property distinction for improved API/test clarity.
  Using the same letters "moe" for variable name and property value was a bit confusing upon my initial reading of _.property's functionality.
  Altering the variable name "moe" to "stooge" eliminates the potential for confusion arising due to polysemy.
  Similar docs and related tests were likewise updated.
  Conflicts:
  	index.html
  	test/utility.js
- remove right-hand-side alignment spacing for non-assignment statement pair
- Merge pull request #1507 from rck109d/master
  documentation: improved clarity with variable/property distinction
- Change _.noConflict doc text to monospace format
- Release func in _.before and _.once
- Merge pull request #1894 from dimitriwalters/master
  Change _.noConflict doc text to monospace format
- Merge pull request #1895 from zertosh/fix-once-before-leak
  Release func in _.before and _.once
- Update index.html
- Update index.html
- Update _.template docs.
- Merge pull request #1899 from braddunbar/interpolate-values
  Update _.template docs.
- Partial support for constructors
- Merge pull request #1733 from megawac/partial-constructor
  Partial support for constructors
- Result fallback can be a function
- Merge pull request #1900 from megawac/result-fallback-fn
  Result fallback can be a function
- Revert "Result fallback can be a function"
  This reverts commit b8a07d1d94cd6d4586e89a63fda41f2814dc63ce.
- Merge pull request #1897 from ankurp/master
  Including Swift Port in Links & Suggested Reading
- Iteratee: don't make assumptions on # args to pass
- Unrevert "Result fallback can be a function" PR #1900
  This reverts commit 40e8517c8318553ec94b656a6b829d4768c1e046.
- Implement findKey and findIndex helpers
- find*: style tweak and test coverage
- Merge pull request #1587 from megawac/find-index
  Add _.findKey and _.findIndex
- move _.before gc conditional to a single line
- check for array length when evaluating isSorted
- removed tabs to conform with coding style
- Merge pull request #1917 from tjbarber/avoid-returning-zero-truthy-isSorted
  Fixes #1870: _.indexOf with `isSorted` of `true` will incorrectly match `undefined` on an empty array.
- Added _.propertyOf method and tests
- Used function(){} in place of _.noop
- Merge pull request #1921 from bathos/master
  Added _.propertyOf method
- Add _.keysIn method
- Merge pull request #1910 from thejameskyle/keysIn
  Add _.keysIn method
- Create _.assign function
- Merge pull request #1902 from megawac/iteratee-args
  Iteratee: don't make assumptions on # args to pass
- Kill the result var in isEqual
- Merge pull request #1934 from megawac/sans-result
  [minor] Clean up _.isEqual for objects and arrays
- Optimize isFunction only when appropriate.
  Closes #1929.
- Move sortedIndex tests from comparitors -> array tests
- Fix changelog for _.escape
- Merge pull request #1940 from unrealsolver/master
  Fix changelog for _.escape: function no longer escapes slash '/'
- missing new on a typeerror
- Merge pull request #1908 from thejameskyle/assign
  Add _.assign function
- Test typed arrays are functions
- Add _.create method
- Merge pull request #1907 from thejameskyle/create
  Add _.create method
- Alias? includes as contains
- Merge pull request #1955 from megawac/includes
  Alias? includes as contains
- Object-preserving map() function: mapValues
- Remove `reduce` error throwing
  Closes #1858.
- Support fromIndex in _.contains
- Improve invoke coverage
- Merge pull request #1963 from megawac/invoke-cov
  Improve invoke coverage
- Use a version of phantomjs that doesn't compain about SOP
  e.g. https://travis-ci.org/jashkenas/underscore/builds/43040393#L83
- Merge pull request #1962 from megawac/from-contains
  Support fromIndex in _.contains
- Adds a test case when we call _.pluck() to objects passing an undefined property as an argument.
- Merge pull request #1971 from shinnya/feature/add-pluck-test-case
  Adds a test case when we call _.pluck() to objects passing an undefined property as an argument.
- Add _.transform method
- better test method for missing properties in pluck
- Merge pull request #1961 from jridgewell/remove-reduce-errors
  Remove `reduce` error throwing
- Merge pull request #1936 from jridgewell/isFunction_safari_8
  Optimize isFunction only when appropriate.
- Minor cleanup of #1936
- Merge pull request #1974 from megawac/isFunction
  Update isFunction tests
- fix _.sortedIndex for large indexes
  fixes #1850
- Use partial for defer.
- Merge pull request #1977 from jridgewell/partial_defer
  Use partial for `_.defer`
- Clarify documentation.
- Merge pull request #1979 from robbiehudson/clarify_after_documentation
  Clarify documentation for _.after and _.before
- Merge pull request #1954 from deiwin/fix-sorted-index
  fix _.sortedIndex for large indexes
- Add installation instruction for Meteor
- fix eslint warnings
- revert dot-notation warnings
- Merge pull request #1987 from maxbeatty/fix-warnings
  fix eslint warnings
- fix typo
- Merge pull request #1989 from linkkingjay/master
  fix typo
- Merge pull request #1982 from uzumaxy/master
  Add installation instruction for Meteor
- Move sortedIndex to Array methods + some annoying files to gitignore
- Wrap redundant reduce and reduceRight code in helper
- Merge pull request #1901 from thejameskyle/transform
  Add _.transform method
- Merge looping implementation [needs benchmarks]
- Implement zip via unzip
- Invoke shouldn't throw for null or undefined
- Add _.comparator and align sortedIndex to sortBy
- Merge pull request #1939 from megawac/comparitors
  Add _.comparator and align sortedIndex to sortBy
- Reuse (optimized) reduce and reduceRight iteration
- Merge pull request #1994 from megawac/invoke-null
  Invoke shouldn't throw for null or undefined
- Revert "Merge pull request #1939 from megawac/comparitors"
  This reverts commit 5f52e5bc4ba98fdedac6703d2e1bbc46fa6cc66d, reversing
  changes made to 9924dba231366913acba8a3016823c403dca9ac3.
- Add engine proxy methods to toJSON, toString and valueOf
- Merge pull request #1991 from megawac/reduce-reuse
  Wrap redundant reduce and reduceRight code in helper
- Implement more rigid array like checks throughout library
- Update with changes from 1.7 to 1.8
- isEqual initialize stacks only if and when we need them
- Merge pull request #2013 from rndr/isEqualFix
  isEqual initialize stacks only if and when we need them
- Added example for _.sortBy( obj, string )
- Merge pull request #2014 from danielmbarlow/danielmbarlow-patch-1
  Added example for _.sortBy( obj, string )
- Add _.transform docs + address comments
- Readd _.object example
- Merge pull request #1993 from megawac/zip-via-unzip
  Implement zip via unzip
- Merge pull request #1990 from jashkenas/is-arraylike
  Implement a more rigid is length check
- Add iteration fixes of _.keys to _.isEmpty (fixes #1983, closes #1988)
  use current isEmpty obj way unless has enum bug
  check length beforehand to improve isEmpty perf
  add length check before type checks in isEmpty
  add test for non enum prop
  keep fixes isolated to as few areas as possible
  use inline comments
- Map partial instead of slice
- Merge pull request #2021 from jridgewell/map-partial
  Map partial's args instead of slicing
- Add check to createAssigner function so that _.defaults can use it (fixes #1984)
- Merge pull request #2022 from jmrog/devel
  Add check to createAssigner function so that _.defaults can use it (fixes #1984)
- Stop _.extend from turning dest obj's 'in' props into 'own props (fixes #2023)
- Add test for _.extend (no changing 'in' props to 'own' props; see bug #2023)
- Merge pull request #2024 from jmrog/extendFix
  Fix and test for _.extend (fixes #2023)
- Merge pull request #2003 from megawac/engine-proxy-methods
  Add engine proxy methods to toJSON, toString and valueOf
- Add _.findLastIndex and handle NaN in *IndexOf
- Cover argument cases for NaN
- Implement find*Index functions with helper
- Merge pull request #1981 from megawac/NaN-finding
  Add _.findLastIndex and handle NaN in *IndexOf
- Improve _.isFunction comment
- wrap constants or objects passed to _.times in _.constant
  so you can do stuff like this:
  _.times(3, 'Foo') // ['Foo', 'Foo', 'Foo']
  which can be useful for indenting text, for instance
  _.times(level, '  ').join('') + line
- added test for #2029
- bugfix, it's iteratee, not context that should be wrapped
- Merge pull request #2029 from gka/patch-1
  wrap constants or objects passed to _.times in _.constant
- Merge pull request #1953 from greenify/master
  Object-preserving map() function: mapValues
- Documentation for find{Index,LastIndex,Key} and mapValues
- Improve consistency of variable declarations
- Merge pull request #2030 from megawac/var-dec
  [minor] Improve consistency of variable declarations
- Add node.js 0.12 and io.js to travis.yml
- Remove several unneeded null checks
- Use isArrayLike in transform
- Merge pull request #2031 from megawac/null-check
  Remove several unnecessary null checks
- Run tests in node & phantom
- Merge pull request #2033 from jashkenas/node-testing
  Run test suite on node
- Update phantomjs version range
  For io.js ping #2032
- Merge pull request #2032 from demohi/patch-1
  Add node.js 0.12 and io.js to travis.yml
- Fixed copyright range to be updated to 2015
- Merge pull request #2034 from arianf/master
  Fixed copyright range to be updated to 2015
- Update _.range docs to clarify end is exclusive #2002
  I have updated the documentation for _.range to clarify explicitly that the end value _.range accepts is exclusive and the start value is inclusive. Attached is a screen shot of the changes:
  http://i.imgur.com/SIkBwUW.png
- Merge pull request #2035 from amZotti/master
  Update _.range docs to clarify end is exclusive [fix #2002]
- Update _.map docs to explain guarded iteratees
  I am a regular user of Underscore and only after reading through the Underscore source code did I learn about _.map being able to handle guarded functions as iteratees. If I have been unaware of guarded functions while using Underscore regularly then chances are there are many other engineers who are equally unaware of this great functionality.
- Add "Guarded" on _.map iteratee's [fix #2036]
  Certain underscore methods can be used as iteratee's to _.map. These
  methods can be referred to as 'Guarded' methods. In pull request #2036 I
  have requested that this functionality be included in the documentation
  for _.map on index.html. I am following up with that pull request with
  this one, which includes documentation that states exactly which methods
  are guarded methods.
  I am attempting to inform other Underscore developers of this great
  functionality by marking appropriate functions as "Guarded" within
  index.html. This "Guarded" statement uses the same CSS stylings as
  span.alias.
  Nothing has been changed besides the appropriate documentation shifts
  described above. Screenshots will be included in pull request.
- Refactor 'guarded' explanation into two lines
- Update QUnit to v1.17.1
- Merge pull request #2043 from amZotti/add-guarded-statements
  Add "Guarded" on _.map iteratee's [fix #2036]
- Reverts #2029.
- Add underscore-min.map to packaged files
- Merge pull request #2048 from cbguder/patch-1
  Add underscore-min.map to packaged files
- Refactor tests; don't install phantom by default; karma for browser tests
- Merge pull request #2054 from jashkenas/karma
  Refactor tests; don't install phantom by default; karma for browser tests
- Test against infinite loops when collection changes
- Merge pull request #2053 from megawac/length-testing
  Test against infinite loops when collection changes
- Update qunit-cli (devongovett/qunit-cli#11)
- Add proper Object function matches
  This takes `_.matches` and turns it into a proper Object function
  (takes the object as the first parameter). The should satisfy the
  performance problems seen in
  [jashkenas/backbone#3487](jashkenas/backbone#348
  7#issuecomment-75001423).
  I think it’s pretty apparent we jumbled the arguments originally. See
  the need to special case
  [`Backbone.Model#matches`](https://github.com/jashkenas/backbone/blob/ma
  ster/backbone.js#L390-L393) instead of auto proxying like the other
  [`_`
  methods](https://github.com/jashkenas/backbone/blob/master/backbone.js#L
  669-L680). We even have to special case
  [`Collection#matches`](https://github.com/jashkenas/backbone/blob/master
  /backbone.js#L917-L924) so we don’t kill performance doing simple
  `where`s.
  The legacy `_.matches(obj)` predicate matcher has been extracted into
  `_.matcher`. `_.matches` will return the predicate matcher if only one
  argument is provided. This legacy support should be removed in v2.0.
- Merge pull request #2057 from jridgewell/matches-matcher
  Add proper Object function matches
- Removing the iffy 'guarded' tags from the docs.
- removing repetitive 'guard check' comments
- Fixes #1915 -- _.clone doesn't do dates, regexes, other fancy things
- #2057 s/matches/isMatch+matcher
- 1.8-WIP ... still needs to be further reduced and cleaned
- merged 1.8 stuff
- /s/mapValues/mapObject and so on...
- working on docs etc
- I think we're ready?
- Ch-ch-ch-chaanges.
- Merge branch 'master' into gh-pages
- document isMatch, matcher
- Merge branch 'master' into gh-pages
- remove broken IE hack-arounds ... IE8 failing tests down to 14
- Fixing pick and omit for IE
- removing hokum from _.bind
- remove 'fasley' edge case tests
- removing bound constructor function fallback tests
- prepping 1.8.1 — tests are now fixed or killed.
- Revert "removing bound constructor function fallback tests"
  This reverts commit 9f25c2a42821acd1d80e3fde7f594051076d3ac2.
- Revert "removing hokum from _.bind"
  This reverts commit ba7b8f18dabb4ebb49e1f0c0076dc0b23b436878.
- Fix bound functions in IE8
- Merge pull request #2063 from jridgewell/ie8-bound-functions
  Fixes bound functions in IE8
- fixing previous commit for IE
- Underscore 1.8.1
- Merge branch 'master' into gh-pages
- Revert "remove broken IE hack-arounds ... IE8 failing tests down to 14"
  This reverts commit 5350a2ff3e362757f384c7c0096f24ad68c38fd0.
- no need to stoop...
- Merge branch 'master' into gh-pages
- Revert "remove 'fasley' edge case tests"
  This reverts commit ef3164fcad059434a95f0eb5ad48dba1999a5b62.
- Fix IE non-enumerable properties
  I’m not sure what we were doing before with the `FuncProto`…
- "fasley" to "falsey"
- Refine _.pick
- Merge pull request #2064 from jridgewell/ie-non-enumerable
  IE Non-Enumerable properties
- Merge pull request #2065 from jridgewell/refine-pick
  Refine _.pick
- Merge pull request #2066 from paulfalgout/ie-non-enumerable
  Fix object test wording "fasley" to "falsey"
- Avoid an arguments deopt
  https://github.com/petkaantonov/bluebird/wiki/Optimization-killers#31-re
  assigning-a-defined-parameter-while-also-mentioning-arguments-in-the-bod
  y-typical-example
- Use async retries to avoid rare throttle false-negative
- Merge pull request #2069 from megawac/qunit-extras
  Use async retries to avoid rare throttle false-negative
- Simplify karma file
- 🎊 Karma Sauce Integration! 🎆
  Fix travis keys
- Fix cherry-pick artifact
- Remove transform use due to 4f771e0a0
- Merge pull request #2068 from jridgewell/refine-pick
  Avoid an arguments deopt
- Rename extendOwn to assign
  “assign” is an ES6 standard, and naming should match it. Any dev who
  remotely follows ES will immediately recognize and understand what it
  does.
  Aliases `_.assign` to `_.extendOwn`, for 1.8.0 compatibility.
- Merge pull request #2059 from jashkenas/sauce-setup
  SauceLabs setup
- Merge pull request #2070 from jridgewell/assign-extendOwn
  Assign extendOwn
- Support fromIndex in _.contains
- Add _.create method
- Merge pull request #2072 from jridgewell/contains-fromIndex
  Contains fromIndex
- s/assign/extendOwn as the primary name.
- Document the lame  in _.includes
- updated mapObject example text in index.html
- Merge pull request #2077 from 91bananas/master
  updated mapObject example text in index.html
- Underscore 1.8.2
- component bump
- Merge branch 'master' into gh-pages
- fixed isArrayLike returning  for 0
- Merge pull request #2079 from smelnikov/isArrayLike-fix
  fixed isArrayLike returning true for 0
- Merge pull request #2074 from jridgewell/create
  Add _.create method
- s/assign/extendOwn
- Add failing test for each called too much time.
  ios8 only.
- Merge pull request #2088 from francois2metz/ios8_my_lovely_jit
  Add failing test for each called too much time in ios8
- Corrected the parameter name for mapObject within the index documentation
- Merge pull request #2097 from emmanne08/master
  Corrected the parameter name for mapObject within the index documentation
- Fix _.indexOf with NaN and startIndex
  Was returning the index in the sliced array
- Merge pull request #2102 from jridgewell/indexof-nan-start
  Fix _.indexOf with NaN and startIndex
- Optimize _.range
  Prevents an [arguments
  deopt](https://github.com/petkaantonov/bluebird/wiki/Optimization-killer
  s#31-reassigning-a-defined-parameter-while-also-mentioning-arguments-in-
  the-body-typical-example).
- Merge pull request #2107 from jridgewell/range-opt
  Optimize _.range
- Guard _.contains fromIndex
  Guards `_.contains`’s `fromIndex`, so that it may be easily used with
  `_.partial`.
  ```javascript
  var array = [1, 2, 3, 4, 5];
  var subArray = [1, 2];
  // Before
  _.every(subArray, function(i) { return _.contains(array, i); });
  // After
  _.every(subArray, _.partial(_.contains, array));
  ```
- Merge pull request #2109 from jridgewell/contains-gaurd
  Guard _.contains fromIndex
- Remove link to nonexistent create method. Fixes #2112
- Remove link to nonexistent create method. Fixes #2112
- Combine _.indexOf and _.lastIndexOf
- Merge pull request #2105 from jridgewell/indexOf-lastIndexOf-code-sharing
  Combine _.indexOf and _.lastIndexOf
- Make _.uniq doc more precise
- Merge pull request #2120 from phadej/uniq-doc
  Make _.uniq doc more precise
- Small indexOf Perf Boost
  @megawac / @jdalton noticed a [pref regression](http://jsperf.com/indexof-pr2105)
  in #2105. This should fix it.
  [jsperf](http://jsperf.com/indexof-pr2105/3)
- Merge pull request #2122 from jridgewell/indexOf-lastIndexOf-code-sharing
  Small indexOf Perf Boost
- Remove unneeded files from bower package
- Merge pull request #2127 from JustBlackBird/clean_bower_package
  Remove unneeded files from bower package
- Prevent iOS from improperly JIT-ing isArrayLike
  Fixes #2081. @jdalton found a much more efficient solution than
  `'length' in collection` by using dynamic property access. Uses
  a constant `LENGTH` variable to avoid minifiers transforming it
  into dot access.
- Merge pull request #2094 from jridgewell/ios-jit-isArrayLike
  Prevent iOS from improperly JIT-ing isArrayLike
- Fix travis install not working in [email protected]
  see jridgewell/underscore@1178042
  /cc @othiym23
- Merge pull request #2135 from megawac/travis-npm-fix
  Fix travis install not working in [email protected]
- Fix iOS JIT Bug, Part 2
  Given Closure Compiler’s [need to inline](jashkenas/underscore#2094 (comment)),
  we need to grab the length using a function (that uses dynamic property access).
  @megawac also pointed out a few other methods would be affected.
- Merge pull request #2134 from jridgewell/ios-jit-isArrayLike
  Fix iOS JIT Bug, Part 2
- Underscore 1.8.3
- Merge branch 'master' into gh-pages
@sulphur
Copy link

sulphur commented Nov 2, 2015

In my cas I was using ember-cli-coffeescript and after update the was app.js and router.js that were created. If you use ember-cli-coffeescript chek and delete app.js and router.js if you have the .coffee versions

athinab added a commit to athinab/snf-ui-app that referenced this issue Nov 15, 2015
Rimraf is used in order to sovle this issue:
ember-cli/ember-cli#3413
athinab added a commit to athinab/snf-ui-app that referenced this issue Nov 15, 2015
Rimraf is used in order to sovle this issue:
ember-cli/ember-cli#3413
@hoIIer
Copy link

hoIIer commented Mar 13, 2016

@sulphur I'm running into this issue and I think it has to do with ember-cli-coffeescript...

Error: EEXIST, file already exists '/Users/eric/Projects/myapp/overlord/build/client-web/tmp/coffee_script_filter-output_path-XZuGEV4i.tmp/client-web/routes/application.js'

myapp/routes/application.js does not exists only myapp/routes/application.coffee

any ideas?

@sulphur
Copy link

sulphur commented Mar 13, 2016

maybe try to remove your tmp dir etc.

@andrewhavens
Copy link

I also ran into this error while using ember-cli-coffeescript and trying to add ember-simple-auth. The solution was to convert my routes/application.coffee back to JavaScript. For some reason the default application route in ember-simple-auth conflicts with the one written in CoffeeScript.

@rebase-master
Copy link

I encountered the same error when I put the file name in gulp.dest()

gulp.task('compass', function() {
    gulp.src(sassSources)
        .pipe(compass({
            ...
        })
        .pipe(gulp.dest( outputDir + 'css/style.css'))
        .pipe(connect.reload())
});

Removing style.css from gulp.dest( outputDir + 'css/style.css') fixed it for me. Not sure if rimraf has anything to do with this.

billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
billsedison pushed a commit to tc-cargo-net/node-glob that referenced this issue Jul 22, 2019
@simonlennon-advanced
Copy link

I also ran into this error while using ember-cli-coffeescript and trying to add ember-simple-auth. The solution was to convert my routes/application.coffee back to JavaScript. For some reason the default application route in ember-simple-auth conflicts with the one written in CoffeeScript.

This issue still exists 3 years later, wonder why no one has patched it yet

@zofskeez
Copy link

zofskeez commented Sep 4, 2020

I stumbled on the same error while doing some project restructuring and in my case it was caused by moving component files out of the /app/components and /app/templates/components directories and into the pods structure without changing the file names to component.js and template.hbs respectively.

For example, create a directory /app/pods/components/my-component and move or create the files my-component.js and my-component.hbs and you will see the error thrown on build.

It took a minute to realize the oversight so hopefully this might save others some time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests