expo-file-system을(를) 57.x에서 58.x로 업그레이드하기
expo-file-system 57.0.7과 58.0.9의 공개 API를 TypeScript 타입에서 자동으로 비교한 결과입니다. 시그니처 변경은 호환성이 깨질 가능성이 있다는 뜻이며 확정은 아닙니다.
요약
| 삭제된 import 경로 | 1 |
|---|---|
| 삭제된 export | 0 |
| 변경된 시그니처 | 1 |
| 삭제된 클래스·인터페이스 멤버 | 0 |
| 변경된 클래스·인터페이스 멤버 | 3 |
| 새로 지원 중단됨 | 2 |
| 요구 사항 변경 (engines, peer 의존성) | 0 |
| 새 export | 4 |
삭제된 import 경로
| 삭제된 import 경로 |
|---|
expo-file-system/legacy |
삭제된 export
감지되지 않았습니다.
변경된 시그니처
| export | 이전 | 이후 |
|---|---|---|
expo-file-system · DownloadTaskOptions | { headers?: Record<string, string> | undefined; sessionType?: NetworkTaskSessionType | undefined; onProgress?: ((data: DownloadProgress) => void) | undefined; signal?: AbortSignal | undefined; } | { headers?: Record<string, string> | undefined; deferBackgroundSessionCompletion?: boolean | undefined; sessionType?: NetworkTaskSessionType | undefined; onProgress?: ((data: DownloadProgress) => void) | undefined; signal?: AbortSignal | undefined; } |
삭제된 클래스·인터페이스 멤버
감지되지 않았습니다.
변경된 클래스·인터페이스 멤버
| member | 이전 | 이후 |
|---|---|---|
File.write | (content: string | Uint8Array<ArrayBufferLike>, options?: FileWriteOptions | undefined): void | (content: string | ArrayBuffer | Uint8Array<ArrayBufferLike>, options?: FileWriteOptions | undefined): Promise<void> |
FileHandle.readBytes | (length: number): Uint8Array<ArrayBuffer> | (length: number): Promise<Uint8Array<ArrayBuffer>> |
FileHandle.writeBytes | (bytes: Uint8Array<ArrayBufferLike>): void | (bytes: Uint8Array<ArrayBufferLike>): Promise<void> |
새로 지원 중단됨
| export | @deprecated |
|---|---|
expo-file-system · File.md5 | Use `await file.digest('MD5')` instead. |
expo-file-system · InfoOptions | Use `await file.digest('MD5')` to calculate an MD5 digest. |
요구 사항 변경 (engines, peer 의존성)
감지되지 않았습니다.
새 export (4)
| import | export | kind |
|---|---|---|
expo-file-system | FilePreviewOptions | type |
expo-file-system | FileDigestAlgorithm | type |
expo-file-system | FileCanPreviewOptions | type |
expo-file-system | FilePreviewCollectionOptions | type |
두 버전 사이의 changelog
패키지 작성자가 공개한 텍스트를 그대로 표시합니다.
58.0.9
### Patch Changes
- [Internal] Bump precompiled artifacts due to ABI breakage in expo-modules-jsi, which makes `JavaScriptValue` a non-copyable struct. ([#51368](https://github.com/expo/expo/pull/51368) by [@tsapeta](https://github.com/tsapeta))58.0.8
### Patch Changes
- [iOS] Reject abandoned file preview presentations and allow subsequent previews to open. ([#51169](https://github.com/expo/expo/pull/51169) by [@eliotgevers](https://github.com/eliotgevers))58.0.7
### Patch Changes
- [iOS] Add opt-in control over background download completion with `DownloadTask.acknowledgeBackgroundCompletionAsync()`, so apps can finish processing downloads before returning control to iOS. ([#50543](https://github.com/expo/expo/pull/50543) by [@savv](https://github.com/savv))
- Added static `File.preview()` and `File.canPreview()` methods for a file or array of files, with multi-file previews and initial selection on iOS. ([#50696](https://github.com/expo/expo/pull/50696) by [@eliotgevers](https://github.com/eliotgevers))58.0.6
### Patch Changes
- Bump precompiled artifacts due to ABI breakage in expo-modules-core@58.0.13. ([#51138](https://github.com/expo/expo/pull/51138) by [@alanjhughes](https://github.com/alanjhughes))58.0.5
### Patch Changes
- Bump precompiled artifacts due to ABI breakage in expo-modules-jsi@58.0.6. ([#50881](https://github.com/expo/expo/pull/50881) by [@kitten](https://github.com/kitten))58.0.4
### Patch Changes
- Force-bump all packages, due to migration to changesets. ([#50762](https://github.com/expo/expo/pull/50762) by [@kitten](https://github.com/kitten))58.0.3
### 🐛 Bug fixes
- [Android] Added missing permission checks to upload tasks and to file watchers. ([#50582](https://github.com/expo/expo/pull/50582) by [@barthap](https://github.com/barthap))
- [iOS] Added a missing permission check when opening a file handle. ([#50583](https://github.com/expo/expo/pull/50583) by [@barthap](https://github.com/barthap))
- [Android] Check permissions for `content://` URIs served by the app's own file providers. ([#50584](https://github.com/expo/expo/pull/50584) by [@barthap](https://github.com/barthap))58.0.2
### 🐛 Bug fixes
- [iOS] Include the privacy manifest in prebuilt frameworks. ([#50503](https://github.com/expo/expo/pull/50503) by [@chrfalch](https://github.com/chrfalch))58.0.1
### 🐛 Bug fixes
- [iOS] Anchored the file picker popover on every regular-width display, not only iPad, so it presents correctly on iPhone Duo. ([#50434](https://github.com/expo/expo/pull/50434) by [@alanjhughes](https://github.com/alanjhughes))58.0.0
### 🛠 Breaking changes
- `File.write()` is now asynchronous and returns a Promise. Use `File.writeSync()` for synchronous behavior. ([#45992](https://github.com/expo/expo/pull/45992) by [@wh201906](https://github.com/wh201906))
- `FileHandle.readBytes()` and `FileHandle.writeBytes()` are now asynchronous and return a Promise. Use `FileHandle.readBytesSync()` and `FileHandle.writeBytesSync()` for synchronous behavior. ([#46280](https://github.com/expo/expo/pull/46280) by [@wh201906](https://github.com/wh201906))
### 🎉 New features
- Add `File.preview()` and `File.canPreview()` methods for opening files with platform-native preview flows. (by [@eliotgevers](https://github.com/eliotgevers))
- Added `File.digest()` for asynchronously calculating MD5, SHA-1, SHA-256, SHA-384 and SHA-512 file digests. ([#48089](https://github.com/expo/expo/pull/48089) by [@wh201906](https://github.com/wh201906))
### 🐛 Bug fixes
- Fixed `File.downloadFileAsync()` returning a runtime-specific error message when canceled with an `AbortSignal`. ([#49856](https://github.com/expo/expo/pull/49856) by [@Ubax](https://github.com/Ubax))
- Fix `File.readableStream()` returning zeroed bytes and writing past the requested region when a BYOB read targets a view that starts at a non-zero offset. ([#49234](https://github.com/expo/expo/pull/49234) by [@dennytosp](https://github.com/dennytosp))
- [Android][iOS] Fix `File.size` returning `null` for a missing or unreadable file. ([#49086](https://github.com/expo/expo/pull/49086)) by [@ACHP](https://github.com/ACHP))
- [iOS] Fix wrong permissions for text() and bytes(). ([#42422](https://github.com/expo/expo/pull/42422)) by [@simoneldevig](https://github.com/simoneldevig))
- Fixed `copyAsync` on iOS copying the unedited original when a `ph://` asset has edits applied in Photos. ([#48248](https://github.com/expo/expo/pull/48248) by [@CoffeeFlux](https://github.com/CoffeeFlux))
- Fixed iOS file previews rejecting a new preview while the previous Quick Look dismissal animation is still finishing. ([#47947](https://github.com/expo/expo/pull/47947) by [@eliotgevers](https://github.com/eliotgevers))
- Added `./next` subpath to package `exports` field to resolve Metro bundler warning. ([#44793](https://github.com/expo/expo/pull/44793) by [@chang-in](https://github.com/chang-in))
- Fixed `FileHandle` security-scoped access, and non-SAF `content://` URI support. ([#47176](https://github.com/expo/expo/pull/47176) by [@barthap](https://github.com/barthap))
- Fixed potential file offset races when asynchronous and synchronous `FileHandle` operations overlap on Android and iOS. ([#47945](https://github.com/expo/expo/pull/47945) by [@wh201906](https://github.com/wh201906))
- Fixed `readAsStringAsync` to respect `position` and `length` when reading UTF-8 strings. ([#20291](https://github.com/expo/expo/issues/20291) by [@mvincentong](https://github.com/mvincentong)) ([#45714](https://github.com/expo/expo/pull/45714) by [@mvincentong](https://githu이 데이터를 AI 에이전트에 제공하세요
Vigia는 무료 MCP 서버입니다. 코딩 에이전트가 코드를 작성하기 전에 버전, 호환성을 깨는 변경, 취약점을 확인합니다. 가입도 API 키도 필요 없습니다.
claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp
Cursor에 추가VS Code에 추가★ GitHub에서 스타 누르기
그 밖의 MCP 클라이언트
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }에이전트 스킬(SKILL.md): 에이전트에게 Vigia를 언제 쓸지 알려 줍니다 · 풀 리퀘스트용 GitHub Action
자주 묻는 질문
expo-file-system을(를) 57에서 58(으)로 업그레이드할 때 호환성이 깨지는 변경은 무엇인가요?
expo-file-system 57.0.7과 58.0.9 사이에서 Vigia는 삭제된 export 0개, 변경된 시그니처 1개, 삭제되거나 변경된 클래스·인터페이스 멤버 3개를 찾았습니다.
expo-file-system 58에서 지원 중단된 것은 무엇인가요?
expo-file-system 58.0.9에서 export 또는 멤버 2개가 새로 지원 중단으로 표시되었습니다.
에이전트용
GET https://vigia.coredls.cloud/v1/packages/npm/expo-file-system/upgrade?from=57.0.7&to=58.0.9