Skip to content

Commit

Permalink
Merge pull request #83 from abdelaziz-mahdy/update-pigeon
Browse files Browse the repository at this point in the history
update pigeon to v22.4.2
  • Loading branch information
abdelaziz-mahdy authored Oct 15, 2024
2 parents 73fb287 + ebcfd53 commit 203b2ba
Show file tree
Hide file tree
Showing 38 changed files with 863 additions and 1,117 deletions.
10 changes: 6 additions & 4 deletions .github/workflows/build_cross_platform.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,9 @@ on:
defaults:
run:
working-directory: example

concurrency:
group: auto-deploy-build-cross-platform
cancel-in-progress: true
jobs:
android_windows:
name: Android_windows
Expand All @@ -29,7 +31,7 @@ jobs:
- uses: subosito/flutter-action@v2
with:
channel: "stable"
cache: true
# cache: true
- run: flutter pub get
# Add separate steps for each ABI
- name: Build and analyze APK for android-arm
Expand All @@ -54,7 +56,7 @@ jobs:
- uses: subosito/flutter-action@v2
with:
channel: "stable"
cache: true
# cache: true
- run: flutter pub get
# Add separate steps for each ABI
- name: Build and analyze APK for android-arm
Expand All @@ -75,6 +77,6 @@ jobs:
- uses: subosito/flutter-action@v2
with:
channel: "stable"
cache: true
# cache: true
- run: flutter pub get
- run: flutter build ios --no-codesign
49 changes: 41 additions & 8 deletions .github/workflows/integration_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,20 +10,48 @@ on:
paths:
- "**"
- "!README.md"
defaults:
run:
working-directory: example

concurrency:
group: auto-deploy-integration-tests
cancel-in-progress: true
jobs:
android_test:
name: Android_test
runs-on: macos-latest
# runs-on: macos-latest
runs-on: ubuntu-latest

strategy:
matrix:
# api-level: [21, 23, 24, 26, 28, 29]
api-level: [33]
target: [google_apis]
# target: [google_apis]
target: [default]
steps:
# Following https://github.com/cyface-de/android-backend/blob/main/.github/workflows/gradle_connected-tests.yml to fix emualtor not working sometimes


# # From https://github.com/android/nowinandroid/pull/1219/files to fix flaky emulator start
# # See https://github.com/ReactiveCircus/android-emulator-runner/issues/324#issuecomment-1998737488
# - name: Delete unnecessary tools 🔧
# uses: jlumbroso/[email protected]
# with:
# android: false # Keep Don't remove Android tools
# tool-cache: true # Remove image tool cache - rm -rf "$AGENT_TOOLSDIRECTORY"
# dotnet: true # rm -rf /usr/share/dotnet
# haskell: true # rm -rf /opt/ghc...
# swap-storage: true # rm -f /mnt/swapfile (4GiB)
# docker-images: false # Takes 16s (`nowinandroid`), enable if needed in the future
# large-packages: false # includes google-cloud-sdk and it's slow

# Set up KVM permissions to enable efficient Android emulator runs by modifying udev rules for universal access.
# From https://github.com/android/nowinandroid/blob/main/.github/workflows/Build.yaml#L142
- name: Enable KVM group perms
run: |
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
ls /dev/kvm
- uses: actions/checkout@v4
with:
submodules: "true"
Expand All @@ -34,16 +62,20 @@ jobs:
- uses: subosito/flutter-action@v2
with:
channel: "stable"
cache: true
# cache: true
- run: flutter pub get
- name: Run integration tests
uses: reactivecircus/android-emulator-runner@v2
with:
target: ${{ matrix.target }}
api-level: ${{ matrix.api-level }}
arch: x86_64
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
profile: Nexus 6
script: cd example && flutter pub get && flutter test integration_test
disk-size: 6000M
heap-size: 600M
disable-animations: true
script: cd example && echo "ls assets contents" && ls assets && echo "ls contents" && ls && flutter pub get && flutter test integration_test

ios_test:
name: iOS_test
Expand All @@ -61,4 +93,5 @@ jobs:
os: "iOS"
- run: flutter pub get
- name: Run integration tests
run: flutter test integration_test
run: cd example && flutter test integration_test

18 changes: 9 additions & 9 deletions .metadata
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
# This file tracks properties of this Flutter project.
# Used by Flutter tool to assess capabilities and perform upgrades etc.
#
# This file should be version controlled.
# This file should be version controlled and should not be manually edited.

version:
revision: d3d8effc686d73e0114d71abdcccef63fa1f25d2
channel: stable
revision: "2663184aa79047d0a33a14a3b607954f8fdd8730"
channel: "stable"

project_type: plugin

# Tracks metadata for the flutter migrate command
migration:
platforms:
- platform: root
create_revision: d3d8effc686d73e0114d71abdcccef63fa1f25d2
base_revision: d3d8effc686d73e0114d71abdcccef63fa1f25d2
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
- platform: android
create_revision: d3d8effc686d73e0114d71abdcccef63fa1f25d2
base_revision: d3d8effc686d73e0114d71abdcccef63fa1f25d2
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
- platform: ios
create_revision: d3d8effc686d73e0114d71abdcccef63fa1f25d2
base_revision: d3d8effc686d73e0114d71abdcccef63fa1f25d2
create_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730
base_revision: 2663184aa79047d0a33a14a3b607954f8fdd8730

# User provided section

Expand Down
187 changes: 126 additions & 61 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,109 +1,174 @@
## 4.3.0

- Updated Pigeon to v22.4.2
- Updated android gradle to allow higher versions of gradle
- Fixed integration tests

## 4.2.7
* Fixes Camera detection on ios and android rotation (by [silvershort](https://github.com/silvershort))

- Fixes Camera detection on ios and android rotation (by [silvershort](https://github.com/silvershort))

## 4.2.6
* update deps (pigeon and camera)

- update deps (pigeon and camera)

## 4.2.5
* added ability to load model from path and assets, instead of only assets

- added ability to load model from path and assets, instead of only assets

## 4.2.4
* fixed ios possible memory leak (by [cyrillkuettel](https://github.com/cyrillkuettel))

- fixed ios possible memory leak (by [cyrillkuettel](https://github.com/cyrillkuettel))

## 4.2.3
* fixed export of enums and classes

- fixed export of enums and classes

## 4.2.2
* upgrading pytorch android from 1.13.1 to 2.1.0
* ios is still LibTorch 1.13.0.1 since its the last one

- upgrading pytorch android from 1.13.1 to 2.1.0
- ios is still LibTorch 1.13.0.1 since its the last one

## 4.2.1
* fix classification bug on android on native preprocessing
* Making model output dynamically calculated (yolov5,yolov8) to allow input sizes other than 640X640

- fix classification bug on android on native preprocessing
- Making model output dynamically calculated (yolov5,yolov8) to allow input sizes other than 640X640

## 4.2.0+2
* Fix formatting

- Fix formatting

## 4.2.0+1
* Adding license
* Adding docstring for all functions

- Adding license
- Adding docstring for all functions

## 4.2.0
* Fixing ios camera image decoding
* Converting package to use native methods instead of ffi (fixing ios)
* Adding parameters to allow choosing between imageLib or native preprocessing
* Adding better integration testing

- Fixing ios camera image decoding
- Converting package to use native methods instead of ffi (fixing ios)
- Adding parameters to allow choosing between imageLib or native preprocessing
- Adding better integration testing

## 4.0.0
* image processing is done using opencv to improve performance
* camera image decoding is done using opencv to improve performance
* camera images can be ran using getCameraImage* methods
* improving the performance of object detection by moving all the processing to isolate
* Fixed: CAMERA image boxes are shifted upwards in example
* Improving example

- image processing is done using opencv to improve performance
- camera image decoding is done using opencv to improve performance
- camera images can be ran using getCameraImage\* methods
- improving the performance of object detection by moving all the processing to isolate
- Fixed: CAMERA image boxes are shifted upwards in example
- Improving example

## 3.0.4
* improved speed of inference
* improve build speed on android

- improved speed of inference
- improve build speed on android

## 3.0.3
* windows extracting using tar instead of powershell since powershell is so slow

- windows extracting using tar instead of powershell since powershell is so slow

## 3.0.2
* improving cmake for windows extraction (thanks https://github.com/ZhaoXinZhang for pointing it out).

- improving cmake for windows extraction (thanks https://github.com/ZhaoXinZhang for pointing it out).

## 3.0.1
* fix android build on Windows.

- fix android build on Windows.

## 3.0.0+1
* Converted to work on ffi (for improved performance, and ios support)
* Improved isolates to stop ui frame drops
* Added ImageUtilsIsolate to process camera images in isolate instead of ui thread
* Updated Camera example
* Better memory usage and freeing
* Fixed camera example usage
* Breaking changes
* getImagePredictionFromBytesList Removed, (check camera example for new usage)

- Converted to work on ffi (for improved performance, and ios support)
- Improved isolates to stop ui frame drops
- Added ImageUtilsIsolate to process camera images in isolate instead of ui thread
- Updated Camera example
- Better memory usage and freeing
- Fixed camera example usage
- Breaking changes
- getImagePredictionFromBytesList Removed, (check camera example for new usage)

## 2.0.5
* fixed dart analyses problems (renamed some variables to follow convention)

- fixed dart analyses problems (renamed some variables to follow convention)

## 2.0.4
* removed unnecessary prints

- removed unnecessary prints

## 2.0.3
* fixed yolov8 bad performance

- fixed yolov8 bad performance

## 2.0.2
* com.facebook.soloader:nativeloader from 0.8.0 to 0.10.5

- com.facebook.soloader:nativeloader from 0.8.0 to 0.10.5

## 2.0.1
* upgraded to pigeon 9.0.0
* adding yolov8 support, thanks to https://github.com/atanasko/android-demo-app
* updated camera,image to latest version in example
* converted to using pytorch_android version to 1.12

- upgraded to pigeon 9.0.0
- adding yolov8 support, thanks to https://github.com/atanasko/android-demo-app
- updated camera,image to latest version in example
- converted to using pytorch_android version to 1.12

## 2.0.0
* breaking change: Rect is now PyTorchRect to avoid conflicts in ios (when it is implemented)
* upgraded to pigeon 4.2.0

- breaking change: Rect is now PyTorchRect to avoid conflicts in ios (when it is implemented)
- upgraded to pigeon 4.2.0

## 1.1.2
* Updated pytorch_android_lite version to 1.12.2

- Updated pytorch_android_lite version to 1.12.2

## 1.1.1
* Updated pytorch_android_lite version to 1.11

- Updated pytorch_android_lite version to 1.11

## 1.1.0
* Added get prediction from bytes list to run on camera image
* Added example to camera image prediction (thanks to KingWu)

- Added get prediction from bytes list to run on camera image
- Added example to camera image prediction (thanks to KingWu)

## 1.0.6
* Updated dependencies
* Fixed release not working and Added to readme the solution

- Updated dependencies
- Fixed release not working and Added to readme the solution

## 1.0.5
* Made all functions take image bytes instead of image file (to avoid storing stream in storage)

- Made all functions take image bytes instead of image file (to avoid storing stream in storage)

## 1.0.4
* Fixed a bug (probabilities were wrong)

- Fixed a bug (probabilities were wrong)

## 1.0.3
* Added getting classification as probabilities

- Added getting classification as probabilities

## 1.0.2
* Initial release

- Initial release

## 1.0.1
* Making code run in background to avoid frame drops

- Making code run in background to avoid frame drops

## 1.0.0
* Made some optimizations

- Made some optimizations

## 0.0.4
* implemented object detection native code

- implemented object detection native code

## 0.0.3
* Upgraded dependencies and made some optimizations

- Upgraded dependencies and made some optimizations

## 0.0.2
* Used base code from https://pub.dev/packages/pytorch_mobile/changelog

- Used base code from https://pub.dev/packages/pytorch_mobile/changelog

## 0.0.1
* Setup pigeon messages

- Setup pigeon messages
1 change: 1 addition & 0 deletions android/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@
.DS_Store
/build
/captures
.cxx
Loading

0 comments on commit 203b2ba

Please sign in to comment.