MapboxGeocoder.swift
MapboxGeocoder.swift copied to clipboard
Placeholder Attributes Not Correctly Set
Description
When making a forward Geocoding request, all the placemarks in the response should have their usual attributes (i.e. the attributes included in a vanilla cURL request to the Geocoding API). However, for some reason there are placemark attributes that are not being set.
Here's an example request:
let options = ForwardGeocodeOptions(query: "Hong Kong")
options.allowedScopes = [.place, .locality]
options.maximumResultCount = 5
geocodingDataTask = geocoder.geocode(options) { [unowned self] (placemarks, attribution, error) in
if let error = error {
NSLog("%@", error)
} else if let placemarks = placemarks, !placemarks.isEmpty {
for placemark in placemarks {
print(placemark.name)
print(placemark.code)
print(placemark.country?.code)
print(placemark.administrativeRegion?.address)
}
} else {
self.resultsLabel.text = "No results"
}
}
Expected
In the Geocoding API playground, the result of a query with the same parameters includes "short_code" which should be the placemark.code value that is printed in the above code block.

Actual
When the above code block is run, all but placemark.name return nil values:
Hong Kong
nil
nil
nil