diff --git a/Gemfile b/Gemfile
index 2104c88096..ec4249345c 100644
--- a/Gemfile
+++ b/Gemfile
@@ -2,7 +2,9 @@ source "https://rubygems.org"
# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
ruby '>= 2.6.10'
-gem 'cocoapods', '>= 1.11.3'
+# Cocoapods 1.15 introduced a bug which break the build. We will remove the upper
+# bound in the template on Cocoapods with next React Native release.
+gem 'cocoapods', '>= 1.13', '< 1.15'
gem 'activesupport', '>= 6.1.7.3', '< 7.1.0'
gem "fastlane"
diff --git a/Gemfile.lock b/Gemfile.lock
index 4b82b239e5..d9ae9138f0 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -16,17 +16,17 @@ GEM
artifactory (3.0.15)
atomos (0.1.3)
aws-eventstream (1.3.0)
- aws-partitions (1.881.0)
- aws-sdk-core (3.190.3)
+ aws-partitions (1.887.0)
+ aws-sdk-core (3.191.0)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.8)
jmespath (~> 1, >= 1.6.1)
- aws-sdk-kms (1.76.0)
- aws-sdk-core (~> 3, >= 3.188.0)
+ aws-sdk-kms (1.77.0)
+ aws-sdk-core (~> 3, >= 3.191.0)
aws-sigv4 (~> 1.1)
- aws-sdk-s3 (1.142.0)
- aws-sdk-core (~> 3, >= 3.189.0)
+ aws-sdk-s3 (1.143.0)
+ aws-sdk-core (~> 3, >= 3.191.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.8)
aws-sigv4 (1.8.0)
@@ -74,7 +74,7 @@ GEM
colored2 (3.1.2)
commander (4.6.0)
highline (~> 2.0.0)
- concurrent-ruby (1.2.2)
+ concurrent-ruby (1.2.3)
declarative (0.0.20)
digest-crc (0.6.5)
rake (>= 12.0.0, < 14.0.0)
@@ -159,38 +159,38 @@ GEM
fourflusher (2.3.1)
fuzzy_match (2.0.4)
gh_inspector (1.1.3)
- google-apis-androidpublisher_v3 (0.54.0)
- google-apis-core (>= 0.11.0, < 2.a)
- google-apis-core (0.11.2)
+ google-apis-androidpublisher_v3 (0.56.0)
+ google-apis-core (>= 0.12.0, < 2.a)
+ google-apis-core (0.13.0)
addressable (~> 2.5, >= 2.5.1)
- googleauth (>= 0.16.2, < 2.a)
+ googleauth (~> 1.9)
httpclient (>= 2.8.1, < 3.a)
mini_mime (~> 1.0)
representable (~> 3.0)
retriable (>= 2.0, < 4.a)
rexml
- webrick
- google-apis-iamcredentials_v1 (0.17.0)
- google-apis-core (>= 0.11.0, < 2.a)
- google-apis-playcustomapp_v1 (0.13.0)
- google-apis-core (>= 0.11.0, < 2.a)
- google-apis-storage_v1 (0.31.0)
- google-apis-core (>= 0.11.0, < 2.a)
+ google-apis-iamcredentials_v1 (0.18.0)
+ google-apis-core (>= 0.12.0, < 2.a)
+ google-apis-playcustomapp_v1 (0.14.0)
+ google-apis-core (>= 0.12.0, < 2.a)
+ google-apis-storage_v1 (0.33.0)
+ google-apis-core (>= 0.12.0, < 2.a)
google-cloud-core (1.6.1)
google-cloud-env (>= 1.0, < 3.a)
google-cloud-errors (~> 1.0)
- google-cloud-env (2.1.0)
+ google-cloud-env (2.1.1)
faraday (>= 1.0, < 3.a)
google-cloud-errors (1.3.1)
- google-cloud-storage (1.47.0)
+ google-cloud-storage (1.48.1)
addressable (~> 2.8)
digest-crc (~> 0.4)
- google-apis-iamcredentials_v1 (~> 0.1)
- google-apis-storage_v1 (~> 0.31.0)
+ google-apis-core (~> 0.13)
+ google-apis-iamcredentials_v1 (~> 0.18)
+ google-apis-storage_v1 (~> 0.33)
google-cloud-core (~> 1.6)
- googleauth (>= 0.16.2, < 2.a)
+ googleauth (~> 1.9)
mini_mime (~> 1.0)
- googleauth (1.9.1)
+ googleauth (1.9.2)
faraday (>= 1.0, < 3.a)
google-cloud-env (~> 2.1)
jwt (>= 1.4, < 3.0)
@@ -208,7 +208,7 @@ GEM
jwt (2.7.1)
mini_magick (4.12.0)
mini_mime (1.1.5)
- minitest (5.21.1)
+ minitest (5.22.0)
molinillo (0.8.0)
multi_json (1.15.0)
multipart-post (2.3.0)
@@ -254,9 +254,8 @@ GEM
concurrent-ruby (~> 1.0)
uber (0.1.0)
unicode-display_width (2.5.0)
- webrick (1.8.1)
word_wrap (1.0.0)
- xcodeproj (1.23.0)
+ xcodeproj (1.24.0)
CFPropertyList (>= 2.3.3, < 4.0)
atomos (~> 0.1.3)
claide (>= 1.0.2, < 2.0)
@@ -273,7 +272,7 @@ PLATFORMS
DEPENDENCIES
activesupport (>= 6.1.7.3, < 7.1.0)
- cocoapods (>= 1.11.3)
+ cocoapods (>= 1.13, < 1.15)
fastlane
fastlane-plugin-versioning_android
diff --git a/android/app/build.gradle b/android/app/build.gradle
index 9f3802b1c6..a08be21ddb 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -114,8 +114,8 @@ android {
applicationId "org.inaturalist.seek"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
- versionCode 332
- versionName "2.15.6"
+ versionCode 335
+ versionName "2.15.7"
// for creating ic_seek_adaptiveappicon.xml
vectorDrawables.useSupportLibrary = true
}
diff --git a/components/Camera/Gallery/GalleryImageList.js b/components/Camera/Gallery/GalleryImageList.js
index 37f9303c94..66d3c08bf2 100644
--- a/components/Camera/Gallery/GalleryImageList.js
+++ b/components/Camera/Gallery/GalleryImageList.js
@@ -3,7 +3,7 @@
import React, { useCallback, useContext, useEffect, useState } from "react";
import { Platform, FlatList } from "react-native";
import type { Node } from "react";
-import { getPredictionsForImage } from "react-native-inat-camera";
+import { getPredictionsForImage } from "vision-camera-plugin-inatvision";
import { useNavigation } from "@react-navigation/native";
import { checkForPhotoMetaData } from "../../../utility/photoHelpers";
@@ -85,30 +85,29 @@ const GalleryImageList = ( { onEndReached, photos, setLoading }: Props ): Node =
const getPredictions = useCallback( ( uri, timestamp, location ) => {
const path = uri.split( "file://" );
- const reactUri = path[1];
+ const reactUri = Platform.OS === "android" ? path[1] : uri;
getPredictionsForImage( {
uri: reactUri,
- modelFilename: dirModel,
- taxonomyFilename: dirTaxonomy
- } ).then( ( { predictions } ) => {
- navigateToResults( uri, timestamp, location, predictions );
- } ).catch( ( err ) => {
- console.log( "Error", err );
- } );
+ modelPath: dirModel,
+ taxonomyPath: dirTaxonomy,
+ version: "1.0"
+ } )
+ .then( ( result ) => {
+ const { predictions } = result;
+ navigateToResults( uri, timestamp, location, Platform.OS === "android" ? predictions : result );
+ } )
+ .catch( ( err ) => {
+ console.log( "Error", err );
+ } );
}, [navigateToResults] );
const selectImage = useCallback( ( item ) => {
setImageSelected( true );
setLoading( );
const { timestamp, location, image } = item.node;
-
- if ( Platform.OS === "android" ) {
- getPredictions( image.uri, timestamp, location );
- } else {
- navigateToResults( image.uri, timestamp, location );
- }
- }, [getPredictions, navigateToResults, setLoading] );
+ getPredictions( image.uri, timestamp, location );
+ }, [getPredictions, setLoading] );
const renderImage = useCallback( ( { item } ) => , [selectImage] );
diff --git a/components/Home/Announcements/Announcements.js b/components/Home/Announcements/Announcements.js
index 9dc9050672..0c23a54065 100644
--- a/components/Home/Announcements/Announcements.js
+++ b/components/Home/Announcements/Announcements.js
@@ -13,7 +13,6 @@ import makeWebshell, {
useAutoheight
} from "@formidable-webview/webshell";
-import createUserAgent from "../../../utility/userAgent";
import { UserContext } from "../../UserContext";
import { viewStyles, textStyles } from "../../../styles/home/announcements";
import GreenButton from "../../UIComponents/Buttons/GreenButton";
@@ -65,9 +64,7 @@ const Announcements = ( ): React.Node => {
};
const accessToken = await fetchAccessToken();
const apiToken = await fetchJSONWebToken( accessToken );
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { api_token: apiToken, headers };
+ const options = { api_token: apiToken };
inatjs.announcements
.search( params, options )
.then( ( { total_results, results } ) => {
@@ -80,7 +77,10 @@ const Announcements = ( ): React.Node => {
.sort( ( a, b ) => new Date( a.start ) - new Date( b.start ) );
setAnnouncements( homeAnnouncements );
} )
- .catch( ( err ) => console.log( err, "err fetching announcements" ) );
+ .catch( ( err ) => {
+ // TODO: handle error
+ console.log( err, "err fetching announcements" );
+ } );
}, [locale] );
const { userProfile } = useContext( UserContext );
@@ -109,7 +109,7 @@ const Announcements = ( ): React.Node => {
const dismiss = async ( ) => {
const accessToken = await fetchAccessToken();
const apiToken = await fetchJSONWebToken( accessToken );
- const options = { api_token: apiToken, user_agent: createUserAgent() };
+ const options = { api_token: apiToken };
inatjs.announcements
.dismiss( { id }, options )
.then( ( ) => {
@@ -120,7 +120,10 @@ const Announcements = ( ): React.Node => {
// Refetch announcements
fetchAnnouncements();
} )
- .catch( ( err ) => console.log( err, "err dismissing announcement" ) );
+ .catch( ( err ) => {
+ // TODO: handle error
+ console.log( err, "err dismissing announcement" );
+ } );
};
return (
diff --git a/components/PostToiNat/hooks/postingHooks.js b/components/PostToiNat/hooks/postingHooks.js
index 72fdd78cd6..d5a5484891 100644
--- a/components/PostToiNat/hooks/postingHooks.js
+++ b/components/PostToiNat/hooks/postingHooks.js
@@ -5,7 +5,6 @@ import inatjs from "inaturalistjs";
import i18n from "../../../i18n";
import { capitalizeNames } from "../../../utility/helpers";
-import createUserAgent from "../../../utility/userAgent";
import { fetchUserLocation } from "../../../utility/locationHelpers";
const useSearchSpecies = ( speciesName: ?string ): any => {
@@ -20,11 +19,7 @@ const useSearchSpecies = ( speciesName: ?string ): any => {
locale: i18n.locale
};
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { headers };
-
- inatjs.taxa.autocomplete( params, options ).then( ( { results } ) => {
+ inatjs.taxa.autocomplete( params ).then( ( { results } ) => {
if ( results.length === 0 ) { return; }
const newSuggestions = results.map( ( s ) => {
diff --git a/components/Providers/ObservationProvider.js b/components/Providers/ObservationProvider.js
index d3757839c3..cb92064515 100644
--- a/components/Providers/ObservationProvider.js
+++ b/components/Providers/ObservationProvider.js
@@ -6,7 +6,6 @@ import { Platform } from "react-native";
import inatjs from "inaturalistjs";
import iconicTaxaIds from "../../utility/dictionaries/iconicTaxonDictById";
-import createUserAgent from "../../utility/userAgent";
import { fetchSpeciesSeenDate, serverBackOnlineTime } from "../../utility/dateHelpers";
import { addToCollection } from "../../utility/observationHelpers";
import { createLocationAlert } from "../../utility/locationHelpers";
@@ -57,14 +56,10 @@ const ObservationProvider = ( { children }: Props ): Node => {
};
const fetchPhoto = useCallback( async ( id ) => {
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { headers };
-
// probably should break this into a helper function to use in other places
// like species nearby fetches for better offline experience
const fetchWithTimeout = ( timeout ) => Promise.race( [
- inatjs.taxa.fetch( id, options ),
+ inatjs.taxa.fetch( id ),
new Promise( ( _, reject ) =>
setTimeout( ( ) => reject( new Error( "timeout" ) ), timeout )
)
@@ -285,9 +280,7 @@ const ObservationProvider = ( { children }: Props ): Node => {
const fetchOnlineVisionResults = async ( ) => {
const uploadParams = await flattenUploadParameters( image );
const token = createJwtToken( );
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { api_token: token, headers };
+ const options = { api_token: token };
try {
const r = await inatjs.computervision.score_image( uploadParams, options );
diff --git a/components/Species/OnlineOnlyCards/INatObs.js b/components/Species/OnlineOnlyCards/INatObs.js
index f6eebe4a62..9ccb61c8b5 100644
--- a/components/Species/OnlineOnlyCards/INatObs.js
+++ b/components/Species/OnlineOnlyCards/INatObs.js
@@ -13,7 +13,6 @@ import i18n from "../../../i18n";
import { viewStyles, textStyles, imageStyles } from "../../../styles/species/iNatObs";
import logos from "../../../assets/logos";
import SpeciesDetailCard from "../../UIComponents/SpeciesDetailCard";
-import createUserAgent from "../../../utility/userAgent";
import { localizeNumber } from "../../../utility/helpers";
import StyledText from "../../UIComponents/StyledText";
@@ -38,11 +37,7 @@ const INatObs = ( { id, timesSeen, region }: Props ): Node => {
taxon_id: id
};
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { headers };
-
- inatjs.observations.speciesCounts( params, options ).then( ( { results } ) => {
+ inatjs.observations.speciesCounts( params ).then( ( { results } ) => {
if ( isFocused ) {
setNearbySpeciesCount( results.length > 0 ? results[0].count : 0 );
}
diff --git a/components/Species/OnlineOnlyCards/SimilarSpecies.js b/components/Species/OnlineOnlyCards/SimilarSpecies.js
index f63ae15c9f..fad5042cbe 100644
--- a/components/Species/OnlineOnlyCards/SimilarSpecies.js
+++ b/components/Species/OnlineOnlyCards/SimilarSpecies.js
@@ -11,7 +11,6 @@ import { colors } from "../../../styles/global";
import styles from "../../../styles/species/similarSpecies";
import SpeciesNearbyList from "../../UIComponents/SpeciesNearby/SpeciesNearbyList";
import GreenText from "../../UIComponents/GreenText";
-import createUserAgent from "../../../utility/userAgent";
type Props = {
+id: ?number
@@ -59,11 +58,7 @@ const SimilarSpecies = ( { id }: Props ): Node => {
locale: i18n.locale
};
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { headers };
-
- inatjs.identifications.similar_species( params, options ).then( ( { results } ) => {
+ inatjs.identifications.similar_species( params ).then( ( { results } ) => {
const species = results.map( r => r.taxon );
if ( isActive ) {
diff --git a/components/Species/OnlineOnlyCards/SpeciesStats.js b/components/Species/OnlineOnlyCards/SpeciesStats.js
index 39b95eecc9..85d1edfc5a 100644
--- a/components/Species/OnlineOnlyCards/SpeciesStats.js
+++ b/components/Species/OnlineOnlyCards/SpeciesStats.js
@@ -10,7 +10,6 @@ import type { Node } from "react";
import i18n from "../../../i18n";
import { viewStyles, textStyles } from "../../../styles/species/speciesStats";
-import createUserAgent from "../../../utility/userAgent";
import StyledText from "../../UIComponents/StyledText";
type Props = {
@@ -44,11 +43,7 @@ const SpeciesStats = ( { loading, stats, region, id, seenDate }: Props ): Node =
taxon_id: id
};
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { headers };
-
- inatjs.observations.search( params, options ).then( ( { results } ) => {
+ inatjs.observations.search( params ).then( ( { results } ) => {
if ( results.length > 0 ) {
const taxonStats = results[0].taxon;
if ( taxonStats ) {
diff --git a/components/iNaturalist/hooks/inatHooks.js b/components/iNaturalist/hooks/inatHooks.js
index 243155ad22..21f4c7136e 100644
--- a/components/iNaturalist/hooks/inatHooks.js
+++ b/components/iNaturalist/hooks/inatHooks.js
@@ -7,7 +7,6 @@ import { useNetInfo } from "@react-native-community/netinfo";
import i18n from "../../../i18n";
import { capitalizeNames, shuffleList } from "../../../utility/helpers";
import { localizeAttributions } from "../../../utility/photoHelpers";
-import createUserAgent from "../../../utility/userAgent";
const useFetchPhotos = ( ): any => {
const netInfo = useNetInfo();
@@ -29,11 +28,7 @@ const useFetchPhotos = ( ): any => {
locale: i18n.locale
};
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { headers };
-
- inatjs.observations.search( params, options ).then( ( { results } ) => {
+ inatjs.observations.search( params ).then( ( { results } ) => {
const taxa = results.map( ( r ) => r.taxon );
const projectPhotos = [];
diff --git a/index.js b/index.js
index e68a493ba8..070d4d827d 100644
--- a/index.js
+++ b/index.js
@@ -1,10 +1,16 @@
// import "./wdyr";
import "react-native-gesture-handler";
+import inatjs from "inaturalistjs";
import * as React from "react";
import { AppRegistry } from "react-native";
import SeekApp from "./components/App";
import { name as appName } from "./app.json";
+import createUserAgent from "./utility/userAgent";
+
+inatjs.setConfig( {
+ userAgent: createUserAgent( )
+} );
const App = ( ) => (
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 030d94fe57..6e6a5f200e 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -4,14 +4,14 @@ PODS:
- React-Core
- CocoaAsyncSocket (7.6.5)
- DoubleConversion (1.1.6)
- - FBLazyVector (0.71.15)
- - FBReactNativeSpec (0.71.15):
+ - FBLazyVector (0.71.16)
+ - FBReactNativeSpec (0.71.16):
- RCT-Folly (= 2021.07.22.00)
- - RCTRequired (= 0.71.15)
- - RCTTypeSafety (= 0.71.15)
- - React-Core (= 0.71.15)
- - React-jsi (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
+ - RCTRequired (= 0.71.16)
+ - RCTTypeSafety (= 0.71.16)
+ - React-Core (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
- Flipper (0.125.0):
- Flipper-Folly (~> 2.6)
- Flipper-RSocket (~> 1.4)
@@ -75,9 +75,9 @@ PODS:
- FlipperKit/FlipperKitNetworkPlugin
- fmt (6.2.1)
- glog (0.3.5)
- - hermes-engine (0.71.15):
- - hermes-engine/Pre-built (= 0.71.15)
- - hermes-engine/Pre-built (0.71.15)
+ - hermes-engine (0.71.16):
+ - hermes-engine/Pre-built (= 0.71.16)
+ - hermes-engine/Pre-built (0.71.16)
- libevent (2.1.12)
- libwebp (1.2.3):
- libwebp/demux (= 1.2.3)
@@ -106,26 +106,26 @@ PODS:
- fmt (~> 6.2.1)
- glog
- libevent
- - RCTRequired (0.71.15)
- - RCTTypeSafety (0.71.15):
- - FBLazyVector (= 0.71.15)
- - RCTRequired (= 0.71.15)
- - React-Core (= 0.71.15)
- - React (0.71.15):
- - React-Core (= 0.71.15)
- - React-Core/DevSupport (= 0.71.15)
- - React-Core/RCTWebSocket (= 0.71.15)
- - React-RCTActionSheet (= 0.71.15)
- - React-RCTAnimation (= 0.71.15)
- - React-RCTBlob (= 0.71.15)
- - React-RCTImage (= 0.71.15)
- - React-RCTLinking (= 0.71.15)
- - React-RCTNetwork (= 0.71.15)
- - React-RCTSettings (= 0.71.15)
- - React-RCTText (= 0.71.15)
- - React-RCTVibration (= 0.71.15)
- - React-callinvoker (0.71.15)
- - React-Codegen (0.71.15):
+ - RCTRequired (0.71.16)
+ - RCTTypeSafety (0.71.16):
+ - FBLazyVector (= 0.71.16)
+ - RCTRequired (= 0.71.16)
+ - React-Core (= 0.71.16)
+ - React (0.71.16):
+ - React-Core (= 0.71.16)
+ - React-Core/DevSupport (= 0.71.16)
+ - React-Core/RCTWebSocket (= 0.71.16)
+ - React-RCTActionSheet (= 0.71.16)
+ - React-RCTAnimation (= 0.71.16)
+ - React-RCTBlob (= 0.71.16)
+ - React-RCTImage (= 0.71.16)
+ - React-RCTLinking (= 0.71.16)
+ - React-RCTNetwork (= 0.71.16)
+ - React-RCTSettings (= 0.71.16)
+ - React-RCTText (= 0.71.16)
+ - React-RCTVibration (= 0.71.16)
+ - React-callinvoker (0.71.16)
+ - React-Codegen (0.71.16):
- FBReactNativeSpec
- hermes-engine
- RCT-Folly
@@ -136,209 +136,209 @@ PODS:
- React-jsiexecutor
- ReactCommon/turbomodule/bridging
- ReactCommon/turbomodule/core
- - React-Core (0.71.15):
+ - React-Core (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-Core/Default (= 0.71.15)
- - React-cxxreact (= 0.71.15)
+ - React-Core/Default (= 0.71.16)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/CoreModulesHeaders (0.71.15):
+ - React-Core/CoreModulesHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/Default (0.71.15):
+ - React-Core/Default (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/DevSupport (0.71.15):
+ - React-Core/DevSupport (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-Core/Default (= 0.71.15)
- - React-Core/RCTWebSocket (= 0.71.15)
- - React-cxxreact (= 0.71.15)
+ - React-Core/Default (= 0.71.16)
+ - React-Core/RCTWebSocket (= 0.71.16)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-jsinspector (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-jsinspector (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTActionSheetHeaders (0.71.15):
+ - React-Core/RCTActionSheetHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTAnimationHeaders (0.71.15):
+ - React-Core/RCTAnimationHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTBlobHeaders (0.71.15):
+ - React-Core/RCTBlobHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTImageHeaders (0.71.15):
+ - React-Core/RCTImageHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTLinkingHeaders (0.71.15):
+ - React-Core/RCTLinkingHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTNetworkHeaders (0.71.15):
+ - React-Core/RCTNetworkHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTSettingsHeaders (0.71.15):
+ - React-Core/RCTSettingsHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTTextHeaders (0.71.15):
+ - React-Core/RCTTextHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTVibrationHeaders (0.71.15):
+ - React-Core/RCTVibrationHeaders (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- React-Core/Default
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-Core/RCTWebSocket (0.71.15):
+ - React-Core/RCTWebSocket (0.71.16):
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-Core/Default (= 0.71.15)
- - React-cxxreact (= 0.71.15)
+ - React-Core/Default (= 0.71.16)
+ - React-cxxreact (= 0.71.16)
- React-hermes
- - React-jsi (= 0.71.15)
- - React-jsiexecutor (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-jsi (= 0.71.16)
+ - React-jsiexecutor (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- Yoga
- - React-CoreModules (0.71.15):
+ - React-CoreModules (0.71.16):
- RCT-Folly (= 2021.07.22.00)
- - RCTTypeSafety (= 0.71.15)
- - React-Codegen (= 0.71.15)
- - React-Core/CoreModulesHeaders (= 0.71.15)
- - React-jsi (= 0.71.15)
+ - RCTTypeSafety (= 0.71.16)
+ - React-Codegen (= 0.71.16)
+ - React-Core/CoreModulesHeaders (= 0.71.16)
+ - React-jsi (= 0.71.16)
- React-RCTBlob
- - React-RCTImage (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-cxxreact (0.71.15):
+ - React-RCTImage (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-cxxreact (0.71.16):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-callinvoker (= 0.71.15)
- - React-jsi (= 0.71.15)
- - React-jsinspector (= 0.71.15)
- - React-logger (= 0.71.15)
- - React-perflogger (= 0.71.15)
- - React-runtimeexecutor (= 0.71.15)
- - React-hermes (0.71.15):
+ - React-callinvoker (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - React-jsinspector (= 0.71.16)
+ - React-logger (= 0.71.16)
+ - React-perflogger (= 0.71.16)
+ - React-runtimeexecutor (= 0.71.16)
+ - React-hermes (0.71.16):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- RCT-Folly/Futures (= 2021.07.22.00)
- - React-cxxreact (= 0.71.15)
+ - React-cxxreact (= 0.71.16)
- React-jsi
- - React-jsiexecutor (= 0.71.15)
- - React-jsinspector (= 0.71.15)
- - React-perflogger (= 0.71.15)
- - React-jsi (0.71.15):
+ - React-jsiexecutor (= 0.71.16)
+ - React-jsinspector (= 0.71.16)
+ - React-perflogger (= 0.71.16)
+ - React-jsi (0.71.16):
- boost (= 1.76.0)
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-jsiexecutor (0.71.15):
+ - React-jsiexecutor (0.71.16):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-cxxreact (= 0.71.15)
- - React-jsi (= 0.71.15)
- - React-perflogger (= 0.71.15)
- - React-jsinspector (0.71.15)
- - React-logger (0.71.15):
+ - React-cxxreact (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - React-perflogger (= 0.71.16)
+ - React-jsinspector (0.71.16)
+ - React-logger (0.71.16):
- glog
- react-native-cameraroll (5.9.0):
- React-Core
@@ -372,90 +372,90 @@ PODS:
- React
- react-native-webview (11.26.1):
- React-Core
- - React-perflogger (0.71.15)
- - React-RCTActionSheet (0.71.15):
- - React-Core/RCTActionSheetHeaders (= 0.71.15)
- - React-RCTAnimation (0.71.15):
+ - React-perflogger (0.71.16)
+ - React-RCTActionSheet (0.71.16):
+ - React-Core/RCTActionSheetHeaders (= 0.71.16)
+ - React-RCTAnimation (0.71.16):
- RCT-Folly (= 2021.07.22.00)
- - RCTTypeSafety (= 0.71.15)
- - React-Codegen (= 0.71.15)
- - React-Core/RCTAnimationHeaders (= 0.71.15)
- - React-jsi (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-RCTAppDelegate (0.71.15):
+ - RCTTypeSafety (= 0.71.16)
+ - React-Codegen (= 0.71.16)
+ - React-Core/RCTAnimationHeaders (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-RCTAppDelegate (0.71.16):
- RCT-Folly
- RCTRequired
- RCTTypeSafety
- React-Core
- ReactCommon/turbomodule/core
- - React-RCTBlob (0.71.15):
+ - React-RCTBlob (0.71.16):
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-Codegen (= 0.71.15)
- - React-Core/RCTBlobHeaders (= 0.71.15)
- - React-Core/RCTWebSocket (= 0.71.15)
- - React-jsi (= 0.71.15)
- - React-RCTNetwork (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-RCTImage (0.71.15):
+ - React-Codegen (= 0.71.16)
+ - React-Core/RCTBlobHeaders (= 0.71.16)
+ - React-Core/RCTWebSocket (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - React-RCTNetwork (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-RCTImage (0.71.16):
- RCT-Folly (= 2021.07.22.00)
- - RCTTypeSafety (= 0.71.15)
- - React-Codegen (= 0.71.15)
- - React-Core/RCTImageHeaders (= 0.71.15)
- - React-jsi (= 0.71.15)
- - React-RCTNetwork (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-RCTLinking (0.71.15):
- - React-Codegen (= 0.71.15)
- - React-Core/RCTLinkingHeaders (= 0.71.15)
- - React-jsi (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-RCTNetwork (0.71.15):
+ - RCTTypeSafety (= 0.71.16)
+ - React-Codegen (= 0.71.16)
+ - React-Core/RCTImageHeaders (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - React-RCTNetwork (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-RCTLinking (0.71.16):
+ - React-Codegen (= 0.71.16)
+ - React-Core/RCTLinkingHeaders (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-RCTNetwork (0.71.16):
- RCT-Folly (= 2021.07.22.00)
- - RCTTypeSafety (= 0.71.15)
- - React-Codegen (= 0.71.15)
- - React-Core/RCTNetworkHeaders (= 0.71.15)
- - React-jsi (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-RCTSettings (0.71.15):
+ - RCTTypeSafety (= 0.71.16)
+ - React-Codegen (= 0.71.16)
+ - React-Core/RCTNetworkHeaders (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-RCTSettings (0.71.16):
- RCT-Folly (= 2021.07.22.00)
- - RCTTypeSafety (= 0.71.15)
- - React-Codegen (= 0.71.15)
- - React-Core/RCTSettingsHeaders (= 0.71.15)
- - React-jsi (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-RCTText (0.71.15):
- - React-Core/RCTTextHeaders (= 0.71.15)
- - React-RCTVibration (0.71.15):
+ - RCTTypeSafety (= 0.71.16)
+ - React-Codegen (= 0.71.16)
+ - React-Core/RCTSettingsHeaders (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-RCTText (0.71.16):
+ - React-Core/RCTTextHeaders (= 0.71.16)
+ - React-RCTVibration (0.71.16):
- RCT-Folly (= 2021.07.22.00)
- - React-Codegen (= 0.71.15)
- - React-Core/RCTVibrationHeaders (= 0.71.15)
- - React-jsi (= 0.71.15)
- - ReactCommon/turbomodule/core (= 0.71.15)
- - React-runtimeexecutor (0.71.15):
- - React-jsi (= 0.71.15)
- - ReactCommon/turbomodule/bridging (0.71.15):
+ - React-Codegen (= 0.71.16)
+ - React-Core/RCTVibrationHeaders (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - ReactCommon/turbomodule/core (= 0.71.16)
+ - React-runtimeexecutor (0.71.16):
+ - React-jsi (= 0.71.16)
+ - ReactCommon/turbomodule/bridging (0.71.16):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-callinvoker (= 0.71.15)
- - React-Core (= 0.71.15)
- - React-cxxreact (= 0.71.15)
- - React-jsi (= 0.71.15)
- - React-logger (= 0.71.15)
- - React-perflogger (= 0.71.15)
- - ReactCommon/turbomodule/core (0.71.15):
+ - React-callinvoker (= 0.71.16)
+ - React-Core (= 0.71.16)
+ - React-cxxreact (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - React-logger (= 0.71.16)
+ - React-perflogger (= 0.71.16)
+ - ReactCommon/turbomodule/core (0.71.16):
- DoubleConversion
- glog
- hermes-engine
- RCT-Folly (= 2021.07.22.00)
- - React-callinvoker (= 0.71.15)
- - React-Core (= 0.71.15)
- - React-cxxreact (= 0.71.15)
- - React-jsi (= 0.71.15)
- - React-logger (= 0.71.15)
- - React-perflogger (= 0.71.15)
+ - React-callinvoker (= 0.71.16)
+ - React-Core (= 0.71.16)
+ - React-cxxreact (= 0.71.16)
+ - React-jsi (= 0.71.16)
+ - React-logger (= 0.71.16)
+ - React-perflogger (= 0.71.16)
- ReactNativeExceptionHandler (2.10.10):
- React-Core
- ReactNativeWebPFormat (1.2.0):
@@ -807,8 +807,8 @@ SPEC CHECKSUMS:
BVLinearGradient: 880f91a7854faff2df62518f0281afb1c60d49a3
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54
- FBLazyVector: d06bbe89e3a89ee90c4deab1c84bf306ffa5ed37
- FBReactNativeSpec: d5d9871fe5c4b61787a3aed4f9e5529908e22069
+ FBLazyVector: 9840513ec2766e31fb9e34c2dabb2c4671400fcd
+ FBReactNativeSpec: 76141e46f67b395d7d4e94925dfeba0dbd680ba1
Flipper: 26fc4b7382499f1281eb8cb921e5c3ad6de91fe0
Flipper-Boost-iOSX: fd1e2b8cbef7e662a122412d7ac5f5bea715403c
Flipper-DoubleConversion: 2dc99b02f658daf147069aad9dbd29d8feb06d30
@@ -820,24 +820,24 @@ SPEC CHECKSUMS:
FlipperKit: cbdee19bdd4e7f05472a66ce290f1b729ba3cb86
fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9
glog: 04b94705f318337d7ead9e6d17c019bd9b1f6b1b
- hermes-engine: 04437e4291ede4af0c76c25e7efd0eacb8fd25e5
+ hermes-engine: 2382506846564caf4152c45390dc24f08fce7057
libevent: 4049cae6c81cdb3654a443be001fb9bdceff7913
libwebp: 60305b2e989864154bd9be3d772730f08fc6a59c
OpenSSL-Universal: ebc357f1e6bc71fa463ccb2fe676756aff50e88c
RCT-Folly: 424b8c9a7a0b9ab2886ffe9c3b041ef628fd4fb1
- RCTRequired: 4ce9da4fa2f8a134f62c70e4ab9d971b9d640f41
- RCTTypeSafety: decfec2884f0c523f799600d2b6105cdc15e13db
- React: ca22a0b3f199b6acac95416ef7eb96cc84a55103
- React-callinvoker: 366d4449bc2901e89da3f30c6d203c491d060350
- React-Codegen: f85e26699043bc9015552c21bbf0da24d9e8c6ad
- React-Core: 169395096d2c22872e22cd74e3694a4b041cce76
- React-CoreModules: 8c2a970d9fd778e6016b9297f2c2dddbe78b04ec
- React-cxxreact: e61b3e92887bb8fc241326b83d667953ff732923
- React-hermes: 476b93736605b457d1bc390336656c94460205b7
- React-jsi: 9fe8766963aa3aea90bbd477ea63255eb847d404
- React-jsiexecutor: e0cde8d57cee18097b3d2b1bf6404ad25dd8d33b
- React-jsinspector: 4ade58a6a355d97a53f847543b14f4cb5033cb70
- React-logger: 56699550750c013096a11dce3bc996e7dd583835
+ RCTRequired: 44a3cda52ccac0be738fbf43fef90f3546a48c52
+ RCTTypeSafety: da7fbf9826fc898ca8b10dc840f2685562039a64
+ React: defd955b6d6ffb9791bb66dee08d90b87a8e2c0c
+ React-callinvoker: 39ea57213d56ec9c527d51bd0dfb45cbb12ef447
+ React-Codegen: 71cbc1bc384f9d19a41e4d00dfd0e7762ec5ef4a
+ React-Core: 898cb2f7785640e21d381b23fc64a2904628b368
+ React-CoreModules: 7f71e7054395d61585048061a66d67b58d3d27b7
+ React-cxxreact: 57fca29dd6995de0ee360980709c4be82d40cda1
+ React-hermes: 33229fc1867df496665b36b222a82a0f850bcae1
+ React-jsi: 3a55652789df6ddd777cce9601bf000e18d6b9df
+ React-jsiexecutor: 9b2a87f674f30da4706af52520e4860974cec149
+ React-jsinspector: b3b341764ccda14f3659c00a9bc5b098b334db2b
+ React-logger: dc96fadd2f7f6bc38efc3cfb5fef876d4e6290a2
react-native-cameraroll: fad943a324a4d893c249cabe6d0608c807e0e58f
react-native-geocoder: b9e3513006fbbfda0bf0ef9793317a8d4c861406
react-native-geolocation-service: 608e1da71a1ac31b4de64d9ef2815f697978c55b
@@ -854,19 +854,19 @@ SPEC CHECKSUMS:
react-native-safe-area-context: 7aa8e6d9d0f3100a820efb1a98af68aa747f9284
react-native-uuid-generator: 82ffa2a1cac94242ebed52c4dedc5044d3412717
react-native-webview: 9f111dfbcfc826084d6c507f569e5e03342ee1c1
- React-perflogger: 0cc42978a483a47f3696171dac2e7033936fc82d
- React-RCTActionSheet: ea922b476d24f6d40b8e02ac3228412bd3637468
- React-RCTAnimation: 7be2c148398eaa5beac950b2b5ec7102389ec3ad
- React-RCTAppDelegate: c7bf369749348d9358035c2dcebd9aa4f3f55031
- React-RCTBlob: c1e1e53b334f36b3311c3206036c99f4e5406cdf
- React-RCTImage: 4a2cd71dd8c1954cfab50e244b269d47bdcc76da
- React-RCTLinking: c8ff9fe7f5741afc05894c7da4a0d2bd1458f247
- React-RCTNetwork: 93c329744baa8c04057a5a29b790618e0c2a6a68
- React-RCTSettings: bcd09cd3ee26967bdfbc8af174404b8ffabfbc3c
- React-RCTText: c525eb78cfe9489f130fa69004ff081a5ae33e06
- React-RCTVibration: a97783e3645ddf852e34da2e015656e309f3a083
- React-runtimeexecutor: 8f2ddd9db7874ec7de84f5c55d73aeaaf82908e2
- ReactCommon: 309d965cb51f058d07dea65bc04dcf462911f0a4
+ React-perflogger: c944b06edad34f5ecded0f29a6e66290a005d365
+ React-RCTActionSheet: fa467f37777dacba2c72da4be7ae065da4482d7d
+ React-RCTAnimation: 0591ee5f9e3d8c864a0937edea2165fe968e7099
+ React-RCTAppDelegate: 8b7f60103a83ad1670bda690571e73efddba29a0
+ React-RCTBlob: 082e8612f48b0ec12ca6dc949fb7c310593eff83
+ React-RCTImage: 6300660ef04d0e8a710ad9ea5d2fb4d9521c200d
+ React-RCTLinking: 7703ee1b10d3568c143a489ae74adc419c3f3ef3
+ React-RCTNetwork: 5748c647e09c66b918f81ae15ed7474327f653be
+ React-RCTSettings: 8c8a84ee363db9cbc287c8b8f2fb782acf7ba414
+ React-RCTText: d5e53c0741e3e2df91317781e993b5e42bd70448
+ React-RCTVibration: 052dd488ba95f461a37c992b9e01bd4bcc59a7b6
+ React-runtimeexecutor: b5abe02558421897cd9f73d4f4b6adb4bc297083
+ ReactCommon: a1a263d94f02a0dc8442f341d5a11b3d7a9cd44d
ReactNativeExceptionHandler: b11ff67c78802b2f62eed0e10e75cb1ef7947c60
ReactNativeWebPFormat: f5f043cc9ded052e535c3869ec341f91ba5a67c5
RealmJS: 5af7e3b3c1b6de6a1f9bd62bfbf4caca749fa708
@@ -891,7 +891,7 @@ SPEC CHECKSUMS:
SocketRocket: fccef3f9c5cedea1353a9ef6ada904fde10d6608
VisionCamera: 523b49054bee9dace64189ab6631cb41e8b83fe0
VisionCameraPluginInatVision: 79bb258db75218889c74d0897ecba676492c4def
- Yoga: 68c9c592c3e80ec37ff28db20eedb13d84aae5df
+ Yoga: e29645ec5a66fb00934fad85338742d1c247d4cb
YogaKit: f782866e155069a2cca2517aafea43200b01fd5a
PODFILE CHECKSUM: 58e8d3aa699d6b32fb4c1e764273a8b0beb6c57e
diff --git a/ios/Seek.xcodeproj/project.pbxproj b/ios/Seek.xcodeproj/project.pbxproj
index 68d1c409fa..69ff19fb75 100644
--- a/ios/Seek.xcodeproj/project.pbxproj
+++ b/ios/Seek.xcodeproj/project.pbxproj
@@ -650,11 +650,7 @@
"-DFOLLY_MOBILE=1",
"-DFOLLY_USE_LIBCPP=1",
);
- OTHER_LDFLAGS = (
- "$(inherited)",
- "-Wl",
- "-ld_classic",
- );
+ OTHER_LDFLAGS = "$(inherited)";
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
};
@@ -718,11 +714,7 @@
"-DFOLLY_MOBILE=1",
"-DFOLLY_USE_LIBCPP=1",
);
- OTHER_LDFLAGS = (
- "$(inherited)",
- "-Wl",
- "-ld_classic",
- );
+ OTHER_LDFLAGS = "$(inherited)";
REACT_NATIVE_PATH = "${PODS_ROOT}/../../node_modules/react-native";
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
diff --git a/ios/Seek/Info.plist b/ios/Seek/Info.plist
index c2a09ee3d2..879d7e085d 100644
--- a/ios/Seek/Info.plist
+++ b/ios/Seek/Info.plist
@@ -17,11 +17,11 @@
CFBundlePackageType
APPL
CFBundleShortVersionString
- 2.15.6
+ 2.15.7
CFBundleSignature
????
CFBundleVersion
- 332
+ 335
ITSAppUsesNonExemptEncryption
LSApplicationQueriesSchemes
diff --git a/package-lock.json b/package-lock.json
index 80382a8e63..87e9c816ea 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "seek",
- "version": "2.15.6",
+ "version": "2.15.7",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "seek",
- "version": "2.15.6",
+ "version": "2.15.7",
"hasInstallScript": true,
"dependencies": {
"@formidable-webview/webshell": "^2.6.0",
@@ -30,7 +30,7 @@
"i18n-js": "^4.3.2",
"inaturalistjs": "github:inaturalist/inaturalistjs",
"react": "18.2.0",
- "react-native": "0.71.15",
+ "react-native": "0.71.16",
"react-native-check-app-install": "github:redpandatronicsuk/react-native-check-app-install",
"react-native-check-box": "^2.1.7",
"react-native-device-info": "^10.12.0",
@@ -73,7 +73,7 @@
"react-native-webp-format": "^1.2.0",
"react-native-webview": "^11.26.1",
"realm": "^12.5.1",
- "vision-camera-plugin-inatvision": "github:inaturalist/vision-camera-plugin-inatvision"
+ "vision-camera-plugin-inatvision": "github:inaturalist/vision-camera-plugin-inatvision#image-prediction-from-file"
},
"devDependencies": {
"@babel/core": "^7.20.0",
@@ -9874,7 +9874,7 @@
},
"node_modules/inaturalistjs": {
"version": "2.9.0",
- "resolved": "git+ssh://git@github.com/inaturalist/inaturalistjs.git#879aaa2182cef4e5104874076f07f77fcbbdc060",
+ "resolved": "git+ssh://git@github.com/inaturalist/inaturalistjs.git#9cbfcb1a004c90b26e812b7bf70da7fc8044a578",
"license": "MIT",
"dependencies": {
"cross-fetch": "^3.1.5",
@@ -15734,9 +15734,9 @@
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
"node_modules/react-native": {
- "version": "0.71.15",
- "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.71.15.tgz",
- "integrity": "sha512-CFEoqc0hkINRWvBe86B3EK2fyVjK0//SoqI2jkRAz4NZm9R05+rHIFyT6wGQCLM3ea++KDkC0pqRVasMbqJc0Q==",
+ "version": "0.71.16",
+ "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.71.16.tgz",
+ "integrity": "sha512-fyeudppU0xATgGweyPVcOgYrhLAgBvvIEqUfG5wD+U0ZpVe3f7YQpDsqVOrD0ScomWmraFw634D4zFyenHMSAw==",
"dependencies": {
"@jest/create-cache-key-function": "^29.2.1",
"@react-native-community/cli": "10.2.6",
@@ -18095,7 +18095,7 @@
},
"node_modules/vision-camera-plugin-inatvision": {
"version": "0.1.0",
- "resolved": "git+ssh://git@github.com/inaturalist/vision-camera-plugin-inatvision.git#f0649e719f0045acb6b0a02e4bed71119a26c599",
+ "resolved": "git+ssh://git@github.com/inaturalist/vision-camera-plugin-inatvision.git#b7a6d6aabb78630b72aa709455c24af40a1f6b08",
"license": "MIT",
"engines": {
"node": ">= 16.0.0"
@@ -25557,7 +25557,7 @@
"integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="
},
"inaturalistjs": {
- "version": "git+ssh://git@github.com/inaturalist/inaturalistjs.git#879aaa2182cef4e5104874076f07f77fcbbdc060",
+ "version": "git+ssh://git@github.com/inaturalist/inaturalistjs.git#9cbfcb1a004c90b26e812b7bf70da7fc8044a578",
"from": "inaturalistjs@github:inaturalist/inaturalistjs",
"requires": {
"cross-fetch": "^3.1.5",
@@ -29905,9 +29905,9 @@
"integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
},
"react-native": {
- "version": "0.71.15",
- "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.71.15.tgz",
- "integrity": "sha512-CFEoqc0hkINRWvBe86B3EK2fyVjK0//SoqI2jkRAz4NZm9R05+rHIFyT6wGQCLM3ea++KDkC0pqRVasMbqJc0Q==",
+ "version": "0.71.16",
+ "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.71.16.tgz",
+ "integrity": "sha512-fyeudppU0xATgGweyPVcOgYrhLAgBvvIEqUfG5wD+U0ZpVe3f7YQpDsqVOrD0ScomWmraFw634D4zFyenHMSAw==",
"requires": {
"@jest/create-cache-key-function": "^29.2.1",
"@react-native-community/cli": "10.2.6",
@@ -31671,8 +31671,8 @@
"integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg=="
},
"vision-camera-plugin-inatvision": {
- "version": "git+ssh://git@github.com/inaturalist/vision-camera-plugin-inatvision.git#f0649e719f0045acb6b0a02e4bed71119a26c599",
- "from": "vision-camera-plugin-inatvision@github:inaturalist/vision-camera-plugin-inatvision",
+ "version": "git+ssh://git@github.com/inaturalist/vision-camera-plugin-inatvision.git#b7a6d6aabb78630b72aa709455c24af40a1f6b08",
+ "from": "vision-camera-plugin-inatvision@github:inaturalist/vision-camera-plugin-inatvision#image-prediction-from-file",
"requires": {}
},
"vlq": {
diff --git a/package.json b/package.json
index b42d772ee0..5dab96ddf3 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "seek",
- "version": "2.15.6",
+ "version": "2.15.7",
"description": "Seek by iNaturalist repo",
"private": true,
"scripts": {
@@ -44,7 +44,7 @@
"i18n-js": "^4.3.2",
"inaturalistjs": "github:inaturalist/inaturalistjs",
"react": "18.2.0",
- "react-native": "0.71.15",
+ "react-native": "0.71.16",
"react-native-check-app-install": "github:redpandatronicsuk/react-native-check-app-install",
"react-native-check-box": "^2.1.7",
"react-native-device-info": "^10.12.0",
@@ -87,7 +87,7 @@
"react-native-webp-format": "^1.2.0",
"react-native-webview": "^11.26.1",
"realm": "^12.5.1",
- "vision-camera-plugin-inatvision": "github:inaturalist/vision-camera-plugin-inatvision"
+ "vision-camera-plugin-inatvision": "github:inaturalist/vision-camera-plugin-inatvision#image-prediction-from-file"
},
"devDependencies": {
"@babel/core": "^7.20.0",
diff --git a/utility/customHooks.js b/utility/customHooks.js
index 1d1354f9c4..125b0229f5 100644
--- a/utility/customHooks.js
+++ b/utility/customHooks.js
@@ -16,7 +16,6 @@ import { checkLocationPermissions } from "./androidHelpers.android";
import { getTaxonCommonName } from "./commonNamesHelpers";
import realmConfig from "../models";
import { createRegion } from "./locationHelpers";
-import createUserAgent from "./userAgent";
const useScrollToTop = (
scrollView: {
@@ -416,10 +415,7 @@ const useUploadedObservationCount = ( {
if ( year ) {
params = {...params, year};
}
- const headers = {};
- headers["user-agent"] = createUserAgent();
- const options = { headers };
- const response = await inatjs.observations.search( params, options );
+ const response = await inatjs.observations.search( params );
let count = response.total_results;
if ( !year ) {
diff --git a/utility/loginHelpers.js b/utility/loginHelpers.js
index 8e2298b87f..516bf79af6 100644
--- a/utility/loginHelpers.js
+++ b/utility/loginHelpers.js
@@ -3,7 +3,6 @@ import AsyncStorage from "@react-native-async-storage/async-storage";
import inatjs from "inaturalistjs";
import { fetchJSONWebToken } from "./tokenHelpers";
-import createUserAgent from "./userAgent";
const checkIsEmailValid = ( email: string ): boolean => {
if ( email && email.length > 5 ) {
@@ -59,9 +58,7 @@ const formatError = ( error: string ): string => {
const fetchUserProfile = async ( login: string ): Promise