Skip to content

Commit 0b4c6f1

Browse files
Search SDK 2.8.0-beta.1 (#308)
* Bump SDK versions * SearchSuggestion.namePreferred * Deprecate SearchOption.routeOptions * Bump SDK version name, update changelog
1 parent deec317 commit 0b4c6f1

File tree

24 files changed

+111
-15
lines changed

24 files changed

+111
-15
lines changed

Diff for: CHANGELOG.md

+20
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,25 @@
11
# Changelog for the Mapbox Search SDK for Android
22

3+
## 2.8.0-beta.1
4+
5+
### New features
6+
- New property `SearchSuggestion.namePreferred` is available. It provides the official name of the suggestion.
7+
8+
### Bug fixes
9+
- Fixed `SearchResult.etaMinutes` parsing for the Search Box api type.
10+
11+
### Other
12+
- `SearchOptions.routeOptions` has been deprecated as not supported for the forward geocoding.
13+
14+
15+
### New features
16+
17+
### Mapbox dependencies
18+
- Search Native SDK `2.8.0-beta.2`
19+
- Common SDK `24.10.0-beta.`
20+
21+
22+
323
## 2.7.1
424

525
### New features

Diff for: MapboxSearch/base/src/main/java/com/mapbox/search/base/result/BaseRawSearchResult.kt

+3
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ data class BaseRawSearchResult(
1717
val mapboxId: String?,
1818
val types: List<BaseRawResultType>,
1919
val names: List<String>,
20+
val namePreferred: String?,
2021
val languages: List<String>,
2122
val addresses: List<BaseSearchAddress>?,
2223
val descriptionAddress: String?,
@@ -103,6 +104,7 @@ fun CoreSearchResult.mapToBase() = BaseRawSearchResult(
103104
mapboxId = mapboxId,
104105
types = types.map { it.mapToBase() },
105106
names = names,
107+
namePreferred = namePreferred,
106108
languages = languages,
107109
addresses = addresses?.map { it.mapToBaseSearchAddress() },
108110
descriptionAddress = descrAddress,
@@ -132,6 +134,7 @@ fun BaseRawSearchResult.mapToCore() = CoreSearchResult(
132134
mapboxId,
133135
types.map { it.mapToCore() },
134136
names,
137+
namePreferred,
135138
languages,
136139
addresses?.map { it.mapToCore() },
137140
descriptionAddress,

Diff for: MapboxSearch/base/src/main/java/com/mapbox/search/base/result/BaseSearchResult.kt

+3
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,9 @@ abstract class BaseSearchResult(
2323
open val name: String
2424
get() = rawSearchResult.names[0]
2525

26+
open val namePreferred: String?
27+
get() = rawSearchResult.namePreferred
28+
2629
open val matchingName: String?
2730
get() = rawSearchResult.matchingName
2831

Diff for: MapboxSearch/base/src/main/java/com/mapbox/search/base/result/BaseSearchSuggestion.kt

+3
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@ sealed class BaseSearchSuggestion(
1818
open val name: String
1919
get() = rawSearchResult.names[0]
2020

21+
open val namePreferred: String?
22+
get() = rawSearchResult.namePreferred
23+
2124
open val coordinate: Point?
2225
get() = rawSearchResult.center
2326

Diff for: MapboxSearch/base/src/test/java/com/mapbox/search/base/result/BaseRawSearchResultTest.kt

+4
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,7 @@ internal class BaseRawSearchResultTest {
278278
null,
279279
listOf(ResultType.PLACE, ResultType.REGION),
280280
listOf("Result name"),
281+
null,
281282
listOf("Default"),
282283
null,
283284
null,
@@ -307,6 +308,7 @@ internal class BaseRawSearchResultTest {
307308
mapboxId = CORE_EMPTY_SEARCH_RESULT.mapboxId,
308309
types = CORE_EMPTY_SEARCH_RESULT.types.map { it.mapToBase() },
309310
names = CORE_EMPTY_SEARCH_RESULT.names,
311+
namePreferred = CORE_EMPTY_SEARCH_RESULT.namePreferred,
310312
languages = CORE_EMPTY_SEARCH_RESULT.languages,
311313
addresses = CORE_EMPTY_SEARCH_RESULT.addresses?.map { it.mapToBaseSearchAddress() },
312314
descriptionAddress = CORE_EMPTY_SEARCH_RESULT.descrAddress,
@@ -338,6 +340,7 @@ internal class BaseRawSearchResultTest {
338340
mapboxId = CORE_FILLED_SEARCH_RESULT.mapboxId,
339341
types = CORE_FILLED_SEARCH_RESULT.types.map { it.mapToBase() },
340342
names = CORE_FILLED_SEARCH_RESULT.names,
343+
namePreferred = CORE_FILLED_SEARCH_RESULT.namePreferred,
341344
languages = CORE_FILLED_SEARCH_RESULT.languages,
342345
addresses = CORE_FILLED_SEARCH_RESULT.addresses?.map { it.mapToBaseSearchAddress() },
343346
descriptionAddress = CORE_FILLED_SEARCH_RESULT.descrAddress,
@@ -368,6 +371,7 @@ internal class BaseRawSearchResultTest {
368371
null,
369372
types,
370373
listOf("Test filled search result"),
374+
"Test name preferred",
371375
listOf("en", "fr", "de"),
372376
listOf(
373377
createCoreSearchAddress(country = createCoreSearchAddressCountry("country")),

Diff for: MapboxSearch/base/src/test/java/com/mapbox/search/base/tests_support/BaseTestDataFactory.kt

+2
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ internal fun createTestBaseRawSearchResult(
2020
mapboxId: String? = null,
2121
types: List<BaseRawResultType> = listOf(BaseRawResultType.POI),
2222
names: List<String> = listOf("Test Search Result"),
23+
namePreferred: String? = null,
2324
languages: List<String> = listOf("def"),
2425
addresses: List<BaseSearchAddress>? = null,
2526
descriptionAddress: String? = null,
@@ -47,6 +48,7 @@ internal fun createTestBaseRawSearchResult(
4748
mapboxId = mapboxId,
4849
types = types,
4950
names = names,
51+
namePreferred = namePreferred,
5052
languages = languages,
5153
addresses = addresses,
5254
descriptionAddress = descriptionAddress,

Diff for: MapboxSearch/common-tests/src/main/java/com/mapbox/search/common/tests/CoreTestDataFactory.kt

+4
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ fun createTestCoreSearchResult(
149149
mapboxId: String? = null,
150150
types: List<ResultType> = listOf(ResultType.POI),
151151
names: List<String> = listOf("Test Search Result"),
152+
namePreferred: String? = "Test name preferred",
152153
languages: List<String> = listOf("default"),
153154
addresses: List<SearchAddress>? = null,
154155
descriptionAddress: String? = null,
@@ -176,6 +177,7 @@ fun createTestCoreSearchResult(
176177
mapboxId,
177178
types,
178179
names,
180+
namePreferred,
179181
languages,
180182
addresses,
181183
descriptionAddress,
@@ -206,6 +208,7 @@ fun SearchResult.copy(
206208
mapboxId: String? = this.mapboxId,
207209
types: List<ResultType> = this.types,
208210
names: List<String> = this.names,
211+
namePreferred: String? = this.namePreferred,
209212
languages: List<String> = this.languages,
210213
addresses: List<SearchAddress>? = this.addresses,
211214
descriptionAddress: String? = this.descrAddress,
@@ -233,6 +236,7 @@ fun SearchResult.copy(
233236
mapboxId,
234237
types,
235238
names,
239+
namePreferred,
236240
languages,
237241
addresses,
238242
descriptionAddress,

Diff for: MapboxSearch/gradle.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ android.enableJetifier=false
2121
kotlin.code.style=official
2222

2323
# SDK version attributes
24-
VERSION_NAME=2.7.1
24+
VERSION_NAME=2.8.0-beta.1
2525

2626
# Artifact attributes
2727
mapboxArtifactUserOrg=mapbox

Diff for: MapboxSearch/gradle/versions.gradle

+3-3
Original file line numberDiff line numberDiff line change
@@ -41,13 +41,13 @@ ext {
4141

4242
pitest_version = '1.6.7'
4343

44-
mapbox_maps_version = '11.9.0-rc.1'
44+
mapbox_maps_version = '11.10.0-beta.1'
4545
mapbox_turf_version = '6.15.0'
4646

47-
common_sdk_version = '24.9.0'
47+
common_sdk_version = '24.10.0-beta.2'
4848
mapbox_base_version = '0.8.0'
4949

50-
search_native_version = '2.7.0'
50+
search_native_version = '2.8.0-beta.2'
5151

5252
detekt_version = '1.19.0'
5353

Diff for: MapboxSearch/offline/src/main/java/com/mapbox/search/offline/OfflineSearchResultCallbackAdapter.kt

+1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ internal class OfflineSearchResultCallbackAdapter(private val feature: Feature,
3737
null,
3838
listOf(BaseRawResultType.PLACE),
3939
listOf(getStringProperty("name")),
40+
null,
4041
listOf(),
4142
listOf(),
4243
null,

Diff for: MapboxSearch/offline/src/test/java/com/mapbox/search/offline/OfflineSearchResultCallbackAdapterTest.kt

+1
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,7 @@ internal class OfflineSearchResultCallbackAdapterTest {
178178
mapboxId = mapboxId,
179179
listOf(resultType),
180180
listOf(name),
181+
null,
181182
listOf(),
182183
listOf(),
183184
null,

Diff for: MapboxSearch/offline/src/test/java/com/mapbox/search/offline/tests_support/OfflineTestDataFactory.kt

+2
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ internal fun createTestBaseRawSearchResult(
1414
mapboxId: String? = null,
1515
types: List<BaseRawResultType> = listOf(BaseRawResultType.POI),
1616
names: List<String> = listOf("Test Search Result"),
17+
namePreferred: String? = null,
1718
languages: List<String> = listOf("def"),
1819
addresses: List<BaseSearchAddress>? = null,
1920
descriptionAddress: String? = null,
@@ -41,6 +42,7 @@ internal fun createTestBaseRawSearchResult(
4142
mapboxId = mapboxId,
4243
types = types,
4344
names = names,
45+
namePreferred = namePreferred,
4446
languages = languages,
4547
addresses = addresses,
4648
descriptionAddress = descriptionAddress,

Diff for: MapboxSearch/place-autocomplete/src/test/java/com/mapbox/search/autocomplete/test/utils/TestDataFactory.kt

+2
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ internal fun createTestBaseRawSearchResult(
114114
mapboxId: String? = null,
115115
types: List<BaseRawResultType> = listOf(BaseRawResultType.POI),
116116
names: List<String> = listOf("Test Search Result"),
117+
namePreferred: String? = null,
117118
languages: List<String> = listOf("def"),
118119
addresses: List<CoreSearchAddress>? = null,
119120
descriptionAddress: String? = null,
@@ -141,6 +142,7 @@ internal fun createTestBaseRawSearchResult(
141142
mapboxId = mapboxId,
142143
types = types,
143144
names = names,
145+
namePreferred = namePreferred,
144146
languages = languages,
145147
addresses = addresses?.map { it.mapToBaseSearchAddress() },
146148
descriptionAddress = descriptionAddress,

Diff for: MapboxSearch/sdk/api/api-metalava.txt

+5-3
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ package com.mapbox.search {
402402
method public com.mapbox.geojson.Point? getOrigin();
403403
method public com.mapbox.geojson.Point? getProximity();
404404
method public Integer? getRequestDebounce();
405-
method public com.mapbox.search.RouteOptions? getRouteOptions();
405+
method @Deprecated public com.mapbox.search.RouteOptions? getRouteOptions();
406406
method public java.util.List<com.mapbox.search.QueryType>? getTypes();
407407
method public java.util.Map<java.lang.String,java.lang.String>? getUnsafeParameters();
408408
method public com.mapbox.search.SearchOptions.Builder toBuilder();
@@ -417,7 +417,7 @@ package com.mapbox.search {
417417
property public final com.mapbox.geojson.Point? origin;
418418
property public final com.mapbox.geojson.Point? proximity;
419419
property public final Integer? requestDebounce;
420-
property public final com.mapbox.search.RouteOptions? routeOptions;
420+
property @Deprecated public final com.mapbox.search.RouteOptions? routeOptions;
421421
property public final java.util.List<com.mapbox.search.QueryType>? types;
422422
property public final java.util.Map<java.lang.String,java.lang.String>? unsafeParameters;
423423
}
@@ -438,7 +438,7 @@ package com.mapbox.search {
438438
method public com.mapbox.search.SearchOptions.Builder origin(com.mapbox.geojson.Point origin);
439439
method public com.mapbox.search.SearchOptions.Builder proximity(com.mapbox.geojson.Point? proximity);
440440
method public com.mapbox.search.SearchOptions.Builder requestDebounce(int debounce);
441-
method public com.mapbox.search.SearchOptions.Builder routeOptions(com.mapbox.search.RouteOptions routeOptions);
441+
method @Deprecated public com.mapbox.search.SearchOptions.Builder routeOptions(com.mapbox.search.RouteOptions routeOptions);
442442
method public com.mapbox.search.SearchOptions.Builder types(com.mapbox.search.QueryType... types);
443443
method public com.mapbox.search.SearchOptions.Builder types(java.util.List<? extends com.mapbox.search.QueryType> types);
444444
method public com.mapbox.search.SearchOptions.Builder unsafeParameters(java.util.Map<java.lang.String,java.lang.String> unsafeParameters);
@@ -1069,6 +1069,7 @@ package com.mapbox.search.result {
10691069
method public String? getMatchingName();
10701070
method public com.mapbox.search.SearchResultMetadata? getMetadata();
10711071
method public String getName();
1072+
method public String? getNamePreferred();
10721073
method public com.mapbox.search.RequestOptions getRequestOptions();
10731074
method public java.util.List<com.mapbox.search.common.RoutablePoint>? getRoutablePoints();
10741075
method public Integer? getServerIndex();
@@ -1088,6 +1089,7 @@ package com.mapbox.search.result {
10881089
property public final String? matchingName;
10891090
property public final com.mapbox.search.SearchResultMetadata? metadata;
10901091
property public final String name;
1092+
property public final String? namePreferred;
10911093
property public final com.mapbox.search.RequestOptions requestOptions;
10921094
property public final java.util.List<com.mapbox.search.common.RoutablePoint>? routablePoints;
10931095
property public final Integer? serverIndex;

Diff for: MapboxSearch/sdk/api/sdk.api

+1
Original file line numberDiff line numberDiff line change
@@ -1352,6 +1352,7 @@ public final class com/mapbox/search/result/SearchSuggestion : android/os/Parcel
13521352
public final fun getMatchingName ()Ljava/lang/String;
13531353
public final fun getMetadata ()Lcom/mapbox/search/SearchResultMetadata;
13541354
public final fun getName ()Ljava/lang/String;
1355+
public final fun getNamePreferred ()Ljava/lang/String;
13551356
public final fun getRequestOptions ()Lcom/mapbox/search/RequestOptions;
13561357
public final fun getRoutablePoints ()Ljava/util/List;
13571358
public final fun getServerIndex ()Ljava/lang/Integer;

Diff for: MapboxSearch/sdk/src/androidTest/assets/search_box_responses/category/successful_response.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,9 @@
197197
}
198198
]
199199
}
200-
}
200+
},
201+
"distance": 433.7,
202+
"eta": 2.145
201203
}
202204
},
203205
{

Diff for: MapboxSearch/sdk/src/androidTest/assets/search_box_responses/forward/suggestions-successful.json

+1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"suggestions": [
33
{
44
"name": "Washington",
5+
"name_preferred": "Washington - test preferred name",
56
"mapbox_id": "suggestion-id-1",
67
"feature_type": "poi",
78
"address": "1211 Connecticut Ave NW",

Diff for: MapboxSearch/sdk/src/androidTest/java/com/mapbox/search/search_box/CategorySearchIntegrationTest.kt

+7
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,13 @@ internal class CategorySearchIntegrationTest : BaseTest() {
211211
val (results, responseInfo) = response.requireResultPair()
212212
assertEquals(3, results.size)
213213
assertNotNull(responseInfo.coreSearchResponse)
214+
215+
val first = results.first()
216+
assertEquals("Devon & Blakely", first.name)
217+
218+
// TODO should be fixed on Search Native side
219+
// assertEquals(433.7, first.distanceMeters)
220+
assertEquals(2.145, first.etaMinutes)
214221
}
215222

216223
@Test

Diff for: MapboxSearch/sdk/src/androidTest/java/com/mapbox/search/search_box/SearchEngineIntegrationTest.kt

+1
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,7 @@ internal class SearchEngineIntegrationTest : BaseTest() {
234234
val suggestion = suggestions[0]
235235
assertEquals("suggestion-id-1", suggestion.id)
236236
assertEquals("Washington", suggestion.name)
237+
assertEquals("Washington - test preferred name", suggestion.namePreferred)
237238
assertEquals(
238239
"1211 Connecticut Ave NW, Washington, District of Columbia 20036, United States of America",
239240
suggestion.descriptionText

Diff for: MapboxSearch/sdk/src/androidTest/java/com/mapbox/search/tests_support/SdkTestDataFactory.kt

+2
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ internal fun createTestBaseRawSearchResult(
3838
mapboxId: String? = null,
3939
types: List<BaseRawResultType> = listOf(BaseRawResultType.POI),
4040
names: List<String> = listOf("Test Search Result"),
41+
namePreferred: String? = null,
4142
languages: List<String> = listOf("def"),
4243
addresses: List<SearchAddress>? = null,
4344
descriptionAddress: String? = null,
@@ -65,6 +66,7 @@ internal fun createTestBaseRawSearchResult(
6566
mapboxId = mapboxId,
6667
types = types,
6768
names = names,
69+
namePreferred = namePreferred,
6870
languages = languages,
6971
addresses = addresses?.map { it.mapToBase() },
7072
descriptionAddress = descriptionAddress,

0 commit comments

Comments
 (0)