Commit Graph

150 Commits

Author SHA1 Message Date
@Antelox
fe41e72b96 GitHub Workflow: (#2106)
- Switched from windows-2019 to windows-2022
- Switched to ubuntu-24.04-arm image for Linux aarch64 jobs
- Fixed Linux x86 job. It was failing but not reported
- Switched from Visual Studio 16 2019 generators to Visual Studio 17 2022
- Uncommented Windows MINGW32 static and shared jobs
- Generic clean-up
2025-02-15 18:23:10 +08:00
mio
7fd2aa47d4 Fix nuget workflow yaml 2025-02-13 23:42:21 +08:00
mio
3e99b859a8 Update nuget workflow to allow manual release 2025-02-13 23:39:45 +08:00
mio
68ec2d152f CI(release): Trigger CI 2025-02-13 21:20:38 +08:00
mio
1ea6b07653 Update nuget workflow events 2025-02-13 21:05:23 +08:00
mio
4caee59e8e Skip arm64 macos wheels 2025-02-13 20:42:58 +08:00
mio
2d410535f0 manually trigger release draft workflows 2025-02-13 19:43:47 +08:00
mio
967dbc4179 Allow a v-prefixed version 2025-02-13 19:20:43 +08:00
@Antelox
dea3c376d0 CI(full),CI(release): Python bindings: (#2100)
- Switched to the ubuntu-24.04-arm runner
- Bumped Windows runner to windows-2022 and Visual Studio 17 2022 GENERATORS
- Minor changes about checks in workflow jobs
- Fixed the pagefile job (even though should not be really needed)
- Refreshed the TO BE CHECKED regress tests to either update or remove the skip conditions
- Added a test to check if the created sdist archive is ok
2025-02-13 18:24:04 +08:00
mio
bf87b9a86d CI(full),CI(release): Increase pagefile to avoid OOM 2025-02-12 13:05:24 +08:00
mio
0c7017a584 more 22.04 pinning 2025-02-10 20:27:40 +08:00
mio
a59bb4235e Use 22.04 to avoid segfault 2025-02-10 15:02:27 +08:00
Daniel Roethlisberger
e166cd93bb arm64 python: Avoid nested class in insn hook for 10x hook and 10% overall speedup (#2095)
* arm64 python: Avoid nested class in insn hook for 10x hook speedup

Promote CpReg to a module-level class to address unnecessary performance
reduction.  In a real-world use case tracing the emulation of real-world
machine code, this change reduces time spent in CpReg namedtuple
construction from 10% of overall time to below 1%, for a 10x speedup of
the insn hook itself, or a 10% overall speedup.  Measured using
cProfile, python 3.13.

* upgrade distro to 22.04

* revert to 22.04 for now

* also revert for wheels

---------

Co-authored-by: mio <mio@lazym.io>
2025-02-10 14:56:34 +08:00
@Antelox
9cfd5cfac3 - Improved the GitHub python binding workflow: (#2072)
- Added fullMode input in workflow_dispatch
    - Take decision whether to build either in debug or release mode and if to build for all python versions according to the commit message patterns
    - Set proper artifact names
    - Removed not needed steps
    - Compacted some steps in order to leverage more the matrix feature
    - Bumped cibuildwheel action to 2.22.0
    - Run actual regress tests in place of sample scripts
- Specify optional test install in pyproject.toml with proper requirements
- Derive package version from git tags
- Add GENERATORS env var support in setup.py to specify cmake generator and minor refactoring
- Minor cleanup/refactoring for the regress test suite
- Marked some regress tests with skipIf to skip them in case of old python versions
- Marked some failing regress tests to be checked with skipIf
2024-12-29 22:24:48 +08:00
b7199261b5 No longer install cmake from choco due to Github Action errors 2024-12-07 22:37:32 +08:00
@Antelox
f78a3f2f59 Python bindings: Fix editable install + Execute Python2.7 workflow tests (#2044)
* Python binding:
- Added missing `license` field in pyproject.toml file
- Fixed editable mode install and some more code cleanup in setup.py
- Refreshed README.md
- Replaced f-string formatter in tests with `format` method in order to be py2-compatible
- Fixed typos
- PEP8 fixes

* GitHub Action: Install Python2.7 and run tests for re-tagged wheels on native arch runners only

* Python bindings:
- Use #x formatter to format hex values
2024-12-07 14:52:21 +08:00
@Antelox
3691e33a0f Feat: Option to manually specify the build type in the workflow (#2034)
* Python bindings: Fix upload-artifact actions

* Github Action: Enable workflow_dispatch to manually trigger jobs to produce either Debug or Release builds
2024-10-17 21:15:56 +08:00
@Antelox
6fbbf3089a Python binding setup refactoring + cibuildwheel workflow (#2026)
* Python bindings: Make the test scripts handy for pytest

* Python bindings: Update MANIFEST.in with new paths

* Update .gitignore to exclude PyCharm-related files/folders

* Python bindings: Update CMakeLists.txt in order to set CMAKE_OSX_ARCHITECTURES var

* Python bindings:
- Moved project package settings to the new TOML format
- Refactored setup.py to cleanup/improve the code and make it ready for cibuildwheel
- Updated README.md with the package long description part
- Removed setup.cfg since universal wheel building will be deprecated soon

* Python bindings:
- Replaced old PyPI-publishing.yml workflow with brand-new one based on cibuildwheel
- Removed old building scripts

* Replaced macos-12 runner with macos-13 since it will be removed soon

* Python bindings: Specify SYSTEM_VERSION_COMPAT=0 env var for macos-13 x86_64 runner as per cibuildwheel warning message

* Python bindings: Enable i686 for debugging

* Python bindings: Enable DEBUG flag according to the presence of tag release

* Python bindings: Added matrix to cover i686 manylinux/musllinux builds

* Python bindings:
- Replaced macos-14 runner with macos-latest
- Bumped cibuildwheel GitHub action to 2.21.3 version

* Python bindings:
- Adapt test_uc_ctl_tb_cache test to the recent changes
- Fixed typos
- PEP8 fixes

* GitHub Action Workflow: Introduce BUILD_TYPE env var to select build type according to the presence of tag release

---------

Co-authored-by: mio <mio@lazym.io>
2024-10-17 19:35:42 +08:00
mio
4fa34d43ef Fix arm64 wheel
93542c397c/cibuildwheel/macos.py (L247-L260)

We shall really migrate to cibuildwheel
2024-09-26 18:38:23 +08:00
mio
869968a96f Only publish when tagging 2024-09-26 18:13:43 +08:00
mio
d645848fd3 Fix macos wheels 2024-09-26 17:26:16 +08:00
mio
ed37d2561d Update release.yml 2024-09-21 23:31:51 +08:00
mio
cdd451a0de Update prerelease.yml 2024-09-21 23:12:02 +08:00
mio
9f21566b53 Also update macos 2024-09-21 20:48:51 +08:00
mio
7fb38e0e66 Avoid failure of pushing to github 2024-09-21 20:48:51 +08:00
mio
96bf47dd7a Update CI 2024-09-21 18:24:46 +08:00
scribam
feb166d475 Update github workflows (#1975) 2024-07-19 11:06:53 +08:00
Bet4
abefcb2f89 Remove using of distutils (#1964)
* Remove using of distutils

* Upgrade setuptools to fix CI

* Use Python 3.7 in build_wheel.sh
2024-06-12 14:45:23 +08:00
Jordan Moore
c39e80231c Update Zig bindings to Zig 0.12.0 (#1951)
* update zig bindings to Zig 0.12.0

* support zig package manager

* Fix zig macos ci build

* Make the macos build use 1 process instead of hitting the macos
  process limit immediately, utilize the build.zig `-Dparallel
  false` option for macos ci
* Split the macos ci into a new build stage (out of the ubuntu,
  macos build maxtrix), to allow for multiple architecture builds
  in the future after the zig bindings improve
2024-05-06 21:02:24 +08:00
7012e4599b Remove debugging session 2024-02-13 16:22:16 +08:00
67deee7771 dbg 2024-02-13 14:46:08 +08:00
f09f488356 Add macos aarch64 2024-02-11 13:19:25 +08:00
f1e913d229 Fix python version 2024-02-11 12:58:58 +08:00
48287d0675 Fix python aarch64 2024-02-11 12:50:59 +08:00
3b5d1dfb4c python aarch64 2024-02-11 12:41:53 +08:00
23303994e7 Fix naming 2024-02-11 11:37:00 +08:00
92175c2698 Fix macos actions 2024-02-11 11:35:03 +08:00
98777f2801 m1 runner 2024-02-11 11:33:43 +08:00
53da7c5e1d Merge pull request #1897 from marameref/dello
I Created CI that automatically attaches builds to releases
2023-12-25 21:00:37 +08:00
612fb4e804 Always create drafts 2023-12-25 20:59:56 +08:00
Amarachi Omereife
fbbfb1e800 prelease set 2023-10-20 23:06:34 +01:00
Amarachi Omereife
6afd867e4a Update 2023-10-20 10:40:54 +01:00
Amarachi Omereife
d46729732d pre-release 2023-10-20 10:21:39 +01:00
Amarachi Omereife
ce60d2539d token 2023-10-20 08:27:09 +01:00
Amarachi Omereife
f987da1875 github token 2023-10-20 07:54:58 +01:00
Amarachi Omereife
dfb8e9bb3f release 2023-10-20 07:41:05 +01:00
Amarachi Omereife
16f9730477 prerelease 2023-10-20 07:24:24 +01:00
Amarachi Omereife
7d3de2bea1 release 2023-10-19 21:33:16 +01:00
Amarachi Omereife
9cbe2a1492 prelease 2023-10-19 14:52:35 +01:00
Amarachi Omereife
35029283cb release 2023-10-18 21:58:54 +01:00