34 KiB
Changelog
Unpublished
🛠 Breaking changes
🎉 New features
🐛 Bug fixes
💡 Others
55.0.10 — 2026-02-26
This version does not introduce any user-facing changes.
55.0.9 — 2026-02-25
🐛 Bug fixes
- Fix incorrect return types for
FileandDirectorystatic methods. (#43282 by @alanjhughes)
55.0.8 — 2026-02-20
This version does not introduce any user-facing changes.
55.0.7 — 2026-02-20
🐛 Bug fixes
55.0.6 — 2026-02-16
🐛 Bug fixes
- [Android] Fix bundle directory listing returning incorrect names, URIs and trailing slashes for files. (#42882 by @aleqsio)
55.0.5 — 2026-02-08
🎉 New features
55.0.4 — 2026-02-03
This version does not introduce any user-facing changes.
55.0.3 — 2026-01-27
This version does not introduce any user-facing changes.
55.0.2 — 2026-01-26
This version does not introduce any user-facing changes.
55.0.1 — 2026-01-22
This version does not introduce any user-facing changes.
55.0.0 — 2026-01-21
🐛 Bug fixes
- [file-system] Fix package exports for Typescript projects (#39543 by @smoores-dev)
💡 Others
- [Android] Add
android:maxSdkVersionannotation toREAD_EXTERNAL_STORAGEandWRITE_EXTERNAL_STORAGEpermissions. (#40976 by @behenate) - [Android] Removed references to legacy native modules API. (#41791 by @lukmccall)
19.0.20 - 2025-12-05
This version does not introduce any user-facing changes.
19.0.19 - 2025-11-18
🎉 New features
🐛 Bug fixes
19.0.18 - 2025-11-17
This version does not introduce any user-facing changes.
19.0.17 - 2025-10-09
🐛 Bug fixes
19.0.16 - 2025-10-01
🎉 New features
- Add write options for base64 encoded bytes. (#39963 by @aleqsio)
- [iOS] Add file sharing config options (#39286 by @kosmydel)
🐛 Bug fixes
- Fix typedoc in the File class. (#40064 by @aleqsio)
- [Android] Fix getContentUri. (#40001 by @aleqsio)
19.0.15 - 2025-09-22
🎉 New features
19.0.14 — 2025-09-13
This version does not introduce any user-facing changes.
19.0.13 — 2025-09-12
🐛 Bug fixes
- [Android] Fix incorrect AndroidManifest.xml location. (#39134 by @robertying)
19.0.12 — 2025-09-11
This version does not introduce any user-facing changes.
19.0.11 — 2025-09-10
🎉 New features
🐛 Bug fixes
- Add minimal web stub to fix broken imports on web (#39400 by @LeonDvlpmnt)
19.0.10 — 2025-09-08
This version does not introduce any user-facing changes.
19.0.9 — 2025-09-03
🎉 New features
🐛 Bug fixes
- [iOS] Fix tvOS compile error. (#39345 by @douglowder)
19.0.8 — 2025-09-02
🎉 New features
19.0.7 — 2025-08-31
🎉 New features
- Add
renamemethod for files and directories (#39138 by @kosmydel) - Add
idempotentoption for creating directories (#39121 by @kosmydel)
19.0.6 — 2025-08-26
This version does not introduce any user-facing changes.
19.0.5 — 2025-08-25
This version does not introduce any user-facing changes.
19.0.4 — 2025-08-21
This version does not introduce any user-facing changes.
19.0.3 — 2025-08-18
🐛 Bug fixes
- Fixed type definition for
textSync()to returnstringinstead ofPromise<string>(#38898 by @LeonDvlpmnt)
19.0.2 — 2025-08-16
This version does not introduce any user-facing changes.
19.0.1 — 2025-08-15
💡 Others
- Update typings for
typescript@5.9(#38833 by @kitten) - Change Constants to Constant/Property. (#38926 by @jakex7)
19.0.0 — 2025-08-13
🛠 Breaking changes
- Make the modern filesystem API the default, move previous one to
expo-file-system/legacy. (#38404 by @aleqsio)
🎉 New features
- [android] Add file and directory pickers. (#38455 by @aleqsio)
- Add support for asset uris. (#38785 by @aleqsio)
- Make file implement blob interface directly. (#38160 by @aleqsio)
- Add directory info function (#37910 by @Wenszel)
- Add total and available sizes, directory sizes. (#37594 by @aleqsio)
- Add info method, modificationTime and creationTime properties to file-system/next. (#37505 by @Wenszel)
- Add support for custom headers in downloadFileAsync (#36108 by @leonhh)
- [next] Add limited support for SAF Uris. (#38075 by @aleqsio)
- [next] Add full support for SAF Uris. (#38075 by @aleqsio)
🐛 Bug fixes
- Update exists logic to align with documentation (#37692 by @Wenszel)
- Fix memory usage issue in getInfoAsync (#37417 by @Wenszel)
- Improved type safety in the FileSystem module to support tsconfig setups with stricter rules than the default. (#37107 by @hirbod)
- Added required modifiers in the FileSystem module to support tsconfig setups with stricter rules than the default. (#37467
18.1.11 - 2025-07-01
💡 Others
- Remove "Please" from warnings and errors (#36862 by @brentvatne)
18.1.10 — 2025-05-08
🐛 Bug fixes
- Fix the
UploadTask.uploadAsyncmethod's return type did not indicate that the method could resolve tonull. (#36476 by @DoctorJohn)
18.1.9 — 2025-05-03
This version does not introduce any user-facing changes.
18.1.8 — 2025-04-30
This version does not introduce any user-facing changes.
18.1.7 — 2025-04-28
💡 Others
- Remove
web-streams-polyfillin favor ofexposupport. (#36407 by @EvanBacon)
18.1.6 — 2025-04-25
This version does not introduce any user-facing changes.
18.1.5 — 2025-04-21
This version does not introduce any user-facing changes.
18.1.4 — 2025-04-14
This version does not introduce any user-facing changes.
18.1.3 — 2025-04-11
This version does not introduce any user-facing changes.
18.1.2 — 2025-04-11
This version does not introduce any user-facing changes.
18.1.1 — 2025-04-09
This version does not introduce any user-facing changes.
18.1.0 — 2025-04-04
🛠 Breaking changes
- Bump minimum macOS version to 11.0. (#34980 by @gabrieldonadel)
🎉 New features
🐛 Bug fixes
- [next] Fix inconsistent behavior when using special chars in filenames. (#35801 by @aleqsio)
- Fix expo-updates breaking filesystem on Android API 24 and 25. (#33694 by @aleqsio)
💡 Others
- [Android] Started using expo modules gradle plugin. (#34176 by @lukmccall)
- [apple] Migrate remaining
expo-module.config.jsonto unified platform syntax. (#34445 by @reichhartd) - [iOS] Fix warnings which will become errors in Swift 6. (#35288 by @behenate)
18.0.12 - 2025-03-20
This version does not introduce any user-facing changes.
18.0.11 - 2025-02-19
This version does not introduce any user-facing changes.
18.0.10 - 2025-02-06
This version does not introduce any user-facing changes.
18.0.9 - 2025-02-03
This version does not introduce any user-facing changes.
18.0.8 - 2025-01-31
🐛 Bug fixes
- Fix types that are erroring in default template. (#34520 by @aleqsio)
- [Android] fixed issue with deleting a directory with children (#34550 by @chrfalch)
18.0.7 - 2025-01-10
This version does not introduce any user-facing changes.
18.0.6 - 2024-12-16
🎉 New features
18.0.5 - 2024-12-10
🐛 Bug fixes
- [macOS][next]: Add availability checks (#33504 by @hassankhan)
18.0.4 — 2024-11-19
🎉 New features
18.0.3 — 2024-11-13
🎉 New features
18.0.2 — 2024-11-11
This version does not introduce any user-facing changes.
18.0.1 — 2024-11-07
🐛 Bug fixes
- [expo-file-system][next] Fix download function throwing an unexpected error if destination already exists. (#32626 by @aleqsio)
18.0.0 — 2024-10-22
🛠 Breaking changes
- [next] Disable module in Expo Go. (#31938 by @aleqsio)
- Bumped iOS and tvOS deployment target to 15.1. (#30840 by @tsapeta)
🎉 New features
- [expo-file-system][next] Add file permissions for expo go (#31594 by @aleqsio)
- [expo-file-system][next] Add better error handling to delete (#31683 by @aleqsio)
- [expo-file-system][next] Adjust copy/move functions to allow renaming folders. (#31636 by @aleqsio)
- [expo-file-system][next] Add name property to files and directories. (#31545 by @aleqsio)
- Add path joining in
FileandDirectoryconstructors. (#31467 by @aleqsio) - [expo-file-system][next] Make move operation change file url. (#31544 by @aleqsio)
- Change
exists()function to a property. (#31522 by @aleqsio) - Add path utilities and
parentDirectory,extensionfields to the new file system module. (#31333 by @aleqsio) - Add listing directory contents to the new file system module. (#31121 by @aleqsio)
- Add
base64()new file system module. (#31357 by @aleqsio) - Add size and md5 properties to the new file system module. (#31301 by @aleqsio)
- Add downloading to the new file system module. (#30841 by @aleqsio)
- Add copying and moving files to the new file system module. (#30314 by @aleqsio)
- Add new file system module. (#29995 by @aleqsio)
- [iOS] Added
Paths.appleSharedContainersto get the paths to the Apple App Groups shared containers. (#31525 by @IgorKhramtsov and @kudo)
🐛 Bug fixes
- [iOS] fix:
getFreeDiskStorageAsyncreturns result that's closer to the value reported by the system. (#29732 by @vonovak) - Add NULL check before dereferencing pointer to error pointer in
EXFileSystemAssetLibraryHandler. (#29091 by @hakonk) - Add missing
react-nativepeer dependencies for isolated modules. (#30466 by @byCedric)
💡 Others
- [iOS] Validate folder/file type when operating on File/Folder instances in the new FS module. (#31316 by @aleqsio)
- Use the
srcfolder as the Metro target. (#31234 by @aleqsio) - Removed redundant usage of
EventEmitterinstance. (#28946 by @tsapeta)
17.0.1 — 2024-04-23
This version does not introduce any user-facing changes.
17.0.0 — 2024-04-18
🐛 Bug fixes
- [Android] remove
CookieHandleras it's no longer in the module registry and not necessary. (#28145 by @alanjhughes)
💡 Others
- [iOS] Add privacy manifest describing required reason API usage. (#27770 by @aleqsio)
- drop unused web
nameproperty. (#27437 by @EvanBacon) - Removed deprecated backward compatible Gradle settings. (#28083 by @kudo)
16.0.8 - 2024-03-07
This version does not introduce any user-facing changes.
16.0.7 - 2024-02-27
🐛 Bug fixes
- [iOS] Fix downloadAsync for local files. (#27187 by @gabrieldonadel)
- On
iOS, fix an issue withcopyAsyncwhere the copy fails if it is a photo library asset. (#27208 by @alanjhughes) - On
iOS, resolve the promise manually after copying a PHAsset file. (#27381 by @alanjhughes)
16.0.6 - 2024-02-06
🐛 Bug fixes
- On
iOS, fix upload task requests. (#26880 by @alanjhughes)
16.0.5 - 2024-01-23
🐛 Bug fixes
- On
iOS, sethttpMethodon upload requests. (#26516 by @alanjhughes)
16.0.4 - 2024-01-18
This version does not introduce any user-facing changes.
16.0.3 - 2024-01-10
🎉 New features
16.0.2 - 2023-12-19
This version does not introduce any user-facing changes.
16.0.1 — 2023-12-13
This version does not introduce any user-facing changes.
16.0.0 — 2023-12-12
🐛 Bug fixes
- On
Android, handle using files fromSAFcorrectly. (#25389 by @alanjhughes) - Removed legacy
bundledAssetsconstant that was used only in standalone apps. (#25484 by @tsapeta) - [iOS] Added missing check for directory permissions in
deleteAsyncmethod. (#25704 by @tsapeta)
15.4.5 — 2023-11-20
🐛 Bug fixes
- On
Android, useaddInterceptorinstead ofaddNetworkInterceptorindownloadResumableStartAsync. (#24702 by @alanhughes)
15.9.0 — 2023-11-14
🛠 Breaking changes
- Bumped iOS deployment target to 13.4. (#25063 by @gabrieldonadel)
- On
AndroidbumpcompileSdkVersionandtargetSdkVersionto34. (#24708 by @alanjhughes)
15.8.0 — 2023-10-17
🛠 Breaking changes
🐛 Bug fixes
- On
Android, useaddInterceptorinstead ofaddNetworkInterceptorindownloadResumableStartAsync. (#24702 by @alanhughes)
15.7.0 — 2023-09-15
🎉 New features
- Added support for Apple tvOS. (#24329 by @douglowder)
💡 Others
- Migrated to Swift and Expo Modules API on iOS. (#23943 by @tsapeta)
- Throw the correct error when we can't find the permissions modules. (#24464 by @alanhughes)
15.6.0 — 2023-09-04
🎉 New features
15.4.4 - 2023-08-29
This version does not introduce any user-facing changes.
15.4.3 - 2023-08-09
🐛 Bug fixes
- Fix regression in
copyAsyncon Android. (#23892 by @brentvatne)
15.5.1 — 2023-08-02
This version does not introduce any user-facing changes.
15.5.0 — 2023-07-28
💡 Others
- Fork
uuid@3.4.0and move intoexpo-modules-core. Remove the original dependency. (#23249 by @alanhughes)
15.4.2 — 2023-06-28
This version does not introduce any user-facing changes.
15.4.1 — 2023-06-27
🐛 Bug fixes
15.4.0 — 2023-06-13
🎉 New features
- Migrated Android codebase to use Expo modules API. (#22728 by @alanhughes)
🐛 Bug fixes
15.3.0 — 2023-05-08
🛠 Breaking changes
- Removed the deprecated
UploadProgressData.totalByteSentfield. (#22277 by @gabrieldonadel)
🐛 Bug fixes
- Add UTF-8 URI support on iOS. (#21196 by @gabrieldonadel)
💡 Others
15.2.2 — 2023-02-09
This version does not introduce any user-facing changes.
15.2.1 — 2023-02-09
🐛 Bug fixes
- Add utf-8 uri support on iOS. (#21098 by @gabrieldonadel)
15.2.0 — 2023-02-03
💡 Others
- Extract nested object definitions to the separate types, which adds:
DeletingOptions,InfoOptions,RelocatingOptionsandMakeDirectoryOptionstypes. (#20103 by @Simek) - Simplify the way in which types are exported from the package. (#20103 by @Simek)
- Rename
UploadProgressDatatotalByteSentfield tototalBytesSent. (#20804 by @gabrieldonadel) - On Android bump
compileSdkVersionandtargetSdkVersionto33. (#20721 by @lukmccall)
15.1.1 — 2022-10-28
This version does not introduce any user-facing changes.
15.1.0 — 2022-10-25
🎉 New features
- Added
DirectoriesModuleto expo-file-system on Android as a temporary solution to fix cache directories being incorrect in new Sweet API modules. (#19205 by @aleqsio)
15.0.0 — 2022-10-06
🛠 Breaking changes
💡 Others
- [plugin] Migrate import from @expo/config-plugins to expo/config-plugins and @expo/config-types to expo/config. (#18855 by @brentvatne)
- Drop
@expo/config-pluginsdependency in favor of peer dependency onexpo. (#18595 by @EvanBacon)
14.1.0 — 2022-07-07
This version does not introduce any user-facing changes.
14.0.0 — 2022-04-18
🛠 Breaking changes
- Remove okhttp and okio backward compatible workaround and drop react-native 0.64 support. (#16446 by @kudo)
🐛 Bug fixes
- Fixed failing download on Android when using
createDownloadResumable(), because of an invalid Range header. (#15934 by @johanpoirier) - Fix
Plugin with id 'maven' not foundbuild error from Android Gradle 7. (#16080 by @kudo) - Fix URL scheme differences between iOS and Android. (#16352 by @hbiede)
⚠️ Notices
- On Android bump
compileSdkVersionto31,targetSdkVersionto31andJavaversion to11. (#16941 by @bbarthec)
13.2.1 — 2022-01-20
🐛 Bug fixes
13.2.0 — 2021-12-22
🐛 Bug fixes
- Fixed runtime crash due to
.toUpperCasenot being invoked as a function, it was missing(). (#15615 by @lukebrandonfarrell) - Fixed
totalByteSentin upload progress callback incorrectly sendingbytesSenton iOS. (#15615 by @lukebrandonfarrell) - Fixed simulator runtime crash on arm64 devices caused by
CFRelease(NULL). (#15496 by @daxaxelrod)
💡 Others
- Updated
@expo/config-pluginsfrom4.0.2to4.0.14(#15621 by @EvanBacon)
13.1.4 — 2022-02-10
This version does not introduce any user-facing changes.
13.1.3 — 2022-02-01
🐛 Bug fixes
13.1.2 — 2022-01-22
🐛 Bug fixes
- Fixed runtime crash due to
.toUpperCasenot being invoked as a function, it was missing(). (#15615 by @lukebrandonfarrell) - Fixed
totalByteSentin upload progress callback incorrectly sendingbytesSenton iOS. (#15615 by @lukebrandonfarrell) - Fixed simulator runtime crash on arm64 devices caused by
CFRelease(NULL). (#15496 by @daxaxelrod)
13.1.1 — 2022-01-20
🐛 Bug fixes
13.1.0 — 2021-11-17
🐛 Bug fixes
- Fixed
uploadAsyncfailing to resolve when usingBINARY_CONTENT. (#14764 by @cruzach) - Fix
okiolibrary build error forreact-native@0.65or above. (#14761 by @kudo)
13.0.1 — 2021-10-01
This version does not introduce any user-facing changes.
13.0.0 — 2021-09-28
🛠 Breaking changes
🐛 Bug fixes
getFreeDiskStorageAsyncnow correctly reports free disk space on iOS. (#14279 by mickmaccallum)- Fix building errors from use_frameworks! in Podfile. (#14523 by @kudo)
💡 Others
- Updated
@expo/config-plugins(#14443 by @EvanBacon) - Rewritten module to Kotlin. (#14549 by @mstach60161)
12.0.0 — 2021-09-08
🛠 Breaking changes
- Added
AndroidManifest.xmlqueries for intent handling. (#13388 by @EvanBacon)
💡 Others
11.1.0 — 2021-06-16
🐛 Bug fixes
- Enable kotlin in all modules. (#12716 by @wschurman)
- Fixed crash of file system when try to read cache dir file on android. (#12716 by @nomi9995)
💡 Others
- Migrated from
unimodules-file-system-interfacetoexpo-modules-core. - Build Android code using Java 8 to fix Android instrumented test build error. (#12939 by @kudo)
- Refactored uuid imports to v7 style. (#13037 by @giautm)
11.0.2 — 2021-04-13
This version does not introduce any user-facing changes.
11.0.1 — 2021-04-09
This version does not introduce any user-facing changes.
11.0.0 — 2021-03-10
🎉 New features
- Converted plugin to TypeScript. (#11715 by @EvanBacon)
- Updated Android build configuration to target Android 11 (added support for Android SDK 30). (#11647 by @bbarthec)
- Added support for Storage Access Framework (Android only). (#12032 by @lukmccall)
🐛 Bug fixes
- Fixed copying movies from assets not working on iOS. (#11749 by @lukmccall)
- Remove peerDependencies and unimodulePeerDependencies from Expo modules. (#11980 by @brentvatne)
10.0.0 — 2021-01-15
⚠️ Notices
- The package is now shipped with prebuilt binaries on iOS. You can read more about it on expo.fyi/prebuilt-modules. (#11224 by @tsapeta)
🛠 Breaking changes
🎉 New features
- Created config plugins (#11538 by @EvanBacon)
9.3.0 — 2020-11-17
This version does not introduce any user-facing changes.
9.2.0 — 2020-08-18
🐛 Bug fixes
9.1.0 — 2020-07-27
🐛 Bug fixes
- Fix background URL session completion handler not being called. (#8599 by @lukmccall)
- Fix compilation error on macOS Catalyst (#9055 by @andymatuschak)
- Fixed
uploadAsyncnative signature on Android. (#9076 by @lukmccall) - Fixed
uploadAsyncthrowingDouble cannot be cast to Integeron Android. (#9076 by @lukmccall) - Fixed
getInforeturning incorrect size when provided path points to a folder. (#9063 by @lukmccall) - Fixed
uploadAsync()returning empty response on iOS. (#9166 by @barthap)
9.0.1 — 2020-05-29
This version does not introduce any user-facing changes.
9.0.0 — 2020-05-27
🛠 Breaking changes
FileSystem.downloadAsyncandFileSystem.DownloadResumablework by default when the app is in background too — they won't reject when the application is backgrounded. (#7380 by @lukmccall)FileSystem.downloadAsyncandFileSystem.DownloadResumablewill reject when invalid headers dictionary is provided. These methods accept onlyRecord<string, string>. (#7380 by @lukmccall)FileSystem.getContentUriAsyncnow returns a string. (#7192 by @lukmccall)
🎉 New features
- Add
FileSystem.uploadAsyncmethod. (#7380 by @lukmccall) - Add ability to read Android
rawanddrawableresources inFileSystem.getInfoAsync,FileSystem.readAsStringAsync, andFileSystem.copyAsync. (#8104 by @esamelson)