Skip to content

Commit f290a45

Browse files
SnailBonesstepankuzminavpeery
authored
Cherry pick fixes into v2.8.0 for final release (#11670)
* Removing -beta.1 suffix from style specs and changelogs * Adding new item to changelog CHERRY PICK ME TO MAIN * fix map center calculation in ScaleControl (#11657) * refactor CustomSource (#11649) * use empty image if the implementation returns nothing * Removing globe from scale test to get CI to pass * Add github actions workflow to check changelog requirements in PR (#11651) * implement github actions with a javascript actions to check pull requests for changelogs or skip changelog labels * Add `synchronize` to check-changelog github action types (#11653) * add synchronize to types to trigger with new commit pushes Co-authored-by: Stepan Kuzmin <[email protected]> Co-authored-by: Anna Peery <[email protected]>
1 parent 6b01c84 commit f290a45

File tree

23 files changed

+606
-100
lines changed

23 files changed

+606
-100
lines changed
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: 'Check Changelog'
2+
description: 'Ensure changelog meets requirements'
3+
inputs:
4+
pr-body:
5+
description: 'PR body from the github event'
6+
required: true
7+
outputs:
8+
approved-changelog-entry:
9+
description: 'Changelog entry has passed requirements'
10+
runs:
11+
using: 'node16'
12+
main: 'index.js'
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
const core = require('@actions/core');
2+
const github = require('@actions/github');
3+
4+
try {
5+
const prBody = core.getInput('pr-body');
6+
const changelogEntry = prBody.match(/\<changelog\>(.+)<\/changelog>/);
7+
// Should create a standard of at least # characters long ("I am" is shortest English sentence).
8+
if (changelogEntry && changelogEntry[1].length > 3) {
9+
core.setOutput('Changelog entry requirement is completed');
10+
} else {
11+
core.setFailed('Changelog entry is not completed or does not pass basic requirements');
12+
}
13+
} catch (error) {
14+
core.setFailed(error.message);
15+
}

.github/actions/package.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"name": "actions",
3+
"version": "1.0.0",
4+
"main": "index.js",
5+
"license": "MIT",
6+
"dependencies": {
7+
"@actions/core": "^1.6.0",
8+
"@actions/github": "^5.0.0"
9+
}
10+
}

.github/actions/yarn.lock

Lines changed: 175 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,175 @@
1+
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2+
# yarn lockfile v1
3+
4+
5+
"@actions/core@^1.6.0":
6+
version "1.6.0"
7+
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.6.0.tgz#0568e47039bfb6a9170393a73f3b7eb3b22462cb"
8+
integrity sha512-NB1UAZomZlCV/LmJqkLhNTqtKfFXJZAUPcfl/zqG7EfsQdeUJtaWO98SGbuQ3pydJ3fHl2CvI/51OKYlCYYcaw==
9+
dependencies:
10+
"@actions/http-client" "^1.0.11"
11+
12+
"@actions/github@^5.0.0":
13+
version "5.0.0"
14+
resolved "https://registry.yarnpkg.com/@actions/github/-/github-5.0.0.tgz#1754127976c50bd88b2e905f10d204d76d1472f8"
15+
integrity sha512-QvE9eAAfEsS+yOOk0cylLBIO/d6WyWIOvsxxzdrPFaud39G6BOkUwScXZn1iBzQzHyu9SBkkLSWlohDWdsasAQ==
16+
dependencies:
17+
"@actions/http-client" "^1.0.11"
18+
"@octokit/core" "^3.4.0"
19+
"@octokit/plugin-paginate-rest" "^2.13.3"
20+
"@octokit/plugin-rest-endpoint-methods" "^5.1.1"
21+
22+
"@actions/http-client@^1.0.11":
23+
version "1.0.11"
24+
resolved "https://registry.yarnpkg.com/@actions/http-client/-/http-client-1.0.11.tgz#c58b12e9aa8b159ee39e7dd6cbd0e91d905633c0"
25+
integrity sha512-VRYHGQV1rqnROJqdMvGUbY/Kn8vriQe/F9HR2AlYHzmKuM/p3kjNuXhmdBfcVgsvRWTz5C5XW5xvndZrVBuAYg==
26+
dependencies:
27+
tunnel "0.0.6"
28+
29+
"@octokit/auth-token@^2.4.4":
30+
version "2.5.0"
31+
resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36"
32+
integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==
33+
dependencies:
34+
"@octokit/types" "^6.0.3"
35+
36+
"@octokit/core@^3.4.0":
37+
version "3.6.0"
38+
resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.6.0.tgz#3376cb9f3008d9b3d110370d90e0a1fcd5fe6085"
39+
integrity sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==
40+
dependencies:
41+
"@octokit/auth-token" "^2.4.4"
42+
"@octokit/graphql" "^4.5.8"
43+
"@octokit/request" "^5.6.3"
44+
"@octokit/request-error" "^2.0.5"
45+
"@octokit/types" "^6.0.3"
46+
before-after-hook "^2.2.0"
47+
universal-user-agent "^6.0.0"
48+
49+
"@octokit/endpoint@^6.0.1":
50+
version "6.0.12"
51+
resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658"
52+
integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==
53+
dependencies:
54+
"@octokit/types" "^6.0.3"
55+
is-plain-object "^5.0.0"
56+
universal-user-agent "^6.0.0"
57+
58+
"@octokit/graphql@^4.5.8":
59+
version "4.8.0"
60+
resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3"
61+
integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==
62+
dependencies:
63+
"@octokit/request" "^5.6.0"
64+
"@octokit/types" "^6.0.3"
65+
universal-user-agent "^6.0.0"
66+
67+
"@octokit/openapi-types@^11.2.0":
68+
version "11.2.0"
69+
resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6"
70+
integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA==
71+
72+
"@octokit/plugin-paginate-rest@^2.13.3":
73+
version "2.17.0"
74+
resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7"
75+
integrity sha512-tzMbrbnam2Mt4AhuyCHvpRkS0oZ5MvwwcQPYGtMv4tUa5kkzG58SVB0fcsLulOZQeRnOgdkZWkRUiyBlh0Bkyw==
76+
dependencies:
77+
"@octokit/types" "^6.34.0"
78+
79+
"@octokit/plugin-rest-endpoint-methods@^5.1.1":
80+
version "5.13.0"
81+
resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba"
82+
integrity sha512-uJjMTkN1KaOIgNtUPMtIXDOjx6dGYysdIFhgA52x4xSadQCz3b/zJexvITDVpANnfKPW/+E0xkOvLntqMYpviA==
83+
dependencies:
84+
"@octokit/types" "^6.34.0"
85+
deprecation "^2.3.1"
86+
87+
"@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0":
88+
version "2.1.0"
89+
resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677"
90+
integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==
91+
dependencies:
92+
"@octokit/types" "^6.0.3"
93+
deprecation "^2.0.0"
94+
once "^1.4.0"
95+
96+
"@octokit/request@^5.6.0", "@octokit/request@^5.6.3":
97+
version "5.6.3"
98+
resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0"
99+
integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==
100+
dependencies:
101+
"@octokit/endpoint" "^6.0.1"
102+
"@octokit/request-error" "^2.1.0"
103+
"@octokit/types" "^6.16.1"
104+
is-plain-object "^5.0.0"
105+
node-fetch "^2.6.7"
106+
universal-user-agent "^6.0.0"
107+
108+
"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.34.0":
109+
version "6.34.0"
110+
resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218"
111+
integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw==
112+
dependencies:
113+
"@octokit/openapi-types" "^11.2.0"
114+
115+
before-after-hook@^2.2.0:
116+
version "2.2.2"
117+
resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e"
118+
integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ==
119+
120+
deprecation@^2.0.0, deprecation@^2.3.1:
121+
version "2.3.1"
122+
resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919"
123+
integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==
124+
125+
is-plain-object@^5.0.0:
126+
version "5.0.0"
127+
resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344"
128+
integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==
129+
130+
node-fetch@^2.6.7:
131+
version "2.6.7"
132+
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz#24de9fba827e3b4ae44dc8b20256a379160052ad"
133+
integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==
134+
dependencies:
135+
whatwg-url "^5.0.0"
136+
137+
once@^1.4.0:
138+
version "1.4.0"
139+
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
140+
integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
141+
dependencies:
142+
wrappy "1"
143+
144+
tr46@~0.0.3:
145+
version "0.0.3"
146+
resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
147+
integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=
148+
149+
150+
version "0.0.6"
151+
resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c"
152+
integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==
153+
154+
universal-user-agent@^6.0.0:
155+
version "6.0.0"
156+
resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee"
157+
integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==
158+
159+
webidl-conversions@^3.0.0:
160+
version "3.0.1"
161+
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871"
162+
integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=
163+
164+
whatwg-url@^5.0.0:
165+
version "5.0.0"
166+
resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d"
167+
integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0=
168+
dependencies:
169+
tr46 "~0.0.3"
170+
webidl-conversions "^3.0.0"
171+
172+
wrappy@1:
173+
version "1.0.2"
174+
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
175+
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: Check PR Requirements
2+
3+
on:
4+
pull_request:
5+
types: [opened, reopened, edited, labeled, unlabeled, synchronize]
6+
7+
jobs:
8+
check-changelog:
9+
if: ${{ !contains(github.event.pull_request.labels.*.name, 'skip changelog') }}
10+
runs-on: ubuntu-latest
11+
env:
12+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
13+
steps:
14+
- name: Checkout
15+
uses: actions/checkout@v2
16+
- name: Use Node.js 14.x
17+
uses: actions/setup-node@v2
18+
with:
19+
node-version: 14.x
20+
- name: Install dependencies
21+
run: yarn install --cwd ./.github/actions
22+
- name: Check if changelog entry exists
23+
uses: ./.github/actions/check-changelog #uses action in .github/actions
24+
id: check-changelog
25+
with:
26+
pr-body: ${{ github.event.pull_request.body }}

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## 2.8.0-beta.1
1+
## 2.8.0
22

33
## Performance improvements 🏁
44
* Improve memory usage by freeing memory more eagerly after loading tiles. ([#11434](https://github.com/mapbox/mapbox-gl-js/pull/11434))
@@ -8,6 +8,7 @@
88
### Bug fixes 🐞
99
* Fix `map.fitBounds()`, `map.fitScreenCoordinates()`, and `map.cameraForBounds()` incorrectly matching bounds with non-zero bearing. ([#11568](https://github.com/mapbox/mapbox-gl-js/pull/11568)) (h/t [TannerPerrien](https://github.com/TannerPerrien))
1010
* Improve control button appearance by applying `border-radius` more consistently. ([#11423](https://github.com/mapbox/mapbox-gl-js/pull/11423)) (h/t [nagix](https://github.com/nagix))
11+
* Fix `ScaleControl` displaying incorrect units with some projections.([#11657](https://github.com/mapbox/mapbox-gl-js/pull/11657))
1112
* Fix performance regression when animating image sources. ([#11564](https://github.com/mapbox/mapbox-gl-js/pull/11564))
1213
* Fix `MapDataEvent.isSourceLoaded()` to check if specific source has loaded. ([#11393](https://github.com/mapbox/mapbox-gl-js/pull/11393))
1314
* Fix map not wrapping after moving the map with no inertia. ([#11448](https://github.com/mapbox/mapbox-gl-js/pull/11448))

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "mapbox-gl",
33
"description": "A WebGL interactive maps library",
4-
"version": "2.8.0-beta.1",
4+
"version": "2.8.0",
55
"main": "dist/mapbox-gl.js",
66
"style": "dist/mapbox-gl.css",
77
"license": "SEE LICENSE IN LICENSE.txt",

0 commit comments

Comments
 (0)