Alexander Shalamov
d0dfd40b0a
[core] Add unit test for Style::Impl::onSpriteLoaded
2020-02-17 10:14:05 +02:00
Alexander Shalamov
b97f40469b
[core] Fix sprite sheet merging in Style::Impl::onSpriteLoaded
...
If we get a new sprite sheet from the server, we need to merge current
sprite sheet with a new one, while overwiting duplicates and keeping
old unique images in a style.
2020-02-17 10:14:05 +02:00
Kevin Li
02274e7601
[core] Implement 'in' expression. ( #16162 )
...
* Implement in.cpp
* Fix review comments.
* Add expression_equality test for 'in'
* Fix review comments.
* [core] Update changelog.
* [core] Update mapbox-gl-js
* [core] Ignore render-tests/debug/padding
* [core] Update baseline.
2020-02-15 17:36:57 +08:00
Alexander Shalamov
59294aaef3
[core] Update changelog
2020-02-14 17:34:00 +02:00
Alexander Shalamov
9e14572762
[core] Update baselines
2020-02-14 17:34:00 +02:00
Konstantin Käfer
a876c965a5
[core] Store SegmentVectors in ephemeral render objects
...
We used some shared SegmentVectors, e.g. for drawing raster or background tiles.
In longer running maps, this lead to resource accumulation. By storing the SegmentVectors
and the contained gfx::DrawScope objects, we ensure that resources get released
when the associated render objects vanish.
2020-02-14 17:34:00 +02:00
Karim Naaji
189ed4aac3
Add changelog entry
2020-02-14 12:56:54 +02:00
Karim Naaji
f3f0aefead
Apply new baselines
2020-02-14 12:56:54 +02:00
Karim Naaji
88da1ad6c7
Whitelist render-tests/line-dasharray/zero-length-gap
2020-02-14 12:56:54 +02:00
Karim Naaji
21107e0c1a
Port line-dasharray fix from gl-js
...
* Fix artifact for zero-lenghted dash array
Fixes issue https://github.com/mapbox/mapbox-gl-js/issues/9213 and add
render test for coverage around 0-length dash arrays
Update distance field generation for regular dashes as follows:
1. Compute the dash array ranges and stretch location along the distance field
2. Collapse any 0-length distance field range
3. Collapse neighbouring same-type parts into single part
* combine consecutive dashes and parts
https://github.com/mapbox/mapbox-gl-js/pull/9246
https://github.com/mapbox/mapbox-gl-native/issues/16181
2020-02-14 12:56:54 +02:00
Juha Alanen
bf8bde5029
[build] Bump minimum iOS version to 12.0
2020-02-14 12:01:52 +02:00
Juha Alanen
112fa0dccf
[build] Cleanup CircleCI configuration
...
The parameters were moved to iOS cmake file, so now the RenderTestApp
can be built with cmake.
2020-02-14 12:01:52 +02:00
Juha Alanen
6d815401b1
[test-runner] Share common code between iOS test runners
2020-02-14 12:01:52 +02:00
Juha Alanen
f44cfa2fbc
[build] Build iOS release for iPhone instead of simulator
2020-02-14 12:01:52 +02:00
Juha Alanen
8f8eb46c7c
[build] Use all available cores for macOS CI builds
2020-02-14 12:01:52 +02:00
Juha Alanen
7a9f8027ac
[build] Enable ccache for Xcode iOS builds
2020-02-14 12:01:52 +02:00
Juha Alanen
af7428254b
[build] Enable iOS unit test runner in CI
2020-02-14 12:01:52 +02:00
Juha Alanen
632c5f9d4c
[test] Add iOS unit test runner
2020-02-14 12:01:52 +02:00
Juha Alanen
a4c4de2828
[test] Fix failing tests on iOS
2020-02-14 12:01:52 +02:00
Alexander Shalamov
ddc7930b27
[core] Update changelog
2020-02-14 11:54:02 +02:00
Alexander Shalamov
f42b5e94ed
[core] Add unit test
2020-02-14 11:54:02 +02:00
Alexander Shalamov
89eab0530d
[core] Set priorData from cache only if resource is useable
...
In cases when cached resource is useable, yet don't have an expiration
timestamp, we provided data to the requester from the cache and the same
data was returned once 304 response was received from the network.
2020-02-14 11:54:02 +02:00
Alexander Shalamov
06f7951490
Revert "Add change log entry"
...
This reverts commit d3535f1ca9 .
2020-02-14 11:54:02 +02:00
Alexander Shalamov
12d350ec3c
Revert "[core] Fix excessive onSpriteLoaded() notifications"
...
This reverts commit 80cb05420a .
2020-02-14 11:54:02 +02:00
Mikhail Pozdnyakov
d3535f1ca9
Add change log entry
2020-02-12 20:49:26 +02:00
Mikhail Pozdnyakov
80cb05420a
[core] Fix excessive onSpriteLoaded() notifications
...
What happened:
The excessive `onSpriteLoaded()` notifications were caused by the trick inside `OnlineFileRequest::completed()` implemenation,
which causes receving of two file source updates pointing to the *same* data in case the network response is `notModified` and
the local storage has the sprite sheet already stored inside.
In the SpriteLoader` implementation, it resulted in 2 extra `parseSprite()` calls and 2 extra `onSpriteLoaded()` notifications.
Then, the excessive `onSpriteLoaded()` notifications affected style images and all the unnecessarily added image dupes (btw,
the amount of these dupes `= 2 * number of style images`) were treated by the `RenderOrchestrator` as *updated* images.
Further, `RenderOrchestrator` called `ImageManager::updateImage()` for the updated images and the `ImageManager` populated the
`updatedImageVersions` map.
Finally, at every frame all the geometry tiles iterated through the `updatedImageVersions` to check whether their uploaded
textures needed patching.
All the mentioned above had a negative performance impact.
The fix:
Now, `SpriteLoader` sends `onSpriteLoaded()` notifications only if the data in the file source response is different comparing
to the existing one.
2020-02-12 20:49:26 +02:00
Alexander Shalamov
efb7dd0b7b
[core] Use atomic int in Map.PrefetchDelta* unit tests
2020-02-12 20:43:24 +02:00
zmiao
acd45edd2f
Add Changelog entry for within expression usage with layout property
2020-02-12 17:35:18 +02:00
zmiao
8e0c9671ba
[metrics] Add new metric baselines
2020-02-12 17:35:18 +02:00
zmiao
759dfe8bf6
[core] Support [within expression] with layout property
2020-02-12 17:35:18 +02:00
zmiao
c57af51842
Add Changelog entry for within expression usage with paint property and filter expression
2020-02-12 12:24:05 +02:00
zmiao
7fda6ecad3
reserve vecotr capacity, fix for points within polygon
...
Address review findings/nit
2020-02-12 12:24:05 +02:00
zmiao
4579e1d6c4
Add metric baselines for within expression/render tests
2020-02-12 12:24:05 +02:00
zmiao
f4250afd24
Update baselines
2020-02-12 12:24:05 +02:00
zmiao
2963afa010
Add support for expression test
...
Fix polygon within algorithm
Add Unit tests
Fix incorrect metrics folder for ios-render-test-runner job
2020-02-12 12:24:05 +02:00
zmiao
1bd2ccf239
Enable within expression with Filter
...
add canonical as pointer
fix review findings
2020-02-12 12:24:05 +02:00
zmiao
3e99c08ea6
Enable parse within expression
...
Add geometry type checker
2020-02-12 12:24:05 +02:00
Ansis Brammanis
4f18d5fa92
[core] sort symbols using symbol-sort-key before placement ( #16023 )
...
fix #15964
partially port mapbox/mapbox-gl-js#9054
2020-02-11 11:24:14 -05:00
Mikhail Pozdnyakov
98f99e0743
Update metrics
2020-02-11 14:34:46 +02:00
Mikhail Pozdnyakov
c4bbc994da
Add change log entries
2020-02-11 14:34:46 +02:00
Mikhail Pozdnyakov
3bd2d0e4d7
style::Style::getImage() returns optional<style::Image>
2020-02-11 14:34:46 +02:00
Mikhail Pozdnyakov
f38330a9f5
Add Style.AddRemoveImage unit test
2020-02-11 14:34:46 +02:00
Mikhail Pozdnyakov
64e2bcdf43
[core] Loading images to style optimization
...
This change enables attaching images to the style with batches and
avoids massive re-allocations. Thus, it improves UI performance
especially at start-up time.
2020-02-11 14:34:46 +02:00
zmiao
146e0ac8ed
Add new metric baselines
2020-02-11 11:05:18 +02:00
zmiao
7424c4eecb
Bump GL-JS
...
Backport GL-JS fix 'Hide glyphs behind the camera'(https://github.com/mapbox/mapbox-gl-js/pull/9229 )
2020-02-11 11:05:18 +02:00
Alexander Shalamov
e0b1642825
[core] Update changelog
2020-02-11 10:40:30 +02:00
Alexander Shalamov
0475c89140
[core] Update baselines
2020-02-11 10:40:30 +02:00
Alexander Shalamov
3b1a8b8c30
[core] Add unit test for Source::setPrefetchZoomDelta
...
Test verifies that tile pyramid will request only 4 tiles for
current zoom level, if Source's setPrefetchZoomDelta is 0.
2020-02-11 10:40:30 +02:00
Alexander Shalamov
07c0c63fda
[core] Clear tile pyramid for custom source only if there is a significant change
...
Clear tile pyramid only if updated source has different tile options,
zoom range or initialization state for a custom tile loader.
2020-02-11 10:40:30 +02:00
Alexander Shalamov
ac50f5275b
[core] Make CustomGeometrySource::TileOptions immutable
2020-02-11 10:40:30 +02:00