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