Skip to content

Commit

Permalink
Updates for the 7.0.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
tschaub committed Aug 19, 2022
1 parent 5e0ec23 commit 28aa803
Show file tree
Hide file tree
Showing 5 changed files with 188 additions and 10 deletions.
11 changes: 10 additions & 1 deletion changelog/upgrade-notes.md
@@ -1,6 +1,15 @@
## Upgrade notes

### Next version
### 7.0.0

#### Removal of deprecated properties and methods

* The `tilePixelRatio` has been removed from the `DataTile` source.
* The `imageSmoothing` option has been removed from sources.
* The `undefinedHTML` option has been removed from the `MousePosition` control.
* The `forEachLayerAtPixel` method has been removed from the `Map` class.
* Deprecated options have been removed from the `Overlay` component.
* The `labelCache` has been removed from the `ol/render/canvas.js` module.

#### Internet Explorer is no longer supported

Expand Down
169 changes: 169 additions & 0 deletions changelog/v7.0.0.md
@@ -0,0 +1,169 @@
# 7.0.0

The 7.0 release includes an impressive batch of features and fixes from over 90 pull requests. We're excited about a new foundation for WebGL vector rendering. The previous point rendering functionality has been extended to include lines and polygons. The rendering API is still low level and experimental. Future releases will include a higher level styling API. In developing the new WebGL rendering functionality, we changed the signature for a number of methods on a helper class that had been marked as part of the API in 6.x releases. While this is technically a breaking change, it is unlikely that applications were using this helper class, so upgrades should be straightforward.

We took advantage of the breaking change in the WebGL helper class to remove a few other deprecated parts of the API. In addition, since Microsoft ended support for Internet Explorer a few months ago, we decided to do the same.

### Backwards incompatible changes

#### Removal of deprecated properties and methods

* The `tilePixelRatio` has been removed from the `DataTile` source.
* The `imageSmoothing` option has been removed from sources.
* The `undefinedHTML` option has been removed from the `MousePosition` control.
* The `forEachLayerAtPixel` method has been removed from the `Map` class.
* Deprecated options have been removed from the `Overlay` component.
* The `labelCache` has been removed from the `ol/render/canvas.js` module.

#### Internet Explorer is no longer supported

Please see https://docs.microsoft.com/en-us/lifecycle/announcements/internet-explorer-11-end-of-support.

#### ol/webgl/Helper.js

The `Helper` constructor from the `ol/webgl/Helper.js` module is no longer part of the public API.

#### ol/coordinate.js

The `toStringHDMS` function from the `ol/coordinate.js` module now formats longitude, latitude pairs so that the minutes and seconds are omitted if they are zero. This changes the values displayed on graticules.

#### ol/layer/Graticule

The default `intervals` now align with integer minutes and seconds better suited to the default label formatter. If formatting in decimal degrees you may wish to specify custom `intervals` suited to that format.

#### ol/Collection

Inserting with `setAt` or `insertAt` beyond the current length used to create a sparse Collection with `undefined` inserted for any missing indexes. This will now throw an error instead.

#### ol/control/MousePosition

The control will now by default keep displaying the last mouse position when the mouse leaves the viewport. With `placeholder: ' '` you can keep the old behaviour. The `placeholder` option no longer accepts `false` as a valid value, instead simply omit the option. The `undefinedHTML` option has been removed. You should use `placeholder` instead.

#### ol/PluggableMap

The `PluggableMap` class has been removed. If you want to create a custom map class, extend the `Map` class instead.

#### ol/style/Icon and ol/style/RegularShape

`ol/style/Image` and subclasses `displacement` is no longer scaled with the image. If you previously expected this unintended behavior you should now increase the displacement when setting the scale.

### List of all changes

See below for a complete list of features and fixes.

* Make the website deploy job succeed even if there are no changes (by @tschaub in https://github.com/openlayers/openlayers/pull/14017)
* Release actions (by @tschaub in https://github.com/openlayers/openlayers/pull/14014)
* Properly clear and refresh reprojected sources (by @ahocevar in https://github.com/openlayers/openlayers/pull/14013)
* Remove ENABLE_RASTER_REPROJECTION flag (by @ahocevar in https://github.com/openlayers/openlayers/pull/14011)
* Force render after update in Icon Scale example (by @mike-000 in https://github.com/openlayers/openlayers/pull/14012)
* Update ol-mapbox-style to v9.0.0 (by @ahocevar in https://github.com/openlayers/openlayers/pull/14009)
* Replace the Icon Scale example (by @mike-000 in https://github.com/openlayers/openlayers/pull/14007)
* Improve description of displacement in docs (by @mike-000 in https://github.com/openlayers/openlayers/pull/14006)
* Remove IE workarounds for legacy build, examples, and workers (by @tschaub in https://github.com/openlayers/openlayers/pull/13995)
* Use the full table for constructor options (by @tschaub in https://github.com/openlayers/openlayers/pull/13998)
* Do not scale Icon and RegularShape displacement (by @mike-000 in https://github.com/openlayers/openlayers/pull/13975)
* Support user projections in Drag and Drop (by @mike-000 in https://github.com/openlayers/openlayers/pull/14003)
* Avoid append only cache in WebGL tile layers (by @tschaub in https://github.com/openlayers/openlayers/pull/13997)
* Fix immediate renderer text rotation with offset (by @mike-000 in https://github.com/openlayers/openlayers/pull/13981)
* Build and deploy the website (by @openlayers in https://github.com/openlayers/openlayers/pull/13984)
* Small example template fixes (by @openlayers in https://github.com/openlayers/openlayers/pull/13992)
* Fix wording in API docs (by @openlayers in https://github.com/openlayers/openlayers/pull/13991)
* Nicer links in the API docs (by @tschaub in https://github.com/openlayers/openlayers/pull/13970)
* Minor adjustments to the website style (by @tschaub in https://github.com/openlayers/openlayers/pull/13989)
* Fix copying of non-linked ol.css, clean example build (by @MoonE in https://github.com/openlayers/openlayers/pull/13988)
* Fix kml-timezone example calculations (by @MoonE in https://github.com/openlayers/openlayers/pull/13982)
* Fix some errors in examples (by @MoonE in https://github.com/openlayers/openlayers/pull/13977)
* Update FontAwesome to v6.1.2 (by @MoonE in https://github.com/openlayers/openlayers/pull/13978)
* Use correct bands with `LUMINANCE_ALPHA` (by @mike-000 in https://github.com/openlayers/openlayers/pull/13974)
* Remove opt_ prefix (by @tschaub in https://github.com/openlayers/openlayers/pull/13972)
* Fix bandcount per texture for 8, 12, 16, etc. bands (by @mike-000 in https://github.com/openlayers/openlayers/pull/13973)
* Do not apply #12467 change to Icons (by @mike-000 in https://github.com/openlayers/openlayers/pull/13955)
* Remove more IE compatibility (by @MoonE in https://github.com/openlayers/openlayers/pull/13971)
* Remove workaround and docs for IE 11 (by @tschaub in https://github.com/openlayers/openlayers/pull/13965)
* Remove circular dependency (by @tschaub in https://github.com/openlayers/openlayers/pull/13967)
* Update link to sponsors (by @tschaub in https://github.com/openlayers/openlayers/pull/13968)
* Bundle code for the map on the homepage (by @tschaub in https://github.com/openlayers/openlayers/pull/13966)
* Website build (by @tschaub in https://github.com/openlayers/openlayers/pull/13961)
* Remove polyfills for IE and Android 4 (by @tschaub in https://github.com/openlayers/openlayers/pull/13963)
* Replace VERSION in un-transpiled source (by @MoonE in https://github.com/openlayers/openlayers/pull/13957)
* Use const in docs and other places (by @MoonE in https://github.com/openlayers/openlayers/pull/13958)
* Add few missing new lines in example source listing (by @MoonE in https://github.com/openlayers/openlayers/pull/13959)
* Fix js error in api pages on load (by @MoonE in https://github.com/openlayers/openlayers/pull/13956)
* Minor simplification (by @JakobMiksch in https://github.com/openlayers/openlayers/pull/13953)
* Fix typo and formatting in upgrade notes (by @mike-000 in https://github.com/openlayers/openlayers/pull/13946)
* Fixes to export examples (by @mike-000 in https://github.com/openlayers/openlayers/pull/13947)
* Fix WebGL points layer flaky test (by @jahow in https://github.com/openlayers/openlayers/pull/13944)
* Scaleline (by @MoonE in https://github.com/openlayers/openlayers/pull/13943)
* Improve loading of kmz file in example (by @MoonE in https://github.com/openlayers/openlayers/pull/13942)
* Fix KML default icon anchor with https icon url (by @MoonE in https://github.com/openlayers/openlayers/pull/13941)
* Use nicer functions, remove old code (by @MoonE in https://github.com/openlayers/openlayers/pull/13937)
* Render vector tile vectors in correct sequence for the postrender event (by @ahocevar in https://github.com/openlayers/openlayers/pull/13939)
* Remove workaround for missing TypedArray.from function (by @MoonE in https://github.com/openlayers/openlayers/pull/13936)
* Remove check for context.setLineDash (by @MoonE in https://github.com/openlayers/openlayers/pull/13933)
* Remove deprecated DataTile source `tilePixelRatio` (by @mike-000 in https://github.com/openlayers/openlayers/pull/13930)
* Remove input type="range" `change` event listeners where `input` events are also used (by @mike-000 in https://github.com/openlayers/openlayers/pull/13932)
* Remove deprecated `imageSmoothing` source options (by @mike-000 in https://github.com/openlayers/openlayers/pull/13931)
* Updated map background (by @tschaub in https://github.com/openlayers/openlayers/pull/13926)
* Include babel for CodeSandbox (by @tschaub in https://github.com/openlayers/openlayers/pull/13923)
* Remove reference to ES6 as ES2017 already listed (by @mike-000 in https://github.com/openlayers/openlayers/pull/13922)
* Style updates for examples and API docs (by @tschaub in https://github.com/openlayers/openlayers/pull/13917)
* Remove Google Analytics and cookie consent (by @tschaub in https://github.com/openlayers/openlayers/pull/13916)
* Fix map render test (by @MoonE in https://github.com/openlayers/openlayers/pull/13915)
* Uniformly grayscale controls (by @tschaub in https://github.com/openlayers/openlayers/pull/13908)
* Remove PluggableMap (by @tschaub in https://github.com/openlayers/openlayers/pull/13914)
* Remove MousePosition's deprecated undefinedHTML option (by @MoonE in https://github.com/openlayers/openlayers/pull/13911)
* Remove IconImage color fallback for IE (by @MoonE in https://github.com/openlayers/openlayers/pull/13912)
* Remove IE fallbacks (by @MoonE in https://github.com/openlayers/openlayers/pull/13907)
* Fix editing of export-map example on codesandbox (by @MoonE in https://github.com/openlayers/openlayers/pull/13910)
* Improve Collection type-safety (by @MoonE in https://github.com/openlayers/openlayers/pull/13902)
* Re-export the link interaction from the interactions module (by @tschaub in https://github.com/openlayers/openlayers/pull/13906)
* Replace enums with typedefs (by @MoonE in https://github.com/openlayers/openlayers/pull/13905)
* Accept an object literal for static layer styling (by @tschaub in https://github.com/openlayers/openlayers/pull/13900)
* Update jsdoc-plugin-typescript to fix markdown in type annotations (by @ahocevar in https://github.com/openlayers/openlayers/pull/13903)
* Wait until first load to create icon image (by @tschaub in https://github.com/openlayers/openlayers/pull/13899)
* Make Text options typesafe (by @MoonE in https://github.com/openlayers/openlayers/pull/13901)
* Align graticule default intervals to minutes and seconds (by @mike-000 in https://github.com/openlayers/openlayers/pull/13897)
* Publish untranspiled sources (by @tschaub in https://github.com/openlayers/openlayers/pull/13891)
* Improve reprojection WMS config for better performance (by @ahocevar in https://github.com/openlayers/openlayers/pull/13880)
* Omit minutes and seconds from HDMS formatting if zero (by @tschaub in https://github.com/openlayers/openlayers/pull/13893)
* Use Object.assign (by @tschaub in https://github.com/openlayers/openlayers/pull/13888)
* Remove unused worker (by @tschaub in https://github.com/openlayers/openlayers/pull/13892)
* Remove find and findIndex from array module (by @tschaub in https://github.com/openlayers/openlayers/pull/13887)
* Use Math.cosh and Math.log2 (by @tschaub in https://github.com/openlayers/openlayers/pull/13890)
* Use Object.values (by @tschaub in https://github.com/openlayers/openlayers/pull/13889)
* Remove workaround for Array.prototype.includes (by @tschaub in https://github.com/openlayers/openlayers/pull/13884)
* Codesandbox and bundler improvements for examples (by @ahocevar in https://github.com/openlayers/openlayers/pull/13879)
* Remove deprecated method PluggableMap#forEachLayerAtPixel ... (by @MoonE in https://github.com/openlayers/openlayers/pull/13868)
* Remove unused assertion numbers (by @MoonE in https://github.com/openlayers/openlayers/pull/13869)
* Remove deprecated Overlay options (by @MoonE in https://github.com/openlayers/openlayers/pull/13838)
* WebGL vector renderer for polygons, lines and points (by @jahow in https://github.com/openlayers/openlayers/pull/13461)
* Fix reloading tiles in case of an error with tile.load() (by @ahocevar in https://github.com/openlayers/openlayers/pull/13863)
* Handle multipolygons with empty polygons (by @ahocevar in https://github.com/openlayers/openlayers/pull/13860)
* Replace enums with typedef (by @MoonE in https://github.com/openlayers/openlayers/pull/13858)
* Remove deprecated label cache (by @MoonE in https://github.com/openlayers/openlayers/pull/13837)
* Update dev version to 7.0.0 (by @MoonE in https://github.com/openlayers/openlayers/pull/13850)
* Release v6.15.1 (by @openlayers in https://github.com/openlayers/openlayers/pull/13852)
* Recover from incorrect rebase after removal of string enums (by @ahocevar in https://github.com/openlayers/openlayers/pull/13835)
* Updates for the 6.15.0 release (by @openlayers in https://github.com/openlayers/openlayers/pull/13851)


<details>
<summary>Dependency Updates</summary>

* Bump webpack-dev-server from 4.9.3 to 4.10.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13986)
* Bump rollup from 2.77.2 to 2.78.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13985)
* Bump eslint from 8.21.0 to 8.22.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13987)
* Bump @babel/preset-env from 7.18.9 to 7.18.10 (by @openlayers in https://github.com/openlayers/openlayers/pull/13948)
* Bump @babel/core from 7.18.9 to 7.18.10 (by @openlayers in https://github.com/openlayers/openlayers/pull/13949)
* Bump @rollup/plugin-commonjs from 22.0.1 to 22.0.2 (by @openlayers in https://github.com/openlayers/openlayers/pull/13951)
* Bump puppeteer from 15.5.0 to 16.1.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13950)
* Bump rollup from 2.77.0 to 2.77.2 (by @openlayers in https://github.com/openlayers/openlayers/pull/13919)
* Bump eslint from 8.20.0 to 8.21.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13920)
* Bump jsdoc-plugin-typescript from 2.0.7 to 2.1.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13875)
* Bump puppeteer from 15.4.0 to 15.5.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13871)
* Bump webpack from 5.73.0 to 5.74.0 (by @openlayers in https://github.com/openlayers/openlayers/pull/13870)
* Bump jsdoc from 3.6.10 to 3.6.11 (by @openlayers in https://github.com/openlayers/openlayers/pull/13873)
* Bump terser from 5.7.2 to 5.14.2 (by @openlayers in https://github.com/openlayers/openlayers/pull/13859)


</details>
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
@@ -1,6 +1,6 @@
{
"name": "ol",
"version": "7.0.0-dev",
"version": "7.0.0",
"description": "OpenLayers mapping library",
"keywords": [
"map",
Expand Down
12 changes: 6 additions & 6 deletions site/src/download/index.hbs
Expand Up @@ -17,8 +17,8 @@ layout: default.hbs
<div class="col-sm-12">
<p>
If you want to try out OpenLayers without downloading anything (<b>not recommended for production</b>), include the following in the head of your html page:
<pre><code class="language-html">&lt;script src="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@master/en/{{ version }}/build/ol.js"&gt;&lt;/script&gt;
&lt;link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@master/en/{{ version }}/theme/ol.css"&gt;
<pre><code class="language-html">&lt;script src="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@main/dist/en/{{ version }}/legacy/ol.js"&gt;&lt;/script&gt;
&lt;link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/openlayers/openlayers.github.io@main/dist/en/{{ version }}/legacy/ol.css"&gt;
</code></pre>
</p>
</div>
Expand All @@ -32,12 +32,12 @@ layout: default.hbs
<tbody>
<tr><th>Archive</th><th>Description</th></tr>
<tr>
<td><a href="https://github.com/openlayers/openlayers/releases/download/{{ version }}/{{ version }}-dist.zip">{{ version }}-dist.zip</a></td>
<td>Includes a full build of the library (<code>ol.js</code>), a source map (<code>ol.js.map</code>), and library CSS (<code>ol.css</code> with source map <code>ol.css.map</code>).</td>
<td><a href="https://github.com/openlayers/openlayers/releases/download/{{ version }}/{{ version }}-site.zip">{{ version }}-site.zip</a></td>
<td>Includes examples and documentation.</td>
</tr>
<tr>
<td><a href="https://github.com/openlayers/openlayers/releases/download/{{ version }}/{{ version }}.zip">{{ version }}.zip</a></td>
<td>Includes all of the above plus examples, API docs, and sources.</td>
<td><a href="https://github.com/openlayers/openlayers/releases/download/{{ version }}/{{ version }}-legacy.zip">{{ version }}-legacy.zip</a></td>
<td>Includes the legacy build of the library.</td>
</tr>
</tbody>
</table>
Expand Down

0 comments on commit 28aa803

Please sign in to comment.