geojs 1.4.2 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/.github/workflows/main.yml +1 -1
  2. package/CHANGELOG.md +271 -245
  3. package/geo.js +80454 -84177
  4. package/geo.lean.js +69911 -64212
  5. package/geo.lean.min.js +28 -41
  6. package/geo.min.js +30 -47
  7. package/package.json +60 -81
  8. package/src/annotation.js +2 -2
  9. package/src/annotationLayer.js +13 -13
  10. package/src/canvas/heatmapFeature.js +39 -16
  11. package/src/choroplethFeature.js +3 -3
  12. package/src/feature.js +4 -4
  13. package/src/geojsonReader.js +5 -4
  14. package/src/heatmapFeature.js +16 -5
  15. package/src/index.js +1 -1
  16. package/src/isolineFeature.js +4 -4
  17. package/src/lineFeature.js +4 -4
  18. package/src/map.js +2 -2
  19. package/src/mapInteractor.js +3 -0
  20. package/src/markerFeature.js +8 -8
  21. package/src/object.js +1 -3
  22. package/src/osmLayer.js +3 -10
  23. package/src/pixelmapFeature.js +1 -1
  24. package/src/pointFeature.js +1 -1
  25. package/src/polygonFeature.js +4 -4
  26. package/src/registry.js +1 -1
  27. package/src/svg/svgRenderer.js +3 -0
  28. package/src/svg/vectorFeature.js +1 -1
  29. package/src/tileLayer.js +4 -4
  30. package/src/trackFeature.js +12 -12
  31. package/src/transform.js +11 -10
  32. package/src/ui/colorLegendWidget.js +6 -6
  33. package/src/ui/legendWidget.js +3 -3
  34. package/src/ui/sliderWidget.js +4 -4
  35. package/src/util/common.js +9 -8
  36. package/src/util/mockVGL.js +3 -2
  37. package/src/util/throttle.js +3 -3
  38. package/src/vendor.js +0 -2
  39. package/src/vtkjs/vtkjsRenderer.js +3 -0
  40. package/src/webgl/layer.js +1 -1
  41. package/src/webgl/markerFeature.js +4 -4
  42. package/src/webgl/meshColored.js +3 -3
  43. package/src/webgl/pointFeature.js +11 -11
  44. package/src/webgl/polygonFeature.js +3 -3
  45. package/src/webgl/quadFeature.js +3 -1
  46. package/src/webgl/webglRenderer.js +1 -2
  47. package/src/polyfills.js +0 -4
package/CHANGELOG.md CHANGED
@@ -1,499 +1,525 @@
1
1
  # GeoJS Change Log
2
2
 
3
- ## [1.4.2](https://github.com/OpenGeoscience/geojs/compare/v1.4.1...v1.4.2) (2021-09-28)
3
+ ## Version 1.6.0
4
4
 
5
+ ### Changes
6
+
7
+ - Switch to webpack v5 and update build tooling ([#1132](../../issues/1132))
8
+
9
+ ### Bug Fixes
10
+
11
+ - Harden checking for optional dependencies ([#1143](../../pull/1143))
12
+
13
+ ## Version 1.5.0
14
+
15
+ ### Features
16
+
17
+ - Add scaleWithZoom option to heatmaps ([#1125](../../pull/1125))
18
+
19
+ ### Improvements
20
+
21
+ - Automatically adjust heatmap update delay ([#1124](../../pull/1124))
22
+ - Log if we can't allocate texture memory([#1116](../../pull/1116))
23
+
24
+ ## Version 1.4.3
25
+
26
+ ### Changes
5
27
 
6
- ### Performance Improvements
28
+ - Removed wikimedia from the map source list ([#1109](../../pull/1109))
7
29
 
8
- * Add basemaps from Carto ([#1107](https://github.com/OpenGeoscience/geojs/issues/1107)) ([657368c](https://github.com/OpenGeoscience/geojs/commit/657368c22b2c98e8f32f65fb23e983b0b769d46d))
30
+ ## Version 1.4.2
31
+
32
+ ### Improvements
33
+
34
+ - Added more tile sources to the default list ([#1107](../../pull/1107))
9
35
 
10
36
  ## Version 1.4.1
11
37
 
12
38
  ### Improvements
13
39
 
14
- - Add a continuousCloseProximity option to annotations (#1106)
40
+ - Add a continuousCloseProximity option to annotations ([#1106](../../pull/1106))
15
41
 
16
42
  ## Version 1.4.0
17
43
 
18
44
  ### Features
19
45
 
20
- ## Version 1.3.0
46
+ - Add a gridFeature ([#1082](../../pull/1082))
21
47
 
22
- - Add a gridFeature (#1082)
48
+ ## Version 1.3.0
23
49
 
24
50
  ### Features
25
51
 
26
- - Add an optional baseQuad to the tileLayer (#1105)
27
- - Support cropping quads (#1104)
52
+ - Add an optional baseQuad to the tileLayer ([#1105](../../pull/1105))
53
+ - Support cropping quads ([#1104](../../pull/1104))
28
54
 
29
55
  ## Version 1.2.0
30
56
 
31
57
  ### Features
32
58
 
33
- - Allow sharing queues between tile layers (#1100)
34
- - Allow removing promises from the idle monitor (#1101)
35
- - Improve when tile layers are idle (#1101)
59
+ - Allow sharing queues between tile layers ([#1100](../../pull/1100))
60
+ - Allow removing promises from the idle monitor ([#1101](../../pull/1101))
61
+ - Improve when tile layers are idle ([#1101](../../pull/1101))
36
62
 
37
63
  ## Version 1.1.0
38
64
 
39
65
  ### Features
40
- - Added a geoOnce handler for events (#1097)
66
+ - Added a geoOnce handler for events ([#1097](../../pull/1097))
41
67
 
42
68
  ## Version 1.0.3
43
69
 
44
70
  ### Bug Fixes
45
- - Have semantic release publish artifacts to the GitHub release (#1094)
71
+ - Have semantic release publish artifacts to the GitHub release ([#1094](../../pull/1094))
46
72
 
47
73
  ## Version 1.0.2
48
74
 
49
75
  ### Improvements
50
- - The primary map div now has overflow hidden set on it (#1088)
76
+ - The primary map div now has overflow hidden set on it ([#1088](../../pull/1088))
51
77
 
52
78
  ## Version 1.0.1
53
79
 
54
80
  ### Improvements
55
- - Contours with continuous (unstepped) data can specify the same number of values in `rangeValues` and `colorRange` (#1079)
81
+ - Contours with continuous (unstepped) data can specify the same number of values in `rangeValues` and `colorRange` ([#1079](../../pull/1079))
56
82
 
57
83
  ## Version 1.0.0
58
84
 
59
85
  ### Improvements
60
- - Screenshots now handle mix-blend-mode settings on top level divs (#1074)
61
- - More flexible default position accessors (#1066)
86
+ - Screenshots now handle mix-blend-mode settings on top level divs ([#1074](../../pull/1074))
87
+ - More flexible default position accessors ([#1066](../../pull/1066))
62
88
 
63
89
  ### Bug Fixes
64
- - Fixed an issue with affine transforms and polygons (#1073)
90
+ - Fixed an issue with affine transforms and polygons ([#1073](../../pull/1073))
65
91
 
66
92
  ## Version 0.20.0
67
93
 
68
94
  ### Features
69
- - Added a marker feature (#1035)
70
- - The mapInteractor cancelOnMove option can now take a movement threshold (#1058)
71
- - GCS can now be specified in pointSearch, boxSearch, and polygonSearch (#1051)
72
- - Added a track feature (#1040)
73
- - Added a geo.gui.scaleWidget.formatUnit utility function (#1048)
95
+ - Added a marker feature ([#1035](../../pull/1035))
96
+ - The mapInteractor cancelOnMove option can now take a movement threshold ([#1058](../../pull/1058))
97
+ - GCS can now be specified in pointSearch, boxSearch, and polygonSearch ([#1051](../../pull/1051))
98
+ - Added a track feature ([#1040](../../pull/1040))
99
+ - Added a geo.gui.scaleWidget.formatUnit utility function ([#1048](../../pull/1048))
74
100
 
75
101
  ### Improvements
76
- - The pointInPolygon2D function is faster (#1052)
77
- - On markers, updateStyleFromArray optimizes certain updates and exposes a faster way to change symbol and symbol value (#1049)
102
+ - The pointInPolygon2D function is faster ([#1052](../../pull/1052))
103
+ - On markers, updateStyleFromArray optimizes certain updates and exposes a faster way to change symbol and symbol value ([#1049](../../pull/1049))
78
104
 
79
105
  ## Version 0.19.8
80
106
 
81
107
  ### Changes
82
- - Line segments with zero width or zero opacity won't be found by pointSearch or polygonSearch (#1041)
108
+ - Line segments with zero width or zero opacity won't be found by pointSearch or polygonSearch ([#1041](../../pull/1041))
83
109
 
84
110
  ### Bug Fixes
85
- - Removed extra calls to sceneObject constructors (#1039)
86
- - Fixed an issue with rendering on hidden tabs in Chrome (#1042)
111
+ - Removed extra calls to sceneObject constructors ([#1039](../../pull/1039))
112
+ - Fixed an issue with rendering on hidden tabs in Chrome ([#1042](../../pull/1042))
87
113
 
88
114
  ## Version 0.19.7
89
115
 
90
116
  ### Features
91
- - The osmLayer now has predefined `tileSources` that can be used with the `source` method or property to switch multiple parameters at once (#1020)
117
+ - The osmLayer now has predefined `tileSources` that can be used with the `source` method or property to switch multiple parameters at once ([#1020](../../pull/1020))
92
118
 
93
119
  ### Improvements
94
- - Points with small radii or thin strokes are rendered better (#1021)
95
- - When only updating point styles, don't recompute geometry transforms (#1022)
96
- - Optimized a transform code path for pixel coordinates (#1023)
97
- - WebGL point features automatically use the most memory-efficient primitive shape for the point sizes used based on the system's graphics capabilities (#1031)
98
- - Less data is transferred to the GPU when only styles have changed in webgl line or polygon features (#1016)
120
+ - Points with small radii or thin strokes are rendered better ([#1021](../../pull/1021))
121
+ - When only updating point styles, don't recompute geometry transforms ([#1022](../../pull/1022))
122
+ - Optimized a transform code path for pixel coordinates ([#1023](../../pull/1023))
123
+ - WebGL point features automatically use the most memory-efficient primitive shape for the point sizes used based on the system's graphics capabilities ([#1031](../../pull/1031))
124
+ - Less data is transferred to the GPU when only styles have changed in webgl line or polygon features ([#1016](../../pull/1016))
99
125
 
100
126
  ### Changes
101
- - Switched the default tile server to Stamen Design's toner-lite (#1020)
127
+ - Switched the default tile server to Stamen Design's toner-lite ([#1020](../../pull/1020))
102
128
 
103
129
  ### Bug Fixes
104
- - Mouse wheel events didn't recompute gcs coordinates, so a wheel event without a previous move event could list the wrong location (#1027)
105
- - Original event data was not included with actionwheel events (#1030)
130
+ - Mouse wheel events didn't recompute gcs coordinates, so a wheel event without a previous move event could list the wrong location ([#1027](../../pull/1027))
131
+ - Original event data was not included with actionwheel events ([#1030](../../pull/1030))
106
132
 
107
133
  ## Version 0.19.6
108
134
 
109
135
  ### Features
110
- - Added a polygonSearch method to features (#1014)
136
+ - Added a polygonSearch method to features ([#1014](../../pull/1014))
111
137
 
112
138
  ### Changes
113
- - The feature boxSearch function now uses map input gcs coordinates consistently and returns results in the same format as pointSearch (#1014)
114
- - The pointTo2DTriangleBasis utility function was renamed to pointToTriangleBasis2d (#1014)
139
+ - The feature boxSearch function now uses map input gcs coordinates consistently and returns results in the same format as pointSearch ([#1014](../../pull/1014))
140
+ - The pointTo2DTriangleBasis utility function was renamed to pointToTriangleBasis2d ([#1014](../../pull/1014))
115
141
 
116
142
  ## Version 0.19.5
117
143
 
118
144
  ### Features
119
- - Fetch queues can have an initial size different from their regular size (#1000)
120
- - Autoshare renderers now has three states, with the default being more likely to not change anything visually (#1011)
145
+ - Fetch queues can have an initial size different from their regular size ([#1000](../../pull/1000))
146
+ - Autoshare renderers now has three states, with the default being more likely to not change anything visually ([#1011](../../pull/1011))
121
147
 
122
148
  ### Improvements
123
- - More response zooming via mouse wheel (#993)
124
- - Explicitly exit retired renderers when autosharing renderers (#1007)
125
- - If a point has no stroke or fill, don't return it from pointSearch (#1003)
126
- - WebGL point, line, polygon, and contour features use a localized origin for improved precision at high zoom levels. This reduces panning jitter in zoom levels 19 and up (#1005)
127
- - When doing a point search on a line feature, report which line segment is found (#1008)
128
- - Include source event information in some feature events (#1009)
149
+ - More response zooming via mouse wheel ([#993](../../pull/993))
150
+ - Explicitly exit retired renderers when autosharing renderers ([#1007](../../pull/1007))
151
+ - If a point has no stroke or fill, don't return it from pointSearch ([#1003](../../pull/1003))
152
+ - WebGL point, line, polygon, and contour features use a localized origin for improved precision at high zoom levels. This reduces panning jitter in zoom levels 19 and up ([#1005](../../pull/1005))
153
+ - When doing a point search on a line feature, report which line segment is found ([#1008](../../pull/1008))
154
+ - Include source event information in some feature events ([#1009](../../pull/1009))
129
155
 
130
156
  ### Changes
131
- - Idle handlers no longer defer to scene-graph parents. Parents still wait for all children to be idle (#1001)
132
- - Better handling of tiles with overlap (#997)
157
+ - Idle handlers no longer defer to scene-graph parents. Parents still wait for all children to be idle ([#1001](../../pull/1001))
158
+ - Better handling of tiles with overlap ([#997](../../pull/997))
133
159
 
134
160
  ### Bug Fixes
135
- - Shared tile layers stack properly by clearing quads on layer addition and removal (#1010)
161
+ - Shared tile layers stack properly by clearing quads on layer addition and removal ([#1010](../../pull/1010))
136
162
 
137
163
  ## Version 0.19.4
138
164
 
139
165
  ### Improvements
140
- - Speed up rebuilding webgl point features (#994)
166
+ - Speed up rebuilding webgl point features ([#994](../../pull/994))
141
167
 
142
168
  ## Version 0.19.3
143
169
 
144
170
  ### Features
145
- - Layers that use webgl renderers automatically share contexts when possible. Layers can switch renderers manually as well. This largely avoids the limitation of number of webgl contexts in a browser (#975)
146
- - Support affine transforms in the proj4 string (#986)
171
+ - Layers that use webgl renderers automatically share contexts when possible. Layers can switch renderers manually as well. This largely avoids the limitation of number of webgl contexts in a browser ([#975](../../pull/975))
172
+ - Support affine transforms in the proj4 string ([#986](../../pull/986))
147
173
 
148
174
  ### Improvements
149
- - Speed up rendering geojson features by using constant values for constant geojson styles (#987)
175
+ - Speed up rendering geojson features by using constant values for constant geojson styles ([#987](../../pull/987))
150
176
 
151
177
  ### Changes
152
- - The point clustering radius value is now in display pixels (#983)
178
+ - The point clustering radius value is now in display pixels ([#983](../../pull/983))
153
179
 
154
180
  ### Bug Fixes
155
- - Fixed drawing partial fixed-scale canvas quads (#985)
181
+ - Fixed drawing partial fixed-scale canvas quads ([#985](../../pull/985))
156
182
 
157
183
  ## Version 0.19.2
158
184
 
159
185
  ### Improvements
160
- - Make fewer function calls when computing polygon strokes (#980)
161
- - Speed up coordinate transforms that only switch y-axis (#979)
186
+ - Make fewer function calls when computing polygon strokes ([#980](../../pull/980))
187
+ - Speed up coordinate transforms that only switch y-axis ([#979](../../pull/979))
162
188
 
163
189
  ## Version 0.19.1
164
190
 
165
191
  ### Features
166
- - Polygon annotations can be drawn in the same continuous smooth manner as line annotations. (#976)
192
+ - Polygon annotations can be drawn in the same continuous smooth manner as line annotations. ([#976](../../pull/976))
167
193
 
168
194
  ### Changes
169
- - Rename the d3 renderer to svg. d3 still works as an alias (#965)
170
- - Rename the vgl renderer to webgl. vgl still works as an alias (#965)
195
+ - Rename the d3 renderer to svg. d3 still works as an alias ([#965](../../pull/965))
196
+ - Rename the vgl renderer to webgl. vgl still works as an alias ([#965](../../pull/965))
171
197
 
172
198
  ## Version 0.19.0
173
199
 
174
200
  ### Features
175
- - Feature selection API is now enabled automatically if any event handlers are bounds to the feature (#921)
176
- - Added a VTK.js renderer which supports a point feature (#893, #953)
201
+ - Feature selection API is now enabled automatically if any event handlers are bounds to the feature ([#921](../../pull/921))
202
+ - Added a VTK.js renderer which supports a point feature ([#893](../../pull/893), [#953](../../pull/953))
177
203
 
178
204
  ### Improvements
179
- - Coordinate transforms on flat arrays are now faster (#939)
180
- - `convertColor` is memoized to speed up repeated calls (#936)
181
- - All features have a `featureType` property (#931)
182
- - When changing geometry sizes, buffers are reallocated less (#941)
183
- - Initial rendering webGL features is somewhat faster (#943)
184
- - WebGL point and polygon features no longer clip by z coordinates (#963)
205
+ - Coordinate transforms on flat arrays are now faster ([#939](../../pull/939))
206
+ - `convertColor` is memoized to speed up repeated calls ([#936](../../pull/936))
207
+ - All features have a `featureType` property ([#931](../../pull/931))
208
+ - When changing geometry sizes, buffers are reallocated less ([#941](../../pull/941))
209
+ - Initial rendering webGL features is somewhat faster ([#943](../../pull/943))
210
+ - WebGL point and polygon features no longer clip by z coordinates ([#963](../../pull/963))
185
211
 
186
212
  ### Changes
187
- - Removed the dependency on the vgl module for the `object` and `timestamp` classes (#918)
188
- - CSS color names are obtained from an npm package rather than being defined in the util module (#936)
189
- - Updated several npm modules (#944)
190
- - Report the unmasked renderer used with webgl (#947)
191
- - Width and height are now in the base renderer class (#962)
213
+ - Removed the dependency on the vgl module for the `object` and `timestamp` classes ([#918](../../pull/918))
214
+ - CSS color names are obtained from an npm package rather than being defined in the util module ([#936](../../pull/936))
215
+ - Updated several npm modules ([#944](../../pull/944))
216
+ - Report the unmasked renderer used with webgl ([#947](../../pull/947))
217
+ - Width and height are now in the base renderer class ([#962](../../pull/962))
192
218
 
193
219
  ### Bug Fixes
194
- - Fixed some minor issues with layers (#949)
220
+ - Fixed some minor issues with layers ([#949](../../pull/949))
195
221
 
196
222
  ### Documentation
197
- - Improve documentation (#922, #928, #929, #930, #932, #948, #950, #951, #956, #960, #961)
198
- - Added a point cluster example (#957)
199
- - Editor tutorials keep history in browser (#926)
223
+ - Improve documentation ([#922](../../pull/922), [#928](../../pull/928), [#929](../../pull/929), [#930](../../pull/930), [#932](../../pull/932), [#948](../../pull/948), [#950](../../pull/950), [#951](../../pull/951), [#956](../../pull/956), [#960](../../pull/960), [#961](../../pull/961))
224
+ - Added a point cluster example ([#957](../../pull/957))
225
+ - Editor tutorials keep history in browser ([#926](../../pull/926))
200
226
 
201
227
  ## Version 0.18.1
202
228
 
203
229
  ### Bug Fixes
204
- - Fixed an issue with the annotation key handler (#923)
230
+ - Fixed an issue with the annotation key handler ([#923](../../pull/923))
205
231
 
206
232
  ## Version 0.18.0
207
233
 
208
234
  ### Features
209
- - Added an idle property to objects (#894)
210
- - Better handling and changing of camera clipbounds (#899)
211
- - File readers (the geojsonReader) now returns a Promise. The layer will report that it is not idle until this promise is finalized (#905)
235
+ - Added an idle property to objects ([#894](../../pull/894))
236
+ - Better handling and changing of camera clipbounds ([#899](../../pull/899))
237
+ - File readers (the geojsonReader) now returns a Promise. The layer will report that it is not idle until this promise is finalized ([#905](../../pull/905))
212
238
 
213
239
  ### Bug Fixes
214
- - Fixed an issue with overlapping, cropped tiles on old browsers (#901)
215
- - Fixed an issue where a `geo.gl.polygonFeature` could be updated after it was deleted (#913)
240
+ - Fixed an issue with overlapping, cropped tiles on old browsers ([#901](../../pull/901))
241
+ - Fixed an issue where a `geo.gl.polygonFeature` could be updated after it was deleted ([#913](../../pull/913))
216
242
 
217
243
  ### Changes
218
- - Changed build process: optional dependencies are now included in the bundle by default (#890)
219
- - Transpile with Babel to support old browsers and new language features (#900, #903)
220
- - The geojsonReader has been renamed from `jsonReader` to `geojsonReader`. The old name still works as an alias (#905)
221
- - Catch errors in animation frame callbacks (#911)
244
+ - Changed build process: optional dependencies are now included in the bundle by default ([#890](../../pull/890))
245
+ - Transpile with Babel to support old browsers and new language features ([#900](../../pull/900), [#903](../../pull/903))
246
+ - The geojsonReader has been renamed from `jsonReader` to `geojsonReader`. The old name still works as an alias ([#905](../../pull/905))
247
+ - Catch errors in animation frame callbacks ([#911](../../pull/911))
222
248
 
223
249
  ## Version 0.17.0
224
250
 
225
251
  ### Features
226
- - Add multi-color support to the continuous color legend (#810)
227
- - Warn when trying to create an unsupported feature (#823)
228
- - Expose registries (#830)
229
- - Add all proj4 projections (#840, #873)
230
- - Trigger an event when an annotation's coordinates change (#841)
231
- - Add an option to limit text feature rendering (#834)
232
- - Calculating min and max of array is now a utility function (#835)
233
- - Generalized meshes (#817)
234
- - Added a `wrapAngle` utility function (#836)
235
- - Isolines (#838)
252
+ - Add multi-color support to the continuous color legend ([#810](../../pull/810))
253
+ - Warn when trying to create an unsupported feature ([#823](../../pull/823))
254
+ - Expose registries ([#830](../../pull/830))
255
+ - Add all proj4 projections ([#840](../../pull/840), [#873](../../pull/873))
256
+ - Trigger an event when an annotation's coordinates change ([#841](../../pull/841))
257
+ - Add an option to limit text feature rendering ([#834](../../pull/834))
258
+ - Calculating min and max of array is now a utility function ([#835](../../pull/835))
259
+ - Generalized meshes ([#817](../../pull/817))
260
+ - Added a `wrapAngle` utility function ([#836](../../pull/836))
261
+ - Isolines ([#838](../../pull/838))
236
262
 
237
263
  ### Bug Fixes
238
- - Ensure GL polygons are built once before their strokes so that the strokes are always on top (#806)
239
- - Work around `atan` bugs in openmesa and swiftshader WebGL renderers (#816)
240
- - Fix text alignment on the scale widget (#828)
241
- - Ignore z values in `vgl.lineFeature` (#833)
242
- - Don't modify geojson object coordinates (#848)
243
- - Ensure all point position calls pass the data index (#852)
264
+ - Ensure GL polygons are built once before their strokes so that the strokes are always on top ([#806](../../pull/806))
265
+ - Work around `atan` bugs in openmesa and swiftshader WebGL renderers ([#816](../../pull/816))
266
+ - Fix text alignment on the scale widget ([#828](../../pull/828))
267
+ - Ignore z values in `vgl.lineFeature` ([#833](../../pull/833))
268
+ - Don't modify geojson object coordinates ([#848](../../pull/848))
269
+ - Ensure all point position calls pass the data index ([#852](../../pull/852))
244
270
 
245
271
  ### Testing
246
- - Test with a muted video (#811)
247
- - Use Firefox headless (#818)
248
- - Use karma-spec-reported for better output (#829)
249
- - Upgrade jasmine (#837)
250
- - Refactor how external data is fetched (#851)
251
- - Add more support for testing examples, similar to tutorial tests (#866)
252
- - Refactored the server script to allow serving the website and build directories as well as the dist directory (#868)
272
+ - Test with a muted video ([#811](../../pull/811))
273
+ - Use Firefox headless ([#818](../../pull/818))
274
+ - Use karma-spec-reported for better output ([#829](../../pull/829))
275
+ - Upgrade jasmine ([#837](../../pull/837))
276
+ - Refactor how external data is fetched ([#851](../../pull/851))
277
+ - Add more support for testing examples, similar to tutorial tests ([#866](../../pull/866))
278
+ - Refactored the server script to allow serving the website and build directories as well as the dist directory ([#868](../../pull/868))
253
279
 
254
280
  ### Documentation
255
- - Improve tutorial page layout (#809)
256
- - Improve documentation (#819, #825, #824, #839, #844, #849, #859, #858, #867, #872)
257
- - Update tutorials when text is deleted (#827)
258
- - Added a rainfall example with isolines and contours (#869)
259
- - Change the Deep Zoom example to make it more generic and use a public data source (#875)
260
- - Automate website deployment (#877)
281
+ - Improve tutorial page layout ([#809](../../pull/809))
282
+ - Improve documentation ([#819](../../pull/819), [#825](../../pull/825), [#824](../../pull/824), [#839](../../pull/839), [#844](../../pull/844), [#849](../../pull/849), [#859](../../pull/859), [#858](../../pull/858), [#867](../../pull/867), [#872](../../pull/872))
283
+ - Update tutorials when text is deleted ([#827](../../pull/827))
284
+ - Added a rainfall example with isolines and contours ([#869](../../pull/869))
285
+ - Change the Deep Zoom example to make it more generic and use a public data source ([#875](../../pull/875))
286
+ - Automate website deployment ([#877](../../pull/877))
261
287
 
262
288
  ### Changes
263
- - Remove bower support (#856)
264
- - Switch to webpack v3 (#854)
265
- - Removed needless function wrappers (#870)
289
+ - Remove bower support ([#856](../../pull/856))
290
+ - Switch to webpack v3 ([#854](../../pull/854))
291
+ - Removed needless function wrappers ([#870](../../pull/870))
266
292
 
267
293
  ## Version 0.16.0
268
294
 
269
295
  ### Features
270
- - Events allow changing feature order on mouse over and mouse click (#807)
296
+ - Events allow changing feature order on mouse over and mouse click ([#807](../../pull/807))
271
297
 
272
298
  ### Improvements
273
- - Multiple UI layers can be active at once (#802)
274
- - Clear animation queue when the map is destroyed (#801)
275
- - Handle dereferencing errors in screenshots more gracefully (#803)
299
+ - Multiple UI layers can be active at once ([#802](../../pull/802))
300
+ - Clear animation queue when the map is destroyed ([#801](../../pull/801))
301
+ - Handle dereferencing errors in screenshots more gracefully ([#803](../../pull/803))
276
302
 
277
303
  ### Changes
278
- - Line style function parameters are more consistent (#804)
304
+ - Line style function parameters are more consistent ([#804](../../pull/804))
279
305
 
280
306
  ### Bug Fixes
281
- - Polygon strokes were sometimes drawn under polygon fills (#806)
307
+ - Polygon strokes were sometimes drawn under polygon fills ([#806](../../pull/806))
282
308
 
283
309
  ### Documentation
284
- - Added a [line tutorial](https://opengeoscience.github.io/geojs/tutorials/lines) (#805)
310
+ - Added a [line tutorial](https://opengeoscience.github.io/geojs/tutorials/lines) ([#805](../../pull/805))
285
311
 
286
312
  ## Version 0.15.2
287
313
 
288
314
  ### Features
289
- - Allow specifying the map's initial maximum bounds in a different GCS (#794)
290
- - Improve setting widget positions (#796)
291
- - Add methods to simplify line geometries (#791)
292
- - Add functions computing spherical and Vincenty distances (#797)
293
- - Add a scale widget (#798)
294
- - Improve the screenshot function by dereferencing CSS urls (#799)
315
+ - Allow specifying the map's initial maximum bounds in a different GCS ([#794](../../pull/794))
316
+ - Improve setting widget positions ([#796](../../pull/796))
317
+ - Add methods to simplify line geometries ([#791](../../pull/791))
318
+ - Add functions computing spherical and Vincenty distances ([#797](../../pull/797))
319
+ - Add a scale widget ([#798](../../pull/798))
320
+ - Improve the screenshot function by dereferencing CSS urls ([#799](../../pull/799))
295
321
 
296
322
  ### Testing
297
- - Fix testing with Chrome 65 (#792)
298
- - Add tests for geo.gui.widget and geo.gui.domWidget (#795)
323
+ - Fix testing with Chrome 65 ([#792](../../pull/792))
324
+ - Add tests for geo.gui.widget and geo.gui.domWidget ([#795](../../pull/795))
299
325
 
300
326
  ### Documentation
301
- - Enable the [color legend example](https://opengeoscience.github.io/geojs/examples/color-legend/) (#790)
302
- - Add a new [editor tutorial](https://opengeoscience.github.io/geojs/tutorials/editor3) with HTML and CSS panes (#783)
303
- - Use https urls for openstreetmap tiles in all examples and tutorials (#793)
327
+ - Enable the [color legend example](https://opengeoscience.github.io/geojs/examples/color-legend/) ([#790](../../pull/790))
328
+ - Add a new [editor tutorial](https://opengeoscience.github.io/geojs/tutorials/editor3) with HTML and CSS panes ([#783](../../pull/783))
329
+ - Use https urls for openstreetmap tiles in all examples and tutorials ([#793](../../pull/793))
304
330
 
305
331
  ## Version 0.15.1
306
332
 
307
333
  ### Testing
308
- - Use resemblejs for testing rather than node-resemble (#785)
334
+ - Use resemblejs for testing rather than node-resemble ([#785](../../pull/785))
309
335
 
310
336
  ### Packaging
311
- - Resolve hammerjs by it's name on npm in addition to the global variable `Hammer` (#787)
337
+ - Resolve hammerjs by it's name on npm in addition to the global variable `Hammer` ([#787](../../pull/787))
312
338
 
313
339
  ## Version 0.15.0
314
340
 
315
341
  ### Features
316
- - Individual annotations can be edited (#769)
342
+ - Individual annotations can be edited ([#769](../../pull/769))
317
343
 
318
344
  ### Improvements
319
- - Sped up updating line features (#779)
345
+ - Sped up updating line features ([#779](../../pull/779))
320
346
 
321
347
  ### Bug Fixes
322
- - Fixed hit test on closed lines (#780)
323
- - Fixed mouse buttons reporting on Firefox (#782)
348
+ - Fixed hit test on closed lines ([#780](../../pull/780))
349
+ - Fixed mouse buttons reporting on Firefox ([#782](../../pull/782))
324
350
 
325
351
  ## Version 0.14.0
326
352
 
327
353
  ### Features
328
354
 
329
- - Added an `object.geoIsOn` function to check if an event is bound (#768)
330
- - Use the average perimeter for the center of a polygon or line (#761)
331
- - Allow display to/from gcs conversion functions to handle arrays of points (#766)
332
- - When drawing a line annotation, don't create intermediate colinear points (#759)
333
- - Improve exiting and reloading maps (#750)
334
- - Various minor improvements (#767, #760)
355
+ - Added an `object.geoIsOn` function to check if an event is bound ([#768](../../pull/768))
356
+ - Use the average perimeter for the center of a polygon or line ([#761](../../pull/761))
357
+ - Allow display to/from gcs conversion functions to handle arrays of points ([#766](../../pull/766))
358
+ - When drawing a line annotation, don't create intermediate colinear points ([#759](../../pull/759))
359
+ - Improve exiting and reloading maps ([#750](../../pull/750))
360
+ - Various minor improvements ([#767](../../pull/767), [#760](../../pull/760))
335
361
 
336
362
  ### Packaging
337
- - Refactored importing optional dependencies so webpack makes them truly optional (#770)
338
- - Upgraded to jQuery 3.x (#772, #773)
339
- - Updated npm packages (#756)
340
- - Reduce packaging effects (#763, #751)
363
+ - Refactored importing optional dependencies so webpack makes them truly optional ([#770](../../pull/770))
364
+ - Upgraded to jQuery 3.x ([#772](../../pull/772), [#773](../../pull/773))
365
+ - Updated npm packages ([#756](../../pull/756))
366
+ - Reduce packaging effects ([#763](../../pull/763), [#751](../../pull/751))
341
367
 
342
368
  ### Testing
343
- - Improved testing with different browsers (Chrome 64 and Firefox 58) (#775, #771, #755)
369
+ - Improved testing with different browsers (Chrome 64 and Firefox 58) ([#775](../../pull/775), [#771](../../pull/771), [#755](../../pull/755))
344
370
 
345
371
  ### Bug Fixes
346
- - Include stroke widths when doing a point search on polygons (#762)
347
- - Fixed `pointSearch` when the feature used a non-default gcs (#758)
348
- - Fixed unbinding keyboard events (#757)
372
+ - Include stroke widths when doing a point search on polygons ([#762](../../pull/762))
373
+ - Fixed `pointSearch` when the feature used a non-default gcs ([#758](../../pull/758))
374
+ - Fixed unbinding keyboard events ([#757](../../pull/757))
349
375
 
350
376
  ### Tutorials and Website
351
- - Added more tutorials (#774)
352
- - Minor website improvements (#753, #752)
377
+ - Added more tutorials ([#774](../../pull/774))
378
+ - Minor website improvements ([#753](../../pull/753), [#752](../../pull/752))
353
379
 
354
380
  ## Version 0.13.0
355
381
 
356
382
  ### New features
357
- - Added a new video quad feature (#745)
358
- - Annotation id's are now persevered when reloading geojson (#747)
383
+ - Added a new video quad feature ([#745](../../pull/745))
384
+ - Annotation id's are now persevered when reloading geojson ([#747](../../pull/747))
359
385
 
360
386
  ### Bug fixes
361
- - Fixed setting rotation on map creation (#740)
362
- - Fixed polygon fill and opacity interaction (#744)
363
- - Fixed handling GCS in geojson annotation imports (#748)
387
+ - Fixed setting rotation on map creation ([#740](../../pull/740))
388
+ - Fixed polygon fill and opacity interaction ([#744](../../pull/744))
389
+ - Fixed handling GCS in geojson annotation imports ([#748](../../pull/748))
364
390
 
365
391
  ### Improvements to the website and documentation
366
- - Updated GeoJS's [website](https://opengeoscience.github.io/geojs/) (#729)
367
- - Improved the [API documentation](https://opengeoscience.github.io/geojs/apidocs/) (#738)
368
- - Added an "editor" [tutorial](https://opengeoscience.github.io/geojs/tutorials/) (#742)
369
- - Updated some [examples](https://opengeoscience.github.io/geojs/tutorials/) (#743)
392
+ - Updated GeoJS's [website](https://opengeoscience.github.io/geojs/) ([#729](../../pull/729))
393
+ - Improved the [API documentation](https://opengeoscience.github.io/geojs/apidocs/) ([#738](../../pull/738))
394
+ - Added an "editor" [tutorial](https://opengeoscience.github.io/geojs/tutorials/) ([#742](../../pull/742))
395
+ - Updated some [examples](https://opengeoscience.github.io/geojs/tutorials/) ([#743](../../pull/743))
370
396
 
371
397
  ## Version 0.12.4
372
398
 
373
- - Added a new color legend widget (#731)
374
- - Fixed `z-index` bug on new layers (#732)
375
- - Improved testing infrastructure (#735, #737)
376
- - Removed some boiler plate code from the examples (#733)
399
+ - Added a new color legend widget ([#731](../../pull/731))
400
+ - Fixed `z-index` bug on new layers ([#732](../../pull/732))
401
+ - Improved testing infrastructure ([#735](../../pull/735), [#737](../../pull/737))
402
+ - Removed some boiler plate code from the examples ([#733](../../pull/733))
377
403
 
378
404
  ## Version 0.12.3
379
405
 
380
- - Added annotation labels (#719)
381
- - Added text feature (#719)
382
- - Added tutorial infrastructure and some simple tutorials (#725, #727, #728)
383
- - Handle tap-touch actions (adds support for some tablet styluses) (#730)
406
+ - Added annotation labels ([#719](../../pull/719))
407
+ - Added text feature ([#719](../../pull/719))
408
+ - Added tutorial infrastructure and some simple tutorials ([#725](../../pull/725), [#727](../../pull/727), [#728](../../pull/728))
409
+ - Handle tap-touch actions (adds support for some tablet styluses) ([#730](../../pull/730))
384
410
 
385
411
  ## Version 0.12.2
386
412
 
387
- - Started revamping our [API documentation](https://opengeoscience.github.io/geojs/apidocs/) with a new template (#704, #706, #708, #710, #713)
388
- - Several minor API improvements (#707)
389
- - Added subdomain template parameters for tile layer urls (#715)
413
+ - Started revamping our [API documentation](https://opengeoscience.github.io/geojs/apidocs/) with a new template ([#704](../../pull/704), [#706](../../pull/706), [#708](../../pull/708), [#710](../../pull/710), [#713](../../pull/713))
414
+ - Several minor API improvements ([#707](../../pull/707))
415
+ - Added subdomain template parameters for tile layer urls ([#715](../../pull/715))
390
416
 
391
417
  ## Version 0.12.1
392
418
 
393
- - Fix bugs in rectangle annotations (#693, #694)
394
- - Add new optimized methods for updating styles of features for animations and a new [example](https://opengeoscience.github.io/geojs/examples/animation/) (#687)
395
- - Fix checks for optional dependencies (#696)
396
- - Change the template for our [apidocs](https://opengeoscience.github.io/geojs/apidocs/) to [jaguarjs-jsdoc](https://github.com/davidshimjs/jaguarjs-jsdoc) (#697)
397
- - Fix a bug in applying polygon stroke styles (#700)
419
+ - Fix bugs in rectangle annotations ([#693](../../pull/693), [#694](../../pull/694))
420
+ - Add new optimized methods for updating styles of features for animations and a new [example](https://opengeoscience.github.io/geojs/examples/animation/) ([#687](../../pull/687))
421
+ - Fix checks for optional dependencies ([#696](../../pull/696))
422
+ - Change the template for our [apidocs](https://opengeoscience.github.io/geojs/apidocs/) to [jaguarjs-jsdoc](https://github.com/davidshimjs/jaguarjs-jsdoc) ([#697](../../pull/697))
423
+ - Fix a bug in applying polygon stroke styles ([#700](../../pull/700))
398
424
 
399
425
  ## Version 0.12.0
400
426
 
401
- - Handle basic touch interactions using hammerjs (#675)
402
- - Increase testing coverage (#676, #677, #684)
403
- - Support additional line styling options in the json reader (#680)
404
- - Add the ability to draw line annotations (#681)
405
- - Add `visible` and `selectionAPI` methods to layers (#682)
406
- - Replace custom quad tree implementation with kdbush (#685)
407
- - Remove several unused utility methods (#686)
408
- - Move vgl mocking function into `utils` for use in upstream testing (#688)
427
+ - Handle basic touch interactions using hammerjs ([#675](../../pull/675))
428
+ - Increase testing coverage ([#676](../../pull/676), [#677](../../pull/677), [#684](../../pull/684))
429
+ - Support additional line styling options in the json reader ([#680](../../pull/680))
430
+ - Add the ability to draw line annotations ([#681](../../pull/681))
431
+ - Add `visible` and `selectionAPI` methods to layers ([#682](../../pull/682))
432
+ - Replace custom quad tree implementation with kdbush ([#685](../../pull/685))
433
+ - Remove several unused utility methods ([#686](../../pull/686))
434
+ - Move vgl mocking function into `utils` for use in upstream testing ([#688](../../pull/688))
409
435
 
410
436
  ## Version 0.11.1
411
437
 
412
- - Added a `map.screenshot` method to take screenshots of the current map view (#665, #667)
413
- - Added a screenshot button on the example pages (#669)
414
- - Made it easier to disable or replace keyboard actions in the interactor (#670)
438
+ - Added a `map.screenshot` method to take screenshots of the current map view ([#665](../../pull/665), [#667](../../pull/667))
439
+ - Added a screenshot button on the example pages ([#669](../../pull/669))
440
+ - Made it easier to disable or replace keyboard actions in the interactor ([#670](../../pull/670))
415
441
 
416
442
  ## Version 0.11.0
417
443
 
418
- - Refactored GL line feature with a number of new styling options available. See our [blog post](https://blog.kitware.com/drawing-lines-in-geojs/) and the new [line example](https://opengeoscience.github.io/geojs/examples/lines/) for more details. (#649, #662)
419
- - Added keyboard shortcuts for map navigation. (#661)
420
- - Most DOM styling is now done with a CSS file rather than setting inline styles. (#660)
421
- - Added GCS options to the annotation interface. (#654)
422
- - Added headless unit testing for GL code and examples. (#651, #658).
423
- - Removed unused source files. (#656, #657)
444
+ - Refactored GL line feature with a number of new styling options available. See our [blog post](https://blog.kitware.com/drawing-lines-in-geojs/) and the new [line example](https://opengeoscience.github.io/geojs/examples/lines/) for more details. ([#649](../../pull/649), [#662](../../pull/662))
445
+ - Added keyboard shortcuts for map navigation. ([#661](../../pull/661))
446
+ - Most DOM styling is now done with a CSS file rather than setting inline styles. ([#660](../../pull/660))
447
+ - Added GCS options to the annotation interface. ([#654](../../pull/654))
448
+ - Added headless unit testing for GL code and examples. ([#651](../../pull/651), [#658](../../pull/658)).
449
+ - Removed unused source files. ([#656](../../pull/656), [#657](../../pull/657))
424
450
 
425
451
  ## Version 0.10.5
426
452
 
427
- - Made annotation states more consistent (#643)
428
- - Reduced lag between layers (#644)
429
- - Fixed gaps between tiles (#648)
430
- - Fixed map jumping after certain transitions (#650)
453
+ - Made annotation states more consistent ([#643](../../pull/643))
454
+ - Reduced lag between layers ([#644](../../pull/644))
455
+ - Fixed gaps between tiles ([#648](../../pull/648))
456
+ - Fixed map jumping after certain transitions ([#650](../../pull/650))
431
457
 
432
458
  ## Version 0.10.4
433
459
 
434
460
  ### Changes
435
- - Added a pixelmap feature and [example](https://opengeoscience.github.io/geojs/examples/pixelmap/) (#637)
436
- - The location with a quad is reported in mouse events and point search functions (#635)
437
- - Canvas elements can be rendered in quads on the canvas renderer (#634)
438
- - Most features support visibility (#632)
439
- - Colors can be specified with a greater variety of css methods, such as `rgb()` and `rgba()` (#636)
440
- - Point annotations can scale with zoom (#628)
461
+ - Added a pixelmap feature and [example](https://opengeoscience.github.io/geojs/examples/pixelmap/) ([#637](../../pull/637))
462
+ - The location with a quad is reported in mouse events and point search functions ([#635](../../pull/635))
463
+ - Canvas elements can be rendered in quads on the canvas renderer ([#634](../../pull/634))
464
+ - Most features support visibility ([#632](../../pull/632))
465
+ - Colors can be specified with a greater variety of css methods, such as `rgb()` and `rgba()` ([#636](../../pull/636))
466
+ - Point annotations can scale with zoom ([#628](../../pull/628))
441
467
 
442
468
  ## Version 0.10.3
443
469
 
444
470
  ### Changes
445
- - Fixed a bug in getting the visible bounds using a custom map projection (#625)
446
- - Slider widgets can now be repositioned and resized (#619)
447
- - Improved the annotation API with the ability to import and export GeoJSON (#617)
471
+ - Fixed a bug in getting the visible bounds using a custom map projection ([#625](../../pull/625))
472
+ - Slider widgets can now be repositioned and resized ([#619](../../pull/619))
473
+ - Improved the annotation API with the ability to import and export GeoJSON ([#617](../../pull/617))
448
474
 
449
475
  ## Version 0.10.2
450
476
 
451
477
  ### Changes
452
- - Add a closed flag for line features (#602)
453
- - Minor changes and bug fixes in the interactor (#603, #604, #605)
454
- - Allow showing partial tiles on edges (#606)
455
- - Minor fixes to geojson rendering (#609)
456
- - Update to VGL 0.3.10 (#608, #612)
457
- - Reduce flickering in point cluster rendering (#621)
458
- - Beta support for interactive annotations and a new [example](https://opengeoscience.github.io/geojs/examples/annotations/) (#613, #616)
478
+ - Add a closed flag for line features ([#602](../../pull/602))
479
+ - Minor changes and bug fixes in the interactor ([#603](../../pull/603), [#604](../../pull/604), [#605](../../pull/605))
480
+ - Allow showing partial tiles on edges ([#606](../../pull/606))
481
+ - Minor fixes to geojson rendering ([#609](../../pull/609))
482
+ - Update to VGL 0.3.10 ([#608](../../pull/608), [#612](../../pull/612))
483
+ - Reduce flickering in point cluster rendering ([#621](../../pull/621))
484
+ - Beta support for interactive annotations and a new [example](https://opengeoscience.github.io/geojs/examples/annotations/) ([#613](../../pull/613), [#616](../../pull/616))
459
485
 
460
486
  ## Version 0.10.1
461
487
 
462
488
  ### Bug fixes
463
- - Fixed a bug preventing deletion of stroked polygons (#601)
489
+ - Fixed a bug preventing deletion of stroked polygons ([#601](../../pull/601))
464
490
 
465
491
  ## Version 0.10.0
466
492
 
467
493
  ### Breaking changes
468
- - Removed the `planeFeature` class in favor of the faster and more powerful`quadFeature` (#583)
469
- - Changed the callback signature for the `fill` style, which turns on or off rendering the polygon fill (#597)
494
+ - Removed the `planeFeature` class in favor of the faster and more powerful`quadFeature` ([#583](../../pull/583))
495
+ - Changed the callback signature for the `fill` style, which turns on or off rendering the polygon fill ([#597](../../pull/597))
470
496
 
471
497
  ### Additions and improvements
472
- - Improved heatmap feature and [example](https://opengeoscience.github.io/geojs/examples/heatmap/) (#574, #577, #578, #579)
473
- - Replaced grunt build tasks with webpack and npm scripts (#580)
474
- - Added a d3 rendered `quadFeature` (#581)
475
- - Added selection-based zoom (#582)
476
- - Added an interface for `createLayer` to request renderers by feature support (#590)
477
- - Improved polygon rendering performance ([massively](https://github.com/OpenGeoscience/geojs/pull/594#issuecomment-226821131)) and added a usage [example](https://opengeoscience.github.io/geojs/examples/polygons/) (#594)
478
- - Added an [example](https://opengeoscience.github.io/geojs/examples/sld/) of customizing the style of WMS layers (#595)
479
- - Added stroking to the polygon feature (#597)
498
+ - Improved heatmap feature and [example](https://opengeoscience.github.io/geojs/examples/heatmap/) ([#574](../../pull/574), [#577](../../pull/577), [#578](../../pull/578), [#579](../../pull/579))
499
+ - Replaced grunt build tasks with webpack and npm scripts ([#580](../../pull/580))
500
+ - Added a d3 rendered `quadFeature` ([#581](../../pull/581))
501
+ - Added selection-based zoom ([#582](../../pull/582))
502
+ - Added an interface for `createLayer` to request renderers by feature support ([#590](../../pull/590))
503
+ - Improved polygon rendering performance ([massively](https://github.com/OpenGeoscience/geojs/pull/594#issuecomment-226821131)) and added a usage [example](https://opengeoscience.github.io/geojs/examples/polygons/) ([#594](../../pull/594))
504
+ - Added an [example](https://opengeoscience.github.io/geojs/examples/sld/) of customizing the style of WMS layers ([#595](../../pull/595))
505
+ - Added stroking to the polygon feature ([#597](../../pull/597))
480
506
 
481
507
  ### Bug fixes
482
- - Fixed a bug in box selection with map rotation (#582)
483
- - Fixed the `draw` method on GL and canvas features (#585)
484
- - Fixed a rendering bug in GL line features (#597)
485
- - Removed the [now unavailable](http://devblog.mapquest.com/2016/06/15/modernization-of-mapquest-results-in-changes-to-open-tile-access/) mapquest tile servers from the examples (#598)
508
+ - Fixed a bug in box selection with map rotation ([#582](../../pull/582))
509
+ - Fixed the `draw` method on GL and canvas features ([#585](../../pull/585))
510
+ - Fixed a rendering bug in GL line features ([#597](../../pull/597))
511
+ - Removed the [now unavailable](http://devblog.mapquest.com/2016/06/15/modernization-of-mapquest-results-in-changes-to-open-tile-access/) mapquest tile servers from the examples ([#598](../../pull/598))
486
512
 
487
513
  ## Version 0.9.1
488
514
 
489
515
  ### Changes
490
- - Added a new [heatmap](https://opengeoscience.github.io/geojs/examples/heatmap/) feature (#557)
491
- - Switched to [earcut](https://github.com/mapbox/earcut) for triangulating polygons (#555)
492
- - Added methods on `geo.transform` to load EPSG projections from [epsg.io](http://epsg.io/) (#561)
493
- - Recorded the git SHA at build time as `geo.sha` (#562)
494
- - Made `tileLayer.tilesAtZoom` configurable to support rectangular images (#568)
495
- - Added caching to proj4 transform objects (#570)
496
- - Added jQuery to the distributed bundle (#572)
516
+ - Added a new [heatmap](https://opengeoscience.github.io/geojs/examples/heatmap/) feature ([#557](../../pull/557))
517
+ - Switched to [earcut](https://github.com/mapbox/earcut) for triangulating polygons ([#555](../../pull/555))
518
+ - Added methods on `geo.transform` to load EPSG projections from [epsg.io](http://epsg.io/) ([#561](../../pull/561))
519
+ - Recorded the git SHA at build time as `geo.sha` ([#562](../../pull/562))
520
+ - Made `tileLayer.tilesAtZoom` configurable to support rectangular images ([#568](../../pull/568))
521
+ - Added caching to proj4 transform objects ([#570](../../pull/570))
522
+ - Added jQuery to the distributed bundle ([#572](../../pull/572))
497
523
 
498
524
  ## Version 0.9.0
499
525