Commit Graph

15430 Commits

Author SHA1 Message Date
Alexander Shalamov
6dc435f664 [ios][macos] Disable document generation for obsolete targets 2020-01-21 17:52:17 +03:00
Alexander Shalamov
9bb1f89803 [core] Update changelog 2020-01-15 15:02:11 +02:00
Alexander Shalamov
96f953c5b2 [test-runner] Add stretchable icons resources to cache 2020-01-15 15:02:11 +02:00
Alexander Shalamov
adda95c510 [metrics] Baselines for stretchable icons feature 2020-01-15 15:02:11 +02:00
Konstantin Käfer
5a1e4c6b81 [core] implement stretchable icons for icon-text-fit 2020-01-15 15:02:11 +02:00
Konstantin Käfer
027e803b72 [core] move icon rotation from shaping to quad generation to mirror JS 2020-01-15 15:02:11 +02:00
Konstantin Käfer
1342cb44b3 [core] Remove unused WritingMode from getIconQuads 2020-01-15 15:02:11 +02:00
Konstantin Käfer
7d8d13ce04 [core] Change ImagePosition from storing non-padded rect to padded rect to mirror the JS implementation 2020-01-15 15:02:11 +02:00
Konstantin Käfer
c80baa35b3 [core] add stretches + content to ImagePosition 2020-01-15 15:02:11 +02:00
Konstantin Käfer
47dc5727ab [core] parse stretchX, stretchX, and content from sprite JSON files 2020-01-15 15:02:11 +02:00
Konstantin Käfer
62b0f4cde2 [core] Add stretches and content to style::Image 2020-01-15 15:02:11 +02:00
Konstantin Käfer
4b171cccf1 [core] getGlyphQuad -> getGlyphQuads 2020-01-15 15:02:11 +02:00
Konstantin Käfer
d8d336160c [core] add pixelOffset and minFontScale to SymbolQuads 2020-01-15 15:02:11 +02:00
Konstantin Käfer
f82d4e6857 [core] Upgrade shaders and add new vertices to SymbolLayout 2020-01-15 15:02:11 +02:00
Mikhail Pozdnyakov
0652118d08 Add change log entry for PR #16106 2020-01-13 17:33:33 +02:00
Alexander Shalamov
6ddff19cee [android] Use new FileSourceManager interface
Use new interface for android jni adaptation classes.
2020-01-13 10:57:23 +02:00
Alexander Shalamov
1e6ad76516 [qt] Use new FileSourceManager interface 2020-01-13 10:57:23 +02:00
Alexander Shalamov
77c86bc6b9 [darwin] Use new FileSourceManager interface 2020-01-13 10:57:23 +02:00
Alexander Shalamov
c8024cf00d [node] Use new FileSourceManager interface 2020-01-13 10:57:23 +02:00
Alexander Shalamov
879c44f661 [core] Modularize FileSource codebase (#15768)
* [core] Introduce FileSourceManager and use it for default platform impl

  - Add `FileSourceManager` interface that provides access to `FileSource`
    instances and means of registering / unregistering `FileSource` factories
  - Split `DefaultFileSource` into smaller parts
  - Add `DatabaseFileSource` interface and it's default implementation
  - Remove inter-dependencies between concrete `FileSource` classes

* [build] Add files to next build system

* [core] Add generic property setters / getters

* [core] Remove setOnlineStatus from OnlineFileSource interface

* [core] Hide threading implementation details from DatabaseFileSource interface

* [core] Make DB file source methods virtual

* [core] Add documentation for DatabaseFileSource and rename one method

* [core] Use simple callback instead of ActorRef

* [core] Remove ActorRef from OnlineFileSource public header

* [core] Add callback to FileSource::forward async API

* [core] Pass OfflineRegionDefinition by value

* [core] Update tests to use modular file sources

* [core] Update unit tests

* [core] Update unit tests after rebase

* [core] Backport low prio fix for cached requests

* [core] Backport pack database

* [core] Return removed factory from unRegisterFileSourceFactory

* [core] Rename shadowed args in onlinefilesource

* [core] Remove simple std::function callback aliases

* [core] Expose online file source property keys in public header file

* [test-runner] Add proxy file source test runner

* [cache] Update mbgl-cache utility to use new file source

* [metrics] Rebaseline binary size metrics

* [offline] Update offline utility

* [core] Update changelog
2020-01-13 10:57:23 +02:00
Juha Alanen
86a3605349 [build][android] Fix CI bot that validates downstream API breakage 2020-01-10 17:19:30 +02:00
Juha Alanen
94df7ffc2d [build] Run Android unit test on Firebase 2020-01-10 17:19:30 +02:00
Juha Alanen
c7c441167d [test] Increase the threshold for Map.Offline test on Android 2020-01-10 17:19:30 +02:00
Juha Alanen
d3b5f06c8e [test] Skip number-format expression tests on Android 2020-01-10 17:19:30 +02:00
Juha Alanen
f4385a11d2 [android] Use stub HTTP file source for test runners 2020-01-10 17:19:30 +02:00
Juha Alanen
0b3942572e [test] Run unit tests as NativeActivity application on Android 2020-01-10 17:19:30 +02:00
Juha Alanen
f24e4ca068 [android] Fix a RunLoop bug where tasks are run only once
Do not remove tasks from the RunLoop in processRunnables(). Otherwise
the task is run only once.
2020-01-10 17:19:30 +02:00
Jordan Kiley
60a4b3eda3 [ios] Add native_apple_interface to ios.cmake (#16103)
* [ios] Add native_apple_interface to ios.cmake

* [ios] Use Xcode for next-macos-xcode11-release
2020-01-09 12:41:14 -08:00
tobrun
52edd9b43b [android] add CI bot that validates downstream API breakage 2020-01-09 16:09:51 +01:00
Mikhail Pozdnyakov
3ea459233a [core] Fix GeoJSONVTData ownership and life cycle
Before this change, the `GeoJSONVTData` instance was retained at the scheduled
lambda, which run on the worker thread represented by the `GeoJSONVTData::scheduler`
class member:

```
        std::weak_ptr<GeoJSONVTData> weak = shared_from_this();
        scheduler->scheduleAndReplyValue(
            [id, weak, this]() -> TileFeatures {
                if (auto self = weak.lock()) {
                    return impl.getTile(id.z, id.x, id.y).features;
                }
                return {};
            },
            fn);
```

It caused program termination in case `self` turned to be the last reference to `this`,
as the `std::thread` destructor was called from the thread it represented.

Now, only the `GeoJSONVTData::impl` class member is retained.
2020-01-09 16:52:13 +02:00
Peng Liu
236afc0395 [android][core] Add Map::latLngBoundsForCameraUnwrapped and jni binding for getVisibleCoordinateBounds. (#16069)
* [android] Add getVisibleCoordinateBounds method.
* Fix Map::latLngBoundsForCamera, add Android binding for getVisibleRegionBounds.
* Add unit tests for CameraToLatLngBoundsWithRotation and CameraToLatLngBoundsCrossDateLine.
* Move API breaking changes to a new method name latLngBoundsForCameraUnwrapped.
2020-01-09 15:53:23 +02:00
Thiago Marcos P. Santos
d3a5ed968c [build] Remove uneeded submodules
Not needed after the render tests are using the offline cache.
2020-01-08 16:48:44 +02:00
Thiago Marcos P. Santos
d148908cf1 [render-test] Make the manifest mandatory
At the moment we have an invalid path as default.
2020-01-08 14:58:05 +02:00
Thiago Marcos P. Santos
5a0f43037f [render-test] Remove positional argument
Not in use, for running a single test, use -f instead.
2020-01-08 14:58:05 +02:00
Thiago Marcos P. Santos
87013ad6e1 [metrics] Add new baselines
More accurate now since everything goes through the FileSource.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
d08bb49c34 [core] Make it possible to reopen the database read-only for testing
Needed for Android, because the database is in readonly filesystem
and also because it is annoying to see files modified every time we
run the tests.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
f306957a6d [metrics] Add 2 tests to the ignore list
Need further investigation on why these tests are failing
after we started to use the cache database.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
13c5505572 [metrics] Use the cache database instead of file paths for fixtures
Now that we use a cache, we no longer need "asset_path" and
"vendor_path".
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
af8092a86f [render-test] Use image from the cache for addImage operation
Instead of trying to read it from the filesystem.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
f0d2a2f636 [render-test] Effectively use the offline cache for fixtures 2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
26cfddaf47 [render-test] Add access token to the test manifest
Needed if we want to run tests online. Will default to the
MAPBOX_ACCESS_TOKEN environment value.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
4d815d8306 [render-test] Add flag to run tests online
And also make it not go to the network by setting the status
explicitly when when the -o flag is not passed.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
08f03b1bbb [render-test] Add cache database path to the manifest
A path relative to the manifest pointing at the data cache.
2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
502ddd3c8a [render-test] Fixed typo and remove unused 2020-01-08 13:07:12 +02:00
Thiago Marcos P. Santos
f14985f783 [tools] Added cache tool
A tool for adding resources to a cache database, important for
adding fixtures to our render test cache database.
2020-01-08 13:07:12 +02:00
Mikhail Pozdnyakov
c46f0baa57 Update change log and binary size metrics 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
0379615388 [core] Introduce CollisionIndex::getProjectedCollisionBoundaries()
In order to remove the repeated code.
2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
141e4e7935 [core] Introduce CollisionBoundaries and use it in CollisionIndex 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
a46b1a4e4f [test] Update render test expectations 2020-01-08 12:43:26 +02:00
Mikhail Pozdnyakov
cf2946c8ff [core] Use only the first variable anchor for the symbols intersecting tile borders
Do not try the following variable anchors, if the first variable anchor placement failed.
2020-01-08 12:43:26 +02:00