Commit Graph

12730 Commits

Author SHA1 Message Date
Thiago Marcos P. Santos
a5ef72a051 Use a shared scheduler on threads without a default scheduler
Render threads won't have a scheduler, so we create one that is
shared by all the maps rendering at this thread. The bad side
effect of this is that we need to wake up the render thread
to process events.

Mapbox GL should get rid of processing events on the render
thread. This solution is a workaround.
2018-06-15 19:33:27 +03:00
Julian Rex
144c167274 [macos] Tweaked change log for PR #12123 (#12146) 2018-06-14 09:50:32 -04:00
Łukasz Paczos
2096908933 [android] - added Android licenses make target 2018-06-14 11:55:13 +02:00
Łukasz Paczos
3584ee40f4 [android] - changelog for 6.2.0-beta.2
(cherry picked from commit ffb30bb)
2018-06-14 11:34:22 +02:00
Minh Nguyễn
ee790818d8 [ios, macos] Look more widely for IBDesignablesAgent
The IBDesignablesAgent helper process has been renamed for each platform as of Xcode 10, so cast a wider net when trying to detect it.
2018-06-13 11:49:21 -07:00
Thiago Marcos P. Santos
caecdc8482 [core] Use a getter for the BackendScope static variable
Fix a static variable initialization issue when dynamic loading
Mapbox GL Native.
2018-06-13 17:13:13 +03:00
Antonio Zugaldia
a8e7963168 [android] Remove support for Fabric (#12126)
* [android] remove fabric properties file
* [android] fabric.properties no longer present
* [android] fabric step in release.py no longer necessary
2018-06-12 14:36:23 -04:00
tobrun
aa16b90e2b [android] - move match stops conversion to Stop.toExpressionArray 2018-06-12 18:08:58 +02:00
Konstantin Käfer
0ecdbebb09 [core] consolidate database opening workflow
Before this change, we've tried to open the database in read/write, but not create mode. In situations where the database didn't exist yet, this logged an error to the console, and we proceeded to opening it again in read/write/create mode, which actually created the file. The reason we did this is so that we could detect really old caching databases from January 2016 in case a developer upgraded from an older SDK (iOS v3.1 and earlier, Android v3.2 and earlier) that didn't have https://github.com/mapbox/mapbox-gl-native/pull/3715 yet.

However, these error messages, while innocent, look scary in the console and some users suspect that it's a bug. This change opens the file directly in read/write/create mode, omitting the first failed attempt. To handle old cache databases, we're now deleting the `http_cache` table, which was the only table in those old databases, and create the new schema, rather than deleting the entire file and recreating the Database object. In most scenarios, this will lead to one fewer opening attempt, while the database migration will continue to work for the few users who upgrade all the way from a January 2016 SDK.

Additionally, this fixes a mismatch between the Qt and non-Qt implementation: Qt doesn't support opening a file in read/write mode without the create flag. This means that we've seen a different control flow on Qt compared to the non-Qt implementation when opening a database.
2018-06-12 17:41:16 +02:00
Konstantin Käfer
79394ee47d [core] remove unused flags from SQLite header 2018-06-12 17:41:16 +02:00
Konstantin Käfer
4477dd4119 [core] support moving Database object during a Transaction 2018-06-12 17:41:16 +02:00
Konstantin Käfer
a50493ea51 [test] verify log messages of OfflineDatabase tests 2018-06-12 17:41:16 +02:00
Konstantin Käfer
1a0f8e652f [core] send all SQLite log messages to the Info bucket and add error codes 2018-06-12 17:41:16 +02:00
Konstantin Käfer
2b2de05612 [core] allow logging error codes and formatting strings at the same time 2018-06-12 17:41:16 +02:00
Konstantin Käfer
bed86b98f1 [test] add partial message matching support to FixtureLog 2018-06-12 17:41:16 +02:00
Konstantin Käfer
1fbf3f2d48 [test] standardize on database file name and move I/O functions to util 2018-06-12 17:41:16 +02:00
Konstantin Käfer
31953c4c83 [test] pull out using namespace mbgl to reduce verbosity 2018-06-12 17:41:16 +02:00
Bruno de Oliveira Abinader
ae61b9d35f [Qt] Add QMapboxGL::layerIds() 2018-06-12 16:32:47 +03:00
Konstantin Käfer
9af5172f98 [core] fix undefined behavior in LineAtlas::addDash 2018-06-12 10:55:46 +02:00
Julian Rex
ed76230925 [ios,macos] Fixed crash in -[MGLStyle localizeLabelsIntoLocale:] on iOS 9.3 (#12123) 2018-06-11 15:23:40 -04:00
Konstantin Käfer
7a76eb23ea [build] Xcode 10 no longer exposes DEVELOPER_DIR to the compiler launcher
We'll have to extract the location of Xcode's developer dir from $PATH :(
2018-06-11 16:14:46 +02:00
Łukasz Paczos
0b883fdbfd [android] - ceil map dimensions 2018-06-11 15:45:02 +02:00
Bruno de Oliveira Abinader
95a6fcdd26 [qt] Fix asMapboxGLFeatureIdentifier iterator traversal 2018-06-11 14:45:30 +03:00
tobrun
5c01142b90 [android] - show amount failed tests and executed tests, integrate pixelratio in tests 2018-06-11 13:41:43 +02:00
Łukasz Paczos
871903bf62 [android] - bump snapshots building on master to 6.3.0 2018-06-11 12:46:27 +02:00
Łukasz Paczos
83dba74dd2 [android] - cleanup attrs 2018-06-11 12:45:59 +02:00
Łukasz Paczos
a38f490a29 [android] - added AnimatedSymbolLayerActivity back to the TestApp 2018-06-11 12:43:36 +02:00
Jason Wray
e24930a036 [ios] Support safe area in iosapp
* [ios] Refactor iosapp two-map option; fix constraint

* It's NO in objc; enable second map scale bar
2018-06-08 23:13:12 -07:00
Jason Wray
4edf6d6931 [ios, build] Bump CircleCI to Xcode 9.4
Keep macos-debug-qt5 on Xcode 9.3 for now.
2018-06-08 21:12:21 -07:00
Randall Lee
5a837c1702 [ios] Add custom events library start-up delay (#12088)
* [ios] Add custom delay 

Adds a custom delay to the events library initialization. This is only active when using certain profile configurations.

* [ios] events library version update to v0.4.1

* Update Events Library to include missing MGL_EXPORT

* Add MMEEventsService files to Events Lib Submodule

* Change delayTime type to int64_t
2018-06-08 14:39:43 -07:00
tobrun
531448828d [android] - ignore render tests from ignores.json 2018-06-08 11:29:14 +02:00
Ansis Brammanis
58b6c42f5d [core] always commit placement to fix #11795
Since placements will be committed even if they do not need the full
fade duration to fade features in, we need the new `fadeStartTime` to
keep track of how long we still need to fade. This is important because
if we fade too long we will trigger another placement and never stop
rendering.
2018-06-07 13:40:17 -04:00
Łukasz Paczos
0a15be07ae [android] - automate tag release 2018-06-07 17:21:09 +02:00
Łukasz Paczos
2c29d3b714 [android] - parsing fragment's xml attributes 2018-06-07 17:20:06 +02:00
Anand Thakker
2da57bd157 [core] Fix crash due to mixing legacy filters and expressions (#12065)
* Fix crash due to mixing legacy filters and expressions

In some cases, (invalid) nested filters that used a mix of legacy filter
syntax and expression syntax caused a crash due to a failure to
propagate parsing errors from deeper within the filter expression.

These errors went undetected in part because these conversion functions
returned unique_ptr<Expression> values (or vectors thereof), using
{nullptr} to represent a parsing error, but the core expression classes
expect unique_ptr<Expression> that are never null.

This changes over to using expression::ParseResult (aka
optional<unique_ptr<Expression>>), to represent conversion failure
the same way we do in the rest of the expression system.

* Fix clang 3.8 / gcc 4.9 issue
2018-06-06 11:26:08 -04:00
Chris Loer
6eee872955 [test,ios] Disable multiple mapsnapshotter test.
8 simultaneous mapsnapshotter test periodically deadlocks in simulator.
Also, increase timeouts to decrease chance of spurious test failure.
2018-06-04 11:32:20 -07:00
Chris Loer
050337fb68 [docs,ios,macos] Changelog entries for MGLMapSnapshotter fix. 2018-06-04 11:32:20 -07:00
Chris Loer
8fdcd76d6e [ios, macos] Use NSCAssert instead of assert. 2018-06-04 11:32:20 -07:00
Julian Rex
df4d8bab31 [ios, macos] Raise exception if MGLMapSnapshotter is used from thread without active run loop. 2018-06-04 11:32:20 -07:00
Chris Loer
af4efd4fa7 [ios, test] Add MGLMapSnapshotter integration tests. 2018-06-04 11:32:20 -07:00
Chris Loer
552b982a33 [ios, macos] Fix MGLMapSnapshotter concurrency bugs (issue #11827).
- Biggest change: when we apply the watermark on a background thread, don't capture self (turn most of the related instance methods into class methods)
- Don't call mbglMapSnapshotter->snapshot from a user-provided queue, since it's an asynchronous call anyway and starting it on the user's queue requires capturing self.
2018-06-04 11:32:20 -07:00
Ivo van Dongen
d928908ec8 [core] offline database - batch region resource inserts 2018-06-04 12:09:32 +03:00
Ivo van Dongen
4146d8d9be [core] offline database - move transaction scope to public api level 2018-06-04 12:09:32 +03:00
Konstantin Käfer
4943260d3b [build] cache Node + Nan headers globally, not build-specific 2018-06-04 10:43:21 +02: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
3ef67a827e [core] fix bogus unused variable with GCC 7 2018-06-04 10:43:21 +02:00
Konstantin Käfer
d66251234d [core] don't use floating point versions of pow/log
GLIBC 2.27 added new versioned symbols of powf and logf, while the double versions of pow and log remained stable.
Prefer the double version to avoid introducing a dependency on a newer version of GLIBC than strictly necessary.
See https://lists.gnu.org/archive/html/info-gnu/2018-02/msg00000.html
2018-06-04 10:43:21 +02:00
Konstantin Käfer
d232a7a6f3 [linux] link EGL backend against SwiftShader to avoid Mesa dependency 2018-06-04 10:43:21 +02:00
Konstantin Käfer
500cf3864e [linux] load cURL dynamically for wider compatibility 2018-06-04 10:43:21 +02:00
Konstantin Käfer
0b305aca7d [linux] statically link the C++ standard library
Most of the STL is header-only anyway, and statically linking it only has a small overhead. On the other hand, it allows us to build more portable executables.
2018-06-04 10:43:21 +02:00