Commit Graph

388 Commits

Author SHA1 Message Date
John Firebaugh
2c5bebbdd8 [node] Update documentation for publishing process (#12500)
* Update node publishing process

* publish instruction separated into steps
2018-07-31 08:52:33 -07:00
John Firebaugh
f149951f0f [build] Remove obsolete bitrise.yml files 2018-07-24 14:28:29 -07:00
Chris Loer
da5966b932 [test] Add native ignore for symbol-cross-fade test. 2018-07-23 13:33:27 -07:00
Konstantin Käfer
f3b5902f05 [node] prevent scheduled renderFinished() calls from running when render is canceled
Reverts d5aff71 (#11948) and implements an alternative solution.

Even with the previous fix applied, we were calling `renderFinished()` directly when the render was canceled. This led to the following scenario (all on the main thread):
- `Map::renderStill()` callback is called, `uv_async_send` schedules a call to `renderFinished()`.
- `NodeMap::cancel()` destroys the map object, and calls `renderFinished()` directly, which cleans up the request
- `NodeMap::startRender()` is called to schedule a _new_ render, which means that a new callback will be set
- The `uv_async_t` fires and calls `renderFinished` again:
   - We don't return early as intended by the fix in #11948 since a new callback/`req` object is now available.
   - Since neither error nor image has been set, we'll see a `Didn't get an image` error message.
   - We call the callback with the error. In scenario where we're reusing Map objects, we will start a new render, which will now trigger the `Map is currently rendering an image` error in `Map::renderStill`, and the map object enters a circle in which it will now fail repeatedly with this error.

This commit fixes the issue by completely removing the existing `uv_async_t` handle that could have a scheduled call, and replacing it with a fresh instance of an `uv_async_t` handle.
2018-07-13 10:28:26 +02:00
Chris Loer
310d844b5f [docs] Add changelog entries for #12294 2018-07-05 11:56:38 -07:00
Chris Loer
d734f670e8 [core] Fix sort order for queryRenderedFeatures when features are filtered.
Fixes issue #12104.
2018-07-03 15:28:00 -07:00
Chris Loer
10a6d1bf23 [ios, macos] Try to make darwin "resolvedLocale" BCP 47 compliant 2018-07-03 10:03:05 -07:00
Chris Loer
a5b0fe8a75 [test] Remove "collator" ignores 2018-07-03 10:03:05 -07:00
Chris Loer
9ff5d34ef2 [core] Introduce "collator" expressions
Cross platform parsing and evaluation code.
2018-07-03 10:03:05 -07:00
Dane Springmeyer
a70727245c Change error message with invalid render usage (#12265)
* Change error message with invalid render usage

This change disambiguates this error condition with a different error with the same error message at 789baf4c1f/src/mbgl/map/map.cpp (L157-L160)

* fix test expectation
2018-06-29 22:17:29 -07:00
John Firebaugh
ab5e496219 [tests] Replaced the ZoomHistory test with a render test 2018-06-28 16:31:48 -07:00
John Firebaugh
eabf209bad [tests] Remove ignores for implemented features 2018-06-27 20:52:51 -07:00
John Firebaugh
37e71666d8 [node] Build and publish for node 6.x, 8.x, and 10.x
Note that we're still only testing the 6.x ABI (48).
2018-06-26 17:20:46 -07:00
Konstantin Käfer
488b68c693 [node] add compatibility with node-pre-gyp binary publishing 2018-06-26 10:51:56 -07:00
Molly Lloyd
e1af62e87d [core] add raster-resampling property (#12176)
* update style-code for raster-resampling

* implement user-defined raster-resampling

* invert filter condition

* raster-resampling -> raster-resampling-mode for darwin language conventions
2018-06-21 14:37:17 -07:00
Molly Lloyd
325ad2f711 [core] port zero line-width fix from gl-js (#12175)
* port zero line-width fix from gl-js

* ignore transition test

* ignore feature-state tests
2018-06-19 13:46:12 -07:00
Konstantin Käfer
9ebb504164 [node] hide all symbols from the Node.js addons 2018-06-04 10:43:21 +02:00
Konstantin Käfer
162ee6f4e8 [node] fixup bad merge 2018-05-22 12:19:40 +02:00
Konstantin Käfer
d1a266b3e6 [node] allow building all ABIs at once 2018-05-22 11:17:01 +02:00
Konstantin Käfer
973aa963f9 [node] move to Nan 2.10.0 2018-05-22 11:17:01 +02:00
Konstantin Käfer
d5aff7182d [node] prevent race condition for renderFinished 2018-05-22 11:02:51 +02:00
John Firebaugh
b2fabe5eef [core] Align match behavior with case/==
Makes `["match", ["get", k], label, match, otherwise]` equivalent to `["case", ["==", ["get", k], label], match, otherwise]`. This changes the behavior of match expressions where the runtime type of the input does not match the type of the labels: previously such expressions produced a runtime type error and then fell back to the property default value; now they produce the fallback value from the match expression.
2018-05-18 12:10:31 -07:00
Lauren Budorick
62c875e01b [core] Rework spec function/expression taxonomy
Ports https://github.com/mapbox/mapbox-gl-js/pull/6521, updating codegen scripts to parse new expression taxonomy.
2018-05-14 12:38:14 -07:00
John Firebaugh
9a4b806fa8 [docs] Make per-platform installation docs self-contained
I've seen several issues where users followed platform-specific install docs, but were unaware of additional prerequisites spelled out in the top-level INSTALL.md. So let's try making each platform's installation documentation self contained.
2018-04-30 13:10:31 -07:00
Chris Loer
65a4ee2373 [core] Port is-supported-script to native.
Native port is much simpler because RTL text support is always enabled.
2018-04-27 16:05:14 -07:00
Chris Loer
1a39d7db48 [core] Remove circle-pitch-scale test ignores. 2018-04-26 18:03:17 -04:00
Chris Loer
60cce56d46 Bump GL JS pin to get tests for global symbol querying.
- Pulls over an update to line.vertex.glsl (looks like a no-op?)
 - Add test ignores for collator, is-supported-script, line-gradient
 - Exclude collator, is-supported-script, line-gradient from code generation.
2018-04-25 14:39:03 -07:00
Chris Loer
a62745edf9 Port global symbol query from GL JS:
- Symbol querying is now global instead of per-tile
 - Symbols that bleed over tile boundaries no longer missed in queries
 - Symbol results now sorted based on rendering order (ie overlapping symbols change their sort order when a bearing change causes their render order to change)
 - Placement::retainedQueryData now responsible for maintaining symbol querying data for buckets that may no longer be in the TilePyramid.
2018-04-25 14:39:03 -07:00
Anand Thakker
352d63d2ce Don't enforce ["zoom"] constraints for filters (#11672)
* Don't enforce ["zoom"] constraints for filters

Fixes #11594

* Add a couple of comments

* Fix ambiguous constructor call

* ParsingContext(optional<Type>) => ParsingContext(Type)
2018-04-12 16:02:48 -04:00
Łukasz Paczos
22b4ef1f4b Update layer immediately when changing its max/min zoom level (#11399)
* [android][core] update layer immediately when changing it's max/min zoom

* [core] node bindings for layer zoom range
2018-04-12 10:42:14 +02:00
Anand Thakker
8d26f74091 Fix style parsing bug for constant expressions (#11606)
* Fix style parsing bug for constant expressions

Closes #10849

* Ignore tests for unported GL JS change

Refs https://github.com/mapbox/mapbox-gl-js/pull/6429

* Fuller fix

* Update mapbox-gl-js
2018-04-09 17:59:18 -04:00
Anand Thakker
c50a74d1c2 Remove unused lambda capture (#11602)
Fixes #11588
2018-04-05 10:57:45 -04:00
John Firebaugh
9499a2bda7 [core] Don't resolve tokens after evaluating a text-field or icon-image expression (#11509) 2018-03-22 16:44:12 -07:00
Ansis Brammanis
ef1dcc0d5b [core] don't hide icons if text is an empty string 2018-03-19 15:31:38 -07:00
John Firebaugh
449c68e329 [core] Update mapbox-gl-js 2018-03-14 15:26:28 -07:00
Anand Thakker
8ed540ea7b Port fix for "at" expression off-by-1 error (#11375)
* Port fix for "at" expression off-by-1 error

Refs https://github.com/mapbox/mapbox-gl-js/pull/6269

* Consistency

* Add ignores for symbol positiong differences in real-world tests
2018-03-02 16:38:46 -05:00
Chris Loer
936d92a411 [test] Native ignore for GL JS issue #6160 2018-02-28 16:09:09 -08:00
Chris Loer
3d591ae2a2 [test] Native expression test support for:
- Round-tripping expressions through serialization and checking that outputs don't change
 - Checking expression serialization against expected value from fixture
2018-02-28 16:09:09 -08:00
Chris Loer
75feda12f1 [core] Implement Expression::serialize()
Issue #10714
- Each expression stores its operator as a string, and default serialization is [operator, serialize(child1), ...]
- Custom implementations of `serialize` for Expression types that don't follow the pattern
- expression::Value -> mbgl::Value converter
- node_expression bindings to expose `serialize`
2018-02-28 16:09:09 -08:00
Chris Loer
8e1fc8ff38 [core, node] Hold on to map handle during NodeMap::request.
Avoids a potential crash if garbage collection happens in the middle of a call to NodeMap::request from a map that's eligible for GC.
Fixes issue #11281
2018-02-23 18:05:13 -08:00
Vladimir Agafonkin
82de856c94 [core, ios, macos, android, node] Heatmap layer (#11046)
Co-Authored-By: Konstantin Käfer <mail@kkaefer.com>
Co-Authored-By: Anand Thakker <anandthakker@users.noreply.github.com>
Co-Authored-By: Minh Nguyễn <1ec5@users.noreply.github.com>
2018-02-15 17:38:23 +02:00
Molly Lloyd
e03f7a4d1f [core] align raster-dem tiles to pixel grid (#11119)
* align raster-dem tiles to pixel grid

* revert ignored hillshade tests
2018-02-06 10:56:42 -08:00
Chris Loer
f7cae4c3e4 [test] Ignore slightly-different collision circles on native. 2018-02-06 08:46:15 -08:00
Chris Loer
2a05a832b2 [test] Temporarily ignore hillshade tests pending PR #11119. 2018-02-06 08:46:15 -08:00
Konstantin Käfer
d511f74ce4 [node] add setLight support 2018-01-24 16:35:47 -08:00
Konstantin Käfer
2502a3ab2b [core] update mapbox-gl-js submodule pin
* disables transition render test (transitions are not supported with Still image rendering in Node.js)
* removes support for hillshade-illumniation-direction-transition
2018-01-24 15:41:22 -08:00
Molly Lloyd
f3294200c6 [core] add raster-dem source type and hillshade layer type (#10642) 2018-01-23 10:49:23 -08:00
John Firebaugh
7c0e8fd980 [core] Remove two obsolete ignores 2018-01-11 12:25:26 -08:00
John Firebaugh
76ed5079a5 [core, ios, macos, android] Add data-driven-styling support for text-font 2018-01-10 15:31:12 -08:00
John Firebaugh
c9da6e4959 [core] Account for circle-stroke-width in queryRenderedFeatures 2018-01-10 14:22:44 -08:00