Skip to content

Commit 7ea8712

Browse files
Merge branch 'master' into dependabot/npm_and_yarn/website/http-proxy-middleware-2.0.9
2 parents 572ef3f + 168990d commit 7ea8712

File tree

282 files changed

+6958
-2579
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

282 files changed

+6958
-2579
lines changed

.github/workflows/test.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,28 @@ jobs:
3838
uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b # v2.3.6
3939
with:
4040
github-token: ${{ secrets.GITHUB_TOKEN }}
41+
42+
test-website:
43+
runs-on: ubuntu-22.04
44+
permissions:
45+
checks: write
46+
contents: read
47+
48+
steps:
49+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
50+
- uses: volta-cli/action@5c175f92dea6f48441c436471e6479dbc192e194 # v4.2.1
51+
with:
52+
cache: 'yarn'
53+
54+
- name: Install dependencies
55+
run: yarn bootstrap
56+
57+
- name: Build packages
58+
run: yarn build
59+
60+
- name: Test website build
61+
run: |
62+
yarn test-website
4163
4264
test-python:
4365
runs-on: ubuntu-latest

CHANGELOG.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,55 @@ Each version should:
1717
Ref: http://keepachangelog.com/en/0.3.0/
1818
-->
1919

20+
## deck.gl v9.2
21+
22+
### deck.gl v9.2 Prereleases
23+
24+
#### deck.gl [v9.2.0-alpha.2] - Jun 4 2025
25+
26+
- CARTO: refactor to remove fetchmap code (#9619)
27+
28+
#### deck.gl [v9.2.0-alpha.1] - May 27 2025
29+
30+
- feat(widgets): GeocoderWidget and experimental Geocoders (#9610)
31+
- Feature: Add A5Layer (#9626)
32+
- feat(widgets) Add StatsWidget (#9623)
33+
- feat(widgets): New GimbalWidget (#9614)
34+
- feat(widgets): New ContextMenuWidget (#9616)
35+
- feat(widgets): FpsWidget (#9607)
36+
- feat(widget): Add geocoder support to GeolocateWidget (#9608)
37+
- [feat] ViewSelectorWidget (#9591)
38+
- chore(widgets): Join Widget and WidgetImpl, clean up widgets (#9576)
39+
- feat(core): Add View.clone() method (#9588)
40+
- feat(widgets): minimal TimelineWidget (#9587)
41+
- feat(react): Add missing react widget wrappers (#9589)
42+
- chore: More lint fixes (#9582)
43+
- chore: Bump luma to 9.1.9 (#9583)
44+
- feat: Port point-cloud-layer to WebGPU (#9531)
45+
- chore(widgets): Light code reorg (#9573)
46+
- chore: Reduce lint errors (#9550)
47+
- [feat]: SplitterWidget (#9565)
48+
- docs(widgets) demos and a pass on sources, styling, and TOC (#9559)
49+
- feat(widgets) theme widget applies styles to widget container (#9558)
50+
- chore: Bump to [email protected] (#9556)
51+
- [feat] Add hover support to InfoWidget (#9552)
52+
- feat(widgets): Simple GeolocateWidget (#9488)
53+
- feat(widgets): New LoadingWidget (#9485)
54+
- feat(widgets): New ScaleWidget (#9491)
55+
- feat(widgets): ThemeWidget (#9471)
56+
- POC: PopupWidget (#8958)
57+
- Revert #9483 using 6 coordinates in glViewport (#9542)
58+
- Append `.js` to WebGPU shaders for script builds (#9537)
59+
- chore: Bump to [email protected] (WebGPU fixes) (#9525)
60+
- feat: line layer and project module port to WGSL, test app for WebGPU line (#9509)
61+
- fix(chore): Disable constant attributes under WebGPU (#9506)
62+
- chore: WebGPU plumbing (#9502)
63+
- chore: WebGPU plumbing (#9480)
64+
- chore: WebGPU plumbing #1 (#9476)
65+
- feat(widgets): New ResetViewWidget (#9456)
66+
- feat(widgets) New ScreenshotWidget (#9454)
67+
68+
2069
## deck.gl v9.1
2170

2271
### deck.gl v9.1 Prereleases

CONTRIBUTING.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ PRs and bug reports are welcome, and we are actively looking for new maintainers
1010
The **master** branch is the active development branch.
1111

1212
Building deck.gl locally from the source requires node.js `>=14`. Further limitations on the Node version may be imposed by [puppeteer](https://github.com/puppeteer/puppeteer#usage) and [headless-gl](https://github.com/stackgl/headless-gl#supported-platforms-and-nodejs-versions).
13-
We use [yarn](https://yarnpkg.com/en/docs/install) to manage the dependencies of deck.gl.
13+
We use [yarn](https://yarnpkg.com/en/docs/install) to manage the dependencies of deck.gl, and [volta](https://docs.volta.sh/guide/getting-started) to manage the Node and yarn version.
1414

1515
```bash
1616
git checkout master
@@ -20,6 +20,15 @@ yarn test
2020

2121
See [additional instructions](#troubleshooting) for Windows, Linux and Apple M1.
2222

23+
Run the website:
24+
25+
```bash
26+
yarn build
27+
cd website
28+
yarn
29+
yarn start
30+
```
31+
2332
Run the layer browser application:
2433

2534
```bash

bindings/pydeck-carto/setup.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,14 @@
55
with open(join("pydeck_carto", "_version.py")) as f:
66
exec(f.read(), {}, version_ns)
77

8+
with open("README.md") as f:
9+
long_description = f.read()
10+
811
setup(
912
name="pydeck-carto",
1013
version=version_ns["__version__"],
1114
description="Pydeck wrapper for use with CARTO",
12-
long_description=open("README.md").read(),
15+
long_description=long_description,
1316
long_description_content_type="text/markdown",
1417
keywords=["pydeck", "carto", "visualization", "graphics", "GIS", "maps"],
1518
author="CARTO",

bindings/pydeck/bump_version.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ def rewrite_version_file(semver):
3737

3838
def rewrite_frontend_version_file():
3939
"""Current associated version of NPM modules deck.gl and @deck.gl/jupyter-widget"""
40-
lerna_version = json.loads(open("../../lerna.json").read())["version"]
40+
with open("../../lerna.json") as f:
41+
lerna_version = json.loads(f.read())["version"]
4142
with open("pydeck/frontend_semver.py", "w+") as f:
4243
t = jinja2.Template("DECKGL_SEMVER = '{{semver_str}}'")
4344
contents = t.render(semver_str=str(lerna_version))

bindings/pydeck/docs/scripts/embed_examples.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ def create_rst(pydeck_example_file_name):
3131
),
3232
shell=True,
3333
)
34-
python_code = open(pydeck_example_file_name, "r").read()
34+
with open(pydeck_example_file_name, "r") as f:
35+
python_code = f.read()
3536
doc_source = DOC_TEMPLATE.render(
3637
page_title=to_presentation_name(asset_name),
3738
snake_name=asset_name,
@@ -40,10 +41,10 @@ def create_rst(pydeck_example_file_name):
4041
deckgl_doc_url=deckgl_doc_url,
4142
)
4243
rst_path = os.path.join(GALLERY_DIR, asset_name + ".rst")
43-
f = open(rst_path, "w+")
44-
print("* Converted %s to %s" % (pydeck_example_file_name, rst_path))
45-
f.write(doc_source)
46-
f.close()
44+
with open(rst_path, "w") as f:
45+
print("* Converted %s to %s" % (pydeck_example_file_name, rst_path))
46+
f.write(doc_source)
47+
4748

4849

4950
def main():
Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,42 @@
11
import pydeck as pdk
22
import geopandas as gpd
33

4-
world = gpd.read_file(gpd.datasets.get_path("naturalearth_lowres"))
4+
world = gpd.read_file("https://naciscdn.org/naturalearth/110m/cultural/ne_110m_admin_0_countries.zip")
5+
# deck.gl is only compatible with WGS84
6+
world = world.to_crs("EPSG:4326")
7+
# Convert any multi polygons into individual polygons
8+
world = world.explode()
59

6-
centroids = gpd.GeoDataFrame()
7-
centroids["geometry"] = world.geometry.centroid
8-
centroids["name"] = world.name
10+
centroids = gpd.GeoDataFrame(geometry=world.geometry.centroid)
11+
centroids["name"] = world.NAME
912

1013
layers = [
14+
# Black background of the country polygons
1115
pdk.Layer(
1216
"GeoJsonLayer",
1317
data=world,
1418
get_fill_color=[0, 0, 0],
1519
),
20+
21+
# # Alternative way using PolygonLayer, should the above not work
22+
# pdk.Layer(
23+
# "PolygonLayer",
24+
# data=world,
25+
# get_polygon="geometry.coordinates",
26+
# get_fill_color=[0, 0, 0],
27+
# ),
28+
29+
30+
# Overlay country names at their centroids.
1631
pdk.Layer(
1732
"TextLayer",
1833
data=centroids,
34+
# Use this to get geometry coordinates out of a raw GeoDataFrame
1935
get_position="geometry.coordinates",
2036
get_size=16,
2137
get_color=[255, 255, 255],
2238
get_text="name",
2339
),
2440
]
2541

26-
pdk.Deck(layers, map_provider=None).to_html("geopandas_integration.html", css_background_color="cornflowerblue")
42+
pdk.Deck(layers, map_provider=None).to_html("geopandas_integration.html", css_background_color="cornflowerblue", open_browser=True)

bindings/pydeck/examples/polygon_layer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ def calculate_elevation(val):
5757
# Add sunlight shadow to the polygons
5858
sunlight = {
5959
"@@type": "_SunLight",
60-
"timestamp": 1564696800000, # Date.UTC(2019, 7, 1, 22),
60+
"timestamp": 1564696800000, # datetime.datetime(2019, 7, 1, 22, tzinfo=datetime.timezone.utc).timestamp() * 1000
6161
"color": [255, 255, 255],
6262
"intensity": 1.0,
6363
"_shadow": True,

bindings/pydeck/tests/fixtures.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
fixtures = {}
1212

1313
for fname in glob.glob(json_glob):
14-
fixture_text = open(fname).read()
14+
with open(fname) as file:
15+
fixture_text = file.read()
1516
fixture_name = os.path.basename(fname).replace(".json", "")
1617
fixtures[fixture_name] = fixture_text

docs/api-reference/carto/basemap.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ npm install @deck.gl/core @deck.gl/layers @deck.gl/carto
2222

2323
```js
2424
import {DeckGL} from '@deck.gl/react';
25-
import {StaticMap} from 'react-map-gl';
25+
import {Map} from 'react-map-gl/maplibre';
2626
import {BASEMAP} from '@deck.gl/carto';
2727
<DeckGL initialViewState={INITIAL_VIEW_STATE} controller={true} layers={layers}>
2828
<StaticMap mapStyle={BASEMAP.POSITRON} />

0 commit comments

Comments
 (0)