diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 61543ab..ce006d0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,6 +25,7 @@ jobs: run: | sudo apt-get -y install libgirepository1.0-dev pip install -r requirements.dev.txt + pip list - name: Flake8 run: | @@ -43,34 +44,23 @@ jobs: - uses: actions/setup-python@v4 with: python-version: '3.8' - - - name: Install dependencies - run: | - sudo apt-get -y install appstream appstream-util desktop-file-utils gettext - - - name: Meson build - uses: BSFishy/meson-build@v1.0.3 - with: - action: build - setup-options: --prefix=/tmp/diffuse - - - name: Meson test - uses: BSFishy/meson-build@v1.0.3 - with: - action: test + - run: sudo apt-get -y install meson appstream appstream-util desktop-file-utils gettext + - run: pip install meson ninja + - run: meson setup build + - run: meson compile -C build + - run: meson test -C build flatpak-build-test: runs-on: ubuntu-latest container: - image: bilelmoussaoui/flatpak-github-actions:gnome-40 + image: bilelmoussaoui/flatpak-github-actions:gnome-44 options: --privileged steps: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: python-version: '3.8' - - name: Flatpak builder - uses: flatpak/flatpak-github-actions/flatpak-builder@v4 + - uses: flatpak/flatpak-github-actions/flatpak-builder@v6 with: bundle: "diffuse.flatpak" manifest-path: "io.github.mightycreak.Diffuse.yml" diff --git a/CHANGELOG.md b/CHANGELOG.md index debd0fd..35a375b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Dialog: prompt only once if several files needs to be reloaded (@yuriiz) - Use GTK3's Gtk.Application/Gtk.ApplicationWindow (@yuriiz) - Split `DiffuseApplication` and `DiffuseWindow` classes in their own files (@MightyCreak) +- Use new Meson (from 0.50 to 0.55) and fixed deprecation warnings (@MightyCreak) +- Update from GNOME 42 to GNOME 44 (@MightyCreak) +- Mac: fix the shortcut for first/previous/next/last differences, now uses ⌘ + instead of Ctrl (@krlmlr) ### Fixed diff --git a/data/io.github.mightycreak.Diffuse.appdata.xml.in b/data/io.github.mightycreak.Diffuse.appdata.xml.in index 255c0f7..02c6889 100644 --- a/data/io.github.mightycreak.Diffuse.appdata.xml.in +++ b/data/io.github.mightycreak.Diffuse.appdata.xml.in @@ -19,7 +19,7 @@ Main window: diff between two files - https://mightycreak.github.io/diffuse/images/screenshot_v0.7.0.png + https://mightycreak.github.io/diffuse/docs/images/screenshot_v0.7.0.png diff --git a/docs/developers/developers-setup.md b/docs/developers/developers-setup.md index 86c8abd..16b52cc 100644 --- a/docs/developers/developers-setup.md +++ b/docs/developers/developers-setup.md @@ -71,7 +71,7 @@ pip3 install -r requirements.dev.txt To build, test and install Diffuse locally: ```sh -flatpak install runtime/org.gnome.Sdk/$(uname -p)/42 +flatpak install runtime/org.gnome.Sdk/$(uname -p)/44 flatpak-builder --user --install build-flatpak io.github.mightycreak.Diffuse.yml ``` @@ -80,7 +80,7 @@ flatpak-builder --user --install build-flatpak io.github.mightycreak.Diffuse.yml To run Diffuse through Flatpak: ```sh -flatpak run io.github.mightycreak.Diffuse +flatpak run --user io.github.mightycreak.Diffuse ``` #### Uninstall @@ -88,7 +88,7 @@ flatpak run io.github.mightycreak.Diffuse To uninstall Diffuse: ```sh -flatpak remove io.github.mightycreak.Diffuse +flatpak remove --user io.github.mightycreak.Diffuse ``` ### Setup on Linux using Meson @@ -101,9 +101,8 @@ To build and test Diffuse: ```sh meson setup build -cd build -meson compile -meson test +meson compile -C build +meson test -C build ``` #### Install on system and run @@ -111,7 +110,7 @@ meson test To install Diffuse on your system (e.g. `/usr/local/`): ```sh -meson install # requires admin privileges +meson install -C build # requires admin privileges ``` To run Diffuse: @@ -128,7 +127,7 @@ Meson allows to change the default installation directories, see To install Diffuse in a custom directory (e.g. `~/bin/diffuse`): ```sh -meson install --destdir ~/bin/diffuse +meson install -C build --destdir ~/bin/diffuse ``` To run Diffuse: @@ -159,9 +158,8 @@ To build and test Diffuse: ```sh meson setup build -cd build -meson compile -meson test +meson compile -C build +meson test -C build ``` #### Install on system and run @@ -170,7 +168,7 @@ To install Diffuse on your system (e.g. `/Applications/` and `/opt/homebrew/` or `/usr/local/`): ```sh -meson install # requires admin privileges +meson install -C build # requires admin privileges ``` To run Diffuse: diff --git a/docs/images/screenshot_v0.7.0.png b/docs/images/screenshot_v0.7.0.png new file mode 100644 index 0000000..243b9e4 Binary files /dev/null and b/docs/images/screenshot_v0.7.0.png differ diff --git a/io.github.mightycreak.Diffuse.yml b/io.github.mightycreak.Diffuse.yml index 9c26822..122a6f6 100644 --- a/io.github.mightycreak.Diffuse.yml +++ b/io.github.mightycreak.Diffuse.yml @@ -1,6 +1,6 @@ app-id: io.github.mightycreak.Diffuse runtime: org.gnome.Platform -runtime-version: '42' +runtime-version: '44' sdk: org.gnome.Sdk command: diffuse finish-args: diff --git a/meson.build b/meson.build index 2e87548..7222ad6 100644 --- a/meson.build +++ b/meson.build @@ -1,6 +1,6 @@ project('diffuse', version: '0.7.7', - meson_version: '>= 0.50', + meson_version: '>= 0.55', license: 'GPL-2.0-or-later', default_options: [ 'warning_level=2' ]) diff --git a/requirements.dev.txt b/requirements.dev.txt index fc0cf07..d693349 100644 --- a/requirements.dev.txt +++ b/requirements.dev.txt @@ -1,4 +1,4 @@ -r requirements.txt -flake8 ~= 3.8 -flake8-noqa ~= 1.2 -mypy ~= 0.910 +flake8 ~= 6.0 +flake8-noqa ~= 1.3 +mypy ~= 1.1 diff --git a/requirements.txt b/requirements.txt index 589e03c..3abcf20 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1 @@ -PyGObject ~= 3.40 +PyGObject ~= 3.44 diff --git a/src/diffuse/meson.build b/src/diffuse/meson.build index c8ff065..17c1cb5 100644 --- a/src/diffuse/meson.build +++ b/src/diffuse/meson.build @@ -4,7 +4,7 @@ moduledir = join_paths(pkgdatadir, 'diffuse') python = import('python') conf = configuration_data() -conf.set('PYTHON', python.find_installation('python3').path()) +conf.set('PYTHON', python.find_installation('python3').full_path()) conf.set('VERSION', meson.project_version()) conf.set('PKGDATADIR', pkgdatadir) conf.set('LOCALEDIR', join_paths(get_option('prefix'), get_option('localedir')))