Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
d59ac5e
Roll skia on m138 (canvaskit/0.40.0-456-g114d33c629 to canvaskit/0.40…
HinTak Jun 25, 2025
45ece54
Upgrade skia to m139 (canvaskit/0.40.0-457-ga46d5732d9 to canvaskit/0…
HinTak Jun 25, 2025
28d707b
Bump version up to 139.0
HinTak Jun 25, 2025
76c1c52
m139 patch plus adjustments
HinTak Jun 25, 2025
d9b3d4f
m139 changes
HinTak Jun 25, 2025
cd8af0c
Upstream main (post m139) fix for pdf breakage
HinTak Jun 25, 2025
e1b58ee
Revert "Backporting skia m139 fix to earlier skia for arm64 windows +…
HinTak Jun 26, 2025
6c911d9
Roll skia along m139 (canvaskit/0.40.0-787-g0f94c19331 to canvaskit/0…
HinTak Aug 6, 2025
d160290
upgrade skia to m140 (canvaskit/0.40.0-795-gcbc694239b to canvaskit/0…
HinTak Aug 6, 2025
c9cc4d7
Bump to 140.0
HinTak Aug 7, 2025
b4e4f18
m140: `SkFontMgr_New_FontConfig` with 1 parameter has been deprecated…
HinTak Aug 7, 2025
4e824a4
m140: `SkImage::isValid(GrRecordingContext*)` has been deprecated in …
HinTak Aug 7, 2025
d85f85a
m140: Prototype change for SkMatrix.setPolyToPoly(), and overload SkM…
HinTak Aug 7, 2025
ddd268f
m140: incomplete type 'SkPathBuilder' error; need new header.
HinTak Aug 7, 2025
4835fd0
m140: need overload for SkPathMeasure::getSegment
HinTak Aug 7, 2025
12f94bb
m140: need overload for SkRRect::transform
HinTak Aug 7, 2025
fb7e64d
m140: Need overload for &SkRegion::getBoundaryPath
HinTak Aug 7, 2025
f7187ce
m140: libpathops no longer exists.
HinTak Aug 7, 2025
3444ecc
Fixes seg-fault from dereferencing null->asRecorder()
HinTak Aug 7, 2025
bcaa3aa
m140: SkStrokeRec::applyToPath prototype change
HinTak Aug 7, 2025
2bf816e
Revert "Upstream main (post m139) fix for pdf breakage"
HinTak Aug 9, 2025
ee51150
m140 patch plus adjustments
HinTak Aug 9, 2025
443a499
Skip pybind11 3.0.0 until it get fixed (waiting for 3.0.1)
HinTak Aug 10, 2025
ed9754d
Merge branch 'm139-public' into m140-public
HinTak Aug 10, 2025
f0e1a8b
Windows pip does not like single quotes
HinTak Aug 11, 2025
8e57343
Use x64_64 gn binary for arm64 windows
HinTak Aug 11, 2025
b1355da
Windows pip does not like single quotes - 2nd change
HinTak Aug 11, 2025
ce1ba85
Windows pip does not like single quotes
HinTak Aug 11, 2025
9a57666
Windows pip does not like single quotes - 2nd change
HinTak Aug 11, 2025
f160ab1
Use x64_64 gn binary for arm64 windows
HinTak Aug 11, 2025
eafe57f
Merge branch 'm139-public' into m140-public
HinTak Aug 11, 2025
795197a
Can need apt-get update first before finding the correct packages
HinTak Aug 12, 2025
3b18469
Can need apt-get update first before finding the correct packages
HinTak Aug 12, 2025
3e4f815
Merge branch 'm139-public' into m140-public
HinTak Aug 12, 2025
ac7b85a
pybind11 3.0.1 is out; remove limitation not to use 3.0.0
HinTak Aug 22, 2025
c4de1df
Roll skia on m140 (canvaskit/0.40.0-1240-gb57e04d1c7 to canvaskit/0.4…
HinTak Sep 6, 2025
329b85b
Update skia to m141 (canvaskit/0.40.0-1244-g1fdbea293a to canvaskit/0…
HinTak Sep 6, 2025
a4c4147
Bump version up to 141
HinTak Sep 6, 2025
5268607
m141 patch plus adjustments
HinTak Sep 6, 2025
9d24ab3
m141:SkPath::moveTo() changed prototype
HinTak Sep 7, 2025
c0d859d
pybind11 3.0.1 does not work - segfault on exit from pytest in CI. Ba…
HinTak Sep 7, 2025
bdc7e6b
Merge branch 'm140-public' into m141-public
HinTak Sep 7, 2025
e8c1615
Revert "pybind11 3.0.1 does not work - segfault on exit from pytest i…
HinTak Sep 16, 2025
a1338eb
Make artefacts available even when pytest fails.
HinTak Sep 16, 2025
300f730
Upload wheel-fedora:42
HinTak Sep 16, 2025
7333b2c
: is not valid as artifact name
HinTak Sep 17, 2025
e54b1b2
Roll skia on m141 (canvaskit/0.40.0-1579-g8843f919a1 to canvaskit/0.4…
HinTak Nov 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ jobs:
CIBW_TEST_SKIP: "*-macosx_arm64"

- uses: actions/upload-artifact@v4
if: always()
with:
name: wheel-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.cp }}
path: ./wheelhouse/*.whl
Expand Down Expand Up @@ -103,6 +104,7 @@ jobs:
CIBW_TEST_SKIP: "*-macosx_arm64"

- uses: actions/upload-artifact@v4
if: always()
with:
name: wheel-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.cp }}
path: ./wheelhouse/*.whl
Expand All @@ -127,6 +129,7 @@ jobs:
- name: Build docs
run: |
# installing libegl1 will also install libegl-mesa0
sudo apt-get -y update
sudo apt-get -y install libegl1
python -m pip install --pre -f dist skia-python
python -m pip install sphinx sphinx-rtd-theme
Expand Down Expand Up @@ -174,6 +177,10 @@ jobs:
submodules: recursive
- run: bash scripts/build_Linux.sh
- run: python -m build --wheel
- uses: actions/upload-artifact@v4
with:
name: wheel-fedora-42
path: ./dist/*.whl
- run: python -m pip install dist/*.whl
- run: python -m pip install moderngl
- run: python -c 'import moderngl; moderngl_context = moderngl.create_standalone_context(backend="egl"); import skia; interface = skia.GrGLInterface.MakeEGL() ; assert isinstance(skia.GrDirectContext.MakeGL(interface), skia.GrContext) ; print("Success3")'
Expand Down
146 changes: 0 additions & 146 deletions patch/0001-gn-Remove-msvc-env-setting.patch

This file was deleted.

11 changes: 11 additions & 0 deletions patch/fetch-gn-windows-arm64.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/bin/fetch-gn.orig 2025-08-11 19:21:42.666070053 +0100
+++ b/bin/fetch-gn 2025-08-11 19:23:01.381159842 +0100
@@ -20,7 +20,7 @@
gnzip = os.path.join(tempfile.mkdtemp(), 'gn.zip')
with open(gnzip, 'wb') as f:
OS = {'darwin': 'mac', 'linux': 'linux', 'linux2': 'linux', 'win32': 'windows'}[sys.platform]
- cpu = {'aarch64': 'arm64', 'amd64': 'amd64', 'arm64': 'arm64', 'x86_64': 'amd64'}[platform.machine().lower()]
+ cpu = {'aarch64': 'arm64', 'amd64': 'amd64', 'arm64': 'amd64', 'x86_64': 'amd64'}[platform.machine().lower()]

rev = 'b2afae122eeb6ce09c52d63f67dc53fc517dbdc8'
url = 'https://chrome-infra-packages.appspot.com/dl/gn/gn/{}-{}/+/git_revision:{}'.format(
70 changes: 70 additions & 0 deletions patch/skia-m139-minimize-download.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
diff --git a/DEPS b/DEPS
index 6b685a0..c2f3e74 100644
--- a/DEPS
+++ b/DEPS
@@ -31,53 +31,18 @@ vars = {
# ./tools/git-sync-deps
deps = {
"buildtools" : "https://chromium.googlesource.com/chromium/src/buildtools.git@729495f2ffa69080907780591fa2a630b2556e98",
- "third_party/externals/angle2" : "https://chromium.googlesource.com/angle/angle.git@5220e634850ec26f4b4b0f305ba2a69cf0bc55df",
- "third_party/externals/brotli" : "https://skia.googlesource.com/external/github.com/google/brotli.git@6d03dfbedda1615c4cba1211f8d81735575209c8",
- "third_party/externals/d3d12allocator" : "https://skia.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/D3D12MemoryAllocator.git@169895d529dfce00390a20e69c2f516066fe7a3b",
- # Dawn requires jinja2 and markupsafe for the code generator, tint for SPIRV compilation, and abseil for string formatting.
- # When the Dawn revision is updated these should be updated from the Dawn DEPS as well.
- "third_party/externals/dawn" : "https://dawn.googlesource.com/dawn.git@d03fe7eda12dfce1578bf69da2814f89fd78c1e9",
- "third_party/externals/jinja2" : "https://chromium.googlesource.com/chromium/src/third_party/jinja2@e2d024354e11cc6b041b0cff032d73f0c7e43a07",
- "third_party/externals/markupsafe" : "https://chromium.googlesource.com/chromium/src/third_party/markupsafe@0bad08bb207bbfc1d6f3bbc82b9242b0c50e5794",
- "third_party/externals/abseil-cpp" : "https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp@04dc59d2c83238cb1fcb49083e5e416643a899ce",
- "third_party/externals/delaunator-cpp" : "https://skia.googlesource.com/external/github.com/skia-dev/delaunator-cpp.git@98305ef6c4e862f7d48df9cc647b690d796fec68",
"third_party/externals/dng_sdk" : "https://android.googlesource.com/platform/external/dng_sdk.git@dbe0a676450d9b8c71bf00688bb306409b779e90",
- "third_party/externals/egl-registry" : "https://skia.googlesource.com/external/github.com/KhronosGroup/EGL-Registry@b055c9b483e70ecd57b3cf7204db21f5a06f9ffe",
- "third_party/externals/emsdk" : "https://skia.googlesource.com/external/github.com/emscripten-core/emsdk.git@a896e3d066448b3530dbcaa48869fafefd738f57",
"third_party/externals/expat" : "https://chromium.googlesource.com/external/github.com/libexpat/libexpat.git@8e49998f003d693213b538ef765814c7d21abada",
"third_party/externals/freetype" : "https://chromium.googlesource.com/chromium/src/third_party/freetype2.git@1518bc83d26b434031bd12c706ac3c7dab3902fd",
"third_party/externals/harfbuzz" : "https://chromium.googlesource.com/external/github.com/harfbuzz/harfbuzz.git@08b52ae2e44931eef163dbad71697f911fadc323",
- "third_party/externals/highway" : "https://chromium.googlesource.com/external/github.com/google/highway.git@424360251cdcfc314cfc528f53c872ecd63af0f0",
"third_party/externals/icu" : "https://chromium.googlesource.com/chromium/deps/icu.git@364118a1d9da24bb5b770ac3d762ac144d6da5a4",
- "third_party/externals/icu4x" : "https://chromium.googlesource.com/external/github.com/unicode-org/icu4x.git@bcf4f7198d4dc5f3127e84a6ca657c88e7d07a13",
- "third_party/externals/imgui" : "https://skia.googlesource.com/external/github.com/ocornut/imgui.git@55d35d8387c15bf0cfd71861df67af8cfbda7456",
- "third_party/externals/libavif" : "https://skia.googlesource.com/external/github.com/AOMediaCodec/libavif.git@55aab4ac0607ab651055d354d64c4615cf3d8000",
- "third_party/externals/libgav1" : "https://chromium.googlesource.com/codecs/libgav1.git@5cf722e659014ebaf2f573a6dd935116d36eadf1",
- "third_party/externals/libgrapheme" : "https://skia.googlesource.com/external/github.com/FRIGN/libgrapheme/@c0cab63c5300fa12284194fbef57aa2ed62a94c0",
"third_party/externals/libjpeg-turbo" : "https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git@e14cbfaa85529d47f9f55b0f104a579c1061f9ad",
- "third_party/externals/libjxl" : "https://chromium.googlesource.com/external/gitlab.com/wg1/jpeg-xl.git@a205468bc5d3a353fb15dae2398a101dff52f2d3",
"third_party/externals/libpng" : "https://skia.googlesource.com/third_party/libpng.git@ed217e3e601d8e462f7fd1e04bed43ac42212429",
"third_party/externals/libwebp" : "https://chromium.googlesource.com/webm/libwebp.git@845d5476a866141ba35ac133f856fa62f0b7445f",
- "third_party/externals/libyuv" : "https://chromium.googlesource.com/libyuv/libyuv.git@d248929c059ff7629a85333699717d7a677d8d96",
- "third_party/externals/oboe" : "https://chromium.googlesource.com/external/github.com/google/oboe.git@b02a12d1dd821118763debec6b83d00a8a0ee419",
- "third_party/externals/opengl-registry" : "https://skia.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry@14b80ebeab022b2c78f84a573f01028c96075553",
- "third_party/externals/partition_alloc" : "https://chromium.googlesource.com/chromium/src/base/allocator/partition_allocator.git@ce13777cb731e0a60c606d1741091fd11a0574d7",
- "third_party/externals/perfetto" : "https://android.googlesource.com/platform/external/perfetto@93885509be1c9240bc55fa515ceb34811e54a394",
"third_party/externals/piex" : "https://android.googlesource.com/platform/external/piex.git@bb217acdca1cc0c16b704669dd6f91a1b509c406",
- "third_party/externals/swiftshader" : "https://swiftshader.googlesource.com/SwiftShader@0ce9bc68d3fc995f76dcab4771c26471100ce759",
"third_party/externals/vulkanmemoryallocator" : "https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator@a6bfc237255a6bac1513f7c1ebde6d8aed6b5191",
- # vulkan-deps is a meta-repo containing several interdependent Khronos Vulkan repositories.
- # When the vulkan-deps revision is updated, those repos (spirv-*, vulkan-*) should be updated as well.
"third_party/externals/vulkan-deps" : "https://chromium.googlesource.com/vulkan-deps@31127c60fb320a7eedf48289aa5c435bbb020659",
- "third_party/externals/spirv-cross" : "https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross@b8fcf307f1f347089e3c46eb4451d27f32ebc8d3",
"third_party/externals/spirv-headers" : "https://skia.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git@2a611a970fdbc41ac2e3e328802aed9985352dca",
- "third_party/externals/spirv-tools" : "https://skia.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git@108b19e5c6979f496deffad4acbe354237afa7d3",
- "third_party/externals/vello" : "https://skia.googlesource.com/external/github.com/linebender/vello.git@3ee3bea02164c5a816fe6c16ef4e3a810edb7620",
- "third_party/externals/vulkan-headers" : "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers@10739e8e00a7b6f74d22dd0a547f1406ff1f5eb9",
- "third_party/externals/vulkan-tools" : "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools@e3fc64396755191b3c51e5c57d0454872e7fa487",
- "third_party/externals/vulkan-utility-libraries": "https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries@72665ee1e50db3d949080df8d727dffa8067f5f8",
- "third_party/externals/unicodetools" : "https://chromium.googlesource.com/external/github.com/unicode-org/unicodetools@66a3fa9dbdca3b67053a483d130564eabc5fe095",
- #"third_party/externals/v8" : "https://chromium.googlesource.com/v8/v8.git@5f1ae66d5634e43563b2d25ea652dfb94c31a3b4",
"third_party/externals/wuffs" : "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git@e3f919ccfe3ef542cfc983a82146070258fb57f8",
"third_party/externals/zlib" : "https://chromium.googlesource.com/chromium/src/third_party/zlib@646b7f569718921d7d4b5b8e22572ff6c76f2596",

diff --git a/bin/activate-emsdk b/bin/activate-emsdk
index 687ca9f..7167d8d 100755
--- a/bin/activate-emsdk
+++ b/bin/activate-emsdk
@@ -17,6 +17,7 @@ EMSDK_PATH = os.path.join(EMSDK_ROOT, 'emsdk.py')
EMSDK_VERSION = '3.1.44'

def main():
+ return
if sysconfig.get_platform() in ['linux-aarch64', 'linux-arm64']:
# This platform cannot install emsdk at the provided version. See
# https://github.com/emscripten-core/emsdk/blob/main/emscripten-releases-tags.json#L5
Loading
Loading