ترقية expo-camera من 57.x إلى 58.x
مقارنة الواجهة العامة لـ 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)
| import | export | kind |
|---|---|---|
expo-camera | LensInfo | type |
expo-camera | RecordingProgress | type |
expo-camera | DocumentScanningResult | type |
expo-camera | DocumentScanningOptions | type |
expo-camera | RecordingProgressListener | type |
سجل التغييرات بين هذين الإصدارين
نص نشره مؤلفو الحزمة، معروض كما هو.
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 لطلبات السحب
الأسئلة الشائعة
ما التغييرات غير المتوافقة عند ترقية expo-camera من 57 إلى 58؟
بين expo-camera 57.0.6 و58.0.10 وجد Vigia عدد 0 من الصادرات المحذوفة، و3 من التوقيعات المعدّلة، و2 من أعضاء الأصناف أو الواجهات المحذوفة أو المعدّلة.
ما الذي أصبح موقوفًا في expo-camera 58؟
عُلِّم 0 من الصادرات أو الأعضاء حديثًا على أنها موقوفة في expo-camera 58.0.10.
للوكلاء
GET https://vigia.coredls.cloud/v1/packages/npm/expo-camera/upgrade?from=57.0.6&to=58.0.10