UNPKG

5.31 kBMarkdownView Raw
1# Change Log
2All notable changes to this project will be documented in this file.
3This project adheres to [Semantic Versioning](http://semver.org/).
4
5## 5.0.2 - 2017-11-20
6### Changed
7- Added back `res.setHeader` for plugins to use
8
9## 5.0.1 - 2017-11-15
10### Changed
11- Set `renderType` to `html` for non "/render" endpoint
12
13## 5.0.0 - 2017-11-15
14### Added
15- Added Headless Chrome as a rendering engine!
16- Added new event types: `requestReceived`, `tabCreated`, `pageLoaded`.
17- Added new Prerender server option: `chromeLocation`
18- Added ability to request jpg and png screenshots
19- Added ability to request pdf export of a page
20- Added ability to request HAR file of page load times
21
22### Changed
23- Removed PhantomJS and all references to it
24- Removed old event types: `beforePhantomRequest`, `onPhantomPageCreate`, `afterPhantomRequest`, `beforeSend`
25- Removed In Memory Cache (moved to new repo)
26- Removed S3 HTML Cache (moved to new repo)
27- Removed Prerender server options that are no longer needed: `workers`, `iterations`, `softIterations`, `cookiesEnabled`, `pageDoneCheckTimeout`, `resourceDownloadTimeout`, `jsTimeout`, `noJsExecutionTimeout`, `evaluateJavascriptCheckTimeout`
28
29See the Readme.me for in depth descriptions of all of the new changes!
30
31## 4.4.1 - 2016-12-28
32### Changed
33- Whoops. Make sure `shouldEncodeURLBeforeBrowserFetch` defaults to true.
34
35## 4.4.0 - 2016-12-28
36### Added
37- Added `shouldEncodeURLBeforeBrowserFetch` to allow projects that use prerender to determine whether they want to call `encodeURI` on the URL before fetching it in PhantomJS. Useful for some URLs that might have encoded slashes in them, since encoding them further would cause incorrect behavior.
38
39## 4.3.1 - 2016-08-25
40### Changed
41- Fixed issue where PhantomJS crashed and then disposing caused bad phantomjs state
42
43## 4.3.0 - 2016-08-04
44### Changed
45- Bumped all dependency versions to latest
46
47## 4.2.0 - 2016-08-04
48### Added
49- Added ability for cluster master to kill last known phantomjs pid for a worker if the worker dies (preventing orphaned phantomjs instances)
50### Changed
51- Better terminating for cluster workers
52
53## 4.1.0 - 2016-07-27
54### Added
55- Added NUM_SOFT_ITERATIONS to try to kill phantomjs and reclaim memory when no requests are in flight. This should be set to a low number (1-10) so that PhantomJS can be restarted often when it isn't doing anything else. NUM_ITERATIONS should still be set to something like 40-50 to make sure to force kill PhantomJS even if a request is in flight.
56- Added clearing of memory cache to prevent PhantomJS from returning a 304
57### Changed
58- Fixed issue where prerender-status-code set to `200` was causing the page to skip being cached
59- Fixed an issue where we weren't using the correct pid when trying to force kill PhantomJS.
60- Moved clearing of memory cache and local storage to before the page loads instead of after. This will prevent edge cases that could cause a 304.
61
62## 4.0.10 - 2016-06-01
63### Changed
64- Fixed issue where S3HtmlCache was calling next() before finishing saving to the cache
65
66## 4.0.9 - 2016-05-08
67### Changed
68- Fixed issue where we were calling `hasOwnProperty` on a `querystring` that no longer had Object on it's prototype chain
69
70## 4.0.8 - 2016-03-24
71### Changed
72- Fixed issue where a webpage calling window.close would cause Prerender to be unable to shutdown PhantomJS properly
73
74## 4.0.7 - 2016-03-22
75### Changed
76- S3 cache plugin was incorrectly saving non-200 status code responses to the cache
77
78## 4.0.6 - 2016-03-09
79### Changed
80- preserve phantom arguments when server is restarting
81- use default when phantomArguments is empty
82
83## 4.0.5 - 2016-02-29
84### Changed
85- prevent multiple phantomjs instances from being started with low number of iterations
86- try to check to see if phantomjs has actually been disposed. if not, force kill it.
87
88## 4.0.4 - 2016-02-18
89### Changed
90- added engines to package.json and fixed possible bug in checking options passed in
91- prevent weird hangup on error setting a header with a newline
92- make sure we catch any errors thrown from phridge and continue
93- kill workers (and phantomjs) on SIGTERM
94
95## 4.0.3 - 2016-02-12
96### Added plugin to send a header of X-Prerender: 1 with every request
97
98## 4.0.2 - 2016-02-12
99#### Now using PhantomJS version 2.1
100### Changed
101- Changed `PHANTOM_CLUSTER_NUM_WORKERS` to `PRERENDER_NUM_WORKERS` in server.js
102- Changed `PHANTOM_WORKER_ITERATIONS` to `PRERENDER_NUM_ITERATIONS` in server.js
103- Switched from `phantomjs-node` bridge to `phridge`
104 - All Prerender plugins that access PhantomJS need to be rewritten to support new [phridge](https://github.com/peerigon/phridge) integration.
105 For example, change this:
106 ```
107 req.prerender.page.set('onConsoleMessage', function(msg) {
108 console.log(msg);
109 });
110 ```
111 to this:
112 ```
113 req.prerender.page.run(function() {
114
115 this.onConsoleMessage = function(msg) {
116 console.log(msg);
117 };
118 });
119 ```
120 Please see [phridge](https://github.com/peerigon/phridge) for more info on how to interact with PhantomJS through `phridge`.
121
122 ###Removed
123 - Removed `PHANTOM_CLUSTER_BASE_PORT` since `phridge` doesn't start a webserve to talk to PhantomJS, so it's no longer needed.
124 - Removed `PHANTOM_CLUSTER_MESSAGE_TIMEOUT` since `phridge` doesn't start a webserve to talk to PhantomJS, so it's no longer needed.
125
\No newline at end of file