From 9c0ca61c0cd67efd5371dba8deb36b6dbccddb64 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Wed, 25 May 2022 20:40:02 +0200 Subject: [PATCH 01/26] Our self-hosted Apple Silicon runner now has been migrated to actions/runner v2.292.0 which now supports arm64 natively (#87) --- .github/workflows/python-package.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 53a56e6..0083d93 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -6,10 +6,7 @@ jobs: build: name: "build (${{ matrix.runs_on }}, ${{ matrix.python }})" - defaults: - run: - shell: ${{ matrix.run_wrapper || 'bash --noprofile --norc -eo pipefail {0}' }} - runs-on: ${{ matrix.runs_on || 'macos-latest' }} + runs-on: ${{ matrix.runs_on }} strategy: matrix: include: @@ -22,10 +19,8 @@ jobs: - runs_on: macos-latest python: "3.10" - runs_on: apple-silicon-m1 - run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} python: "3.9.11" - runs_on: apple-silicon-m1 - run_wrapper: arch -arm64 bash --noprofile --norc -eo pipefail {0} python: "3.10.3" steps: - uses: actions/checkout@v2 From b369719e4233b53a5523960461a6bb7ad058041c Mon Sep 17 00:00:00 2001 From: Akshay Arora Date: Tue, 25 Apr 2023 13:06:53 +0530 Subject: [PATCH 02/26] Build only `universal2` wheels for supported Python versions (#92) --- .github/workflows/deploy.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index cb8b9e3..20cce6a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -8,8 +8,8 @@ jobs: runs-on: macos-latest env: CIBW_BUILD_VERBOSITY: 3 - CIBW_BUILD: cp3{6,7,8,9,10}-* - CIBW_ARCHS: "x86_64 universal2 arm64" + CIBW_BUILD: "cp37-macosx_x86_64 cp38-macosx_universal2 cp39-macosx_universal2 cp310-macosx_universal2 cp311-macosx_universal2" + CIBW_ARCHS_MACOS: "x86_64 universal2" CIBW_TEST_COMMAND: python -c "from pyobjus import autoclass, objc_str" CIBW_TEST_SKIP: "*arm64*" steps: From 889d4b53c6d43a9583c23dae1bb07e05c63f7591 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sat, 13 May 2023 11:30:35 +0200 Subject: [PATCH 03/26] Add Discord and remove IRC from support channels (#94) --- README.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index d69c71e..676c3dd 100644 --- a/README.md +++ b/README.md @@ -35,11 +35,9 @@ If you need assistance, you can ask for help on our mailing list: * User Group : https://groups.google.com/group/kivy-users * Email : kivy-users@googlegroups.com -We also have an IRC channel: +We also have a Discord server: -* Server : irc.freenode.net -* Port : 6667, 6697 (SSL only) -* Channel : #kivy +[https://chat.kivy.org/](https://chat.kivy.org/) ## Contributing From 5b3715c966b22b5c71f9f0818595ef00165c4125 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sat, 13 May 2023 11:31:07 +0200 Subject: [PATCH 04/26] Add Python 3.11 to test matrix and update supported python versions list (#93) --- .github/workflows/python-package.yml | 8 ++++++-- setup.py | 7 ++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 0083d93..f1f06ab 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -18,10 +18,14 @@ jobs: python: "3.9" - runs_on: macos-latest python: "3.10" + - runs_on: macos-latest + python: "3.11" + - runs_on: apple-silicon-m1 + python: "3.9" - runs_on: apple-silicon-m1 - python: "3.9.11" + python: "3.10" - runs_on: apple-silicon-m1 - python: "3.10.3" + python: "3.11" steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python }} diff --git a/setup.py b/setup.py index 3800269..61ae110 100644 --- a/setup.py +++ b/setup.py @@ -134,10 +134,11 @@ def tree(source, allowed_ext=data_allowed_ext, tree_name='share/pyobjus-'): 'License :: OSI Approved :: MIT License', 'Natural Language :: English', 'Operating System :: MacOS', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', + 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', + 'Programming Language :: Python :: 3.11', 'Topic :: Software Development :: Libraries :: Application Frameworks' ], ) From c8dbe9f005bcaf4f4fbd85dea4e7cef307db58bf Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sat, 13 May 2023 11:46:55 +0200 Subject: [PATCH 05/26] Bump version to 1.2.2 (#95) --- pyobjus/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyobjus/__init__.py b/pyobjus/__init__.py index 713d1fe..461ffaf 100644 --- a/pyobjus/__init__.py +++ b/pyobjus/__init__.py @@ -1,2 +1,2 @@ -__version__ = '1.2.2.dev0' +__version__ = '1.2.2' from .pyobjus import * From 9d66904623df5e0772dad807a6a14c340f22fc9e Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sat, 13 May 2023 14:04:31 +0200 Subject: [PATCH 06/26] Bump version to 1.2.3.dev0 (#96) --- pyobjus/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyobjus/__init__.py b/pyobjus/__init__.py index 461ffaf..e54546a 100644 --- a/pyobjus/__init__.py +++ b/pyobjus/__init__.py @@ -1,2 +1,2 @@ -__version__ = '1.2.2' +__version__ = '1.2.3.dev0' from .pyobjus import * From 884caa5f14268441d1ce3a0fa91122e6e8538ebb Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sun, 15 Oct 2023 10:19:16 +0200 Subject: [PATCH 07/26] Add support for Cython >=3 and keep support for Cython < 3 (#99) --- .github/workflows/python-package.yml | 35 +++++++++++++++------------- pyobjus/pyobjus.pyx | 17 +++++++++----- pyobjus/pyobjus_types.pxi | 2 +- setup.py | 5 +++- 4 files changed, 35 insertions(+), 24 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index f1f06ab..380e01b 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -5,27 +5,27 @@ on: [push, pull_request] jobs: build: - name: "build (${{ matrix.runs_on }}, ${{ matrix.python }})" + name: "build (${{ matrix.runs_on }}, ${{ matrix.python }} - Cython ${{ matrix.cython }})" runs-on: ${{ matrix.runs_on }} strategy: matrix: - include: - - runs_on: macos-latest - python: "3.7" - - runs_on: macos-latest - python: "3.8" - - runs_on: macos-latest - python: "3.9" - - runs_on: macos-latest - python: "3.10" - - runs_on: macos-latest - python: "3.11" - - runs_on: apple-silicon-m1 - python: "3.9" + runs_on: + - macos-latest + - apple-silicon-m1 + python: + - "3.7" + - "3.8" + - "3.9" + - "3.10" + - "3.11" + cython: + - "<3" + - ">=3" + exclude: - runs_on: apple-silicon-m1 - python: "3.10" + python: "3.7" - runs_on: apple-silicon-m1 - python: "3.11" + python: "3.8" steps: - uses: actions/checkout@v2 - name: Set up Python ${{ matrix.python }} @@ -35,6 +35,9 @@ jobs: with: python-version: ${{ matrix.python }} + - name: Force Cython version + run: sed -i.bak 's/"Cython"/"Cython${{matrix.cython}}"/' pyproject.toml + - name: Install project run: | source .ci/osx_ci.sh diff --git a/pyobjus/pyobjus.pyx b/pyobjus/pyobjus.pyx index 4dfda18..b007a96 100644 --- a/pyobjus/pyobjus.pyx +++ b/pyobjus/pyobjus.pyx @@ -49,6 +49,11 @@ from libcpp cimport bool # library files include "config.pxi" + +# from Cython 3.0, in the MetaJavaClass, this is accessed as _JavaClass__cls_storage +# see https://cython.readthedocs.io/en/latest/src/userguide/migrating_to_cy30.html#class-private-name-mangling +cdef CLS_STORAGE_NAME = '_JavaClass__cls_storage' if PYOBJUS_CYTHON_3 else '__cls_storage' + include "debug.pxi" include "common.pxi" include "type_enc.pxi" @@ -129,7 +134,7 @@ class MetaObjcClass(type): raise ObjcException('Unable to find class {0!r}'.format( __objcclass__)) - classDict['__cls_storage'] = storage + classDict[CLS_STORAGE_NAME] = storage cdef ObjcMethod om for name, value in classDict.iteritems(): @@ -431,7 +436,7 @@ cdef class ObjcMethod(object): raise MemoryError('Unable to allocate res_ptr') if not self.signature_return[0].startswith((b'(', b'{')): - ffi_call(&self.f_cif, objc_msgSend, res_ptr, f_args) + ffi_call(&self.f_cif, objc_msgSend, res_ptr, f_args) else: # TODO FIXME NOTE: Currently this only work on x86_64 architecture and armv7 ios @@ -460,20 +465,20 @@ cdef class ObjcMethod(object): stret = True if stret and MACOS_HAVE_OBJMSGSEND_STRET: - ffi_call(&self.f_cif, objc_msgSend_stret__safe, res_ptr, f_args) + ffi_call(&self.f_cif, objc_msgSend_stret__safe, res_ptr, f_args) fun_name = "objc_msgSend_stret" del_res_ptr = False else: - ffi_call(&self.f_cif, objc_msgSend, res_ptr, f_args) + ffi_call(&self.f_cif, objc_msgSend, res_ptr, f_args) fun_name = "objc_msgSend" dprint("x86_64 architecture {0} call".format(fun_name), of_type='i') ELIF PLATFORM == 'ios': IF ARCH == 'arm64': - ffi_call(&self.f_cif, objc_msgSend, res_ptr, f_args) + ffi_call(&self.f_cif, objc_msgSend, res_ptr, f_args) dprint('ios(arm64) platform objc_msgSend call') ELSE: - ffi_call(&self.f_cif, objc_msgSend_stret, res_ptr, f_args) + ffi_call(&self.f_cif, objc_msgSend_stret, res_ptr, f_args) dprint('ios(armv7) platform objc_msgSend_stret call') ELSE: diff --git a/pyobjus/pyobjus_types.pxi b/pyobjus/pyobjus_types.pxi index 2345782..34c0b0f 100644 --- a/pyobjus/pyobjus_types.pxi +++ b/pyobjus/pyobjus_types.pxi @@ -612,7 +612,7 @@ cdef class ObjcClassInstance: super(ObjcClassInstance, self).__init__() cdef ObjcClassStorage storage if 'getcls' not in kwargs: - storage = self.__cls_storage + storage = getattr(self, CLS_STORAGE_NAME) self.o_cls = storage.o_cls if 'noinstance' not in kwargs: diff --git a/setup.py b/setup.py index 61ae110..d34e39e 100644 --- a/setup.py +++ b/setup.py @@ -56,7 +56,10 @@ def build_extensions(self): config_pxi_fn = join(dirname(__file__), 'pyobjus', 'config.pxi') config_pxi_need_update = True config_pxi = 'DEF PLATFORM = "{}"\n'.format(dev_platform) - config_pxi += 'DEF ARCH = "{}"'.format(arch) + config_pxi += 'DEF ARCH = "{}"\n'.format(arch) + import Cython + cython3 = Cython.__version__.startswith('3.') + config_pxi += f"DEF PYOBJUS_CYTHON_3 = {cython3}" if exists(config_pxi_fn): with open(config_pxi_fn) as fd: config_pxi_need_update = fd.read() != config_pxi From 3763e2a8c05fcfead5caf051c68fc45cc2b6355a Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sun, 15 Oct 2023 11:15:22 +0200 Subject: [PATCH 08/26] Now Github Actions provides python3 via setup-python also for Apple Silicon Macs (#98) --- .ci/osx_ci.sh | 13 ------------- .github/workflows/python-package.yml | 11 ++++------- 2 files changed, 4 insertions(+), 20 deletions(-) delete mode 100644 .ci/osx_ci.sh diff --git a/.ci/osx_ci.sh b/.ci/osx_ci.sh deleted file mode 100644 index 8cdd1ac..0000000 --- a/.ci/osx_ci.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash -set -e -x - -arm64_set_path_and_python_version(){ - python_version="$1" - if [[ $(/usr/bin/arch) = arm64 ]]; then - export PATH=/opt/homebrew/bin:$PATH - eval "$(pyenv init --path)" - pyenv install $python_version -s - pyenv global $python_version - export PATH=$(pyenv prefix)/bin:$PATH - fi -} \ No newline at end of file diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 380e01b..956bb28 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -26,12 +26,13 @@ jobs: python: "3.7" - runs_on: apple-silicon-m1 python: "3.8" + - runs_on: apple-silicon-m1 + python: "3.9" steps: - uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python }} - # Needs to be skipped on our self-hosted runners tagged as 'apple-silicon-m1' - if: ${{ matrix.runs_on != 'apple-silicon-m1' }} - uses: actions/setup-python@v2 + uses: actions/setup-python@v4 with: python-version: ${{ matrix.python }} @@ -40,15 +41,11 @@ jobs: - name: Install project run: | - source .ci/osx_ci.sh - arm64_set_path_and_python_version ${{ matrix.python }} pip install cython pytest pip install . - name: Test with pytest run: | - source .ci/osx_ci.sh - arm64_set_path_and_python_version ${{ matrix.python }} make test_lib make make tests From 9d3c9171d3c0f94f334a959e48794b7b59bf2288 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sun, 15 Oct 2023 13:56:03 +0200 Subject: [PATCH 09/26] Add support for Python 3.12 (tests, wheel, docs) (#100) --- .github/workflows/deploy.yml | 4 ++-- .github/workflows/python-package.yml | 3 ++- setup.py | 1 + 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 20cce6a..a77b1fa 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -8,7 +8,7 @@ jobs: runs-on: macos-latest env: CIBW_BUILD_VERBOSITY: 3 - CIBW_BUILD: "cp37-macosx_x86_64 cp38-macosx_universal2 cp39-macosx_universal2 cp310-macosx_universal2 cp311-macosx_universal2" + CIBW_BUILD: "cp37-macosx_x86_64 cp38-macosx_universal2 cp39-macosx_universal2 cp310-macosx_universal2 cp311-macosx_universal2 cp312-macosx_universal2" CIBW_ARCHS_MACOS: "x86_64 universal2" CIBW_TEST_COMMAND: python -c "from pyobjus import autoclass, objc_str" CIBW_TEST_SKIP: "*arm64*" @@ -21,7 +21,7 @@ jobs: python-version: '3.x' - name: Install dependencies - run: python -m pip install --upgrade twine cibuildwheel cython + run: python -m pip install --upgrade twine cibuildwheel~=2.16.2 cython - name: Build sdist run: | diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 956bb28..9395138 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -18,6 +18,7 @@ jobs: - "3.9" - "3.10" - "3.11" + - "3.12" cython: - "<3" - ">=3" @@ -41,7 +42,7 @@ jobs: - name: Install project run: | - pip install cython pytest + pip install cython pytest setuptools pip install . - name: Test with pytest diff --git a/setup.py b/setup.py index d34e39e..9f802c2 100644 --- a/setup.py +++ b/setup.py @@ -142,6 +142,7 @@ def tree(source, allowed_ext=data_allowed_ext, tree_name='share/pyobjus-'): 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', 'Topic :: Software Development :: Libraries :: Application Frameworks' ], ) From fbcfd48cd23e06482e8e5fd8967aa7582a8d7643 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sun, 15 Oct 2023 14:22:35 +0200 Subject: [PATCH 10/26] Fixes the build on kivy-ios, as we do not have access to Cython (#101) --- setup.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/setup.py b/setup.py index 9f802c2..0de7708 100644 --- a/setup.py +++ b/setup.py @@ -57,8 +57,11 @@ def build_extensions(self): config_pxi_need_update = True config_pxi = 'DEF PLATFORM = "{}"\n'.format(dev_platform) config_pxi += 'DEF ARCH = "{}"\n'.format(arch) - import Cython - cython3 = Cython.__version__.startswith('3.') + if dev_platform == 'ios': + cython3 = False # Assume Cython 0.29, which is what we use for kivy-ios (ATM) + else: + import Cython + cython3 = Cython.__version__.startswith('3.') config_pxi += f"DEF PYOBJUS_CYTHON_3 = {cython3}" if exists(config_pxi_fn): with open(config_pxi_fn) as fd: From dd771b05ca3a24ee8ad6543404f94759a3658250 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Fri, 20 Oct 2023 18:02:25 +0200 Subject: [PATCH 11/26] Bump version to 1.2.3 (#102) --- pyobjus/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyobjus/__init__.py b/pyobjus/__init__.py index e54546a..79ca011 100644 --- a/pyobjus/__init__.py +++ b/pyobjus/__init__.py @@ -1,2 +1,2 @@ -__version__ = '1.2.3.dev0' +__version__ = '1.2.3' from .pyobjus import * From ec419f22f770476bcb0c5b70836abee69179812a Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Fri, 20 Oct 2023 18:32:00 +0200 Subject: [PATCH 12/26] Add (now mandatory) .readthedocs.yaml file, add docs requirements.txt and update sphinx conf (#103) --- .readthedocs.yaml | 16 ++++++++++++++++ docs/requirements.txt | 2 ++ docs/source/conf.py | 30 ++++++++++++++++++++++++------ 3 files changed, 42 insertions(+), 6 deletions(-) create mode 100644 .readthedocs.yaml create mode 100644 docs/requirements.txt diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000..b5f396b --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,16 @@ +# Read the Docs configuration file for Sphinx projects +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +version: 2 + +build: + os: ubuntu-22.04 + tools: + python: "3" + +python: + install: + - requirements: docs/requirements.txt + +sphinx: + configuration: docs/source/conf.py diff --git a/docs/requirements.txt b/docs/requirements.txt new file mode 100644 index 0000000..2a72e68 --- /dev/null +++ b/docs/requirements.txt @@ -0,0 +1,2 @@ +Sphinx~=7.2.6 +furo==2023.9.10 \ No newline at end of file diff --git a/docs/source/conf.py b/docs/source/conf.py index 594d8aa..0cb9604 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -11,7 +11,9 @@ # All configuration values have a default; values that are commented out # serve to show the default. -import sys, os +import datetime +import os +import re # If extensions (or modules to document with autodoc) are in another directory, # add these directories to sys.path here. If the directory is relative to the @@ -40,17 +42,33 @@ master_doc = 'index' # General information about the project. -project = u'Pyobjus' -copyright = u'2012, Mathieu Virbel, Gabriel Pettier' +project = 'pyobjus' + +_today = datetime.datetime.now() + +copyright = f'{_today.year}, Mathieu Virbel, Gabriel Pettier' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # + +# Lookup the version from the pyobjus module, without installing it +# since readthedocs.org may have issue to install it. +# Read the version from the __init__.py file, without importing it. +def get_version(): + with open( + os.path.join(os.path.abspath("../.."), "pyobjus", "__init__.py") + ) as fp: + for line in fp: + m = re.search(r'^\s*__version__\s*=\s*([\'"])([^\'"]+)\1\s*$', line) + if m: + return m.group(2) + # The short X.Y version. -version = '1.0' +version = get_version() # The full version, including alpha/beta/rc tags. -release = '1.0a1' +release = get_version() # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -91,7 +109,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. -html_theme = 'default' +html_theme = 'furo' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the From cc90152ee5f7bdf339c7c36b09ea902a4092f0d9 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Fri, 20 Oct 2023 19:19:07 +0200 Subject: [PATCH 13/26] Bump version to 1.2.4.dev0 (#104) --- pyobjus/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyobjus/__init__.py b/pyobjus/__init__.py index 79ca011..98ef21f 100644 --- a/pyobjus/__init__.py +++ b/pyobjus/__init__.py @@ -1,2 +1,2 @@ -__version__ = '1.2.3' +__version__ = '1.2.4.dev0' from .pyobjus import * From c30a8425d36e34cebee73598883e2d4180fba016 Mon Sep 17 00:00:00 2001 From: Julian Date: Fri, 10 Nov 2023 18:33:27 +1100 Subject: [PATCH 14/26] Create `no-reponse.yml` (#106) --- .github/workflows/no-reponse.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/no-reponse.yml diff --git a/.github/workflows/no-reponse.yml b/.github/workflows/no-reponse.yml new file mode 100644 index 0000000..f34d064 --- /dev/null +++ b/.github/workflows/no-reponse.yml @@ -0,0 +1,30 @@ +name: No Response + +# Both `issue_comment` and `scheduled` event types are required for this Action +# to work properly. +on: + issue_comment: + types: [created] + schedule: + # Schedule for five minutes after the hour, every hour + - cron: '5 * * * *' + +jobs: + noResponse: + runs-on: ubuntu-latest + steps: + - uses: lee-dohm/no-response@9bb0a4b5e6a45046f00353d5de7d90fb8bd773bb + # This commit hash targets release v0.5.0 of lee-dohm/no-response. + # Targeting a commit hash instead of a tag has been done for security reasons. + # Please be aware that the commit hash specifically targets the "Automatic compilation" + # done by `github-actions[bot]` as the `no-response` Action needs to be compiled. + with: + token: ${{ github.token }} + daysUntilClose: 42 + responseRequiredLabel: 'awaiting-reply' + closeComment: > + This issue has been automatically closed because there has been no response + to our request for more information from the original author. With only the + information that is currently in the issue, we don't have the means + to take action. Please reach out if you have or find the answers we need so + that we can investigate further. From eabefdf914a385e3993a23d8b88c992576fe95b2 Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sat, 25 May 2024 11:38:20 +0200 Subject: [PATCH 15/26] Remove support for Python 3.7 as reached EOL (#108) --- .github/workflows/python-package.yml | 3 --- setup.py | 1 - 2 files changed, 4 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 9395138..ef013f5 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -13,7 +13,6 @@ jobs: - macos-latest - apple-silicon-m1 python: - - "3.7" - "3.8" - "3.9" - "3.10" @@ -23,8 +22,6 @@ jobs: - "<3" - ">=3" exclude: - - runs_on: apple-silicon-m1 - python: "3.7" - runs_on: apple-silicon-m1 python: "3.8" - runs_on: apple-silicon-m1 diff --git a/setup.py b/setup.py index 0de7708..9ebd636 100644 --- a/setup.py +++ b/setup.py @@ -140,7 +140,6 @@ def tree(source, allowed_ext=data_allowed_ext, tree_name='share/pyobjus-'): 'License :: OSI Approved :: MIT License', 'Natural Language :: English', 'Operating System :: MacOS', - 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', From 2e5bb3f820bf5a717ed23393dc9a716d43743f4c Mon Sep 17 00:00:00 2001 From: Mirko Galimberti Date: Sat, 25 May 2024 11:46:35 +0200 Subject: [PATCH 16/26] Sunset `apple-silicon-m1` self-hosted runner, as now is supported by Github Hosted runners via `macos-latest` tag. Use `macos-13` for runs on Intel macs --- .github/workflows/python-package.yml | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index ef013f5..7d2ad28 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -9,9 +9,9 @@ jobs: runs-on: ${{ matrix.runs_on }} strategy: matrix: - runs_on: - - macos-latest - - apple-silicon-m1 + # macos-latest (ATM macos-14) runs on Apple Silicon, + # macos-13 runs on Intel + runs_on: ['macos-latest', 'macos-13'] python: - "3.8" - "3.9" @@ -21,11 +21,6 @@ jobs: cython: - "<3" - ">=3" - exclude: - - runs_on: apple-silicon-m1 - python: "3.8" - - runs_on: apple-silicon-m1 - python: "3.9" steps: - uses: actions/checkout@v2 From d9c0076bdc24c6038422ddc8ff9d3d2ba1ddf44a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 25 May 2024 11:47:19 +0200 Subject: [PATCH 17/26] Add renovate.json (#110) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- renovate.json | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 renovate.json diff --git a/renovate.json b/renovate.json new file mode 100644 index 0000000..5db72dd --- /dev/null +++ b/renovate.json @@ -0,0 +1,6 @@ +{ + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:recommended" + ] +} From a04fc18e1a4654ceafaa79eb7d7931ed8d225698 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 25 May 2024 11:49:28 +0200 Subject: [PATCH 18/26] Update softprops/action-gh-release action to v0.1.15 (#112) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index a77b1fa..fec3286 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -39,7 +39,7 @@ jobs: - name: Upload to GitHub Releases if: startsWith(github.ref, 'refs/tags/') - uses: softprops/action-gh-release@v0.1.14 + uses: softprops/action-gh-release@v0.1.15 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: From d2211144d8e217307f7006fa4b01f9bbf5d38ea1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 26 May 2024 10:54:43 +0200 Subject: [PATCH 19/26] Update actions/checkout action to v4 (#115) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/deploy.yml | 2 +- .github/workflows/python-package.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index fec3286..e009c67 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -13,7 +13,7 @@ jobs: CIBW_TEST_COMMAND: python -c "from pyobjus import autoclass, objc_str" CIBW_TEST_SKIP: "*arm64*" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v1 diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index 7d2ad28..d13674a 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -22,7 +22,7 @@ jobs: - "<3" - ">=3" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python }} uses: actions/setup-python@v4 From 97ce83257eabfe88e9725ecf069365b1bba5af35 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 26 May 2024 10:56:43 +0200 Subject: [PATCH 20/26] Update actions/upload-artifact action to v4 (#117) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index e009c67..636cd32 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -32,7 +32,7 @@ jobs: python -m cibuildwheel --output-dir dist - name: Create artifacts - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: wheels path: dist From f30c3045c1eb8fa9575beb83bc7a425ea5008c7c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 26 May 2024 11:15:18 +0200 Subject: [PATCH 21/26] Update dependency furo to v2024 (#118) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- docs/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index 2a72e68..86baca6 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,2 +1,2 @@ Sphinx~=7.2.6 -furo==2023.9.10 \ No newline at end of file +furo==2024.5.6 \ No newline at end of file From 9ad636c9d8ffa7e3df35f1ba508ae6d11195f5ff Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sun, 26 May 2024 11:31:18 +0200 Subject: [PATCH 22/26] Update actions/setup-python action to v5 (#116) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/deploy.yml | 2 +- .github/workflows/python-package.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 636cd32..2720a0a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -16,7 +16,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v1 + uses: actions/setup-python@v5 with: python-version: '3.x' diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml index d13674a..3026df8 100644 --- a/.github/workflows/python-package.yml +++ b/.github/workflows/python-package.yml @@ -25,7 +25,7 @@ jobs: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python }} From 9f6fef11c8555444bd8adca2a050308df4abe95f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 19 Jul 2024 00:46:54 +0000 Subject: [PATCH 23/26] Update softprops/action-gh-release action to v2 --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 2720a0a..c544037 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -39,7 +39,7 @@ jobs: - name: Upload to GitHub Releases if: startsWith(github.ref, 'refs/tags/') - uses: softprops/action-gh-release@v0.1.15 + uses: softprops/action-gh-release@v2.0.8 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: From 9c053389b3c71f37a5d7c52e3e95d61a4e30e359 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 30 Jul 2024 03:31:09 +0000 Subject: [PATCH 24/26] Update dependency Sphinx to v8 --- docs/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index 86baca6..e954000 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,2 +1,2 @@ -Sphinx~=7.2.6 +Sphinx~=8.0.2 furo==2024.5.6 \ No newline at end of file From 35a9d878ef6356eca6574ededd492165d11eae3e Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 24 Sep 2024 07:03:45 +0000 Subject: [PATCH 25/26] Update dependency furo to v2024.8.6 --- docs/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index e954000..f355c8b 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,2 +1,2 @@ Sphinx~=8.0.2 -furo==2024.5.6 \ No newline at end of file +furo==2024.8.6 \ No newline at end of file From d7bd5557c6854251771f79873ca111a4fcc6a1a9 Mon Sep 17 00:00:00 2001 From: Akshay Arora Date: Tue, 24 Sep 2024 12:48:07 +0530 Subject: [PATCH 26/26] CI: add setuptools to requirements --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 2720a0a..0d17cbf 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -21,7 +21,7 @@ jobs: python-version: '3.x' - name: Install dependencies - run: python -m pip install --upgrade twine cibuildwheel~=2.16.2 cython + run: python -m pip install --upgrade twine cibuildwheel~=2.16.2 cython setuptools - name: Build sdist run: |