Releases: tangrams/tangram-es
0.8.1
This is a minor update to the Tangram Android SDK and the Tangram iOS SDK. There are no breaking changes to the SDK interfaces in this release.
Features
- Styles can now draw geometry with partial opacity using the
blend: translucent
option (#1615).
Fixes
- Harfbuzz dependency has been updated to version 1.4.8 (#1624).
- Thread safety has been improved for internal job queues (#1633, thanks @cleeus!).
- Raster tiles no longer cause excessive growth of memory use (#1632).
- Labels using text-shaping are no longer missing their last shaped character (#1637).
- Minor inconsistencies in font face specifications have been corrected (#1641).
- Incorrect extrusions of polygons and other issues as a result of incorrect mixing of polygon style properties has been fixed (#1651).
- Behavior of text labels with no specified font is now consistent with documentation (#1652).
- Relative zip archive import paths within a scene now load correctly. (#1657).
- Longitudes returned by
Map
functions are now wrapped to the range (-180, 180] (#1663). - Importing a mixture of relative file paths and HTTP URLs now resolves file paths correctly (#1668).
Android
- String conversion between Java and C++ correctly handles UTF8 strings now (#1628).
- The Gradle wrapper is updated to version 3.3 with "instant-run", the target Android SDK is now 26, and the project now builds correctly using NDK r15c (#1598).
iOS
- Use of
CoreText
context for labels using complex scripts (like Burmese or Thai or scripts using AAT) with iOS/macOS system fonts makes these render correctly (#1634). TGHttpHandler
now correctly responds to configuration changes after initialization (#1666).
macOS
0.8.0
This is a major update to the Tangram Android SDK and the Tangram iOS SDK. There are breaking changes to both SDK interfaces in this release.
Features
- Data sources can now specify a
tms
flag to use the TMS interpretation of tile coordinates. (#1595) - Breaking change: Functions that update the map scene now return a
SceneID
to identify the new scene. When scene changes are complete, aSceneReadyCallback
is run with the sameSceneID
. This allows an application to prepare the map view immediately before it is displayed. This changes the map initialization interface for both Android and iOS. (#1526) - Scenes can now be loaded directly from strings of YAML. This is convenient for dynamically combining scene files as a series of
imports
(example). (#1534 , #1577) - Curved labels can now be used with more complex scripts. (#1532)
- Cancelled URL requests now produce debug (not error) logs, making logs less verbose. (#1611, #1621)
Fixes
- Invalid scene updates produce more useful error codes. (#1596)
- The
text_source
draw parameter now correctly handles non-string values. (#1574 , #1575) - Sprite label collision now uses 'offset' values correctly. (#1623)
Android
- The Android AAR now provides a Proguard configuration to ensure that minification doesn't remove names needed by JNI code. (#1597)
CachePolicy
now provides an interface to control caching for HTTP requests made by the map. (#1587)
iOS
- Breaking change: Public APIs have been revised to follow Cocoa naming conventions. (#1599)
- A build configuration issue occurring with CMake 3.9 is now fixed. (#1589)
- Client applications can now access and configure headers for HTTP requests made by the map. (#1578)
- Map views now re-render as expected after synchronous scene loads. (#1612)
Raspberry Pi
- Several build errors and run-time errors are now fixed and additional command-line options are available. (#1583)
macOS
- Demo app builds are automatically produced for each commit to
master
and are available to download at: http://ios.mapzen.com (#1606) - The demo app now has several useful menu shortcuts for opening and editing scene files from your local files. (#1606)
0.8.0-beta2
This is a major update to the Tangram Android SDK and the Tangram iOS SDK. There are breaking changes to both SDK interfaces in this release.
Features
- Data sources can now specify a
tms
flag to use the TMS interpretation of tile coordinates. (#1595) - Breaking change: Functions that update the map scene now return a
SceneID
to identify the new scene. When scene changes are complete, aSceneReadyCallback
is run with the sameSceneID
. This allows an application to prepare the map view immediately before it is displayed. This changes the map initialization interface for both Android and iOS. (#1526) - Scenes can now be loaded directly from strings of YAML. This is convenient for dynamically combining scene files as a series of
imports
(example). (#1534 , #1577) - Curved labels can now be used with more complex scripts. (#1532)
Fixes
- Invalid scene updates produce more useful error codes. (#1596)
- The
text_source
draw parameter now correctly handles non-string values. (#1574 , #1575)
Android
- The Android AAR now provides a Proguard configuration to ensure that minification doesn't remove names needed by JNI code. (#1597)
CachePolicy
now provides an interface to control caching for HTTP requests made by the map. (#1587)
iOS
- Breaking change: Public APIs have been revised to follow Cocoa naming conventions. (#1599)
- A build configuration issue occurring with CMake 3.9 is now fixed. (#1589)
- Client applications can now access and configure headers for HTTP requests made by the map. (#1578)
Raspberry Pi
- Several build errors and run-time errors are now fixed and additional command-line options are available. (#1583)
0.7.2
This is a minor update to the Tangram Android SDK and the Tangram iOS SDK. There are no breaking changes to the SDK interfaces in this release.
Features
- The
text_source.left
andtext_source.right
draw rules can now be specified with a JS function (#1531). - The
size
draw rule for points can now be specified with a JS function (#1541). - To avoid naming collisions, the core library CMake project is now named
tangramcore
and uses variables prefixed withTANGRAM_
(#1547). - Implemented
max_lines
draw rule for label text (#1563).
Fixes
- Text line wrapping for labels now behaves correctly for RTL text (#1561).
- Fixed potential crashes in specific uses of Markers with Scene updates (#1546).
iOS
- The Tangram iOS Framework is now hosted on http://ios.mapzen.com, you can download the latest build using the big blue button or see a full listing of available builds (#1527).
- Delegates can now be given for responding to "pinch" and "rotation" gestures on the map (#1548).
- Gesture recognizers for the map are now publicly accessible (#1550).
- The map view will now set
preferredFramesPerSecond
to 60 by defult (#1551).
0.7.1
This is a minor update to the Tangram Android SDK and the Tangram iOS SDK. There are no breaking changes to the SDK interfaces in this release.
Features
- Enable non-tiled data sources to automatically generate polygon centroids for labeling (#1522)
- Enable setting a default background color to display before a scene is loaded (#1518)
Fixes
- Fix incorrect geometry subdivision in client data sources (#1517)
0.7.0
This is a major update to the Tangram Android SDK and the Tangram iOS SDK. There are breaking changes to both SDK interfaces in this release.
IMPORTANT:
Beginning with this release, you must supply your own Mapzen API key to build and run the demo applications. You can sign up for a free API key at https://mapzen.com/developers.
For the desktop or iOS demo applications, set the key as an environment variable called MAPZEN_API_KEY
in your shell before you run make
or cmake
to configure the project. For Android, set the key as a Gradle property called mapzenApiKey
in your local gradle.properties
file (usually ~/.gradle/gradle.properties
).
If you are currently using an API key that came with the Tangram ES demo code (i.e. a key that you did not obtain from mapzen.com) that API key will lose access to the Mapzen Tile Services in one month. You should supply your own key for your application before then to prevent disruption of service.
Features
- Enable loading scene files and related files from zip archives (#1373)
- Enable using "default draw rules" in style definitions in a scene file (#1509)
- Add support for tile sources with tile pixel sizes that are powers of 2 greater than 256 (#1498)
Fixes
- Breaking change: Loading a new scene file or updating a scene now clears all Marker objects from the map, preventing Markers from entering inconsistent states (#1467)
Android
- Updated the demo application to include a scene file selection interface (#1470)
- Breaking change: Callbacks for feature queries, map events, and errors now run on the UI thread (#1495)
iOS
0.6.3
This is a minor update to the Tangram Android SDK and the Tangram iOS SDK. There are no breaking changes to the SDK interfaces in this release.
Fixes
- Resolved further potential crashes on devices that don't support Vertex Array Objects (#1489)
- Remove excess geometry "buffer" created when using
MapData
orClientGeoJsonSource
(#1496)
Android
0.5.2
This is a minor update to the Tangram Android SDK and the Tangram iOS SDK that backports several fixes to the 0.5.1 release. There are no breaking changes to the SDK interfaces in this release.
Fixes
- Fixed Marker visibility behavior (#1416, #1429)
- Fixed a bug causing incorrect glyphs to appear in labels when over 255 fonts were loaded (6c64cf5)
iOS
0.6.2
This is a minor update to the Tangram Android SDK and the Tangram iOS SDK. There are no breaking changes to the SDK interfaces in this release.
Fixes
- Reduced unneeded vertex array bindings during rendering (#1462)
- Disabled use of Vertex Array Objects for labels to work around to a common GL driver bug (c4b4bc5)
- Fixed a bug causing incorrect glyphs to appear in labels when over 255 fonts were loaded (6c64cf5)
Android
- Enable loading fallback fonts from the system font list on Android versions < 5.0 (d0a66e7)
iOS
0.6.1
This is a minor update to the Tangram Android SDK and the Tangram iOS SDK. There are no breaking changes to the SDK interfaces in this release.
We strongly recommend that iOS applications using version 0.6.0 update to 0.6.1. The 0.6.0 release was built using Xcode 8.3 and will not be accepted to the App Store in the future, due to a bug in that version of Xcode (see the Xcode release notes for details).
Features
- Allow specifying a set of subdomains for tile source URLs (#1459)
Fixes
- Fixed an issue causing some labels with mixed character sets to not render (#1453)
- Changed the default font size for text to 12pt from 16pt, to match the documented behavior (#1454)
- Prevented potential misuse of vertex array object bindings (1b3946c)
- Fixed an issue preventing raster tile layers from "wrapping" when panning around the world (#1458)