UNPKG

18.8 kBMarkdownView Raw
1# 3.0.1 / 2018-03-29
2
3* bump electron to fix #1424
4
5# 3.0.0 / 2018-03-02
6
7* BREAKING: remove window.\_\_nightmare.ipc to resolve the major security issues (#1390)
8* BREAKING: properly serialize error values (#1391)
9* added linting, formatting and a git pre-commit hook (#1386)
10* Added ability to specify the client certificate selected by electron (#1339)
11* adding selector to the timeout error in .wait() (#1381)
12* Pin Electron version (#1270)
13* Fix error on preload (#1247)
14* Add mouseout action to complement mouseover (#1238)
15* fix problems that are rejected when adding child actions with objects. (#1093)
16* Set mouse position for mouse events (#1077)
17* Repaired support for multiple timeouts in FrameManager (#945)
18
19# 2.10.0 / 2017-02-23
20
21* Remove redundant docs for 'log' event from README
22* changed some `var` declarations to `const`
23* replace the 404 link with valid link
24* added Promise override tests
25* added docs for new Promise override features
26* added ability to override internal Promise library
27
28# 2.9.1 / 2017-01-02
29
30* Minor touchups to key press documentation
31* Link to Electron documentation updated
32* Updates speed information on the readme
33* Swaps Yahoo example out for a faster DuckDuckGo example
34* Fixes an issue where `nightmare` may be undefined in the browser at injection time
35* Changes screenshot rendering to use debugger API instead of forcing a DOM change
36
37# 2.9.0 / 2016-12-17
38
39* Prevents unload dialogs, allowing Nightmare to end gracefully
40* `.end(fn)` now uses `.then()` under the covers
41* **Possibly breaking change:** Nightmare will now default to using a non-persistent partition. Data between executions of Nightmare will no longer be saved.
42* Adds `.mouseup()` action
43* Fixes several typos/copy-paste errors in the readme, as well as clarifying error-first callbacks
44* Adds `.path()` to get the URL's route (as opposed to the fully-qualified URL)
45
46# 2.8.1 / 2016-10-20
47
48* Fixes parsing issues with arguments to `evaluate_now`
49* Upgrades to Electron 1.4.4
50
51# 2.8.0 / 2016-10-20
52
53* Fixes a missing semicolon in the first readme example
54* Fixes a reference error inside `.wait()` when using `node --use_strict`
55* Adds missing documentation for `.mouseover()`
56* Corrects a typo in the readme
57* Removes dependency on `object-assign`
58* Adds `.halt()` API to stop Nightmare execution immediately
59* Fixes `blur` exception when elements are removed by keyboard events
60* **Possibly breaking change:** Changes `.evaluate()` to allow for asynchronous execution. If the `.evaluate()`d function's arity is one less than the passed in parameters, it'll assume the last argument to the function is the callback. If the return value is a thenable, it'll call `then()` to wait for promise fulfillment. Otherwise, the call will behave synchronously as it does now.
61
62# 2.7.0 / 2016-09-05
63
64* Adds `.wait(element, timeout)` to wait for whichever comes first
65* `.end()` will now end Electron gracefully instead of issuing a `SIGKILL`
66* Touches up readme for `.end()`
67
68# 2.6.1 / 2016-08-08
69
70* Fixes treating provisional load failures as real load failures
71
72# 2.6.0 / 2016-08-02
73
74* Makes the CircleCI badge an SVG
75* Adds an option for `.type()` to control time elapsed between keystrokes with `typeInterval`
76* Adds `.cookies.clearAll()` to clear all cookies
77* Fixes crashing if the Electron process is closed first
78* Adds `pollInterval` as an option to control the tick time for `.wait()`
79* Forces Nightmare to error on bad HTTP authentication
80* Fixes a crash by omitting event data due to circular references
81* Adds environment variable forwarding to the Electron process
82* Fixes `openDevTools` docs to be more explicit about detaching the devtools tray
83* Fixes the link to the preload script
84
85# 2.5.3 / 2016-07-08
86
87* Adds better proxy information to the readme
88* Fixes a readme typo
89* Updates `ipcRenderer` usage for preload scripts in readme
90* Bumps Electron to version 1.2.5
91
92# 2.5.2 / 2016-06-20
93
94* Fixes `Referer` header support
95* Removes timeout between keystrokes when using `.type()`
96* Checks instance existence when calling `.end()`
97* Adds a link to `nightmare-examples`
98* Changes `yield` to `.then()` in readme
99* Swaps `did-finish-loading` for `did-stop-loading` when waiting for page transitions
100* Adds optional `loadTimeout` for server responses that do not end
101
102# 2.5.1 / 2016-06-07
103
104* Bumps Electron dependency to 1.2.1.
105* Removes a `sender` workaround
106* Moves the start of Electron from the constructor into the queue
107
108# 2.5.0 / 2016-05-27
109
110* adds a timeout to `.goto()` such that pages that load the DOM but never finish are considered successful, otherwise failing, preventing a hang.
111* updates the example script and readme file for consistency.
112* reports with more helpful messages when the element does not exist when running `.click()`, `.mousedown()` and `.mouseover()`.
113* `.coookies.clear()` with no arguments will clear all cookies for the current domain.
114* adds Node engine information to package and ensures CircleCI builds and tests against 4.x, 5.x and 6.x.
115* removes extranneous `javascript` event listeners upon execution completion or error.
116* adds `.once()` and `.removeListener()` for more complete Electron process event handling.
117
118# 2.4.1 / 2016-05-19
119
120* Points invalid test URLs to the `.tld` domain
121* Switches javascript templates over to using template strings.
122* Adds better switch tests
123* Javascript `goto`s now only wait if the main frame is loading
124* Allows a Nightmare instance to use `.catch()` without a `.then()`
125* Fixes a deprecated IPC inclusion in tests
126* `.goto()` rejects with a helpful message when `url` is not provided
127
128# 2.4.0 / 2016-05-05
129
130* adds call safety with IPC callbacks
131* adds `.engineVersions()` to get Electron and Chrome versions, as well as Nightmare.version
132* changes Yahoo example to use more robust selectors, adds `.catch()`
133* adds a check for `runner` arguments
134
135# 2.3.4 / 2016-04-23
136
137* blurs text inputs when finished with `.type()` or `.input()`, including clearing selectors
138* now errors properly for non-existent selectors when using `.type()` and `.input()`
139* strips `sender` from Electron -> parent process forwarded events
140* improves test speed for dev tools
141* fixes `.then()` to comply with A+ promises
142* pipes Electron output to `debug` prefixed with `electron:`
143* cleans up several exception test cases using `.should.be.rejected` from `chai-as-promised`
144* upgrades to Electron 0.37.7
145* removes `process` event listeners when a Nightmare instance ends
146* fixes support for `javascript:` urls
147
148# 2.3.3 / 2016-04-19
149
150* fixes `.goto()` failing when the page does not load
151* fixes deprecated Electron APIs
152* adds testing for deprecated API usage in Electron
153
154# 2.3.2 / 2016-04-14
155
156* fixes the `.wait(selector)` comment
157* adds documentation about headers
158* adds an interim gitter badge
159* adds a unit test for `openDevTools`
160* bumps to electron 0.37.5
161* adds a wrapper to run unit tests when on CircleCI, when Xvfb is running, or the `HEADLESS` environment variable is set. Prevents Nightmare from hanging when running headlessly.
162* `.evaluate()` errors if a function to evaluate is not supplied
163
164# 2.3.1 / 2016-04-11
165
166* fixes passing uncaught exceptions back to the default handler after cleanup
167* fixes overhead due to automatic subscription to frame data for screenshots
168* Adds unicode documentation for `.type()`
169
170# 2.3.0 / 2016-04-02
171
172* extends `.action()` to include adding actions on the Electron process
173* adds a debugging message to inspect how Electron exited
174* ensures multiple instances of Nightmare do not use the same `waitTimeout` value
175* ensures cookies are not shared across tests
176* adds basic HTTP authentication
177* fixes `console.log` with injected/evaluated script
178* ensures screenshots match the currently rendered frame
179* adds ability to open and detach dev tools
180* removes the double-injection from `.inject()`
181* adds ability to save entire page as HTML
182
183# 2.2.0 / 2016-02-16
184
185* .then() now returns a full promise instead of nightmare. update yahoo example.
186
187# 2.1.6 / 2016-02-01
188
189* Fix failed wait with queued up functions
190* fix fullscreen switching (#434)
191
192# 2.1.5 / 2016-02-01
193
194* add .insert(selector[, text]).
195* improve .type(selector[, text]) robustness.
196* bump electron and fix API updates.
197
198# 2.1.4 / 2016-01-28
199
200* added debugging flags to README
201* Update use of electron APIs to kill deprecation warnings for 1.0
202* Implement dock option
203* added default waitTimout
204* page event listener fix
205
206# 2.1.3 / 2016-01-18
207
208* added ability to uncheck
209* now properly fails with integer wait time
210* Added ability to return buffer from pdf
211* add ability to clear cookies
212* Added a documentation for .viewport(width, height)
213* Uncomment OS X dock hide
214* fix setting electron paths
215
216# 2.1.2 / 2015-12-25
217
218* Support typing in non-strings
219* Support Chrome command line switches.
220* fix eventemitter leak message
221* Blur focussed on click. Fixes #400
222
223# 2.1.1 / 2015-12-21
224
225* clears inputs on falsey/empty values
226
227# 2.1.0 / 2015-12-17
228
229* **BREAKING**: changed `page-error`, `page-alert`, and `page-log` to `console` with types `error`, `alert`, `log`
230* **BREAKING**: fixed signature on nightmare.on('console', ...), to act more like console.log(...)
231
232* use native electron sendInputEvent for nightmare.type(...)
233* properly shutdown nightmare after certain tests and update formatting on the readme
234* add events for prompt, alert, confirm, and the other console events
235* update docs for preload script
236* support passing in a custom preload script
237* Update PDF Options
238* follow new BrowserWindow option naming
239* remove useless mocha opt
240* implement `electronPath` option
241* Fixed 'args is not defined' error for paths option
242
243# 2.0.9 / 2015-12-09
244
245* add Nightmare.action(name, action|namespace) and nightmare.use(plugin)
246* bump dependencies
247* Add header() method, and optional headers param to goto()
248* "manipulation" fixture fixed to correctly test horizontal scrolling
249* Viewport size changed in the 'should set viewport' test (for test passing on small screen resolution).
250* prevent alerts from blocking
251* Add support to wait(fn) for passing arguments from node context to browser context, just like evaluate()
252* better cross-platform tests
253* add mousedown event
254* add nightmare.cookies.get(...) and nightmare.cookies.set(...) support
255* improve screenshot documentation
256* remove `.only` from buffered image test case
257* return a buffered image if no path is provided
258* Allow overriding Electron app paths
259* Update mocha-generators so tests run
260
261# 2.0.8 / 2015-11-24
262
263* pointing to versioned Electron documentation
264* Use "did-stop-loading" event in "continue"
265* Fix menu sub-section URL in documentation
266* updating yahoo mocha example so it works with yahoo's changes, fixes #275
267* adding a more complete example, fixes #295
268* updating atom events links, fixes #312 and #258
269* set make test as the npm test target
270* log and error event clean up
271* Added license to package.json
272* replace co-mocha w/ mocha-generators
273* Allow for user-specified web-preferences options.
274* Add test case for 'type' The test case of 'type and click' doesn't ensure 'type' works
275* Remove old evaluate method, fix #257
276
277# 2.0.7 / 2015-10-01
278
279* updated and clarified docs
280* fixed package.json description, thanks @tscanlin
281* better error handling for ipc, thanks @davidnaas
282
283 # 2.0.6 / 2015-09-25
284
285* changing the tests to point to github to avoid the great firewall fix #249
286* Use node-integration for electron, fix scripts loading fix #242 #247
287* Remove after and util in test/index.js
288* adding windows debug hint
289
290 # 2.0.5 / 2015-09-20
291
292* adding .useragent() support back, thanks @jefeweisen!
293
294 # 2.0.4 / 2015-09-20
295
296* improving logging for screenshot, events and goto
297
298 # 2.0.3 / 2015-09-19
299
300* improving test cleanup, thanks @fritx!
301* bumping electron from 0.32.2 to 0.33.0
302
303 # 2.0.2 / 2015-09-13
304
305* improving tests for rendering
306* adding support for screenshot clip rect #107
307
308 # 2.0.1 / 2015-09-13
309
310* updated package.json
311* credits to @matthewmueller!
312
313# 2.0.0 / 2015-06-01
314
315* see #200 for details
316* added generator love
317* switched to electron to speed things up
318* many many thanks to @matthewmueller!
319
320# 1.8.1 / 2015-04-27
321
322* Fix escaping of selectors in .wait(selector) thanks @thotypous
323* Updated Mocha link thanks @mortonfox
324
325# 1.8.0 / 2015-03-23
326
327* handling phantom crashes more gracefully
328* fixing tests by using a local server and static fixtures
329* feat(docs): add google-oauth2 plugin
330* fixing links
331* clearer ToC and clearer evaluate docs from #89
332
333# 1.7.0 / 2015-01-26
334
335* adding pdf ignore, fixing test timeout
336* adding new resourceRequestStarted event for executing in phantomjs context
337* Add scrollTo feature. Resolves #130.
338* Adds zoom feature. Resolves #136.
339* added error handling for requiring file extension in screenshot
340* added documentation for supported filetypes for .screenshot
341* add json parsing guard to test
342* adding link to tests for more examples
343* updating readme with clearer function lists and sections, and mocha test example
344* add readme for headers()
345* add tests for headers()
346* add headers method
347* upping timeouts
348* Add ability to save an A4 sized PDF
349* add check and select
350
351# 1.6.5 / 2014-11-11
352
353* updating tests and fixing global port issue
354* Adding sequential test case
355* adding multiple clicks across multiple pages test
356
357# 1.6.4 / 2014-11-10
358
359* fixing non-existent elem issue in .visible(), fixes #108
360
361# 1.6.3 / 2014-11-09
362
363* bumping circleci test version and timeout
364* eliminating global phantom instance and state, fixes #104
365
366# 1.6.2 / 2014-11-09
367
368* .type() now uses uses phantom's sendEvent to trigger keypress events. Fixes #81. (by @johntitus)
369
370# 1.6.1 / 2014-11-09
371
372* bumping phantom to ~0.7.0, fixes #101
373* readme tweaks
374* adding resourceError event to docs
375
376# 1.6.0 / 2014-11-02
377
378* adding timeout handling (by @johntitus)
379* cleaning up styles in tests, adding tests for timeout event
380
381# 1.5.3 / 2014-11-02
382
383* Add ability to specify a custom PhantomJS path (by @kevva)
384
385# 1.5.2 / 2014-11-02
386
387* updating readme to explain .on() before .goto()
388* fixing callbacks for .wait()
389* adding grep to makefile tests
390* adding check for file existence before file upload, fixes #11
391
392# 1.5.1 / 2014-10-26
393
394* making clicks cancelable to allow for ajax forms
395
396# 1.5.0 / 2014-10-22
397
398* adding docs and support for ssl, proxy and other cli args
399
400# 1.4.0 / 2014-10-22
401
402* added .exists() (by @johntitus)
403* Added .visible(selector) (by @johntitus)
404* Added .authentication(user,password) (by @johntitus)
405
406# 1.3.3 / 2014-10-20
407
408* fix for 'Option to run phantom without weak' (by @securingsincity)
409
410# 1.3.2 / 2014-10-15
411
412* clarifying a readme example, see #55
413
414# 1.3.1 / 2014-10-15
415
416* expanding the readme (by @johntitus)
417
418# 1.3.0 / 2014-10-15
419
420* adding a on() action to handle phantom page events (by @johntitus)
421
422# 1.2.0 / 2014-10-15
423
424* adding .forward() method with test (by @stevenmiller888)
425* adding .inject() action, test, and updated readme (by @johntitus)
426
427# 1.1.1 / 2014-10-08
428
429* adding wait(selector) test and clojure fix, fixes #39
430* adding extraction readme example
431* adding caveat to viewport docs, fixes #33
432* updating readme example
433* Remove OSX .DS_Store file
434
435# 1.1.0 / 2014-10-05
436
437* changing run structure to auto-terminate phantomjs instances
438* naming goBack to back
439
440# 1.0.5 / 2014-09-30
441
442* added .goBack()
443
444# 1.0.4 / 2014-05-12
445
446* contain zalgo
447
448# 1.0.3 / 2014-05-12
449
450* cleaning up run based on ians feedback
451
452# 1.0.2 / 2014-05-12
453
454* fixing concat in place
455* cleaning up naming, whitespace, structure.. thanks @ianstormtaylor!
456* fixing readme and history
457
458# 1.0.1 / 2014-05-10
459
460* fixing queueing and .use() call order
461* Merge pull request #15 from queckezz/fix/use-queueing
462* fixing tests
463* fixing history
464* queue .use(). Closes #10
465
466# 1.0.0 / 2014-05-10
467
468* renaming methods, fixes #18 and #19
469* Merge pull request #17 from queckezz/update/phantomjs-node
470* Merge pull request #16 from stevenschobert/master
471* update phantomjs-node for 0.11.x support
472* add instance option for phantomjs port
473
474# 0.1.7 / 2014-04-14
475
476* Merge pull request #14 from queckezz/update/allow-no-args
477* allow no args and fix debug for .evaluate()
478* fixing history
479
480# 0.1.6 / 2014-04-13
481
482* adding .url(), more debug()s and a test for .url()
483* fxiing histoyr
484
485# 0.1.5 / 2014-04-12
486
487* fixing impatient to only apply to upload since it breaks wait
488* fixing history
489
490# 0.1.4 / 2014-04-12
491
492* making callbacks impatient based on timeouts
493* fixing history
494
495# 0.1.3 / 2014-04-12
496
497* fixing upload not having a callback
498* fixing history
499
500# 0.1.2 / 2014-04-11
501
502* clarifying readme
503* adding refresh method and wait for fn on page refresh
504* reworking wait function to make room for a new wait overload
505* refactoring tests into sections
506* fixing history
507
508# 0.1.1 / 2014-04-08
509
510* adding test to duplicate queue ordering issue, fixing issue, fixes #9
511* adding nightmare-swiftly plugin mention with docs
512* fixing history
513
514# 0.1.0 / 2014-04-07
515
516* adding .use() to docs
517* Merge pull request #8 from segmentio/use-rewrite
518* adding test for .use() pluggability
519* changes .run() to .evaluate(), removes .error() and cleans up internal wrapping
520* fixing history
521
522# 0.0.13 / 2014-04-07
523
524* Merge pull request #6 from segmentio/phantomjs-node
525* fixing done callback, fixing agent setting and adding tests. fixes #4, #2, #3.
526* fixing run callback hanging, fixes #3
527* experimenting with phantomjs-node, for #5
528* Merge branch 'master' of https://github.com/segmentio/nightmare
529* Update Readme.md
530
531# 0.0.12 / 2014-04-06
532
533* adding .viewport() and .agent(), fixes #2
534
535# 0.0.11 / 2014-04-06
536
537* making debug output consistent
538* consistent naming
539* fixing .wait() readme docs
540* fixing history
541
542# 0.0.10 / 2014-04-06
543
544* adding .run() method with docs and test. fixes #1
545* Update Readme.md
546* fixing history
547
548# 0.0.9 / 2014-04-05
549
550* adding more debug statements
551* fixing history
552
553# 0.0.8 / 2014-04-05
554
555* updating readme for screen and options
556* fixing timeout and adding debug for .screen() method
557* fixing history
558
559# 0.0.7 / 2014-04-05
560
561* setting viewport
562* fixing history
563
564# 0.0.6 / 2014-04-05
565
566* adding better debug logs for page load detection
567* fixing history
568
569# 0.0.5 / 2014-04-05
570
571* fixing history
572
573# 0.0.4 / 2014-04-05
574
575* fixing main for require to work
576* fixing history
577
578# 0.0.3 / 2014-04-05
579
580* fixing tests and getting screen working
581* fixing history again
582
583# 0.0.2 / 2014-04-05
584
585* pkilling phantomjs more aggressively
586* fixing phantom singletons
587* fixing history.md
588
589# 0.0.1 / 2014-04-05
590
591* updating readme
592* removing unneded circleci stuff
593* adding circle badge to readme
594* adding circle.yml
595* adding tests with lots of fixes everywhere
596* filling in remaining parts of api
597* filling in wait function
598* filling in lots of the first draft
599* adding new done method
600* blocks sync
601* mvoing
602* all before proceding
603* copyright
604* copy
605* adding more wait options
606* adding in scaffolding and readme outline