1 | # Change Log
|
2 | All notable changes to this project will be documented in this file.
|
3 | This 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 |
|
29 | See 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 |