1 | # Change Log
|
2 |
|
3 | ## 4.4.0
|
4 |
|
5 | * Fix stat issue with Node 8 (thanks @AGrzes, see [#209][#209])
|
6 | * Make code prettier (see [#210][#210])
|
7 |
|
8 | ## 4.3.0
|
9 |
|
10 | * Add support for fs.mkdtemp() and fs.mkdtempSync (see [#207][#207])
|
11 |
|
12 | ## 4.2.0
|
13 |
|
14 | * Update fs.stat(), fs.lstat(), and fs.fstat() for Node 7.7+ (thanks @not-an-aardvark, see [#198][#198])
|
15 |
|
16 | ## 4.1.0
|
17 |
|
18 | * Correctly follow a symlink chain in `binding.open()` (thanks @vlindhol, see [#195][#195])
|
19 |
|
20 | ## 4.0.0
|
21 |
|
22 | In earlier versions of `mock-fs`, a monkey-patched version of the `fs` module was used to provide an in-memory filesystem. With each major release of Node, the `mock-fs` package needed to include a modified copy of the `fs` module. With the `mock-fs@4` release, this package no longer includes a modified copy of the `fs` module. Instead, this package overrides `process.binding('fs')`. While this is not part of Node's stable API, it has proven to be a more stable interface than the `fs` module itself (based on experience implementing it with Node 0.8 through 7.0).
|
23 |
|
24 | Upgrading from 3.x to 4.0 should be straightforward for most applications. There are several breaking changes that may be restored in future releases:
|
25 |
|
26 | * The `mock.fs()` function has been removed.
|
27 | * The object created by `fs.stat()` and friends is no longer an instance of `fs.Stats` (though it behaves as one).
|
28 | * Lazy `require()` calls do not work consistently.
|
29 |
|
30 | Detailed changes:
|
31 |
|
32 | * Only override `process.binding('fs')` ([#182][#182])
|
33 | * Expose the root of the mocked filesystem (thanks @ciaranj, see [#194][#194])
|
34 |
|
35 | ## 3.12.1
|
36 |
|
37 | * Revert the require cache clearing behavior ([#181][#181]).
|
38 |
|
39 | ## 3.12.0
|
40 |
|
41 | * Support for Node 7.x (thanks @goliney, see [#174][#174]).
|
42 | * Remove calls to `printDeprecation` ([#175][#175]).
|
43 | * Break early when checking version (thanks @isiahmeadows, see [#157][#157]).
|
44 | * Add a note about restoring `fs` (thanks @matheuss, see [#147][#147]).
|
45 | * Clear the require cache before overriding fs functions ([#141][#141])
|
46 |
|
47 | ## 3.11.0
|
48 |
|
49 | * Make `require()` calls use the real filesystem ([#139][#139]).
|
50 | * Reduce the manual `fs` module patching ([#140][#140]).
|
51 |
|
52 | ## 3.10.0
|
53 |
|
54 | * Fixes for Node 6.3 ([#138][#138]).
|
55 | * Fix permissions issues on directories (thanks @as3richa, see [#105][#105]).
|
56 |
|
57 | ## 3.9.0
|
58 |
|
59 | * Support for Node 6.x (thanks @tmcw, see [#107][#107]).
|
60 |
|
61 | ## 3.8.0
|
62 |
|
63 | * Implement `binding.writeBuffers()` (see [#94][#94]).
|
64 |
|
65 | ## 3.7.0
|
66 |
|
67 | * Add support for `fs.access()` and `fs.accessSync()` (thanks @shyiko, see [#78][#78] and [#80][#80]).
|
68 |
|
69 | ## 3.6.0
|
70 |
|
71 | * Add `createCwd` and `createTmp` options to control the creation of `process.cwd()` and `os.tmpdir()` directories in the mocked filesystem (see [#72][#72]).
|
72 | * Update Travis and AppVeyor configurations (see [#73][#73])
|
73 | * Remove unused dev dependency (see [#75][#75])
|
74 |
|
75 | ## 3.5.0
|
76 |
|
77 | * Support for Node 5.x (thanks @tmcw, see [#69][#69]).
|
78 |
|
79 | ## 3.4.0
|
80 |
|
81 | * Support for Node 4.x (thanks @AlexMeah, see [#65][#65]).
|
82 |
|
83 | ## 3.3.0
|
84 |
|
85 | * Traverse symlinks recursively (thanks @caitp, see [#57][#57]).
|
86 | * Upgrade to rewire@2.3.4 (thanks @mbarlock, see [#60][#60]).
|
87 |
|
88 | ## 3.2.0
|
89 |
|
90 | * Support for io.js 3.0 (thanks @JustBlackBird, see [#61][#61]).
|
91 |
|
92 | ## 3.1.0
|
93 |
|
94 | * Follow symlinks in `readdir()` and `readdirSync()` (thanks @caitp, see [#56][#56]).
|
95 |
|
96 | ## 3.0.0
|
97 |
|
98 | * Override `process.cwd()` and `process.chdir()` to work with mocked filesystem (thanks @timkendrick, see [#41][#41]).
|
99 | * Add note about known incompatibilities (thanks @psalaets, see [#45][#45]).
|
100 |
|
101 | ## 2.7.0
|
102 |
|
103 | * Support for io.js 2.0 (thanks @jwilsson, see [#38][#38]).
|
104 |
|
105 | ## 2.6.0
|
106 |
|
107 | * Add `birthtime` to `Stats` objects (thanks @meandmycode, see [#33][#33]).
|
108 |
|
109 | ## 2.5.0
|
110 |
|
111 | * Support for io.js 1.1 (thanks @andrewblond, see [#21][#21]).
|
112 | * Testing on Windows with AppVeyor (thanks @andrewblond, see [#22][#22]).
|
113 |
|
114 | ## 2.4.0
|
115 |
|
116 | * Support for Node 0.12 (thanks @mlegenhausen, see [#18][#18]).
|
117 |
|
118 | ## 2.3.1
|
119 |
|
120 | * Preserve arity of callbacks (see [#11][#11]).
|
121 |
|
122 | ## 2.3.0
|
123 |
|
124 | * Fixes for Node 0.11.13 (see [#9][#9]).
|
125 |
|
126 | ## 2.2.0
|
127 |
|
128 | * Respect file mode on POSIX-compliant systems (see [#7][#7]).
|
129 | * Add benchmarks comparing mock-fs and fs modules (see [#6][#6]).
|
130 |
|
131 | ## 2.1.2
|
132 |
|
133 | * Added more complete license text.
|
134 | * Test on Node 0.9 and 0.11 in addition to 0.8 and 0.10.
|
135 |
|
136 | ## 2.1.1
|
137 |
|
138 | * Added this changelog.
|
139 | * Removed unused gruntfile.js.
|
140 |
|
141 | ## 2.1.0
|
142 |
|
143 | * Directory mtime is now updated when items are added, removed, or modified ([#2][#2]).
|
144 | * Fixed several issues on Windows (see [#3][#3]). One issue remains on Windows with Node 0.8 (see [#4][#4]).
|
145 | * Swapped out Grunt with a single script to run tasks (see [#5][#5]).
|
146 |
|
147 | ## 2.0.0
|
148 |
|
149 | * Simplified API (see [#1][#1]).
|
150 |
|
151 |
|
152 | [#1]: https://github.com/tschaub/mock-fs/pull/1
|
153 | [#2]: https://github.com/tschaub/mock-fs/pull/2
|
154 | [#3]: https://github.com/tschaub/mock-fs/pull/3
|
155 | [#4]: https://github.com/tschaub/mock-fs/issues/4
|
156 | [#5]: https://github.com/tschaub/mock-fs/pull/5
|
157 | [#6]: https://github.com/tschaub/mock-fs/pull/6
|
158 | [#7]: https://github.com/tschaub/mock-fs/pull/7
|
159 | [#9]: https://github.com/tschaub/mock-fs/issues/9
|
160 | [#11]: https://github.com/tschaub/mock-fs/pull/11
|
161 | [#18]: https://github.com/tschaub/mock-fs/pull/18
|
162 | [#21]: https://github.com/tschaub/mock-fs/pull/21
|
163 | [#22]: https://github.com/tschaub/mock-fs/pull/22
|
164 | [#33]: https://github.com/tschaub/mock-fs/pull/33
|
165 | [#38]: https://github.com/tschaub/mock-fs/pull/38
|
166 | [#41]: https://github.com/tschaub/mock-fs/pull/41
|
167 | [#45]: https://github.com/tschaub/mock-fs/pull/45
|
168 | [#56]: https://github.com/tschaub/mock-fs/pull/56
|
169 | [#61]: https://github.com/tschaub/mock-fs/pull/61
|
170 | [#60]: https://github.com/tschaub/mock-fs/pull/60
|
171 | [#57]: https://github.com/tschaub/mock-fs/pull/57
|
172 | [#65]: https://github.com/tschaub/mock-fs/pull/65
|
173 | [#69]: https://github.com/tschaub/mock-fs/pull/69
|
174 | [#72]: https://github.com/tschaub/mock-fs/pull/72
|
175 | [#73]: https://github.com/tschaub/mock-fs/pull/73
|
176 | [#75]: https://github.com/tschaub/mock-fs/pull/75
|
177 | [#78]: https://github.com/tschaub/mock-fs/pull/78
|
178 | [#80]: https://github.com/tschaub/mock-fs/pull/80
|
179 | [#94]: https://github.com/tschaub/mock-fs/pull/94
|
180 | [#107]: https://github.com/tschaub/mock-fs/pull/107
|
181 | [#105]: https://github.com/tschaub/mock-fs/pull/105
|
182 | [#138]: https://github.com/tschaub/mock-fs/pull/138
|
183 | [#139]: https://github.com/tschaub/mock-fs/pull/139
|
184 | [#140]: https://github.com/tschaub/mock-fs/pull/140
|
185 | [#141]: https://github.com/tschaub/mock-fs/pull/141
|
186 | [#147]: https://github.com/tschaub/mock-fs/pull/147
|
187 | [#157]: https://github.com/tschaub/mock-fs/pull/157
|
188 | [#174]: https://github.com/tschaub/mock-fs/pull/174
|
189 | [#175]: https://github.com/tschaub/mock-fs/pull/175
|
190 | [#181]: https://github.com/tschaub/mock-fs/pull/181
|
191 | [#182]: https://github.com/tschaub/mock-fs/pull/182
|
192 | [#194]: https://github.com/tschaub/mock-fs/pull/194
|
193 | [#195]: https://github.com/tschaub/mock-fs/pull/195
|
194 | [#198]: https://github.com/tschaub/mock-fs/pull/198
|
195 | [#207]: https://github.com/tschaub/mock-fs/pull/207
|
196 | [#209]: https://github.com/tschaub/mock-fs/pull/209
|
197 | [#210]: https://github.com/tschaub/mock-fs/pull/210
|