Vigia

Оновлення expo-camera з 57.x до 58.x

Порівняння публічного API expo-camera 57.0.6 і 58.0.10, обчислене автоматично за їхніми типами TypeScript. Змінена сигнатура — можлива несумісна зміна, а не гарантія.

Підсумок

Видалені шляхи імпорту0
Видалені експорти0
Змінені сигнатури3
Видалені члени класів або інтерфейсів0
Змінені члени класів або інтерфейсів2
Нові застарівання0
Зміни вимог (engines, peer-залежності)0
Нові експорти5

Видалені експорти

Не виявлено.

Змінені сигнатури

exportБулоСтало
expo-camera · AvailableLenses{ lenses: string[]; }{ lenses: LensInfo[]; }
expo-camera · CameraNativeProps{ pointerEvents?: any; style?: any; ref?: any; onCameraReady?: CameraReadyListener | undefined; onMountError?: MountErrorListener | undefined; onBarcodeScanned?: ((event: { nativeEvent: BarcodeScanningResult; }) => void) | undefined; onPictureSaved?: PictureSavedListener | undefined; onResponsiveOrientationChanged?: ResponsiveOrientationChangedListener | undefined; onAvailableLensesChanged?: AvailableLensesChangedListener | undefined; facing?: string | undefined; flashMode?: string | undefined; enableTorch?: boolean | undefined; animateShutter?: boolean | undefined; autoFocus?: FocusMode | und…{ pointerEvents?: any; style?: any; ref?: any; onCameraReady?: CameraReadyListener | undefined; onMountError?: MountErrorListener | undefined; onBarcodeScanned?: ((event: { nativeEvent: BarcodeScanningResult; }) => void) | undefined; onPictureSaved?: PictureSavedListener | undefined; onResponsiveOrientationChanged?: ResponsiveOrientationChangedListener | undefined; onAvailableLensesChanged?: AvailableLensesChangedListener | undefined; onRecordingProgress?: RecordingProgressListener | undefined; facing?: string | undefined; flashMode?: string | undefined; enableTorch?: boolean | undefined; anim…
expo-camera · CameraRecordingOptions{ maxDuration?: number | undefined; maxFileSize?: number | undefined; mirror?: boolean | undefined; codec?: VideoCodec | undefined; }{ maxDuration?: number | undefined; maxFileSize?: number | undefined; progressUpdateInterval?: number | undefined; mirror?: boolean | undefined; codec?: VideoCodec | undefined; }

Видалені члени класів або інтерфейсів

Не виявлено.

Змінені члени класів або інтерфейсів

memberБулоСтало
CameraView.getAvailableLensesAsync(): Promise<string[]>(): Promise<LensInfo[]>
CameraViewRef.getAvailableLenses(): Promise<string[]>(): Promise<LensInfo[]>

Нові застарівання

Не виявлено.

Зміни вимог (engines, peer-залежності)

Не виявлено.

Нові експорти (5)
importexportkind
expo-cameraLensInfotype
expo-cameraRecordingProgresstype
expo-cameraDocumentScanningResulttype
expo-cameraDocumentScanningOptionstype
expo-cameraRecordingProgressListenertype

Changelog між цими версіями

Текст, опублікований авторами пакета, показано без змін.

58.0.10
### 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.9
### Patch Changes

- [Android] Fixed barcode scanning stopping after the camera delivers a frame without an image. Also fixed a leak of the ML Kit barcode scanner each time the camera is recreated or unmounted. ([#51050](https://github.com/expo/expo/pull/51050) by [@alanjhughes](https://github.com/alanjhughes))
- [iOS] Fixed `recordAsync()` never settling when it is called while a recording is already active. It now rejects with an error. ([#51049](https://github.com/expo/expo/pull/51049) by [@alanjhughes](https://github.com/alanjhughes))
58.0.8
### Patch Changes

- [Android] Fixed the window staying white when the camera view unmounts during the shutter animation ([#50904](https://github.com/expo/expo/issues/50904)). ([#50950](https://github.com/expo/expo/pull/50950) by [@alanjhughes](https://github.com/alanjhughes))
- [Web] Fire `onCameraReady` only once the video has a frame that can be captured, instead of as soon as the camera stream is obtained, so calling `takePictureAsync` from `onCameraReady` no longer throws `ERR_CAMERA_NOT_READY`. `takePictureAsync` now only requires a decoded frame instead of `HAVE_ENOUGH_DATA`, which live streams may never reach in Safari. `onCameraReady` is no longer called when the camera fails to start; use `onMountError` instead. ([#50884](https://github.com/expo/expo/pull/50884) by [@Cedric921](https://github.com/Cedric921))
58.0.7
### 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.6
### Patch Changes

- [Android] Bind the barcode image analyzer only while barcode scanning is enabled, so the camera preview and captured photo use the same frame. ([#50808](https://github.com/expo/expo/pull/50808) by [@hitanshur](https://github.com/hitanshur))
58.0.5
### 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.4
### 💡 Others

- [iOS] Remove a dead `compilerFlags` block from the SwiftPM build configuration. It had no effect on either build path. ([#50417](https://github.com/expo/expo/pull/50417) by [@chrfalch](https://github.com/chrfalch))
58.0.3
### 🐛 Bug fixes

- [iOS] Import `CoreImage` in `BarcodeUtils`, which relied on another file in the module importing it. ([#50479](https://github.com/expo/expo/pull/50479) by [@chrfalch](https://github.com/chrfalch))
- [iOS] Pin `ZXingObjC` by revision rather than by version, so that Swift Package Manager can resolve it. SwiftPM refuses a version-pinned remote dependency that declares `unsafeFlags`, which `zxingify-objc` does. ([#50491](https://github.com/expo/expo/pull/50491) by [@chrfalch](https://github.com/chrfalch))
58.0.2
_This version does not introduce any user-facing changes._
58.0.1
_This version does not introduce any user-facing changes._
58.0.0
### 🛠 Breaking changes

- [iOS] Changed `selectedLens` prop to use stable `deviceType` identifiers instead of locale-dependent `localizedName` strings, enabling reliable programmatic lens selection across all device languages. ([#42916](https://github.com/expo/expo/pull/42916) by [@mplumador](https://github.com/mplumador))

### 🎉 New features

- [Android] Add `PhotographicSensitivity` to returned EXIF metadata. ([#47222](https://github.com/expo/expo/pull/47222) by [@Wenszel](https://github.com/Wenszel))
- Added `CameraView.scanDocumentAsync` to scan multi-page documents on Android and iOS. ([#47362](https://github.com/expo/expo/pull/47362) by [@alanjhughes](https://github.com/alanjhughes))
- Added an `onRecordingProgress` event to `CameraView` that reports the recorded duration and file size while recording video, at a rate set by the new `progressUpdateInterval` recording option. ([#48871](https://github.com/expo/expo/pull/48871), [#48872](https://github.com/expo/expo/pull/48872), [#48873](https://github.com/expo/expo/pull/48873) by [@alanjhughes](https://github.com/alanjhughes))

### 🐛 Bug fixes

- [iOS] Fix `CameraView` leaking its barcode scanner, metadata delegate and capture session on every mount, by no longer having the delegate retain the scanner it reports to. ([#49692](https://github.com/expo/expo/pull/49692) by [@chrfalch](https://github.com/chrfalch))
- [iOS] Fix all barcode scanning stopping when the optional `ExpoCameraBarcodeScanning` companion pod is not linked. The AVFoundation scanner now runs on its own, so QR codes and every other natively supported symbology keep scanning; the ZXing provider is once again only the fallback for `pdf417`, `code39`, and `codabar`. ([#49692](https://github.com/expo/expo/pull/49692) by [@chrfalch](https://github.com/chrfalch))
- [iOS] Fix repeatedly mounting and unmounting `CameraView` freezing the UI when the capture session cannot start, such as on a simulator. The session is now stopped before it is torn down and before the preview layer detaches from it, and it is no longer started at all when no capture device is available. ([#49028](https://github.com/expo/expo/pull/49028) by [@barthap](https://github.com/barthap))
- [Android] Use the selected camera to determine video stabilization support. ([#45896](https://github.com/expo/expo/pull/45896) by [@vivekjm](https://github.com/vivekjm))
- Fix iOS captures being saved above their native resolution due to orientation normalization rendering at the screen scale. ([#47477](https://github.com/expo/expo/pull/47477) by [@boojamya](https://github.com/boojamya))
- [iOS] Fix the ZXing barcode fallback scanner returning raw AVFoundation type strings (e.g. `org.iso.PDF417`) instead of short expo `BarcodeType` values (e.g. `pdf417`) for `pdf417`, `code39`, and `codabar`, restoring the fix from [#44726](https://github.com/expo/expo/pull/44726) that was reverted by the `ExpoCameraBarcodeScanning` pod extraction in [#44766](https://github.com/expo/expo/pul

Передайте ці дані своєму ШІ-агенту

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 для pull request

Поширені запитання

Які несумісні зміни під час оновлення expo-camera з 57 до 58?

Між expo-camera 57.0.6 і 58.0.10 Vigia знайшла видалених експортів: 0, змінених сигнатур: 3, видалених або змінених членів класів та інтерфейсів: 2.

Що застаріло в expo-camera 58?

У expo-camera 58.0.10 новими застарілими позначено експортів або членів: 0.

Для агентів

GET https://vigia.coredls.cloud/v1/packages/npm/expo-camera/upgrade?from=57.0.6&to=58.0.10