Skip to content

Commit 0957ebd

Browse files
authored
Merge pull request #1 from opencv/4.x
updating from fork
2 parents c71ab82 + 18249e5 commit 0957ebd

24 files changed

+1611
-242
lines changed

.github/workflows/build_wheels_linux.yml

Lines changed: 30 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ name: Linux x86_64
33
on:
44
pull_request:
55
branches:
6-
- master
7-
- 3.4
86
- 4.x
97
- 5.x
108
paths-ignore:
@@ -20,14 +18,14 @@ on:
2018

2119
jobs:
2220
Build:
23-
runs-on: ubuntu-20.04
21+
runs-on: ubuntu-22.04
2422
defaults:
2523
run:
2624
shell: bash
2725
strategy:
2826
fail-fast: false
2927
matrix:
30-
python-version: ['3.7']
28+
python-version: ['3.9']
3129
platform: [x64]
3230
with_contrib: [0, 1]
3331
without_gui: [0, 1]
@@ -41,7 +39,7 @@ jobs:
4139
MB_ML_VER: 2014
4240
TRAVIS_BUILD_DIR: ${{ github.workspace }}
4341
CONFIG_PATH: travis_config.sh
44-
DOCKER_IMAGE: quay.io/opencv-ci/opencv-python-manylinux2014-x86-64:20230117
42+
DOCKER_IMAGE: quay.io/opencv-ci/opencv-python-manylinux2014-x86-64:20250630
4543
USE_CCACHE: 0
4644
UNICODE_WIDTH: 32
4745
PLAT: x86_64
@@ -64,27 +62,22 @@ jobs:
6462
fetch-depth: 0
6563
- name: Build a package
6664
run: source scripts/build.sh
67-
- name: Saving all wheels
68-
uses: actions/upload-artifact@v3
69-
with:
70-
name: wheels
71-
path: wheelhouse/opencv*.whl
7265
- name: Saving a wheel accordingly to matrix
73-
uses: actions/upload-artifact@v3
66+
uses: actions/upload-artifact@v4
7467
with:
7568
name: wheel-${{ matrix.with_contrib }}-${{ matrix.without_gui }}-${{ matrix.build_sdist }}
7669
path: wheelhouse/opencv*.whl
7770

7871
Test:
7972
needs: [Build]
80-
runs-on: ubuntu-20.04
73+
runs-on: ubuntu-22.04
8174
defaults:
8275
run:
8376
shell: bash
8477
strategy:
8578
fail-fast: false
8679
matrix:
87-
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
80+
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
8881
platform: [x64]
8982
with_contrib: [0, 1]
9083
without_gui: [0, 1]
@@ -93,7 +86,7 @@ jobs:
9386
ACTIONS_ALLOW_UNSECURE_COMMANDS: true
9487
MB_PYTHON_VERSION: ${{ matrix.python-version }}
9588
NP_TEST_DEP: numpy==1.19.4
96-
NP_TEST_DEP_LATEST: numpy==1.24.0
89+
NP_TEST_DEP_LATEST: numpy==2.2.6
9790
CONFIG_PATH: travis_config.sh
9891
PLAT: x86_64
9992
steps:
@@ -106,17 +99,17 @@ jobs:
10699
submodules: true
107100
fetch-depth: 0
108101
- name: Setup Environment variables
109-
run: if [ "3.10" == "${{ matrix.python-version }}" -o "3.11" == "${{ matrix.python-version }}" ]; then echo "TEST_DEPENDS=$(echo $NP_TEST_DEP_LATEST)" >> $GITHUB_ENV; else echo "TEST_DEPENDS=$(echo $NP_TEST_DEP)" >> $GITHUB_ENV; fi
102+
run: if [ "3.10" == "${{ matrix.python-version }}" -o "3.11" == "${{ matrix.python-version }}" -o "3.12" == "${{ matrix.python-version }}" -o "3.13" == "${{ matrix.python-version }}" ]; then echo "TEST_DEPENDS=$(echo $NP_TEST_DEP_LATEST)" >> $GITHUB_ENV; else echo "TEST_DEPENDS=$(echo $NP_TEST_DEP)" >> $GITHUB_ENV; fi
110103
- name: Download a wheel accordingly to matrix
111-
uses: actions/download-artifact@v3
104+
uses: actions/download-artifact@v4
112105
with:
113106
name: wheel-${{ matrix.with_contrib }}-${{ matrix.without_gui }}-${{ matrix.build_sdist }}
114107
path: wheelhouse/
115108
- name: Package installation and run tests
116109
run: source scripts/install.sh
117110

118111
Build_sdist:
119-
runs-on: ubuntu-20.04
112+
runs-on: ubuntu-22.04
120113
defaults:
121114
run:
122115
shell: bash
@@ -139,7 +132,7 @@ jobs:
139132
NP_TEST_DEP: numpy==1.19.4
140133
TRAVIS_BUILD_DIR: ${{ github.workspace }}
141134
CONFIG_PATH: travis_config.sh
142-
DOCKER_IMAGE: quay.io/opencv-ci/opencv-python-manylinux2014-x86-64:20230117
135+
DOCKER_IMAGE: quay.io/opencv-ci/opencv-python-manylinux2014-x86-64:20250630
143136
USE_CCACHE: 1
144137
UNICODE_WIDTH: 32
145138
SDIST: ${{ matrix.build_sdist || 0 }}
@@ -177,85 +170,84 @@ jobs:
177170
set -x
178171
echo "skipping tests because of sdist"
179172
- name: saving artifacts
180-
uses: actions/upload-artifact@v3
173+
uses: actions/upload-artifact@v4
181174
with:
182-
name: wheels
175+
name: wheel-${{ matrix.with_contrib }}-${{ matrix.without_gui }}-${{ matrix.build_sdist }}
183176
path: dist/opencv*.tar.gz
184177

185178
Release_rolling:
186179
if: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' }}
187180
needs: [Build, Test]
188-
runs-on: ubuntu-20.04
181+
runs-on: ubuntu-22.04
189182
environment: opencv-python-rolling-release
190183
defaults:
191184
run:
192185
shell: bash
193186
steps:
194-
- uses: actions/download-artifact@v3
187+
- uses: actions/download-artifact@v4
195188
with:
196-
name: wheels
197189
path: wheelhouse/
190+
198191
- name: Upload wheels for opencv_python_rolling
199192
run: |
200193
python -m pip install twine
201-
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_ROLLING_PASSWORD }} --skip-existing wheelhouse/opencv_python_rolling-*
194+
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_ROLLING_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_python_rolling-*
202195
- name: Upload wheels for opencv_contrib_python_rolling
203196
run: |
204197
python -m pip install twine
205-
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_ROLLING_PASSWORD }} --skip-existing wheelhouse/opencv_contrib_python_rolling-*
198+
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_ROLLING_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_contrib_python_rolling-*
206199
- name: Upload wheels for opencv_python_headless_rolling
207200
run: |
208201
python -m pip install twine
209-
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_HEADLESS_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_HEADLESS_ROLLING_PASSWORD }} --skip-existing wheelhouse/opencv_python_headless_rolling-*
202+
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_HEADLESS_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_HEADLESS_ROLLING_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_python_headless_rolling-*
210203
- name: Upload wheels for opencv_contrib_python_headless_rolling
211204
run: |
212205
python -m pip install twine
213-
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_ROLLING_PASSWORD }} --skip-existing wheelhouse/opencv_contrib_python_headless_rolling-*
206+
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_ROLLING_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_ROLLING_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_contrib_python_headless_rolling-*
214207
215208
Pre-release:
216209
if: github.event_name == 'release' && github.event.release.prerelease
217210
needs: [Build, Build_sdist, Test]
218-
runs-on: ubuntu-20.04
211+
runs-on: ubuntu-22.04
219212
environment: test-opencv-python-release
220213
defaults:
221214
run:
222215
shell: bash
223216
steps:
224-
- uses: actions/download-artifact@v3
217+
- uses: actions/download-artifact@v4
225218
with:
226-
name: wheels
227219
path: wheelhouse/
220+
228221
- name: Upload all wheels
229222
run: |
230223
python -m pip install twine
231-
python -m twine upload --repository testpypi -u ${{ secrets.PYPI_USERNAME }} -p ${{ secrets.PYPI_PASSWORD }} --skip-existing wheelhouse/opencv_* wheelhouse/opencv-*
224+
python -m twine upload --repository testpypi -u ${{ secrets.PYPI_USERNAME }} -p ${{ secrets.PYPI_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_* wheelhouse/wheel-*/opencv-*
232225
233226
Release:
234227
if: github.event_name == 'release' && !github.event.release.prerelease
235228
needs: [Build, Build_sdist, Test]
236-
runs-on: ubuntu-20.04
229+
runs-on: ubuntu-22.04
237230
environment: opencv-python-release
238231
defaults:
239232
run:
240233
shell: bash
241234
steps:
242-
- uses: actions/download-artifact@v3
235+
- uses: actions/download-artifact@v4
243236
with:
244-
name: wheels
245237
path: wheelhouse/
246238
- name: Upload wheels for opencv_python
247239
run: |
248240
python -m pip install twine
249-
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_PASSWORD }} --skip-existing wheelhouse/opencv_python-* wheelhouse/opencv-python-[^h]*
241+
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_python-* wheelhouse/wheel-*/opencv-python-[^h]*
250242
- name: Upload wheels for opencv_contrib_python
251243
run: |
252244
python -m pip install twine
253-
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_PASSWORD }} --skip-existing wheelhouse/opencv_contrib_python-* wheelhouse/opencv-contrib-python-[^h]*
245+
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_contrib_python-* wheelhouse/wheel-*/opencv-contrib-python-[^h]*
254246
- name: Upload wheels for opencv_python_headless
255247
run: |
256248
python -m pip install twine
257-
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_HEADLESS_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_HEADLESS_PASSWORD }} --skip-existing wheelhouse/opencv_python_headless-* wheelhouse/opencv-python-headless-*
249+
python -m twine upload -u ${{ secrets.OPENCV_PYTHON_HEADLESS_USERNAME }} -p ${{ secrets.OPENCV_PYTHON_HEADLESS_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_python_headless-* wheelhouse/wheel-*/opencv-python-headless-*
258250
- name: Upload wheels for opencv_contrib_python_headless
259251
run: |
260252
python -m pip install twine
261-
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_PASSWORD }} --skip-existing wheelhouse/opencv_contrib_python_headless-* wheelhouse/opencv-contrib-python-headless-*
253+
python -m twine upload -u ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_USERNAME }} -p ${{ secrets.OPENCV_CONTRIB_PYTHON_HEADLESS_PASSWORD }} --skip-existing wheelhouse/wheel-*/opencv_contrib_python_headless-* wheelhouse/wheel-*/opencv-contrib-python-headless-*

.github/workflows/build_wheels_linux_arm.yml

Lines changed: 13 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ name: Linux ARM64
33
on:
44
pull_request:
55
branches:
6-
- master
7-
- 3.4
86
- 4.x
97
- 5.x
108
paths-ignore:
@@ -27,7 +25,7 @@ jobs:
2725
strategy:
2826
fail-fast: false
2927
matrix:
30-
python-version: ['3.7']
28+
python-version: ['3.9']
3129
platform: [x64]
3230
with_contrib: [0, 1]
3331
without_gui: [0, 1]
@@ -42,7 +40,7 @@ jobs:
4240
MB_ML_VER: 2014
4341
TRAVIS_BUILD_DIR: ${{ github.workspace }}
4442
CONFIG_PATH: travis_config.sh
45-
DOCKER_IMAGE: quay.io/opencv-ci/opencv-python-manylinux2014-aarch64:20230117
43+
DOCKER_IMAGE: quay.io/opencv-ci/opencv-python-manylinux2014-aarch64:20250630
4644
USE_CCACHE: 0
4745
UNICODE_WIDTH: 32
4846
SDIST: ${{ matrix.build_sdist || 0 }}
@@ -64,13 +62,8 @@ jobs:
6462
fetch-depth: 0
6563
- name: Build a package
6664
run: source scripts/build.sh
67-
- name: Saving all wheels
68-
uses: actions/upload-artifact@v3
69-
with:
70-
name: wheels
71-
path: wheelhouse/opencv*.whl
7265
- name: Saving a wheel accordingly to matrix
73-
uses: actions/upload-artifact@v3
66+
uses: actions/upload-artifact@v4
7467
with:
7568
name: wheel-${{ matrix.with_contrib }}-${{ matrix.without_gui }}-${{ matrix.build_sdist }}
7669
path: wheelhouse/opencv*.whl
@@ -84,7 +77,7 @@ jobs:
8477
strategy:
8578
fail-fast: false
8679
matrix:
87-
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11']
80+
python-version: ['3.7', '3.8', '3.9', '3.10', '3.11', '3.12', '3.13']
8881
platform: [x64]
8982
with_contrib: [0, 1]
9083
without_gui: [0, 1]
@@ -94,7 +87,7 @@ jobs:
9487
MB_PYTHON_VERSION: ${{ matrix.python-version }}
9588
PLAT: aarch64
9689
NP_TEST_DEP: numpy==1.19.4
97-
NP_TEST_DEP_LATEST: numpy==1.24.0
90+
NP_TEST_DEP_LATEST: numpy==2.2.6
9891
CONFIG_PATH: travis_config.sh
9992
DOCKER_TEST_IMAGE: multibuild/focal_arm64v8
10093
UNICODE_WIDTH: 32
@@ -108,9 +101,9 @@ jobs:
108101
submodules: true
109102
fetch-depth: 0
110103
- name: Setup Environment variables
111-
run: if [ "3.10" == "${{ matrix.python-version }}" -o "3.11" == "${{ matrix.python-version }}" ]; then echo "TEST_DEPENDS=$(echo $NP_TEST_DEP_LATEST)" >> $GITHUB_ENV; else echo "TEST_DEPENDS=$(echo $NP_TEST_DEP)" >> $GITHUB_ENV; fi
104+
run: if [ "3.10" == "${{ matrix.python-version }}" -o "3.11" == "${{ matrix.python-version }}" -o "3.12" == "${{ matrix.python-version }}" -o "3.13" == "${{ matrix.python-version }}" ]; then echo "TEST_DEPENDS=$(echo $NP_TEST_DEP_LATEST)" >> $GITHUB_ENV; else echo "TEST_DEPENDS=$(echo $NP_TEST_DEP)" >> $GITHUB_ENV; fi
112105
- name: Download a wheel accordingly to matrix
113-
uses: actions/download-artifact@v3
106+
uses: actions/download-artifact@v4
114107
with:
115108
name: wheel-${{ matrix.with_contrib }}-${{ matrix.without_gui }}-${{ matrix.build_sdist }}
116109
path: wheelhouse/
@@ -120,13 +113,13 @@ jobs:
120113
Release_rolling:
121114
if: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' }}
122115
needs: [Build, Test]
123-
runs-on: ubuntu-20.04
116+
runs-on: ubuntu-22.04
124117
environment: opencv-python-rolling-release
125118
defaults:
126119
run:
127120
shell: bash
128121
steps:
129-
- uses: actions/download-artifact@v3
122+
- uses: actions/download-artifact@v4
130123
with:
131124
name: wheels
132125
path: wheelhouse/
@@ -150,13 +143,13 @@ jobs:
150143
Pre-release:
151144
if: github.event_name == 'release' && github.event.release.prerelease
152145
needs: [Build, Test]
153-
runs-on: ubuntu-20.04
146+
runs-on: ubuntu-22.04
154147
environment: test-opencv-python-release
155148
defaults:
156149
run:
157150
shell: bash
158151
steps:
159-
- uses: actions/download-artifact@v3
152+
- uses: actions/download-artifact@v4
160153
with:
161154
name: wheels
162155
path: wheelhouse/
@@ -168,13 +161,13 @@ jobs:
168161
Release:
169162
if: github.event_name == 'release' && !github.event.release.prerelease
170163
needs: [Build, Test]
171-
runs-on: ubuntu-20.04
164+
runs-on: ubuntu-22.04
172165
environment: opencv-python-release
173166
defaults:
174167
run:
175168
shell: bash
176169
steps:
177-
- uses: actions/download-artifact@v3
170+
- uses: actions/download-artifact@v4
178171
with:
179172
name: wheels
180173
path: wheelhouse/

0 commit comments

Comments
 (0)