Commit Graph

12861 Commits

Author SHA1 Message Date
tobrun
aeb85dbd8c [android] - bump used gradle tools version 2018-07-17 11:19:23 +02:00
Asheem Mamoowala
07b0021ce3 Add fuzz tests for TileCover and fix out of bounds access crash. 2018-07-16 17:11:03 -07:00
Asheem Mamoowala
15019425be Better describe the streaming tilecover algorithm in comments 2018-07-16 17:11:03 -07:00
Asheem Mamoowala
b2ff57c09c Fix TileCover asserts. The create_bounds_towards_* methods were treating
all point arrays as rings. Simplify the logic to only compare against
the next pt in the bound.
2018-07-16 17:11:03 -07:00
Konstantin Käfer
77894f0586 [core] treat parsedate as C++ file to remove C build rules
It is already wrapped with #ifdef __cplusplus extern "C", so we can safely compile it as C++ but retain C linkage
2018-07-16 18:25:09 +02:00
Konstantin Käfer
561e55eb6c [core] make the offline DB schema a regular include file 2018-07-16 18:24:51 +02:00
Tobrun
6c9b627eaa [android] - bump kotlin, timber and okhttp to most recent stable versions 2018-07-16 15:37:52 +02:00
John Firebaugh
a6727921fc [core] Convert legacy functions directly to expressions 2018-07-13 13:37:27 -07:00
John Firebaugh
bea8f8d177 [build] Use CIRCLE_MERGE_BASE environment variable 2018-07-13 12:26:40 -07:00
John Firebaugh
63d6bca609 [build] Show diff to prior size 2018-07-13 12:26:40 -07:00
John Firebaugh
5623fa1b22 [build] Reduce ccache max size 2018-07-13 11:50:39 -07:00
John Firebaugh
74ef93ab4f [build] Improve ccache freshness
Save a fresh ccache on every build by including (a checksum of) the current revision in the cache key. In the worst case, saving the cache appears to take ~1:30 for android-release; other builds appear to take a small amount of time compared to the time saved by having a fresh cache, versus a cache that's up to a week old.

Restore caches in the following priority order (all scoped to current architecture and job):

1. The cache for the current branch and revision.

2. If that doesn't exist, the most recent cache for the current branch.

3. If that doesn't exist, the cache for the parent branch and merge base, where "parent branch" means the base branch of the pull request specified by $CIRCLE_PULL_REQUEST (obtained from the GitHub API), and "merge base" means the revision returned by `git merge-base` when given the parent branch and $CIRCLE_BRANCH (obtained by executing that shell command). The intent here is to start a newly created branch off with the most relevant cache from its parent branch.

4. If that doesn't exist, the most recent cache for the parent branch.

5. If that doesn't exist, the most recent cache for master.

6. If that doesn't exist, use the most recent cache for any build.

We cannot use the branch names or revisions themselves as key segments, because CircleCI lacks a way to interpolate arbitrary environment variables into the cache key name. Instead, we write the desired value into a file and use the `{{ checksum "filename" }}` syntax.
2018-07-13 11:50:39 -07:00
John Firebaugh
3896a65c8e [build] Separate node_modules, mason_packages, and cmake caches 2018-07-13 11:50:39 -07:00
John Firebaugh
ca9ba9cb43 [build] Move all mason_use statements to a single file
So its checksum can be used in a CI cache key name.
2018-07-13 11:50:39 -07:00
tobrun
c6e43fa482 [android] - add geojson regression tests for java method look up from JNI 2018-07-13 11:04:18 +02: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
John Firebaugh
f7e2fe5e38 [core] Simplify Value conversions
Use a single template function for each of {to,from}ExpressionValue, always dispatching to ValueConverter.

Remove unused ValueConverter::ExpressionType typedefs.
2018-07-12 09:42:55 -07:00
tobrun
e16c964465 [android] - add convenience method for destroyed state on MapView, can be used to determine if an asynchrous result should be set on map. 2018-07-12 10:46:57 +02:00
tobrun
b79b971f56 [android] - validate if gesture detector is able to handle gesture 2018-07-12 10:46:40 +02:00
Jason Wray
bf69f1a2d3 [ios] Adjust iOS nightly build to run later
CircleCI’s cron jobs run on UTC, while their containers are set to US-Pacific. This change pushes back the `nightly` workflow from 12AM UTC (5PM PDT) to 5AM UTC (10PM PDT).

/cc @julianrex @fabian-guerra
2018-07-11 15:40:13 -04:00
Jason Wray
3ba1f3176e [ios] Update podspecs for ios-v4.2.0-beta.1 2018-07-11 12:01:16 -04:00
Randall Lee
673d75e6b3 [ios] Update events submodule to include RN override (#12360)
React native user agent override for internal use.
2018-07-10 16:34:59 -04:00
Jason Wray
124faee638 [ios, build] Upload nightly iOS release build on CircleCI 2018-07-10 13:20:08 -04:00
Minh Nguyễn
a93dca349d [macos] Import GeoJSON
Added an Import command to the File menu for adding the contents of a GeoJSON file to the map. simplestyle-spec formatting is applied to layers via a handful of expressions. Dropped pins include any details provided through simplestyle-spec properties.
2018-07-10 10:17:56 -07:00
Minh Nguyễn
192c611468 [ios] Deduplicated library dependency references 2018-07-10 09:28:03 -07:00
Minh Nguyễn
ec8ac3c64f [ios, macos] Allow unwrapped arguments in match expressions 2018-07-09 16:03:03 -07:00
Minh Nguyễn
f11ab91fc4 [ios, macos] Convert predicate options to collators 2018-07-09 16:02:40 -07:00
Minh Nguyễn
d6a454ba8e [core] Comparison expressions can have 4th member
When detecting an expression used as a filter, relax the check for expressions to allow comparison expressions to contain a fourth member for the collator.
2018-07-09 16:02:40 -07:00
Jason Wray
f3718ff293 [qt, build] Rename Qt builds to follow convention
CI job naming convention is: <platform>-<optional-descriptor>-<buildtype>
2018-07-09 15:22:59 -04:00
Jason Wray
ba4b8464dd [node, build] Rename Node builds to follow convention
CI job naming convention is: <platform>-<optional-descriptor>-<buildtype>
2018-07-09 15:22:59 -04:00
Bruno de Oliveira Abinader
d634973c8a [glfw] Use Map::moveBy in GLFWView::onMouseMove 2018-07-09 22:02:49 +03:00
Bruno de Oliveira Abinader
68bed94cd1 [core] Harden Projection::project() 2018-07-09 22:02:49 +03:00
Jason Wray
37e680c66b [ios, build] Strip symbols before recording size metrics 2018-07-09 12:31:43 -04:00
Łukasz Paczos
8817f05699 [android] - bumped telemetry to v3.1.4 2018-07-09 18:12:17 +02:00
Julian Rex
3710ef8810 [iOS] Update annotation view touch handling (with offsets) (#12234) 2018-07-09 10:01:11 -04:00
tobrun
e08ee7338a [android] - remove unique LatLng validation of LatLngBounds builder 2018-07-09 15:00:57 +02:00
tobrun
bf7792eae0 [android] - fix jni method lookup of GeometryCollection accessor geometries, add regression test 2018-07-09 12:51:34 +02:00
Minh Nguyễn
8b2135b249 [macos] Updated changelog 2018-07-06 17:01:08 -07:00
Jason Wray
19605cb4b4 [ios, macos] Remove duplicate MGLTileSourceOptionDEMEncoding declaration 2018-07-06 16:53:06 -04:00
Konstantin Käfer
cde7096e1c [build] add Node as executable for profiling action
This is now the same as the Run action
2018-07-06 16:00:43 +02:00
Łukasz Paczos
282f89a9f3 [android] - added DraggableMarkerActivity 2018-07-06 13:22:08 +02:00
Łukasz Paczos
3bd24e655f [android] - added Kotlin dependencies to the test app 2018-07-06 13:22:08 +02:00
Jason Wray
ec472cb45a [ios] Update podspecs for ios-v4.2.0-alpha.2 2018-07-05 16:36:09 -04:00
Jason Wray
84c0e3f436 [ios] Update changelog for ios-v4.2.0-alpha.2 2018-07-05 16:36:07 -04:00
Chris Loer
310d844b5f [docs] Add changelog entries for #12294 2018-07-05 11:56:38 -07:00
Chris Loer
c9924ae9d5 [core] Only update collision debug data if debug mode is on
Fixes issue #12294: unused debug vertices would pile up in buckets over course of tile's lifetime.
2018-07-05 11:56:38 -07:00
Tobrun
aa07dc5461 [android] - update changelog for release v6.3.0-alpha.2 2018-07-05 19:53:04 +02:00
Julian Rex
56ab3318a3 [ios] [macos] Added -[MGLSnapshot coordinateForPoint:] and associated test. 2018-07-05 18:50:21 +02:00
tobrun
99f9787cc4 [core] - add LatLng for screencoordinate to mapsnapshotter 2018-07-05 18:50:21 +02:00
tobrun
473dd9b23f [android] - add LatLng for pixel conversion feature to MapSnapshotter 2018-07-05 18:50:21 +02:00