PyGObject 3.48.1__tar.gz → 3.49.0.dev0__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.1 → pygobject-3.49.0.dev0}/.flake8 +1 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitignore +2 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/build-sdists.sh +6 -13
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/test-docker.sh +2 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/test-flatpak.sh +5 -5
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci.yml +21 -11
- pygobject-3.48.1/PKG-INFO.in → pygobject-3.49.0.dev0/METADATA.in +2 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/NEWS +27 -0
- pygobject-3.49.0.dev0/PKG-INFO +75 -0
- pygobject-3.49.0.dev0/README.rst +53 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/bugs_repo.rst +2 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/changelog.rst +2 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/conf.py +12 -8
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/devguide/dev_environ.rst +36 -12
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/devguide/override_guidelines.rst +1 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/devguide/style_guide.rst +3 -4
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/further.rst +0 -3
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/getting_started.rst +5 -4
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/api.rst +5 -3
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/basic_types.rst +2 -12
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/error_handling.rst +2 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/flags_enums.rst +2 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/gobject.rst +2 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/properties.rst +2 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/signals.rst +2 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/weakrefs.rst +1 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/cairo_integration.rst +1 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/debug_profile.rst +1 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/deploy.rst +5 -5
- pygobject-3.49.0.dev0/docs/guide/flatpaking.rst +9 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/gtk_template.rst +3 -1
- pygobject-3.49.0.dev0/docs/guide/imports.rst +44 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/index.rst +2 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/porting.rst +3 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/index.rst +13 -12
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/maintguide.rst +4 -4
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/packagingguide.rst +1 -1
- pygobject-3.49.0.dev0/docs/tutorials/_static/custom.css +5 -0
- pygobject-3.49.0.dev0/docs/tutorials/gobject/basics.rst +214 -0
- pygobject-3.49.0.dev0/docs/tutorials/gobject/examples/listmodel.py +62 -0
- pygobject-3.49.0.dev0/docs/tutorials/gobject/interfaces.rst +44 -0
- pygobject-3.49.0.dev0/docs/tutorials/gobject/subclassing.rst +344 -0
- pygobject-3.49.0.dev0/docs/tutorials/gobject.rst +22 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk3.rst +8 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/application.rst +76 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/basics.rst +36 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/clipboard.rst +38 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/buttons.rst +66 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/check-radio-buttons.rst +24 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/dropdown.rst +43 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/entries.rst +84 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/button.py +45 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/check_radio_buttons.py +55 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/dropdown.py +38 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/entries.py +105 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/linkbutton.py +25 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/spinbutton.py +52 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/switch.py +44 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/examples/togglebutton.py +39 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/button.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/check_radio_buttons.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/dropdown.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/entries.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/linkbutton.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/spinbutton.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/switch.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/images/togglebutton.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/scale.rst +5 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/spinbutton.rst +38 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls/switch.rst +20 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/controls.rst +17 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/examples/label.py +102 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/examples/picture.py +38 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/examples/progressbar.py +79 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/examples/spinner.py +40 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/examples/spinner_ext.py +93 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/image.rst +20 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/images/label.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/images/picture.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/images/progressbar.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/images/spinner.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/images/spinner_ext.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/label.rst +64 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/picture.rst +32 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/progressbar.rst +39 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets/spinner.rst +35 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/display-widgets.rst +15 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/drag-and-drop.rst +73 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/application.py +167 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/clipboard.py +84 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/drag_and_drop.py +122 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/extended_example.py +29 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_box.py +39 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_center.py +33 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_flowbox.py +131 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_grid.py +38 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_headerbar.py +30 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_listbox.py +100 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_notebook.py +32 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/layout_stack.py +50 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/popover.py +46 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/popover_menu.py +76 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/simple_example.py +18 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/examples/textview.py +237 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/application.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/basic_example.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/clipboard.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/drag_and_drop.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/extended_example.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_box.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_center.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_flowbox.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_grid.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_headerbar.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_listbox.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_notebook.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/layout_stack.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/popover.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/popover_menu.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/images/textview.png +0 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/introduction.rst +128 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/layout-widgets.rst +292 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/popovers.rst +57 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4/textview.rst +137 -0
- pygobject-3.49.0.dev0/docs/tutorials/gtk4.rst +21 -0
- pygobject-3.49.0.dev0/docs/tutorials/index.rst +68 -0
- pygobject-3.49.0.dev0/docs/tutorials/libadwaita/application.rst +42 -0
- pygobject-3.49.0.dev0/docs/tutorials/libadwaita.rst +15 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/_option.py +3 -3
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/_ossighelper.py +36 -0
- pygobject-3.49.0.dev0/gi/events.py +650 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/gimodule.c +32 -55
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/meson.build +2 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/module.py +1 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/GLib.py +4 -6
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/GObject.py +26 -3
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/Gdk.py +5 -45
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/Gio.py +74 -9
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/Gtk.py +17 -15
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/__init__.py +10 -0
- pygobject-3.49.0.dev0/gi/pygi-async.c +639 -0
- pygobject-3.49.0.dev0/gi/pygi-async.h +59 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-cache.c +79 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-cache.h +11 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-closure.c +21 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-fundamental.c +24 -7
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-fundamental.h +2 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-invoke-state-struct.h +5 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-invoke.c +50 -3
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-object.c +0 -7
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-property.c +2 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-type.c +0 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-value.c +1 -15
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygobject-object.c +18 -7
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygobject.h +0 -13
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygspawn.c +26 -13
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/meson.build +11 -9
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/pygobject.doap +7 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/pygtkcompat/generictreemodel.py +2 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/pygtkcompat/pygtkcompat.py +1 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/pyproject.toml +30 -10
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/subprojects/gobject-introspection.wrap +1 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/gi/overrides/Regress.py +24 -3
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/gimarshallingtestsextra.h +16 -12
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/meson.build +4 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/regressextra.c +66 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/regressextra.h +58 -32
- pygobject-3.49.0.dev0/tests/test_async.py +197 -0
- pygobject-3.49.0.dev0/tests/test_events.py +258 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_fundamental.py +20 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_gdbus.py +104 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_gi.py +3 -4
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_gobject.py +2 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_overrides_gio.py +70 -2
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_source.py +2 -1
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_typeclass.py +3 -3
- pygobject-3.48.1/.readthedocs.yaml +0 -13
- pygobject-3.48.1/PKG-INFO +0 -28
- pygobject-3.48.1/README.rst +0 -22
- pygobject-3.48.1/docs/requirements.txt +0 -2
- pygobject-3.48.1/examples/cairo-demo.py +0 -131
- pygobject-3.48.1/examples/demo/demo.py +0 -363
- pygobject-3.48.1/examples/demo/demos/Css/__init__.py +0 -0
- pygobject-3.48.1/examples/demo/demos/Css/css_accordion.py +0 -80
- pygobject-3.48.1/examples/demo/demos/Css/css_basics.py +0 -148
- pygobject-3.48.1/examples/demo/demos/Css/css_multiplebgs.py +0 -187
- pygobject-3.48.1/examples/demo/demos/Entry/__init__.py +0 -0
- pygobject-3.48.1/examples/demo/demos/Entry/entry_buffer.py +0 -72
- pygobject-3.48.1/examples/demo/demos/Entry/entry_completion.py +0 -86
- pygobject-3.48.1/examples/demo/demos/Entry/search_entry.py +0 -254
- pygobject-3.48.1/examples/demo/demos/IconView/__init__.py +0 -0
- pygobject-3.48.1/examples/demo/demos/IconView/iconviewbasics.py +0 -221
- pygobject-3.48.1/examples/demo/demos/IconView/iconviewedit.py +0 -99
- pygobject-3.48.1/examples/demo/demos/TreeView/__init__.py +0 -0
- pygobject-3.48.1/examples/demo/demos/TreeView/liststore.py +0 -212
- pygobject-3.48.1/examples/demo/demos/TreeView/treemodel_filelist.py +0 -235
- pygobject-3.48.1/examples/demo/demos/TreeView/treemodel_filetree.py +0 -280
- pygobject-3.48.1/examples/demo/demos/TreeView/treemodel_large.py +0 -143
- pygobject-3.48.1/examples/demo/demos/__init__.py +0 -0
- pygobject-3.48.1/examples/demo/demos/appwindow.py +0 -408
- pygobject-3.48.1/examples/demo/demos/assistant.py +0 -135
- pygobject-3.48.1/examples/demo/demos/builder.py +0 -65
- pygobject-3.48.1/examples/demo/demos/button_box.py +0 -122
- pygobject-3.48.1/examples/demo/demos/clipboard.py +0 -228
- pygobject-3.48.1/examples/demo/demos/colorselector.py +0 -112
- pygobject-3.48.1/examples/demo/demos/combobox.py +0 -319
- pygobject-3.48.1/examples/demo/demos/data/alphatest.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/apple-red.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/background.jpg +0 -0
- pygobject-3.48.1/examples/demo/demos/data/brick.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/brick2.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/css_accordion.css +0 -52
- pygobject-3.48.1/examples/demo/demos/data/css_basics.css +0 -22
- pygobject-3.48.1/examples/demo/demos/data/css_multiplebgs.css +0 -136
- pygobject-3.48.1/examples/demo/demos/data/cssview.css +0 -41
- pygobject-3.48.1/examples/demo/demos/data/demo.gresource +0 -0
- pygobject-3.48.1/examples/demo/demos/data/demo.gresource.xml +0 -18
- pygobject-3.48.1/examples/demo/demos/data/demo.ui +0 -258
- pygobject-3.48.1/examples/demo/demos/data/floppybuddy.gif +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-applets.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-calendar.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-foot.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-fs-directory.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-fs-regular.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-gimp.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-gmush.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnome-gsame.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gnu-keys.png +0 -0
- pygobject-3.48.1/examples/demo/demos/data/gtk-logo-rgb.gif +0 -0
- pygobject-3.48.1/examples/demo/demos/data/reset.css +0 -68
- pygobject-3.48.1/examples/demo/demos/dialogs.py +0 -156
- pygobject-3.48.1/examples/demo/demos/drawingarea.py +0 -207
- pygobject-3.48.1/examples/demo/demos/expander.py +0 -62
- pygobject-3.48.1/examples/demo/demos/flowbox.py +0 -752
- pygobject-3.48.1/examples/demo/demos/images.py +0 -305
- pygobject-3.48.1/examples/demo/demos/infobars.py +0 -103
- pygobject-3.48.1/examples/demo/demos/links.py +0 -77
- pygobject-3.48.1/examples/demo/demos/menus.py +0 -134
- pygobject-3.48.1/examples/demo/demos/pickers.py +0 -77
- pygobject-3.48.1/examples/demo/demos/pixbuf.py +0 -184
- pygobject-3.48.1/examples/demo/demos/printing.py +0 -180
- pygobject-3.48.1/examples/demo/demos/rotatedtext.py +0 -191
- pygobject-3.48.1/examples/demo/demos/test.py +0 -16
- pygobject-3.48.1/examples/option.py +0 -28
- pygobject-3.48.1/examples/properties.py +0 -33
- pygobject-3.48.1/examples/signal.py +0 -42
- pygobject-3.48.1/gi/pygparamspec.c +0 -423
- pygobject-3.48.1/gi/pygparamspec.h +0 -31
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.coveragerc +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/Dockerfile +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/Dockerfile.old +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/README.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/coverage-docker.sh +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/fixup-lcov-paths.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/lcovrc +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/run-docker-old.sh +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/run-docker-runtime.sh +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/run-docker.sh +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/set_env.sh +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/test-docker-old.sh +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/.gitlab-ci/test-msys2.sh +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/COPYING +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/Makefile +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/contact.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/devguide/index.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/devguide/overview.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/extra.css +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/api/index.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/code/cairo-demo.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/faq.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/images/cairo_integration.png +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/sysdeps.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/testing.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/guide/threading.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/icons.rst +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/LICENSE +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/favicon.ico +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/logo.svg +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/overview-dark.svg +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/overview.dia +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/overview.svg +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/pygobject-small.svg +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/pygobject.svg +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/start_linux.png +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/start_macos.png +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/docs/images/start_windows.png +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/__init__.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/_constants.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/_error.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/_gtktemplate.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/_propertyhelper.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/_signalhelper.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/docstring.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/gimodule.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/importer.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/GIMarshallingTests.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/GdkPixbuf.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/Pango.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/keysyms.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/overrides/meson.build +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygboxed.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygboxed.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygenum.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygenum.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygflags.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygflags.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-argument.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-argument.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-array.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-array.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-basictype.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-basictype.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-boxed.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-boxed.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-ccallback.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-ccallback.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-closure.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-enum-marshal.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-enum-marshal.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-error.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-error.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-foreign-api.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-foreign-cairo.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-foreign.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-foreign.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-hashtable.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-hashtable.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-info.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-info.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-invoke.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-list.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-list.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-marshal-cleanup.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-marshal-cleanup.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-object.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-property.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-repository.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-repository.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-resulttuple.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-resulttuple.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-signal-closure.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-signal-closure.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-source.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-source.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-struct-marshal.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-struct-marshal.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-struct.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-struct.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-type.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-util.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-util.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygi-value.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pyginterface.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pyginterface.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygobject-internal.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygobject-object.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygoptioncontext.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygoptioncontext.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygoptiongroup.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygoptiongroup.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygpointer.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygpointer.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygspawn.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/pygtkcompat.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/repository/__init__.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/repository/meson.build +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/gi/types.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/meson_options.txt +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/pygobject-3.0.pc.in +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/pygtkcompat/__init__.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/pygtkcompat/meson.build +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/subprojects/.gitignore +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/subprojects/glib.wrap +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/subprojects/libffi.wrap +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/subprojects/pycairo.wrap +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/conftest.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/gi/overrides/__init__.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/gimarshallingtestsextra.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/helper.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/org.gnome.test.gschema.xml +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test-floating.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test-floating.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test-thread.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test-thread.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test-unknown.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test-unknown.h +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_atoms.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_cairo.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_docstring.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_error.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_everything.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_fields.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_generictreemodel.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_gio.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_glib.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_gtk_template.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_gtype.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_import_machinery.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_interface.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_internal_api.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_iochannel.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_mainloop.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_object_marshaling.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_option.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_ossig.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_overrides_gdk.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_overrides_gdkpixbuf.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_overrides_glib.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_overrides_gobject.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_overrides_gtk.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_overrides_pango.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_properties.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_pycapi.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_pygtkcompat.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_repository.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_resulttuple.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_signal.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_subprocess.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_thread.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/test_unknown.py +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/testhelpermodule.c +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tests/valgrind.supp +0 -0
- {pygobject-3.48.1 → pygobject-3.49.0.dev0}/tools/pygi-convert.sh +0 -0
|
@@ -13,23 +13,16 @@ rm -Rf _sdist_build
|
|
|
13
13
|
meson setup _sdist_build
|
|
14
14
|
meson dist --no-tests --allow-dirty -C _sdist_build
|
|
15
15
|
mv _sdist_build/meson-dist/*.tar.xz dist/
|
|
16
|
+
|
|
17
|
+
VERSION=$(meson introspect --projectinfo --indent _sdist_build | awk -F'"' '/version/ { print $4 }')
|
|
18
|
+
|
|
16
19
|
rm -Rf _sdist_build
|
|
17
20
|
|
|
18
21
|
# Now the sdist for pypi
|
|
19
22
|
# Mark odd versions as PEP440 development versions (e.g. 0.1.0 -> 0.1.0.dev0)
|
|
20
|
-
|
|
21
|
-
awk '{
|
|
22
|
-
if (/^version = "/) {
|
|
23
|
-
split($0, a, "[ .\"]+");
|
|
24
|
-
if (a[4] % 2 != 0)
|
|
25
|
-
printf "version = \"%s.%s.%s.dev0\"\n", a[3], a[4], a[5];
|
|
26
|
-
else
|
|
27
|
-
print $0;
|
|
28
|
-
} else {
|
|
29
|
-
print $0;
|
|
30
|
-
}
|
|
31
|
-
}' pyproject.toml > _temp && mv _temp pyproject.toml
|
|
23
|
+
[[ "$VERSION" =~ ^[0-9]\.[0-9]*[13579]\. ]] && meson rewrite kwargs set project / version ${VERSION}.dev0
|
|
32
24
|
|
|
33
25
|
python -m pip install --upgrade build
|
|
34
26
|
python -m build --sdist
|
|
35
|
-
|
|
27
|
+
|
|
28
|
+
meson rewrite kwargs set project / version ${VERSION}
|
|
@@ -32,7 +32,7 @@ source /tmp/venv/bin/activate
|
|
|
32
32
|
mkdir -p /tmp/venv/include/pypy3.9
|
|
33
33
|
|
|
34
34
|
python -m pip install --upgrade pip
|
|
35
|
-
python -m pip install flake8 meson meson-python pycairo
|
|
35
|
+
python -m pip install flake8 meson meson-python pycairo pytest pytest-cov
|
|
36
36
|
|
|
37
37
|
# CODE QUALITY
|
|
38
38
|
python -m flake8
|
|
@@ -40,6 +40,7 @@ python -m flake8
|
|
|
40
40
|
# BUILD & TEST
|
|
41
41
|
python -m pip install --config-settings=setup-args="-Dtests=true" --no-build-isolation --editable '.[dev]'
|
|
42
42
|
|
|
43
|
+
# TEST
|
|
43
44
|
lcov --config-file .gitlab-ci/lcovrc --directory . --capture --initial --output-file \
|
|
44
45
|
"${COV_DIR}/${CI_JOB_NAME}-baseline.lcov"
|
|
45
46
|
|
|
@@ -10,11 +10,11 @@ if [[ "$1" == "inflatpak" ]]; then
|
|
|
10
10
|
export COVERAGE_FILE="${COV_DIR}/.coverage.${COV_KEY}"
|
|
11
11
|
mkdir -p "${COV_DIR}"
|
|
12
12
|
|
|
13
|
-
python3
|
|
14
|
-
|
|
15
|
-
pip install pycairo meson meson-python
|
|
16
|
-
pip install --config-settings=setup-args="-Dtests=true" --no-build-isolation --editable
|
|
17
|
-
pytest -v --cov
|
|
13
|
+
python3 --version
|
|
14
|
+
|
|
15
|
+
pip install pycairo meson meson-python pytest pytest-cov
|
|
16
|
+
pip install --config-settings=setup-args="-Dtests=true" --no-build-isolation --editable .
|
|
17
|
+
python -m pytest -v --cov
|
|
18
18
|
python3 -m coverage lcov -o "${COV_DIR}/${COV_KEY}.py.lcov"
|
|
19
19
|
chmod -R 777 "${COV_DIR}"
|
|
20
20
|
else
|
|
@@ -45,16 +45,17 @@ pages:
|
|
|
45
45
|
dependencies:
|
|
46
46
|
- coverage
|
|
47
47
|
before_script:
|
|
48
|
-
- python -m pip install
|
|
48
|
+
- python -m pip install "pdm!=2.17.3"
|
|
49
|
+
- python -m pdm install -v
|
|
49
50
|
script:
|
|
50
|
-
- python -m sphinx -T -E -W --keep-going -b html -d _build/doctrees -D language=en docs/ public
|
|
51
|
+
- python -m pdm run sphinx-build -T -E -W --keep-going -b html -d _build/doctrees -D language=en docs/ public
|
|
51
52
|
- mv coverage/ public/
|
|
52
53
|
artifacts:
|
|
53
54
|
paths:
|
|
54
55
|
- public
|
|
55
56
|
expire_in: 30 days
|
|
56
57
|
only:
|
|
57
|
-
-
|
|
58
|
+
- main
|
|
58
59
|
|
|
59
60
|
sdist:
|
|
60
61
|
stage: build_and_test
|
|
@@ -75,12 +76,6 @@ mingw64:
|
|
|
75
76
|
MSYSTEM: "MINGW64"
|
|
76
77
|
<<: *mingw-defaults
|
|
77
78
|
|
|
78
|
-
python3.8:
|
|
79
|
-
variables:
|
|
80
|
-
PYTHON_VERSION: "3.8"
|
|
81
|
-
TEST_GTK_VERSION: "3.0"
|
|
82
|
-
<<: *defaults
|
|
83
|
-
|
|
84
79
|
python3.9:
|
|
85
80
|
variables:
|
|
86
81
|
PYTHON_VERSION: "3.9"
|
|
@@ -112,7 +107,6 @@ python3.12:
|
|
|
112
107
|
<<: *defaults
|
|
113
108
|
|
|
114
109
|
pypy3:
|
|
115
|
-
allow_failure: true
|
|
116
110
|
variables:
|
|
117
111
|
PYTHON_VERSION: "pypy3"
|
|
118
112
|
TEST_GTK_VERSION: "3.0"
|
|
@@ -126,9 +120,14 @@ old-i386-py3:
|
|
|
126
120
|
- coverage/
|
|
127
121
|
script:
|
|
128
122
|
- bash -x ./.gitlab-ci/test-docker-old.sh
|
|
123
|
+
# This build sometimes fails with message:
|
|
124
|
+
# ninja: error: loading 'build.ninja': Value too large for defined data type
|
|
125
|
+
retry:
|
|
126
|
+
max: 2
|
|
127
|
+
when: runner_system_failure
|
|
128
|
+
exit_codes: 1
|
|
129
129
|
|
|
130
130
|
gnome-master:
|
|
131
|
-
allow_failure: true
|
|
132
131
|
stage: build_and_test
|
|
133
132
|
image: quay.io/gnome_infrastructure/gnome-runtime-images:gnome-master
|
|
134
133
|
tags:
|
|
@@ -155,6 +154,17 @@ gnome-master-gtk4:
|
|
|
155
154
|
script:
|
|
156
155
|
- bash -x ./.gitlab-ci/test-flatpak.sh
|
|
157
156
|
|
|
157
|
+
python3.12-pdm:
|
|
158
|
+
stage: build_and_test
|
|
159
|
+
variables:
|
|
160
|
+
PYTHON_VERSION: "3.12"
|
|
161
|
+
TEST_GTK_VERSION: "3.0"
|
|
162
|
+
before_script:
|
|
163
|
+
- python -m pip install "pdm!=2.17.3"
|
|
164
|
+
- python -m pdm install -v
|
|
165
|
+
script:
|
|
166
|
+
- xvfb-run -a python -m pdm run pytest
|
|
167
|
+
|
|
158
168
|
minimal-meson:
|
|
159
169
|
allow_failure: true
|
|
160
170
|
stage: build_and_test
|
|
@@ -2,7 +2,7 @@ Metadata-Version: 1.2
|
|
|
2
2
|
Name: PyGObject
|
|
3
3
|
Version: @VERSION@
|
|
4
4
|
Summary: Python bindings for GObject Introspection
|
|
5
|
-
Home-page: https://
|
|
5
|
+
Home-page: https://pygobject.gnome.org
|
|
6
6
|
Author: James Henstridge
|
|
7
7
|
Author-email: james@daa.com.au
|
|
8
8
|
Maintainer: Simon Feltman
|
|
@@ -18,4 +18,4 @@ Classifier: Operating System :: Microsoft :: Windows
|
|
|
18
18
|
Classifier: Programming Language :: C
|
|
19
19
|
Classifier: Programming Language :: Python
|
|
20
20
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
21
|
-
Requires-Python: >=3.
|
|
21
|
+
Requires-Python: >=3.9, <4
|
|
@@ -1,9 +1,36 @@
|
|
|
1
|
+
3.49.0 - 2024-09-06 (pre-release)
|
|
2
|
+
---------------------------------
|
|
3
|
+
|
|
4
|
+
* Rename master branch to main
|
|
5
|
+
* Drop support for Python 3.8 :mr:`300`
|
|
6
|
+
* Add Override for Gio.DataInputStream :mr:`293`
|
|
7
|
+
* Treat GParamSpec as any other fundamental type :mr:`268`
|
|
8
|
+
* override connection.register_object to prevent an invocation object from
|
|
9
|
+
leaking :mr:`219`
|
|
10
|
+
* Various PyPy related fixes :mr:`299`
|
|
11
|
+
* bind_property: Accept keyword arguments :mr:`309`
|
|
12
|
+
* Various documentation improvements :mr:`342` :mr:`343` :mr:`338`
|
|
13
|
+
:mr:`336` :mr:`335` :mr:`328` :mr:`329` :mr:`330` :mr:`325` :mr:`322` :mr:`312`
|
|
14
|
+
* Python2 / GTK2 cleanups :mr:`338` :mr:`331`
|
|
15
|
+
* asyncio integration with support to await Gio async functions :mr:`189`
|
|
16
|
+
* meson: move from .egg-info to .dist-info/METADATA :mr:`306`
|
|
17
|
+
* build: fixes for building with gobject-introspection 1.81 :mr:`344`
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
3.48.2 - 2024-04-06
|
|
21
|
+
-------------------
|
|
22
|
+
|
|
23
|
+
* Fix support for fundamental (primitive) types, such as Gst.Bitmask
|
|
24
|
+
:issue:`624` :mr:`304`
|
|
25
|
+
|
|
26
|
+
|
|
1
27
|
3.48.1 - 2024-03-10
|
|
2
28
|
-------------------
|
|
3
29
|
|
|
4
30
|
* Fix installation with pip failing in some environments with
|
|
5
31
|
ModuleNotFoundError in g-ir-scanner :issue:`622` :mr:`302`
|
|
6
32
|
|
|
33
|
+
|
|
7
34
|
3.48.0 - 2024-03-09
|
|
8
35
|
-------------------
|
|
9
36
|
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: PyGObject
|
|
3
|
+
Version: 3.49.0.dev0
|
|
4
|
+
Summary: Python bindings for GObject Introspection
|
|
5
|
+
Author-Email: James Henstridge <james@daa.com.au>
|
|
6
|
+
Maintainer-Email: Christoph Reiter <creiter@src.gnome.org>, Arjan Molenaar <amolenaar@gnome.org>, Dan Yeaw <danyeaw@gnome.org>, Ignacio Casal Quinteiro <icq@gnome.org>
|
|
7
|
+
License: GNU Lesser General Public License v2.1 (LGPLv2.1)
|
|
8
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
9
|
+
Classifier: Intended Audience :: Developers
|
|
10
|
+
Classifier: License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)
|
|
11
|
+
Classifier: Operating System :: POSIX
|
|
12
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
13
|
+
Classifier: Programming Language :: C
|
|
14
|
+
Classifier: Programming Language :: Python
|
|
15
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
16
|
+
Project-URL: Homepage, https://pygobject.gnome.org
|
|
17
|
+
Project-URL: Repository, https://gitlab.gnome.org/GNOME/pygobject.git
|
|
18
|
+
Project-URL: Changelog, https://gitlab.gnome.org/GNOME/pygobject/-/blob/main/NEWS
|
|
19
|
+
Requires-Python: <4.0,>=3.9
|
|
20
|
+
Requires-Dist: pycairo>=1.16
|
|
21
|
+
Description-Content-Type: text/x-rst
|
|
22
|
+
|
|
23
|
+
.. image:: https://gitlab.gnome.org/GNOME/pygobject/-/raw/master/docs/images/pygobject.svg?ref_type=heads
|
|
24
|
+
:align: center
|
|
25
|
+
:width: 400px
|
|
26
|
+
:height: 98px
|
|
27
|
+
|
|
28
|
+
|
|
|
29
|
+
|
|
30
|
+
**PyGObject** is a Python package which provides bindings for `GObject
|
|
31
|
+
<https://docs.gtk.org/gobject/>`__ based libraries such as `GTK
|
|
32
|
+
<https://www.gtk.org/>`__, `GStreamer <https://gstreamer.freedesktop.org/>`__,
|
|
33
|
+
`WebKitGTK <https://webkitgtk.org/>`__, `GLib
|
|
34
|
+
<https://docs.gtk.org/glib/>`__, `GIO
|
|
35
|
+
<https://docs.gtk.org/gio/>`__ and many more.
|
|
36
|
+
|
|
37
|
+
It supports Linux, Windows, and macOS and works with **Python 3.9+** and
|
|
38
|
+
**PyPy3**. PyGObject, including this documentation, is licensed under the
|
|
39
|
+
**LGPLv2.1+**.
|
|
40
|
+
|
|
41
|
+
Homepage
|
|
42
|
+
--------
|
|
43
|
+
|
|
44
|
+
https://pygobject.gnome.org
|
|
45
|
+
|
|
46
|
+
Installation
|
|
47
|
+
------------
|
|
48
|
+
|
|
49
|
+
The latest version from PyGObject can be installed from `PyPI <https://pypi.org/project/PyGObject/>`__:
|
|
50
|
+
|
|
51
|
+
pip install PyGObject
|
|
52
|
+
|
|
53
|
+
PyGObject is only distributed as source distribution, so you need a C compiler installed on your host.
|
|
54
|
+
|
|
55
|
+
Please have a look at our `Getting Started <https://pygobject.gnome.org/getting_started.html>`__ documentation
|
|
56
|
+
for OS specific installation instructions.
|
|
57
|
+
|
|
58
|
+
Development
|
|
59
|
+
~~~~~~~~~~~
|
|
60
|
+
|
|
61
|
+
Our website contains instructions on how to `set up a development environment
|
|
62
|
+
<https://pygobject.gnome.org/devguide/dev_environ.html>`__.
|
|
63
|
+
|
|
64
|
+
Default branch renamed to ``main``
|
|
65
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
66
|
+
|
|
67
|
+
The default development branch of PyGObject has been renamed
|
|
68
|
+
to ``main``. To update your local checkout, use::
|
|
69
|
+
|
|
70
|
+
git checkout master
|
|
71
|
+
git branch -m master main
|
|
72
|
+
git fetch
|
|
73
|
+
git branch --unset-upstream
|
|
74
|
+
git branch -u origin/main
|
|
75
|
+
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
.. image:: https://gitlab.gnome.org/GNOME/pygobject/-/raw/master/docs/images/pygobject.svg?ref_type=heads
|
|
2
|
+
:align: center
|
|
3
|
+
:width: 400px
|
|
4
|
+
:height: 98px
|
|
5
|
+
|
|
6
|
+
|
|
|
7
|
+
|
|
8
|
+
**PyGObject** is a Python package which provides bindings for `GObject
|
|
9
|
+
<https://docs.gtk.org/gobject/>`__ based libraries such as `GTK
|
|
10
|
+
<https://www.gtk.org/>`__, `GStreamer <https://gstreamer.freedesktop.org/>`__,
|
|
11
|
+
`WebKitGTK <https://webkitgtk.org/>`__, `GLib
|
|
12
|
+
<https://docs.gtk.org/glib/>`__, `GIO
|
|
13
|
+
<https://docs.gtk.org/gio/>`__ and many more.
|
|
14
|
+
|
|
15
|
+
It supports Linux, Windows, and macOS and works with **Python 3.9+** and
|
|
16
|
+
**PyPy3**. PyGObject, including this documentation, is licensed under the
|
|
17
|
+
**LGPLv2.1+**.
|
|
18
|
+
|
|
19
|
+
Homepage
|
|
20
|
+
--------
|
|
21
|
+
|
|
22
|
+
https://pygobject.gnome.org
|
|
23
|
+
|
|
24
|
+
Installation
|
|
25
|
+
------------
|
|
26
|
+
|
|
27
|
+
The latest version from PyGObject can be installed from `PyPI <https://pypi.org/project/PyGObject/>`__:
|
|
28
|
+
|
|
29
|
+
pip install PyGObject
|
|
30
|
+
|
|
31
|
+
PyGObject is only distributed as source distribution, so you need a C compiler installed on your host.
|
|
32
|
+
|
|
33
|
+
Please have a look at our `Getting Started <https://pygobject.gnome.org/getting_started.html>`__ documentation
|
|
34
|
+
for OS specific installation instructions.
|
|
35
|
+
|
|
36
|
+
Development
|
|
37
|
+
~~~~~~~~~~~
|
|
38
|
+
|
|
39
|
+
Our website contains instructions on how to `set up a development environment
|
|
40
|
+
<https://pygobject.gnome.org/devguide/dev_environ.html>`__.
|
|
41
|
+
|
|
42
|
+
Default branch renamed to ``main``
|
|
43
|
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
44
|
+
|
|
45
|
+
The default development branch of PyGObject has been renamed
|
|
46
|
+
to ``main``. To update your local checkout, use::
|
|
47
|
+
|
|
48
|
+
git checkout master
|
|
49
|
+
git branch -m master main
|
|
50
|
+
git fetch
|
|
51
|
+
git branch --unset-upstream
|
|
52
|
+
git branch -u origin/main
|
|
53
|
+
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main
|
|
@@ -9,8 +9,8 @@ Bug Tracker / Git / Source
|
|
|
9
9
|
|
|
10
10
|
We use the GNOME GitLab issue tracker:
|
|
11
11
|
|
|
12
|
-
* List of existing issues: https://gitlab.gnome.org/GNOME/pygobject
|
|
13
|
-
* Create a new issue: https://gitlab.gnome.org/GNOME/pygobject
|
|
12
|
+
* List of existing issues: https://gitlab.gnome.org/GNOME/pygobject/-/issues
|
|
13
|
+
* Create a new issue: https://gitlab.gnome.org/GNOME/pygobject/-/issues/new
|
|
14
14
|
|
|
15
15
|
|
|
16
16
|
|git-logo| Git Repo
|
|
@@ -5,7 +5,7 @@ Versions with an odd minor version are unstable releases (e.g. 3.27.x) while
|
|
|
5
5
|
versions with even minor version are stable releases (e.g. 3.28.x). This list
|
|
6
6
|
is sorted by release date.
|
|
7
7
|
|
|
8
|
-
For more details see the
|
|
9
|
-
https://gitlab.gnome.org/GNOME/pygobject
|
|
8
|
+
For more details see the Git log:
|
|
9
|
+
https://gitlab.gnome.org/GNOME/pygobject/-/commits/main
|
|
10
10
|
|
|
11
11
|
.. include:: ../NEWS
|
|
@@ -2,16 +2,16 @@ extensions = [
|
|
|
2
2
|
'sphinx.ext.todo',
|
|
3
3
|
'sphinx.ext.intersphinx',
|
|
4
4
|
'sphinx.ext.extlinks',
|
|
5
|
+
'sphinx_copybutton',
|
|
5
6
|
]
|
|
6
7
|
|
|
7
8
|
intersphinx_mapping = {
|
|
8
|
-
'gtk': ('https://lazka.github.io/pgi-docs/Gtk-3.0', None),
|
|
9
|
-
'gobject': ('https://lazka.github.io/pgi-docs/GObject-2.0', None),
|
|
10
|
-
'glib': ('https://lazka.github.io/pgi-docs/GLib-2.0', None),
|
|
11
|
-
'gdk': ('https://lazka.github.io/pgi-docs/Gdk-3.0', None),
|
|
12
|
-
'gio': ('https://lazka.github.io/pgi-docs/Gio-2.0', None),
|
|
13
9
|
'python': ('https://docs.python.org/3', None),
|
|
14
10
|
'cairo': ('https://pycairo.readthedocs.io/en/latest', None),
|
|
11
|
+
'apidocs': (
|
|
12
|
+
'https://amolenaar.pages.gitlab.gnome.org/pygobject-docs',
|
|
13
|
+
None,
|
|
14
|
+
),
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
source_suffix = '.rst'
|
|
@@ -24,6 +24,9 @@ html_show_copyright = False
|
|
|
24
24
|
html_favicon = "images/favicon.ico"
|
|
25
25
|
project = "PyGObject"
|
|
26
26
|
html_title = project
|
|
27
|
+
html_theme_options = {
|
|
28
|
+
'source_edit_link': 'https://gitlab.gnome.org/GNOME/pygobject/-/blob/main/docs/{filename}',
|
|
29
|
+
}
|
|
27
30
|
|
|
28
31
|
html_context = {
|
|
29
32
|
'extra_css_files': [
|
|
@@ -33,7 +36,7 @@ html_context = {
|
|
|
33
36
|
"display_gitlab": True,
|
|
34
37
|
"gitlab_user": "GNOME",
|
|
35
38
|
"gitlab_repo": "pygobject",
|
|
36
|
-
"gitlab_version": "
|
|
39
|
+
"gitlab_version": "main",
|
|
37
40
|
"conf_py_path": "/docs/",
|
|
38
41
|
"gitlab_host": "gitlab.gnome.org",
|
|
39
42
|
}
|
|
@@ -45,11 +48,12 @@ html_static_path = [
|
|
|
45
48
|
|
|
46
49
|
extlinks = {
|
|
47
50
|
'bzbug': ('https://bugzilla.gnome.org/show_bug.cgi?id=%s', 'bz#%s'),
|
|
48
|
-
'issue': ('https://gitlab.gnome.org/GNOME/pygobject
|
|
51
|
+
'issue': ('https://gitlab.gnome.org/GNOME/pygobject/-/issues/%s', '#%s'),
|
|
49
52
|
'commit': ('https://gitlab.gnome.org/GNOME/pygobject/commit/%s', '%s'),
|
|
50
53
|
'mr': (
|
|
51
|
-
'https://gitlab.gnome.org/GNOME/pygobject
|
|
54
|
+
'https://gitlab.gnome.org/GNOME/pygobject/-/merge_requests/%s', '!%s'),
|
|
52
55
|
'user': ('https://gitlab.gnome.org/%s', '%s'),
|
|
56
|
+
'devdocs': ('https://developer.gnome.org/documentation/%s.html', None)
|
|
53
57
|
}
|
|
54
58
|
|
|
55
59
|
suppress_warnings = ["image.nonlocal_uri"]
|
|
@@ -160,6 +160,33 @@ First, check out the source code:
|
|
|
160
160
|
git clone https://gitlab.gnome.org/GNOME/pygobject.git
|
|
161
161
|
cd pygobject
|
|
162
162
|
|
|
163
|
+
With a local copy of PyGObject, there's three ways to start developing:
|
|
164
|
+
|
|
165
|
+
1. PDM, a modern Python package and dependency manager
|
|
166
|
+
2. Pip, the default Python package installer
|
|
167
|
+
3. Meson, use the Meson build system directly
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
PDM
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
Make sure you have `PDM <https://pdm-project.org>`_ 2.13 or newer installed.
|
|
174
|
+
|
|
175
|
+
Then set up the project by running:
|
|
176
|
+
|
|
177
|
+
.. code:: console
|
|
178
|
+
|
|
179
|
+
pdm install
|
|
180
|
+
|
|
181
|
+
You can run teh unit tests with:
|
|
182
|
+
|
|
183
|
+
.. code:: console
|
|
184
|
+
|
|
185
|
+
pdm run pytest
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
Pip
|
|
189
|
+
---
|
|
163
190
|
|
|
164
191
|
It's always a good idea to work from within a Python virtual environment.
|
|
165
192
|
PyGObject is built with `Meson <https://mesonbuild.com/>`_.
|
|
@@ -171,7 +198,7 @@ Meson-python, Meson, and Ninja should be installed in the virtual environment.
|
|
|
171
198
|
|
|
172
199
|
python3 -m venv .venv
|
|
173
200
|
source .venv/bin/activate
|
|
174
|
-
pip install meson-python meson ninja pycairo
|
|
201
|
+
pip install meson-python meson ninja pycairo pytest
|
|
175
202
|
|
|
176
203
|
.. note::
|
|
177
204
|
|
|
@@ -181,14 +208,14 @@ Install PyGObject in your local environment with the ``--no-build-isolation`` to
|
|
|
181
208
|
|
|
182
209
|
.. code:: console
|
|
183
210
|
|
|
184
|
-
pip install --no-build-isolation -e '.[dev]'
|
|
211
|
+
pip install --no-build-isolation --config-settings=setup-args="-Dtests=true" -e '.[dev]'
|
|
185
212
|
|
|
186
213
|
By default the C libraries are built in "release" mode (no debug symbols).
|
|
187
214
|
To compile the C libraries with debug symbols, run
|
|
188
215
|
|
|
189
216
|
.. code:: console
|
|
190
217
|
|
|
191
|
-
pip install --no-build-isolation --config-settings=setup-args="-Dbuildtype=debug" -e '.[dev]'
|
|
218
|
+
pip install --no-build-isolation --config-settings=setup-args="-Dbuildtype=debug" --config-settings=setup-args="-Dtests=true" -e '.[dev]'
|
|
192
219
|
|
|
193
220
|
Open a Python console:
|
|
194
221
|
|
|
@@ -202,19 +229,16 @@ Run the unittests:
|
|
|
202
229
|
|
|
203
230
|
pytest
|
|
204
231
|
|
|
205
|
-
It's also not possible to run the tests from meson:
|
|
206
|
-
|
|
207
|
-
.. code:: console
|
|
208
|
-
|
|
209
|
-
meson setup _build # Needed only once
|
|
210
|
-
meson test -C _build
|
|
211
232
|
|
|
233
|
+
Meson
|
|
234
|
+
-----
|
|
212
235
|
|
|
213
|
-
|
|
236
|
+
It's also possible to run the tests from Meson. Tests are still run with Pytest, so it's important
|
|
237
|
+
that Pytest is installed.
|
|
214
238
|
|
|
215
239
|
.. code:: console
|
|
216
240
|
|
|
217
|
-
|
|
218
|
-
|
|
241
|
+
meson setup _build # Needed only once
|
|
242
|
+
meson test -C _build
|
|
219
243
|
|
|
220
244
|
.. _pyenv: https://github.com/pyenv/pyenv
|
|
@@ -5,8 +5,7 @@ Python Override Guidelines
|
|
|
5
5
|
This document serves as a guide for developers creating new PyGObject
|
|
6
6
|
overrides or modifying existing ones. This document is not intended as hard
|
|
7
7
|
rules as there may always be pragmatic exceptions to what is listed here. It
|
|
8
|
-
is also a good idea to study the
|
|
9
|
-
<https://www.python.org/dev/peps/pep-0020/>`__.
|
|
8
|
+
is also a good idea to study the Zen of Python by Tim Peters in :pep:`20`.
|
|
10
9
|
|
|
11
10
|
In general, overrides should be minimized and preference should always be
|
|
12
11
|
placed on updating the underlying API to be more bindable, adding features to
|
|
@@ -5,8 +5,7 @@ Style Guidelines
|
|
|
5
5
|
Python Code
|
|
6
6
|
-----------
|
|
7
7
|
|
|
8
|
-
* Generally follow Python's `
|
|
9
|
-
<https://www.python.org/dev/peps/pep-0008/>`__ style guidelines. We run the
|
|
8
|
+
* Generally follow Python's :pep:`8` style guidelines. We run the
|
|
10
9
|
pep8 command to verify this during unittest runs.
|
|
11
10
|
|
|
12
11
|
* Break up logical blocks of related code with a newline. Specifically add a
|
|
@@ -46,8 +45,8 @@ Python Doc Strings
|
|
|
46
45
|
------------------
|
|
47
46
|
|
|
48
47
|
* Doc strings should generally follow
|
|
49
|
-
`
|
|
50
|
-
* Use `reStructuredText (
|
|
48
|
+
:pep:`257` unless noted here.
|
|
49
|
+
* Use `reStructuredText (reST) <https://www.sphinx-doc.org/en/master/usage/restructuredtext/>`__
|
|
51
50
|
annotations.
|
|
52
51
|
* Use three double quotes for doc strings (``"""``).
|
|
53
52
|
* Use a brief description on the same line as the triple quote.
|
|
@@ -5,9 +5,6 @@ Further Resources
|
|
|
5
5
|
`GNOME Developer Documentation <https://developer.gnome.org/documentation/tutorials/beginners.html>`__
|
|
6
6
|
Tutorials for creating a GNOME application using PyGObject, GTK 4, and Libadwaita.
|
|
7
7
|
|
|
8
|
-
`PyGObject Guide <https://rafaelmardojai.pages.gitlab.gnome.org/pygobject-guide>`__
|
|
9
|
-
Many examples showing how to build an application using PyGObject and GTK 4.
|
|
10
|
-
|
|
11
8
|
`GNOME Python API documentation <https://amolenaar.pages.gitlab.gnome.org/pygobject-docs/>`__
|
|
12
9
|
Auto generated API documentation for many libraries accessible through
|
|
13
10
|
PyGObject.
|
|
@@ -43,17 +43,18 @@ and their dependencies. Follow the instructions for your platform below.
|
|
|
43
43
|
|windows-logo| :ref:`Windows <windows-getting-started>` |macosx-logo| :ref:`macOS <macosx-getting-started>` |opensuse-logo| :ref:`openSUSE <opensuse-getting-started>`
|
|
44
44
|
======================================================= ==================================================== ==========================================================
|
|
45
45
|
|
|
46
|
-
After running the example application have a look at the `
|
|
47
|
-
<https://rafaelmardojai.pages.gitlab.gnome.org/pygobject-guide>`__ for tutorials on how to create GTK apps and the `GNOME Python API docs
|
|
46
|
+
After running the example application have a look at the :doc:`/tutorials/index` for an overview of how to create GTK apps and the `GNOME Python API docs
|
|
48
47
|
<https://amolenaar.pages.gitlab.gnome.org/pygobject-docs>`__ for API documentation for all supported
|
|
49
|
-
libraries.
|
|
48
|
+
libraries.
|
|
49
|
+
|
|
50
|
+
For full IDE support (incl. autocomplete) you will also need typing stubs available here `PyGObject-stubs <https://pypi.org/project/PyGObject-stubs/>`_.
|
|
50
51
|
|
|
51
52
|
.. _windows-getting-started:
|
|
52
53
|
|
|
53
54
|
|windows-logo| Windows
|
|
54
55
|
----------------------
|
|
55
56
|
|
|
56
|
-
#) Go to
|
|
57
|
+
#) Go to https://www.msys2.org/ and download the x86_64 installer
|
|
57
58
|
#) Follow the instructions on the page for setting up the basic environment
|
|
58
59
|
#) Run ``C:\msys64\ucrt64.exe`` - a terminal window should pop up
|
|
59
60
|
#) Execute ``pacman -Suy``
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
.. _guide-api:
|
|
2
|
+
|
|
1
3
|
================
|
|
2
4
|
GI Documentation
|
|
3
5
|
================
|
|
@@ -9,7 +11,7 @@ This is the API provided by the toplevel "gi" package.
|
|
|
9
11
|
|
|
10
12
|
:param str namespace: The namespace
|
|
11
13
|
:param str version: The version of the namespace which should be loaded
|
|
12
|
-
:raises: :
|
|
14
|
+
:raises: ..py:exception:: ValueError
|
|
13
15
|
|
|
14
16
|
Ensures the namespace gets loaded with the given version. If the namespace
|
|
15
17
|
was already loaded with a different version or a different version was
|
|
@@ -28,7 +30,7 @@ This is the API provided by the toplevel "gi" package.
|
|
|
28
30
|
:param symbol:
|
|
29
31
|
Optional symbol typename to ensure a converter exists.
|
|
30
32
|
:type symbol: :obj:`str` or :obj:`None`
|
|
31
|
-
:raises: :
|
|
33
|
+
:raises: ..py:exception:: ImportError
|
|
32
34
|
|
|
33
35
|
Ensure the given foreign marshaling module is available and loaded.
|
|
34
36
|
|
|
@@ -45,7 +47,7 @@ This is the API provided by the toplevel "gi" package.
|
|
|
45
47
|
.. function:: gi.check_version(version)
|
|
46
48
|
|
|
47
49
|
:param tuple version: A version tuple
|
|
48
|
-
:raises: :
|
|
50
|
+
:raises: ..py:exception:: ValueError
|
|
49
51
|
|
|
50
52
|
Compares the passed in version tuple with the gi version and does nothing
|
|
51
53
|
if gi version is the same or newer. Otherwise raises ValueError.
|
|
@@ -10,7 +10,7 @@ cases where it's appropriate it will use default Python types like :obj:`int`,
|
|
|
10
10
|
Number Types
|
|
11
11
|
------------
|
|
12
12
|
|
|
13
|
-
All glib integer types get mapped to :obj:`int
|
|
13
|
+
All glib integer types get mapped to :obj:`int` and :obj:`float`.
|
|
14
14
|
Since the glib integer types are always range limited, conversions from Python
|
|
15
15
|
int/long can fail with :class:`OverflowError`:
|
|
16
16
|
|
|
@@ -28,17 +28,7 @@ int/long can fail with :class:`OverflowError`:
|
|
|
28
28
|
Text Types
|
|
29
29
|
----------
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
Python 3 :obj:`str` is used.
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
Platform String Types
|
|
36
|
-
---------------------
|
|
37
|
-
|
|
38
|
-
* Windows + Python 2: utf-8 encoded :obj:`str`
|
|
39
|
-
* Windows + Python 3: :obj:`str`
|
|
40
|
-
* Unix + Python 2: :obj:`str`
|
|
41
|
-
* Unix + Python 3: :obj:`str`
|
|
31
|
+
Text types are mapped to :obj:`str`.
|
|
42
32
|
|
|
43
33
|
|
|
44
34
|
Other Types
|