For a given absolute or relative path, measure the size of the file.
This is useful for measuring if the cache has increased as expected
after moving a camera or decreased after cleaning up.
In a more hackish manner, could be used for collecting binary size
statistics of shared libraries.
Unlike icons, pattern changes are not caught with
style-diff meaning that the existing request could
be from the previous style and we cannot coalesce
requests for them.
Before this change, the found paths to the expected images
erroneously included the path to the `metrics.json` file
(if this file was present) leading to raising of an
unhandled exception.
This commit refactors `utils::ThreadPool` into a template
`ThreadedScheduler` class and provides aux type aliases.
So that it is possible to obtain a sequenced schedule,where
all the scheduled tasks are guarantied to be executed
consequently.
The sequenced lightweight scheduler is required by both the
orchestration thread and the refactored `FileSource` implementation.
* [ios] Add mapView content inset tests.
* [ios] Fix an issue that caused the ornaments ignore the contentInsets.
Fixed an issue that caused ornaments ignore the contentInset. Added a new property automaticallyAdjustContentInset that has the same purpose as UIViewController. automaticallyAdjustsScrollViewInsets. This was changed due to the latter being deprecated.
* [ios] Fix automaticallyAdjustsScrollViewInsets legacy behavior.
The property automaticallyAdjustsScrollViewInsets overrode automaticallyAdjustsScrollViewInsets which caused a breaking change. This is fixed to consider the legacy property when calculating the content insets and added tests for both cases.
* [ios] Fix the contentInset value after adding padding to the camera.
Fixed an issue that caused a discrepancy between the contentInset in MGLMapView and the padding in the transformation state.
When padding is passed through methods such as setCamera it’s persisted. This fix resets the contentInsets.
* [ios] Fix pinch test.
* [ios] Update automaticallyAdjustsScrollViewInsets name and documentation.
* [ios] Update changelog.
* [ios] Add failing tests for scale bar updates.
* [ios] Remove borderLayer
* [ios] Ensure bar sections have non-fractional width
* [ios] Add RTL override
* [ios] Update constraints/layout
* [ios] Invalidate scalebars size, after the parent's layout has happened (to ensure the view dimensions are correct when re-laying out the scale bar.
* [ios] Refactor layout
* [ios] Update changelog / remove commented code.
* [ios] Remove whitespace
* [ios] Stop integration tests asserting (when scale bar is hidden). Also reduces the # of calculations (since updateConstraints and layoutSubviews can be called outside of our control).
* [ios] Moves declaration of properties for testing.
* [ios] Removes redundant property attribute
* [ios] Updated change log
RenderOrchestrator holds a vector of ordered rendered layers,
in order to minimize calling of `getRenderLayer()`, which
could be quite expensive as it calculates hash of the layer Id.
This change improves orchestration performance in particular
for the styles that have multiple sources.
The `API_renderStill_multiple_sources` benchmark runs
approximately 70% faster with the changes applied.
The projected meters per pixel calculation is not dependent on the pixel ratio but rather the tile size, therefore, the division when fetching the value is not necessary.