@macrostrat/cesium-martini 1.2.3 → 1.3.0

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.
package/.babelrc CHANGED
@@ -1,8 +1,3 @@
1
1
  {
2
- "presets": ["@babel/preset-env", "@babel/preset-typescript"],
3
- "plugins": [
4
- "@babel/plugin-proposal-nullish-coalescing-operator",
5
- "@babel/plugin-proposal-optional-chaining",
6
- "@babel/plugin-proposal-class-properties"
7
- ]
2
+ "presets": ["@babel/preset-env", "@babel/preset-typescript"]
8
3
  }
package/.env.example ADDED
@@ -0,0 +1 @@
1
+ MAPBOX_API_TOKEN='<your_mapbox_api_token>'
package/.gitmodules CHANGED
@@ -1,3 +1,3 @@
1
1
  [submodule "martini"]
2
2
  path = martini
3
- url = git://github.com/davenquinn/martini.git
3
+ url = https://github.com/davenquinn/martini.git
package/.npmrc ADDED
@@ -0,0 +1 @@
1
+ package-lock=false
package/README.md CHANGED
@@ -33,12 +33,30 @@ npm install --save @macrostrat/cesium-martini
33
33
 
34
34
  ## Development
35
35
 
36
+ As of version `1.3.x`, `cesium-martini` development is tested with the Yarn package manager.
37
+ Your mileage with `npm` may vary.
38
+
39
+ ### Quick start
40
+
41
+ 1. Clone the repository
42
+ 2. Run `git submodule update --init` to fetch the [martini](https://github.com/mapbox/martini) submodule
43
+ 2. Install dependencies with `yarn install`
44
+ 3. Build the package with `yarn run build`
45
+
36
46
  After cloning this repository, you can build the module (using Rollup) with
37
- `npm run build`, or build and watch for changes with `npm run watch`.
47
+ `yarn run build`, or build and watch for changes with `yarn run watch`.
48
+
49
+ ### Example applications
50
+
51
+ Several example applications are available in the [`examples/`](examples/) directory and runnable from the root project.
52
+ The main example is built with Vite and others are built with Webpack v5. As well as showing how to use this module, these examples contain configuration for bundling Cesium in each packaging environment.
38
53
 
39
54
  To run an example application, add `MAPBOX_API_TOKEN=<your-mapbox-token>` to a `.env` file.
40
- in the root of this repository. `npm run dev` bundles and runs the test
41
- application, which runs in the Webpack development server on `http://localhost:8080`.
55
+ in the root of this repository, and then start the appropriate example:
56
+
57
+ - `yarn run example` (Vite)
58
+ - `yarn run example:webpack` (Webpack)
59
+ - `yarn run example:webpack-react` (Webpack + React)
42
60
 
43
61
  Contributions in the form of bug reports and pull requests are welcome.
44
62
  These can be to add functionality (e.g. optional normal-map generation) or for
@@ -97,7 +115,7 @@ of Cesium would provide some guidance here.
97
115
 
98
116
  ### Outstanding bugs and issues
99
117
 
100
- - [ ] High-resolution `@2x` tiles are notionally supported but not well-tested.
118
+ - [x] High-resolution `@2x` tiles are notionally supported but not well-tested.
101
119
  - [ ] There is no formal testing framework to catch regressions.
102
120
  - [ ] TypeScript types are discarded on compilation rather than checked properly.
103
121
 
@@ -123,6 +141,33 @@ Pull requests for any and all of these priorities are appreciated!
123
141
 
124
142
  ## Changelog
125
143
 
144
+ ### `[1.3.0]`: September 2023
145
+
146
+ - Add compilation to ESModules, which allows the package to be used with modern bundlers like [**Vite**](https://vitejs.dev). *Contributed by [@fc](https://github.com/fc).*
147
+ - Change latitude-based scaling factor for tile error to improve fidelity at high latitudes.
148
+ - Remove `regenerator-runtime` from web-worker code, targeting modern platforms.
149
+
150
+ #### Development environment
151
+
152
+ We reorganized the development environment and examples through a set of interrelated changes, for a more modern overall design.
153
+
154
+ - Switched to `yarn` from `npm` as the default package manager
155
+ - Enabled Yarn Plug'n'Play for faster development
156
+ - Created a Vite example application
157
+ - Migrated Webpack examples to Webpack 5
158
+ - Moved all examples to the `examples/` directory as Yarn workspaces, enabling
159
+ separation of dependencies
160
+
161
+
162
+ ### `[1.2.0]`: November 2021
163
+
164
+ - Globe caps! (disable using the `fillPoles` option).
165
+ - Some fixes for efficiency
166
+ - Fixed small errors in tile occlusion code
167
+ - Added a `minZoom` configuration option to prevent excessive loading of low-resolution tiles
168
+ - Four (!) pull requests from [@stuarta0](https://github.com/stuarta0) to improve loading of non-Mapbox tilesets
169
+
170
+
126
171
  ### `[1.1.3]`: June 2021
127
172
 
128
173
  - Fix memory leak where `ArrayBuffer`s were retained due to console logging.
@@ -141,11 +186,3 @@ Pull requests for any and all of these priorities are appreciated!
141
186
  - More configurability with options like `detailScalar` and `minimumErrorLevel`.
142
187
  - Updated README and examples
143
188
  - Uses web workers for rapid tile generation off the main thread
144
-
145
- ### `[1.2.0]`: November 2020
146
-
147
- - Globe caps! (disable using the `fillPoles` option).
148
- - Some fixes for efficiency
149
- - Fixed small errors in tile occlusion code
150
- - Added a `minZoom` configuration option to prevent excessive loading of low-resolution tiles
151
- - Four (!) pull requests from [@stuarta0](https://github.com/stuarta0) to improve loading of non-Mapbox tilesets