PyGObject 3.48.0__tar.gz → 3.48.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/Dockerfile +11 -1
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/run-docker.sh +1 -1
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-docker.sh +8 -1
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-flatpak.sh +1 -1
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci.yml +3 -3
- {pygobject-3.48.0 → pygobject-3.48.2}/NEWS +12 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/PKG-INFO +1 -1
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/module.py +1 -1
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-fundamental.c +14 -6
- {pygobject-3.48.0 → pygobject-3.48.2}/meson.build +1 -1
- {pygobject-3.48.0 → pygobject-3.48.2}/pyproject.toml +2 -2
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/gi/overrides/Regress.py +24 -3
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/regressextra.c +66 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/regressextra.h +22 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_fundamental.py +6 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.coveragerc +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.flake8 +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitignore +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/Dockerfile.old +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/README.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/build-sdists.sh +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/coverage-docker.sh +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/fixup-lcov-paths.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/lcovrc +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/run-docker-old.sh +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/run-docker-runtime.sh +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/set_env.sh +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-docker-old.sh +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-msys2.sh +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/.readthedocs.yaml +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/COPYING +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/PKG-INFO.in +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/README.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/Makefile +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/bugs_repo.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/changelog.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/conf.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/contact.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/dev_environ.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/index.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/override_guidelines.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/overview.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/style_guide.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/extra.css +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/further.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/getting_started.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/api.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/basic_types.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/error_handling.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/flags_enums.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/gobject.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/index.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/properties.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/signals.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/weakrefs.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/cairo_integration.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/code/cairo-demo.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/debug_profile.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/deploy.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/faq.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/gtk_template.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/images/cairo_integration.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/index.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/porting.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/sysdeps.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/testing.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/threading.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/icons.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/LICENSE +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/favicon.ico +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/logo.svg +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/overview-dark.svg +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/overview.dia +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/overview.svg +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/pygobject-small.svg +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/pygobject.svg +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/start_linux.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/start_macos.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/start_windows.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/index.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/maintguide.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/packagingguide.rst +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/docs/requirements.txt +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/cairo-demo.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demo.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/css_accordion.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/css_basics.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/css_multiplebgs.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/entry_buffer.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/entry_completion.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/search_entry.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/IconView/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/IconView/iconviewbasics.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/IconView/iconviewedit.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/liststore.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/treemodel_filelist.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/treemodel_filetree.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/treemodel_large.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/appwindow.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/assistant.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/builder.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/button_box.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/clipboard.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/colorselector.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/combobox.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/alphatest.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/apple-red.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/background.jpg +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/brick.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/brick2.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/css_accordion.css +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/css_basics.css +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/css_multiplebgs.css +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/cssview.css +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/demo.gresource +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/demo.gresource.xml +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/demo.ui +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/floppybuddy.gif +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-applets.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-calendar.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-foot.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-fs-directory.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-fs-regular.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-gimp.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-gmush.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-gsame.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnu-keys.png +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gtk-logo-rgb.gif +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/reset.css +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/dialogs.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/drawingarea.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/expander.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/flowbox.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/images.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/infobars.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/links.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/menus.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/pickers.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/pixbuf.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/printing.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/rotatedtext.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/test.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/option.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/properties.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/examples/signal.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/_constants.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/_error.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/_gtktemplate.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/_option.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/_ossighelper.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/_propertyhelper.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/_signalhelper.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/docstring.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/gimodule.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/gimodule.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/importer.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/meson.build +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GIMarshallingTests.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GLib.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GObject.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Gdk.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GdkPixbuf.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Gio.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Gtk.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Pango.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/keysyms.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/meson.build +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygboxed.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygboxed.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygenum.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygenum.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygflags.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygflags.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-argument.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-argument.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-array.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-array.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-basictype.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-basictype.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-boxed.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-boxed.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-cache.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-cache.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-ccallback.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-ccallback.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-closure.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-closure.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-enum-marshal.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-enum-marshal.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-error.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-error.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign-api.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign-cairo.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-fundamental.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-hashtable.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-hashtable.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-info.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-info.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-invoke-state-struct.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-invoke.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-invoke.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-list.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-list.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-marshal-cleanup.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-marshal-cleanup.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-object.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-object.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-property.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-property.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-repository.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-repository.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-resulttuple.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-resulttuple.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-signal-closure.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-signal-closure.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-source.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-source.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct-marshal.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct-marshal.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-type.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-type.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-util.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-util.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-value.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-value.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pyginterface.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pyginterface.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject-internal.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject-object.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject-object.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptioncontext.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptioncontext.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptiongroup.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptiongroup.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygparamspec.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygparamspec.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygpointer.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygpointer.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygspawn.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygspawn.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygtkcompat.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/repository/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/repository/meson.build +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/gi/types.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/meson_options.txt +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/pygobject-3.0.pc.in +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/pygobject.doap +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/generictreemodel.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/meson.build +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/pygtkcompat.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/.gitignore +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/glib.wrap +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/gobject-introspection.wrap +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/libffi.wrap +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/pycairo.wrap +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/conftest.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/gi/overrides/__init__.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/gimarshallingtestsextra.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/gimarshallingtestsextra.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/helper.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/meson.build +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/org.gnome.test.gschema.xml +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-floating.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-floating.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-thread.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-thread.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-unknown.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-unknown.h +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_atoms.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_cairo.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_docstring.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_error.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_everything.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_fields.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gdbus.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_generictreemodel.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gi.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gio.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_glib.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gobject.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gtk_template.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gtype.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_import_machinery.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_interface.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_internal_api.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_iochannel.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_mainloop.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_object_marshaling.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_option.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_ossig.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gdk.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gdkpixbuf.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gio.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_glib.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gobject.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gtk.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_pango.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_properties.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_pycapi.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_pygtkcompat.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_repository.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_resulttuple.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_signal.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_source.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_subprocess.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_thread.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_typeclass.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_unknown.py +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/testhelpermodule.c +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tests/valgrind.supp +0 -0
- {pygobject-3.48.0 → pygobject-3.48.2}/tools/pygi-convert.sh +0 -0
|
@@ -3,6 +3,7 @@ FROM ubuntu:jammy
|
|
|
3
3
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
4
4
|
|
|
5
5
|
RUN apt-get update && apt-get install -y \
|
|
6
|
+
software-properties-common \
|
|
6
7
|
build-essential \
|
|
7
8
|
ccache \
|
|
8
9
|
curl \
|
|
@@ -30,6 +31,11 @@ RUN apt-get update && apt-get install -y \
|
|
|
30
31
|
xvfb \
|
|
31
32
|
&& rm -rf /var/lib/apt/lists/*
|
|
32
33
|
|
|
34
|
+
RUN add-apt-repository -y ppa:pypy/ppa \
|
|
35
|
+
&& apt-get update \
|
|
36
|
+
&& apt-get install -y pypy3 pypy3-dev pypy3-venv \
|
|
37
|
+
&& rm -rf /var/lib/apt/lists/*
|
|
38
|
+
|
|
33
39
|
ARG HOST_USER_ID=5555
|
|
34
40
|
ENV HOST_USER_ID ${HOST_USER_ID}
|
|
35
41
|
RUN useradd -u $HOST_USER_ID -ms /bin/bash user
|
|
@@ -48,7 +54,11 @@ ENV PYTHON_CONFIGURE_OPTS="--enable-shared"
|
|
|
48
54
|
ENV PYENV_GIT_TAG v2.3.31
|
|
49
55
|
RUN curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
|
|
50
56
|
|
|
51
|
-
|
|
57
|
+
# Register the pypy3 system installation
|
|
58
|
+
RUN mkdir -p "${PYENV_ROOT}/versions/pypy3-system/bin/"
|
|
59
|
+
RUN sudo ln -s /usr/bin/pypy3 "${PYENV_ROOT}/versions/pypy3-system/bin/python"
|
|
60
|
+
RUN pyenv rehash
|
|
61
|
+
|
|
52
62
|
RUN pyenv install --debug 3.8
|
|
53
63
|
RUN pyenv install --debug 3.9
|
|
54
64
|
RUN pyenv install --debug 3.10
|
|
@@ -25,13 +25,20 @@ export MESONPY_EDITABLE_VERBOSE=1
|
|
|
25
25
|
mkdir -p "${CCACHE_DIR}"
|
|
26
26
|
mkdir -p "${COV_DIR}"
|
|
27
27
|
|
|
28
|
+
python -m venv /tmp/venv
|
|
29
|
+
source /tmp/venv/bin/activate
|
|
30
|
+
|
|
31
|
+
# XXX: meson tries to use this for some reason, but it's not there by default
|
|
32
|
+
mkdir -p /tmp/venv/include/pypy3.9
|
|
33
|
+
|
|
34
|
+
python -m pip install --upgrade pip
|
|
28
35
|
python -m pip install flake8 meson meson-python pycairo
|
|
29
36
|
|
|
30
37
|
# CODE QUALITY
|
|
31
38
|
python -m flake8
|
|
32
39
|
|
|
33
40
|
# BUILD & TEST
|
|
34
|
-
python -m pip install --no-build-isolation --editable '.[dev]'
|
|
41
|
+
python -m pip install --config-settings=setup-args="-Dtests=true" --no-build-isolation --editable '.[dev]'
|
|
35
42
|
|
|
36
43
|
lcov --config-file .gitlab-ci/lcovrc --directory . --capture --initial --output-file \
|
|
37
44
|
"${COV_DIR}/${CI_JOB_NAME}-baseline.lcov"
|
|
@@ -13,7 +13,7 @@ if [[ "$1" == "inflatpak" ]]; then
|
|
|
13
13
|
python3 -m venv _venv
|
|
14
14
|
. _venv/bin/activate
|
|
15
15
|
pip install pycairo meson meson-python
|
|
16
|
-
pip install --no-build-isolation --editable '.[dev]'
|
|
16
|
+
pip install --config-settings=setup-args="-Dtests=true" --no-build-isolation --editable '.[dev]'
|
|
17
17
|
pytest -v --cov
|
|
18
18
|
python3 -m coverage lcov -o "${COV_DIR}/${COV_KEY}.py.lcov"
|
|
19
19
|
chmod -R 777 "${COV_DIR}"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
image: registry.gitlab.gnome.org/gnome/pygobject/main:
|
|
1
|
+
image: registry.gitlab.gnome.org/gnome/pygobject/main:v23
|
|
2
2
|
|
|
3
3
|
stages:
|
|
4
4
|
- build_and_test
|
|
@@ -111,10 +111,10 @@ python3.12:
|
|
|
111
111
|
TEST_GTK_VERSION: "3.0"
|
|
112
112
|
<<: *defaults
|
|
113
113
|
|
|
114
|
-
pypy3
|
|
114
|
+
pypy3:
|
|
115
115
|
allow_failure: true
|
|
116
116
|
variables:
|
|
117
|
-
PYTHON_VERSION: "pypy3
|
|
117
|
+
PYTHON_VERSION: "pypy3"
|
|
118
118
|
TEST_GTK_VERSION: "3.0"
|
|
119
119
|
<<: *defaults
|
|
120
120
|
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
3.48.2 - 2024-04-06
|
|
2
|
+
-------------------
|
|
3
|
+
|
|
4
|
+
* Fix support for fundamental (primitive) types, such as Gst.Bitmask
|
|
5
|
+
:issue:`624` :mr:`304`
|
|
6
|
+
|
|
7
|
+
3.48.1 - 2024-03-10
|
|
8
|
+
-------------------
|
|
9
|
+
|
|
10
|
+
* Fix installation with pip failing in some environments with
|
|
11
|
+
ModuleNotFoundError in g-ir-scanner :issue:`622` :mr:`302`
|
|
12
|
+
|
|
1
13
|
3.48.0 - 2024-03-09
|
|
2
14
|
-------------------
|
|
3
15
|
|
|
@@ -76,7 +76,7 @@ def get_parent_for_object(object_info):
|
|
|
76
76
|
if gtype and gtype.pytype:
|
|
77
77
|
return gtype.pytype
|
|
78
78
|
|
|
79
|
-
if object_info.get_fundamental():
|
|
79
|
+
if object_info.get_fundamental() and gtype.is_instantiatable():
|
|
80
80
|
return Fundamental
|
|
81
81
|
|
|
82
82
|
# Otherwise use builtins.object as the base
|
|
@@ -55,17 +55,11 @@ fundamental_new (PyTypeObject *type,
|
|
|
55
55
|
PyObject *args,
|
|
56
56
|
PyObject *kwargs)
|
|
57
57
|
{
|
|
58
|
-
static char *kwlist[] = { NULL };
|
|
59
|
-
|
|
60
58
|
GIBaseInfo *info;
|
|
61
59
|
gpointer pointer;
|
|
62
60
|
PyGIFundamental *self = NULL;
|
|
63
61
|
GType g_type;
|
|
64
62
|
|
|
65
|
-
if (!PyArg_ParseTupleAndKeywords (args, kwargs, "", kwlist)) {
|
|
66
|
-
return NULL;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
63
|
info = _pygi_object_get_gi_info ((PyObject *) type, &PyGIObjectInfo_Type);
|
|
70
64
|
if (info == NULL) {
|
|
71
65
|
if (PyErr_ExceptionMatches (PyExc_AttributeError)) {
|
|
@@ -99,6 +93,19 @@ out:
|
|
|
99
93
|
return (PyObject *) self;
|
|
100
94
|
}
|
|
101
95
|
|
|
96
|
+
static int
|
|
97
|
+
fundamental_init(PyObject *self,
|
|
98
|
+
PyObject *args,
|
|
99
|
+
PyObject *kwargs)
|
|
100
|
+
{
|
|
101
|
+
static char *kwlist[] = { NULL };
|
|
102
|
+
|
|
103
|
+
if (!PyArg_ParseTupleAndKeywords (args, kwargs, ":Fundamental.__init__", kwlist)) {
|
|
104
|
+
return -1;
|
|
105
|
+
}
|
|
106
|
+
return 0;
|
|
107
|
+
}
|
|
108
|
+
|
|
102
109
|
static PyObject*
|
|
103
110
|
fundamental_richcompare (PyObject *self,
|
|
104
111
|
PyObject *other,
|
|
@@ -222,6 +229,7 @@ pygi_fundamental_register_types (PyObject *m)
|
|
|
222
229
|
|
|
223
230
|
PyGIFundamental_Type.tp_alloc = PyType_GenericAlloc;
|
|
224
231
|
PyGIFundamental_Type.tp_new = (newfunc) fundamental_new;
|
|
232
|
+
PyGIFundamental_Type.tp_init = (initproc) fundamental_init;
|
|
225
233
|
PyGIFundamental_Type.tp_dealloc = (destructor) fundamental_dealloc;
|
|
226
234
|
PyGIFundamental_Type.tp_flags = (Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE);
|
|
227
235
|
PyGIFundamental_Type.tp_richcompare = fundamental_richcompare;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "PyGObject"
|
|
3
|
-
version = "3.48.
|
|
3
|
+
version = "3.48.2"
|
|
4
4
|
description = "Python bindings for GObject Introspection"
|
|
5
5
|
license = { text = "GNU Lesser General Public License v2.1 (LGPLv2.1)" }
|
|
6
6
|
authors = [
|
|
@@ -42,7 +42,7 @@ docs = [
|
|
|
42
42
|
]
|
|
43
43
|
|
|
44
44
|
[tool.meson-python.args]
|
|
45
|
-
setup = ["-Dwheel=true", "--wrap-mode=nofallback"]
|
|
45
|
+
setup = ["-Dtests=false", "-Dwheel=true", "--wrap-mode=nofallback"]
|
|
46
46
|
|
|
47
47
|
[tool.pytest.ini_options]
|
|
48
48
|
testpaths = [
|
|
@@ -18,9 +18,30 @@
|
|
|
18
18
|
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
|
19
19
|
# USA
|
|
20
20
|
|
|
21
|
-
from ..importer import
|
|
21
|
+
from ..importer import get_introspection_module
|
|
22
|
+
from ..overrides import override
|
|
22
23
|
|
|
23
|
-
Regress =
|
|
24
|
+
Regress = get_introspection_module('Regress')
|
|
24
25
|
|
|
25
26
|
REGRESS_OVERRIDE = 42
|
|
26
|
-
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
class Bitmask(Regress.Bitmask):
|
|
30
|
+
"""Replicate override of Bitmask (uint64), similar to GStreamer."""
|
|
31
|
+
|
|
32
|
+
def __init__(self, v):
|
|
33
|
+
if not isinstance(v, int):
|
|
34
|
+
raise TypeError("%s is not an int." % (type(v)))
|
|
35
|
+
|
|
36
|
+
self.v = int(v)
|
|
37
|
+
|
|
38
|
+
def __str__(self):
|
|
39
|
+
return hex(self.v)
|
|
40
|
+
|
|
41
|
+
def __eq__(self, other):
|
|
42
|
+
return self.v == other
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
Bitmask = override(Bitmask)
|
|
46
|
+
|
|
47
|
+
__all__ = ['REGRESS_OVERRIDE', "Bitmask"]
|
|
@@ -485,3 +485,69 @@ static void regress_test_action_class_init (RegressTestActionClass *klass)
|
|
|
485
485
|
G_CALLBACK (regress_test_action_do_action2), NULL, NULL,
|
|
486
486
|
NULL, regress_test_action_get_type (), 0);
|
|
487
487
|
}
|
|
488
|
+
|
|
489
|
+
/*
|
|
490
|
+
* RegressBitmask
|
|
491
|
+
*
|
|
492
|
+
* Mimic a primitive, fundamental type.
|
|
493
|
+
*/
|
|
494
|
+
|
|
495
|
+
static void
|
|
496
|
+
regress_value_init_bitmask (GValue * value)
|
|
497
|
+
{
|
|
498
|
+
value->data[0].v_uint64 = 0;
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
static void
|
|
502
|
+
regress_value_copy_bitmask (const GValue * src_value, GValue * dest_value)
|
|
503
|
+
{
|
|
504
|
+
dest_value->data[0].v_uint64 = src_value->data[0].v_uint64;
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
static void
|
|
508
|
+
_value_transform_uint64_bitmask (const GValue * src_value, GValue * dest_value)
|
|
509
|
+
{
|
|
510
|
+
dest_value->data[0].v_uint64 = src_value->data[0].v_uint64;
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
static void
|
|
514
|
+
_value_transform_bitmask_uint64 (const GValue * src_value, GValue * dest_value)
|
|
515
|
+
{
|
|
516
|
+
dest_value->data[0].v_uint64 = src_value->data[0].v_uint64;
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
static const GTypeValueTable _regress_bitmask_value_table = {
|
|
520
|
+
regress_value_init_bitmask,
|
|
521
|
+
NULL,
|
|
522
|
+
regress_value_copy_bitmask,
|
|
523
|
+
NULL,
|
|
524
|
+
(char *) NULL,
|
|
525
|
+
NULL,
|
|
526
|
+
(char *) NULL,
|
|
527
|
+
NULL
|
|
528
|
+
};
|
|
529
|
+
|
|
530
|
+
GType
|
|
531
|
+
regress_bitmask_get_type (void)
|
|
532
|
+
{
|
|
533
|
+
static GType regress_bitmask_type = 0;
|
|
534
|
+
|
|
535
|
+
if (g_once_init_enter (®ress_bitmask_type)) {
|
|
536
|
+
GTypeInfo _info = { 0, NULL, NULL, NULL, NULL, NULL, 0, 0, NULL, &_regress_bitmask_value_table };
|
|
537
|
+
GTypeFundamentalInfo _finfo = { 0 };
|
|
538
|
+
GType _type = g_type_register_fundamental (
|
|
539
|
+
g_type_fundamental_next (),
|
|
540
|
+
"RegressBitmask", &_info, &_finfo, 0);
|
|
541
|
+
|
|
542
|
+
g_once_init_leave(®ress_bitmask_type, _type);
|
|
543
|
+
|
|
544
|
+
g_value_register_transform_func (
|
|
545
|
+
REGRESS_TYPE_BITMASK, G_TYPE_UINT64,
|
|
546
|
+
_value_transform_bitmask_uint64);
|
|
547
|
+
g_value_register_transform_func (
|
|
548
|
+
G_TYPE_UINT64, REGRESS_TYPE_BITMASK,
|
|
549
|
+
_value_transform_uint64_bitmask);
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
return regress_bitmask_type;
|
|
553
|
+
}
|
|
@@ -90,4 +90,26 @@ typedef struct {
|
|
|
90
90
|
_GI_TEST_EXTERN
|
|
91
91
|
GType regress_test_action_get_type (void);
|
|
92
92
|
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* RegressBitmask:
|
|
96
|
+
*
|
|
97
|
+
* A fundamental type that describes a 64-bit bitmask.
|
|
98
|
+
*
|
|
99
|
+
* This type resembles GStreamer's Bitmask type.
|
|
100
|
+
*/
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* REGRESS_TYPE_BITMASK:
|
|
104
|
+
*
|
|
105
|
+
* a #GValue type that represents a 64-bit bitmask.
|
|
106
|
+
*
|
|
107
|
+
* Returns: the #GType of RegressBitmask (which is not explicitly typed)
|
|
108
|
+
*/
|
|
109
|
+
|
|
110
|
+
#define REGRESS_TYPE_BITMASK (regress_bitmask_get_type())
|
|
111
|
+
|
|
112
|
+
_GI_TEST_EXTERN
|
|
113
|
+
GType regress_bitmask_get_type (void);
|
|
114
|
+
|
|
93
115
|
#endif /* REGRESS_EXTRA_H */
|
|
@@ -130,6 +130,12 @@ def test_multiple_objects():
|
|
|
130
130
|
assert obj1 != obj2
|
|
131
131
|
|
|
132
132
|
|
|
133
|
+
def test_fundamental_primitive_object():
|
|
134
|
+
bitmask = Regress.Bitmask(2)
|
|
135
|
+
|
|
136
|
+
assert bitmask.v == 2
|
|
137
|
+
|
|
138
|
+
|
|
133
139
|
def test_custom_fundamental_type_vfunc_override(capsys):
|
|
134
140
|
obj = MyCustomFundamentalObject()
|
|
135
141
|
del obj
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|