[Git][debian-gis-team/aggdraw][upstream] New upstream version 1.3.19

Antonio Valentino (@antonio.valentino) gitlab at salsa.debian.org
Sun Sep 15 06:46:21 BST 2024



Antonio Valentino pushed to branch upstream at Debian GIS Project / aggdraw


Commits:
5ffe203b by Antonio Valentino at 2024-09-15T05:36:57+00:00
New upstream version 1.3.19
- - - - -


7 changed files:

- .github/workflows/ci.yml
- CHANGELOG.md
- README.rst
- agg2/font_freetype/agg_font_freetype.cpp
- aggdraw.cxx
- + patches/tags_pointer_type_fix.patch
- setup.py


Changes:

=====================================
.github/workflows/ci.yml
=====================================
@@ -14,14 +14,14 @@ jobs:
       - uses: actions/checkout at v4
 
       - name: Setup Conda Environment
-        uses: conda-incubator/setup-miniconda at v2
+        uses: conda-incubator/setup-miniconda at v3
         with:
-          miniforge-variant: Mambaforge
           miniforge-version: latest
-          use-mamba: true
           python-version: ${{ matrix.python-version }}
           environment-file: ci/environment.yaml
           activate-environment: test-environment
+          mamba-version: "*"
+          channels: conda-forge
 
       - name: Run tests
         shell: bash -l {0}
@@ -38,8 +38,8 @@ jobs:
         include:
           - os: windows-2019
             cibw_archs: "AMD64 ARM64"
-          - os: macos-11
-            cibw_archs: "x86_64 arm64"
+          - os: macos-14          # The macos-14 runner is arm64, while up until macos-13 the runners are x86_64.
+            cibw_archs: "arm64"
           - os: "ubuntu-20.04"
             cibw_archs: "aarch64"
           - os: "ubuntu-20.04"
@@ -54,8 +54,15 @@ jobs:
         with:
           platforms: all
 
+      # See discussion here: https://github.com/actions/runner-images/issues/9256
+      - name: Make sure pipx is installed for the arm64 macOS runners.
+        if: runner.os == 'macOS' && runner.arch == 'ARM64' 
+        run: |
+            brew install pipx
+            pipx ensurepath
+
       - name: Build wheels
-        uses: pypa/cibuildwheel at v2.16.2
+        uses: pypa/cibuildwheel at v2.20.0
         env:
           CIBW_TEST_COMMAND: python {project}/selftest.py
           CIBW_BEFORE_BUILD_LINUX: yum install -y freetype-devel
@@ -65,6 +72,9 @@ jobs:
           CIBW_ARCHS: "${{ matrix.cibw_archs }}"
           # disable finding unintended freetype installations
           CIBW_ENVIRONMENT_WINDOWS: "AGGDRAW_FREETYPE_ROOT=''"
+          # we use libpng/libfreetype from homebrew which has a current limit of
+          # macos 14
+          CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=14
       - name: upload
         uses: actions/upload-artifact at v3
         with:


=====================================
CHANGELOG.md
=====================================
@@ -1,5 +1,11 @@
 # The aggdraw Library
 
+## Version 1.3.19
+
+- Add Python 3.13 wheels
+- Remove Mac x86_64 wheels (pull requests welcome)
+- Fix typo in documentation for tobytes usage
+
 ## Version 1.3.18
 
 - Remove "register" keyword from AGG C++ for compiler compatibility


=====================================
README.rst
=====================================
@@ -93,3 +93,14 @@ ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
 OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Additional Patches
+------------------
+
+The AGG C++ vendored source code in this repository is no longer compatible
+with some modern compilers and coding styles. The aggdraw project has had to
+apply additional patches over time to fix compatibility or to retain backwards
+compatibility with previous versions of AGG to get the same end result. Some
+patches may be documented in README files, but all future patches should appear
+in the ``patches/`` directory in the root of this repository and were applied with
+commands such as ``patch -p0 patches/tags_pointer_type_fix.patch``.


=====================================
agg2/font_freetype/agg_font_freetype.cpp
=====================================
@@ -171,7 +171,7 @@ namespace agg
             v_control = v_start;
 
             point = outline.points + first;
-            tags  = outline.tags  + first;
+            tags  = (char *)outline.tags  + first;
             tag   = FT_CURVE_TAG(tags[0]);
 
             // A contour cannot start with a cubic control point!


=====================================
aggdraw.cxx
=====================================
@@ -1549,7 +1549,7 @@ const char *draw_frombytes_doc = "Copies data from a string buffer to the drawin
                                  "Parameters\n"
                                  "----------\n"
                                  "data : bytes\n"
-                                 "    A string containing packed image data, compatible with PIL’s tostring method.\n";
+                                 "    A string containing packed image data, compatible with PIL’s tobytes method.\n";
 
 static PyObject*
 draw_frombytes(DrawObject* self, PyObject* args)
@@ -2587,7 +2587,7 @@ const char *mod_doc = "Python interface to the Anti-Grain Graphics Drawing libra
                       "    >>> p = aggdraw.Pen(\"black\", 0.5)\n"
                       "    >>> d.line((0, 0, 500, 500), p)\n"
                       "    >>> d.line((0, 500, 500, 0), p)\n"
-                      "    >>> s = d.tostring()\n";
+                      "    >>> s = d.tobytes()\n";
 
 #ifdef IS_PY3K
 static struct PyModuleDef moduledef = {


=====================================
patches/tags_pointer_type_fix.patch
=====================================
@@ -0,0 +1,11 @@
+--- agg2/font_freetype/agg_font_freetype.cpp.orig	2024-03-06 10:16:58
++++ agg2/font_freetype/agg_font_freetype.cpp	2024-09-10 21:13:37
+@@ -171,7 +171,7 @@
+             v_control = v_start;
+ 
+             point = outline.points + first;
+-            tags  = outline.tags  + first;
++            tags  = (char *)outline.tags  + first;
+             tag   = FT_CURVE_TAG(tags[0]);
+ 
+             // A contour cannot start with a cubic control point!


=====================================
setup.py
=====================================
@@ -21,7 +21,7 @@ from sysconfig import get_config_var
 from packaging.version import Version
 from setuptools import setup, Extension
 
-VERSION = "1.3.18"
+VERSION = "1.3.19"
 
 SUMMARY = "High quality drawing interface for PIL."
 
@@ -165,9 +165,8 @@ setup(
         Extension("aggdraw", ["aggdraw.cxx"] + sources,
                   define_macros=defines,
                   include_dirs=include_dirs,
-                  library_dirs=library_dirs, libraries=libraries
+                  library_dirs=library_dirs, libraries=libraries,
                   )
         ],
     python_requires='>=3.9',
-    tests_require=['pillow', 'pytest'],
     )



View it on GitLab: https://salsa.debian.org/debian-gis-team/aggdraw/-/commit/5ffe203bc15bfdf7fde2d9ae6ee284201b071d2d

-- 
View it on GitLab: https://salsa.debian.org/debian-gis-team/aggdraw/-/commit/5ffe203bc15bfdf7fde2d9ae6ee284201b071d2d
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grass-devel/attachments/20240915/37965f91/attachment-0001.htm>


More information about the Pkg-grass-devel mailing list