Commit Graph

597 Commits

Author SHA1 Message Date
Nadia Barbosa
d34f0f0ef1 [build] Publish Android/iOS binary sizes to S3 2019-02-25 12:36:26 -08:00
Konstantin Käfer
6f60ccf08e [build] generate header maps instead of -files.txt 2019-01-09 10:26:53 +01:00
Chris Loer
d3bb518976 [docs] Changelog entry for offline CJK glyph control. 2018-12-21 15:13:48 -08:00
Konstantin Käfer
1d8235f5b8 [build] rework platform/default directory and add -files.txt for vendored libs 2018-12-14 11:03:03 +01:00
Chris Loer
70c2d5a4ca [core, darwin, android] Add onDidEnterIdle to MapObserver.
didEnterIdle fires whenever render completes and no repaint is scheduled.
2018-12-11 11:46:16 -08:00
Vladimir Agafonkin
c89daf6bf1 Add basic shader minification (#13500)
* add basic shader minification (same GL JS does)

* don't remove line break at shader end
2018-12-04 16:09:43 +02:00
Chris Loer
f87ef3f72a [core] OverscaledTileID::isChildOf should check wrap values.
Fixes issue #13478
2018-11-30 12:30:50 -08:00
Minh Nguyễn
be56409d80 [core] Cleared out staged changelog entries 2018-11-08 14:22:21 -08:00
Thiago Marcos P. Santos
69960afb8d [build] Add build system for submodules
Vendorize the submodules and a simple CMake build
system for all them. The dependencies will inherit
compilation options for core.

The goal is to make Mapbox GL Core completely self
contained with a simple offline build.
2018-10-31 18:19:28 +02:00
Ryan Hamley
3ec0231bb7 [core] Avoid wrapping longitude values of exactly 180 and 360 (#12797) (#13006) 2018-10-24 18:38:54 -07:00
Ryan Hamley
0c6b1629ef [Core] Ensure queryRenderedFeatures accounts for icon-rotate (#13105) 2018-10-18 12:14:52 -07:00
Chris Loer
6086a6f0df [docs] Changelog draft for putResourceForURL 2018-10-17 12:53:24 -07:00
Chris Loer
bd389a3962 [docs] Changelog draft for 'format' expression 2018-10-15 13:15:46 -07:00
Chris Loer
fc11d2e872 [core, test] Add BiDi unit test
- Port of arabic.test.js from mapbox-gl-rtl-text
- Modify BiDi::getLine to remove trailing nulls in the event UBIDI_REMOVE_BIDI_CONTROLS causes the string to shorten.
- Patch vendored ICU to avoid undefined undefined bit shifting behavior (triggered sanitizer failure)
2018-10-15 13:15:46 -07:00
Chris Loer
ce76bde13d [core] Initial implementation of 'format' expression 2018-10-15 13:15:46 -07:00
Chris Loer
f7a69d15ab [docs] Include uncompressed shader source in .cpp comments
This is meant to
(1) Make it easier for new developers to find the source
(2) Make it easier to look at shader diffs when the GL JS pin changes
2018-09-19 16:19:28 -07:00
John Firebaugh
2e93a9ddcf [core] For string-valued properties, do coercion rather than assertion 2018-09-19 14:54:38 -07:00
John Firebaugh
28b14f097f [build] Don't let the binary size query get confused by post-dated commits 2018-09-13 09:01:10 -07:00
Chris Loer
46853dce15 [docs] Experiment: stage changelog entry. 2018-09-12 14:10:46 -07:00
Konstantin Käfer
2fccdecfb1 [build] add script to generate a standalone version of Mapbox GL 2018-09-11 11:43:54 +02:00
Konstantin Käfer
e51eb0fc23 [build] use vendored version of ICU 2018-09-05 12:26:15 +02:00
Konstantin Käfer
679d66f36d [build] use vendored SQLite for LTO benefits + custom compile flags 2018-09-05 12:26:15 +02:00
Konstantin Käfer
0e95e8f6b2 [build] add ability to extract zip files 2018-09-05 12:26:15 +02:00
Molly Lloyd
4a5dc37245 [core] Implement CrossFadedDataDrivenProperty to add support for feature expressions in *-pattern properties 2018-08-31 13:08:47 -07:00
Jason Wray
4061e9026e [build] Add Slack notifications for important iOS builds
- Notifies #apple when nightly builds fail.
- Notifies #apple when release deployment jobs start/finish.
2018-08-28 14:53:56 -04:00
Mikhail Pozdnyakov
fb5afd34b9 [core] Add line-gradient property
Porting of https://github.com/mapbox/mapbox-gl-js/pull/6303
See the link above for the description of the feature and
its limitations).

Based on patch from @lbud (Lauren Budorick).
2018-08-23 19:01:40 +03:00
Konstantin Käfer
52275f835a [build] add plain text file lists for iOS/macOS 2018-08-23 14:09:48 +02:00
Chris Loer
fd1767efba [core, test] Bump GL JS pin to bring gl-native back in sync with gl-js.
Requires changing `generate-style-code` to treat 'formatted' as being the same as 'string' until gl-native gets 'formatted' support with https://github.com/mapbox/mapbox-gl-native/pull/12624.
To make nitpick happy, PropertyFunction.java uses the latest "text-field" description from v8.json. It's technically correct, just kind of pointless since the "If a plain `string` is provided" clause will always be true.
2018-08-21 22:02:51 -07:00
Konstantin Käfer
bded6c65d5 [build] use plain text files for file lists to simplify integration with other build systems 2018-08-20 19:11:31 +02:00
Konstantin Käfer
6e06e55b95 WIP: use expected<T, E> for passing on errors 2018-08-14 17:03:46 -07:00
Konstantin Käfer
a3b6fc1498 [build] vendor std::expected polyfill 2018-08-14 17:03:46 -07:00
John Firebaugh
b2f60a4bf2 [core] Eliminate setProperty & co. 2018-08-13 12:39:44 -07:00
Jason Wray
2dc18d2ada [build] Print binary size stats to CI logs, too 2018-08-08 12:04:18 -04:00
Jason Wray
fd73dea05e Handle >2 branches by switching to split[0] 2018-08-07 20:01:05 -04:00
Jason Wray
dfa7e37476 [build] Fix CI failure when master and release branch are identical
The search for branches containing the previous hash could return multiple matches on different lines, if, for instance, a newly-cut release branch were identical to master.
2018-08-07 15:11:00 -04:00
John Firebaugh
e31f2ecb67 [build] Push binary size history to S3 (#12538) 2018-08-06 13:10:54 -07:00
John Firebaugh
9bdd765a02 [core] Merge DataDrivenPropertyValue into PropertyValue (#12513) 2018-07-31 14:21:47 -07:00
John Firebaugh
10e4ea0f28 [core] Compress all shader source as a single corpus 2018-07-25 11:39:05 -07:00
John Firebaugh
888a516f1f [core] Compress shader source code 2018-07-25 11:39:05 -07:00
John Firebaugh
870d7fda4d [build] Attempt to determine a likely base branch without a PR
Walk backward through the history (maximum of 10 commits) until finding a commit on either master or release-*; assume that's the base branch.
2018-07-23 11:21:51 -07:00
John Firebaugh
bbccce18c4 [build] Disable binary size checks for fork PRs
We can't run the checks without potentially exposing the Github App private key to malicious PRs.
2018-07-20 13:59:00 -07:00
Konstantin Käfer
6d7072162b [build] add nitpick step for verifying that dependencies are up-to-date and unmodified 2018-07-20 10:58:50 -04:00
Konstantin Käfer
1985b893b7 [build] vendor Google Test 2018-07-20 10:58:50 -04: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
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
Mikhail Pozdnyakov
514485502d Rename HeatmapColorPropertyValue to ColorRampPropertyValue
Based on patch from @lbud (Lauren Budorick).

Give `HeatmapColorPropertyValue` a more generic name,
since the same value type will be used for both `heatmap-color`
and `line-gradient` properties.
2018-07-05 15:11:14 +03:00
John Firebaugh
840a5cf120 [build] Record binary size via GitHub check 2018-07-03 14:03:32 -07:00
Chris Loer
251f5e605f [core, vendor] Create vendored nunicode 1.8.
- Version bump to 1.8 necessary for "unaccent" functionality
- Qt now depends on nunicode, ruling out use of precompiled binaries
2018-07-03 10:03:05 -07:00
John Firebaugh
3a1c7f3b99 [build] Exit with nonzero status if file does not exist 2018-06-26 15:02:47 -07:00