History log of /expo/ios/Exponent/Versioned/Core/UniversalModules/EXUpdatesBinding.h (Results 1 – 10 of 10)
Revision Date Author Comments
# 128e1e19 10-Mar-2023 Will Schurman <[email protected]>

[exupdates][ios] Fix odd nullability issue in expo module (#21655)

# Why

1. `EXUpdatesBinding.config` returns nil when called here
2. This is because `EXUpdatesManager.configForScopeKey` returns

[exupdates][ios] Fix odd nullability issue in expo module (#21655)

# Why

1. `EXUpdatesBinding.config` returns nil when called here
2. This is because `EXUpdatesManager.configForScopeKey` returns nil for
what I assume is the home scope key.

I checked and it was also the case prior to the swift conversion, but
didn't crash because objective-c is more nil-selector-call-lenient.

# How

Change types to be nullable.

# Test Plan

Run expo go, see no more crash.

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `expo prebuild` & EAS Build (eg:
updated a module plugin).

show more ...


# 19aed303 03-Mar-2023 Will Schurman <[email protected]>

[exupdates][ios] Convert database to swift (#21450)

# Why

This converts a good chunk of the EXUpdates database code to swift.

# How

Convert manually. Unfortunately this couldn't be broken u

[exupdates][ios] Convert database to swift (#21450)

# Why

This converts a good chunk of the EXUpdates database code to swift.

# How

Convert manually. Unfortunately this couldn't be broken up further due
to OpaquePointer return type incompatibility (can't return OpaquePointer
over bridge).

# Test Plan

Run all tests and build app.

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `expo prebuild` & EAS Build (eg:
updated a module plugin).

show more ...


# ae827301 01-Mar-2023 Will Schurman <[email protected]>

[expo-updates][ios] Convert selection policies to swift (#21394)

# Why

This converts EXUpdatesSelectionPolicy stuff to swift.

# How

Manually convert.

# Test Plan

Run all tests (will u

[expo-updates][ios] Convert selection policies to swift (#21394)

# Why

This converts EXUpdatesSelectionPolicy stuff to swift.

# How

Manually convert.

# Test Plan

Run all tests (will update tests in a follow-up PR to ensure they don't
both break accidentally).

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `expo prebuild` & EAS Build (eg:
updated a module plugin).

show more ...


# 5697f03e 01-Mar-2023 Will Schurman <[email protected]>

[expo-updates][ios] Convert EXUpdatesConfig to swift (#21391)

# Why

Converting one more class to swift.

# How

Convert manually.

# Test Plan

Run all tests and build.

# Checklist

[expo-updates][ios] Convert EXUpdatesConfig to swift (#21391)

# Why

Converting one more class to swift.

# How

Convert manually.

# Test Plan

Run all tests and build.

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `expo prebuild` & EAS Build (eg:
updated a module plugin).

show more ...


# 0b66f7dd 24-Feb-2023 Will Schurman <[email protected]>

[exupdates][ios] Start converting to swift (#21320)

# Why

Start the conversion process of the expo-updates library by converting
EXUpdatesUpdate and subclasses.

# How

Convert manually... l

[exupdates][ios] Start converting to swift (#21320)

# Why

Start the conversion process of the expo-updates library by converting
EXUpdatesUpdate and subclasses.

# How

Convert manually... lol.

The main note is that we can't use swift nullability/type forcing
operators (`!`, `as!`, `as?`) etc since the previous implementation was
relying upon NSAssert to raise an NSException which is caught in the
calling code, so I added new extension functions to replicate the
behavior (similar to EXManifests util functions).

# Test Plan

Build and run all tests.

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `expo prebuild` & EAS Build (eg:
updated a module plugin).

show more ...


# efd75dec 16-Aug-2021 Tomasz Sapeta <[email protected]>

[ios] Migrate all remaining native code


# 167fd314 30-Jun-2021 Will Schurman <[email protected]>

[ios] Use stable manifest ID where applicable (#13280)


# 96495090 23-Apr-2021 Eric Samelson <[email protected]>

[expo-updates][ios] split SelectionPolicy into 3 separate interfaces (#12682)


# 40b2cdcb 14-Aug-2020 Eric Samelson <[email protected]>

[android][ios] add full infrastructure and implementation for UpdatesBinding (#9694)

# Why

This PR adds the complete infrastructure for allowing the new expo-updates exported JS module to work as

[android][ios] add full infrastructure and implementation for UpdatesBinding (#9694)

# Why

This PR adds the complete infrastructure for allowing the new expo-updates exported JS module to work as a scoped module in the managed workflow codebase and communicate with the `Kernel` classes.

# How

For iOS, I followed the pattern that was used in other scoped modules like Sensors. EXUpdatesBinding is a scoped module that is given access to a pair of kernel services, each of which have access to the AppLoader (and therefore expo-updates state) through the EXKernelAppRecord. All of the properties are just threaded through.

For Android, there were fewer steps to thread through but we weren't keeping a reference to the AppLoader anywhere. I added a simple map in the Kernel for this, which the scoped UpdatesBinding has access to through the KernelProvider.

Finally, since the `Updates.expo.ts` polyfill is no longer needed for the unversioned managed workflow, I removed this code from expo-updates.

# Test Plan

Backport these changes to SDK 38 and add a versioned SDK 38 copy of the expo-updates module, and switch EXKernelAppRecord/Kernel to use the new ExpoUpdatesAppLoader so expo-updates is used.

I launched a test published app created by installing expo-updates and then manually deleting the `build/Updates.expo.*` files from node_modules. All the exported functions from expo-updates worked and assets were resolved to the copies on disk downloaded by expo-updates ��

show more ...


# 92e817a0 01-Aug-2020 Eric Samelson <[email protected]>

[ios] add EXAppLoaderExpoUpdates and stub EXUpdatesBinding