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.
Files changed (323) hide show
  1. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/Dockerfile +11 -1
  2. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/run-docker.sh +1 -1
  3. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-docker.sh +8 -1
  4. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-flatpak.sh +1 -1
  5. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci.yml +3 -3
  6. {pygobject-3.48.0 → pygobject-3.48.2}/NEWS +12 -0
  7. {pygobject-3.48.0 → pygobject-3.48.2}/PKG-INFO +1 -1
  8. {pygobject-3.48.0 → pygobject-3.48.2}/gi/module.py +1 -1
  9. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-fundamental.c +14 -6
  10. {pygobject-3.48.0 → pygobject-3.48.2}/meson.build +1 -1
  11. {pygobject-3.48.0 → pygobject-3.48.2}/pyproject.toml +2 -2
  12. {pygobject-3.48.0 → pygobject-3.48.2}/tests/gi/overrides/Regress.py +24 -3
  13. {pygobject-3.48.0 → pygobject-3.48.2}/tests/regressextra.c +66 -0
  14. {pygobject-3.48.0 → pygobject-3.48.2}/tests/regressextra.h +22 -0
  15. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_fundamental.py +6 -0
  16. {pygobject-3.48.0 → pygobject-3.48.2}/.coveragerc +0 -0
  17. {pygobject-3.48.0 → pygobject-3.48.2}/.flake8 +0 -0
  18. {pygobject-3.48.0 → pygobject-3.48.2}/.gitignore +0 -0
  19. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/Dockerfile.old +0 -0
  20. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/README.rst +0 -0
  21. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/build-sdists.sh +0 -0
  22. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/coverage-docker.sh +0 -0
  23. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/fixup-lcov-paths.py +0 -0
  24. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/lcovrc +0 -0
  25. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/run-docker-old.sh +0 -0
  26. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/run-docker-runtime.sh +0 -0
  27. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/set_env.sh +0 -0
  28. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-docker-old.sh +0 -0
  29. {pygobject-3.48.0 → pygobject-3.48.2}/.gitlab-ci/test-msys2.sh +0 -0
  30. {pygobject-3.48.0 → pygobject-3.48.2}/.readthedocs.yaml +0 -0
  31. {pygobject-3.48.0 → pygobject-3.48.2}/COPYING +0 -0
  32. {pygobject-3.48.0 → pygobject-3.48.2}/PKG-INFO.in +0 -0
  33. {pygobject-3.48.0 → pygobject-3.48.2}/README.rst +0 -0
  34. {pygobject-3.48.0 → pygobject-3.48.2}/docs/Makefile +0 -0
  35. {pygobject-3.48.0 → pygobject-3.48.2}/docs/bugs_repo.rst +0 -0
  36. {pygobject-3.48.0 → pygobject-3.48.2}/docs/changelog.rst +0 -0
  37. {pygobject-3.48.0 → pygobject-3.48.2}/docs/conf.py +0 -0
  38. {pygobject-3.48.0 → pygobject-3.48.2}/docs/contact.rst +0 -0
  39. {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/dev_environ.rst +0 -0
  40. {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/index.rst +0 -0
  41. {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/override_guidelines.rst +0 -0
  42. {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/overview.rst +0 -0
  43. {pygobject-3.48.0 → pygobject-3.48.2}/docs/devguide/style_guide.rst +0 -0
  44. {pygobject-3.48.0 → pygobject-3.48.2}/docs/extra.css +0 -0
  45. {pygobject-3.48.0 → pygobject-3.48.2}/docs/further.rst +0 -0
  46. {pygobject-3.48.0 → pygobject-3.48.2}/docs/getting_started.rst +0 -0
  47. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/api.rst +0 -0
  48. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/basic_types.rst +0 -0
  49. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/error_handling.rst +0 -0
  50. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/flags_enums.rst +0 -0
  51. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/gobject.rst +0 -0
  52. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/index.rst +0 -0
  53. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/properties.rst +0 -0
  54. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/signals.rst +0 -0
  55. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/api/weakrefs.rst +0 -0
  56. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/cairo_integration.rst +0 -0
  57. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/code/cairo-demo.py +0 -0
  58. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/debug_profile.rst +0 -0
  59. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/deploy.rst +0 -0
  60. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/faq.rst +0 -0
  61. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/gtk_template.rst +0 -0
  62. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/images/cairo_integration.png +0 -0
  63. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/index.rst +0 -0
  64. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/porting.rst +0 -0
  65. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/sysdeps.rst +0 -0
  66. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/testing.rst +0 -0
  67. {pygobject-3.48.0 → pygobject-3.48.2}/docs/guide/threading.rst +0 -0
  68. {pygobject-3.48.0 → pygobject-3.48.2}/docs/icons.rst +0 -0
  69. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/LICENSE +0 -0
  70. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/favicon.ico +0 -0
  71. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/logo.svg +0 -0
  72. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/overview-dark.svg +0 -0
  73. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/overview.dia +0 -0
  74. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/overview.svg +0 -0
  75. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/pygobject-small.svg +0 -0
  76. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/pygobject.svg +0 -0
  77. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/start_linux.png +0 -0
  78. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/start_macos.png +0 -0
  79. {pygobject-3.48.0 → pygobject-3.48.2}/docs/images/start_windows.png +0 -0
  80. {pygobject-3.48.0 → pygobject-3.48.2}/docs/index.rst +0 -0
  81. {pygobject-3.48.0 → pygobject-3.48.2}/docs/maintguide.rst +0 -0
  82. {pygobject-3.48.0 → pygobject-3.48.2}/docs/packagingguide.rst +0 -0
  83. {pygobject-3.48.0 → pygobject-3.48.2}/docs/requirements.txt +0 -0
  84. {pygobject-3.48.0 → pygobject-3.48.2}/examples/cairo-demo.py +0 -0
  85. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demo.py +0 -0
  86. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/__init__.py +0 -0
  87. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/css_accordion.py +0 -0
  88. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/css_basics.py +0 -0
  89. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Css/css_multiplebgs.py +0 -0
  90. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/__init__.py +0 -0
  91. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/entry_buffer.py +0 -0
  92. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/entry_completion.py +0 -0
  93. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/Entry/search_entry.py +0 -0
  94. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/IconView/__init__.py +0 -0
  95. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/IconView/iconviewbasics.py +0 -0
  96. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/IconView/iconviewedit.py +0 -0
  97. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/__init__.py +0 -0
  98. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/liststore.py +0 -0
  99. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/treemodel_filelist.py +0 -0
  100. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/treemodel_filetree.py +0 -0
  101. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/TreeView/treemodel_large.py +0 -0
  102. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/__init__.py +0 -0
  103. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/appwindow.py +0 -0
  104. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/assistant.py +0 -0
  105. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/builder.py +0 -0
  106. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/button_box.py +0 -0
  107. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/clipboard.py +0 -0
  108. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/colorselector.py +0 -0
  109. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/combobox.py +0 -0
  110. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/alphatest.png +0 -0
  111. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/apple-red.png +0 -0
  112. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/background.jpg +0 -0
  113. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/brick.png +0 -0
  114. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/brick2.png +0 -0
  115. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/css_accordion.css +0 -0
  116. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/css_basics.css +0 -0
  117. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/css_multiplebgs.css +0 -0
  118. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/cssview.css +0 -0
  119. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/demo.gresource +0 -0
  120. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/demo.gresource.xml +0 -0
  121. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/demo.ui +0 -0
  122. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/floppybuddy.gif +0 -0
  123. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-applets.png +0 -0
  124. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-calendar.png +0 -0
  125. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-foot.png +0 -0
  126. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-fs-directory.png +0 -0
  127. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-fs-regular.png +0 -0
  128. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-gimp.png +0 -0
  129. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-gmush.png +0 -0
  130. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnome-gsame.png +0 -0
  131. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gnu-keys.png +0 -0
  132. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/gtk-logo-rgb.gif +0 -0
  133. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/data/reset.css +0 -0
  134. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/dialogs.py +0 -0
  135. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/drawingarea.py +0 -0
  136. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/expander.py +0 -0
  137. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/flowbox.py +0 -0
  138. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/images.py +0 -0
  139. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/infobars.py +0 -0
  140. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/links.py +0 -0
  141. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/menus.py +0 -0
  142. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/pickers.py +0 -0
  143. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/pixbuf.py +0 -0
  144. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/printing.py +0 -0
  145. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/rotatedtext.py +0 -0
  146. {pygobject-3.48.0 → pygobject-3.48.2}/examples/demo/demos/test.py +0 -0
  147. {pygobject-3.48.0 → pygobject-3.48.2}/examples/option.py +0 -0
  148. {pygobject-3.48.0 → pygobject-3.48.2}/examples/properties.py +0 -0
  149. {pygobject-3.48.0 → pygobject-3.48.2}/examples/signal.py +0 -0
  150. {pygobject-3.48.0 → pygobject-3.48.2}/gi/__init__.py +0 -0
  151. {pygobject-3.48.0 → pygobject-3.48.2}/gi/_constants.py +0 -0
  152. {pygobject-3.48.0 → pygobject-3.48.2}/gi/_error.py +0 -0
  153. {pygobject-3.48.0 → pygobject-3.48.2}/gi/_gtktemplate.py +0 -0
  154. {pygobject-3.48.0 → pygobject-3.48.2}/gi/_option.py +0 -0
  155. {pygobject-3.48.0 → pygobject-3.48.2}/gi/_ossighelper.py +0 -0
  156. {pygobject-3.48.0 → pygobject-3.48.2}/gi/_propertyhelper.py +0 -0
  157. {pygobject-3.48.0 → pygobject-3.48.2}/gi/_signalhelper.py +0 -0
  158. {pygobject-3.48.0 → pygobject-3.48.2}/gi/docstring.py +0 -0
  159. {pygobject-3.48.0 → pygobject-3.48.2}/gi/gimodule.c +0 -0
  160. {pygobject-3.48.0 → pygobject-3.48.2}/gi/gimodule.h +0 -0
  161. {pygobject-3.48.0 → pygobject-3.48.2}/gi/importer.py +0 -0
  162. {pygobject-3.48.0 → pygobject-3.48.2}/gi/meson.build +0 -0
  163. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GIMarshallingTests.py +0 -0
  164. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GLib.py +0 -0
  165. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GObject.py +0 -0
  166. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Gdk.py +0 -0
  167. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/GdkPixbuf.py +0 -0
  168. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Gio.py +0 -0
  169. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Gtk.py +0 -0
  170. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/Pango.py +0 -0
  171. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/__init__.py +0 -0
  172. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/keysyms.py +0 -0
  173. {pygobject-3.48.0 → pygobject-3.48.2}/gi/overrides/meson.build +0 -0
  174. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygboxed.c +0 -0
  175. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygboxed.h +0 -0
  176. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygenum.c +0 -0
  177. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygenum.h +0 -0
  178. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygflags.c +0 -0
  179. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygflags.h +0 -0
  180. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-argument.c +0 -0
  181. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-argument.h +0 -0
  182. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-array.c +0 -0
  183. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-array.h +0 -0
  184. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-basictype.c +0 -0
  185. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-basictype.h +0 -0
  186. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-boxed.c +0 -0
  187. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-boxed.h +0 -0
  188. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-cache.c +0 -0
  189. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-cache.h +0 -0
  190. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-ccallback.c +0 -0
  191. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-ccallback.h +0 -0
  192. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-closure.c +0 -0
  193. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-closure.h +0 -0
  194. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-enum-marshal.c +0 -0
  195. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-enum-marshal.h +0 -0
  196. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-error.c +0 -0
  197. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-error.h +0 -0
  198. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign-api.h +0 -0
  199. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign-cairo.c +0 -0
  200. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign.c +0 -0
  201. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-foreign.h +0 -0
  202. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-fundamental.h +0 -0
  203. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-hashtable.c +0 -0
  204. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-hashtable.h +0 -0
  205. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-info.c +0 -0
  206. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-info.h +0 -0
  207. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-invoke-state-struct.h +0 -0
  208. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-invoke.c +0 -0
  209. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-invoke.h +0 -0
  210. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-list.c +0 -0
  211. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-list.h +0 -0
  212. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-marshal-cleanup.c +0 -0
  213. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-marshal-cleanup.h +0 -0
  214. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-object.c +0 -0
  215. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-object.h +0 -0
  216. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-property.c +0 -0
  217. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-property.h +0 -0
  218. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-repository.c +0 -0
  219. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-repository.h +0 -0
  220. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-resulttuple.c +0 -0
  221. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-resulttuple.h +0 -0
  222. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-signal-closure.c +0 -0
  223. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-signal-closure.h +0 -0
  224. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-source.c +0 -0
  225. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-source.h +0 -0
  226. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct-marshal.c +0 -0
  227. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct-marshal.h +0 -0
  228. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct.c +0 -0
  229. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-struct.h +0 -0
  230. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-type.c +0 -0
  231. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-type.h +0 -0
  232. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-util.c +0 -0
  233. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-util.h +0 -0
  234. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-value.c +0 -0
  235. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygi-value.h +0 -0
  236. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pyginterface.c +0 -0
  237. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pyginterface.h +0 -0
  238. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject-internal.h +0 -0
  239. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject-object.c +0 -0
  240. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject-object.h +0 -0
  241. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygobject.h +0 -0
  242. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptioncontext.c +0 -0
  243. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptioncontext.h +0 -0
  244. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptiongroup.c +0 -0
  245. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygoptiongroup.h +0 -0
  246. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygparamspec.c +0 -0
  247. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygparamspec.h +0 -0
  248. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygpointer.c +0 -0
  249. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygpointer.h +0 -0
  250. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygspawn.c +0 -0
  251. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygspawn.h +0 -0
  252. {pygobject-3.48.0 → pygobject-3.48.2}/gi/pygtkcompat.py +0 -0
  253. {pygobject-3.48.0 → pygobject-3.48.2}/gi/repository/__init__.py +0 -0
  254. {pygobject-3.48.0 → pygobject-3.48.2}/gi/repository/meson.build +0 -0
  255. {pygobject-3.48.0 → pygobject-3.48.2}/gi/types.py +0 -0
  256. {pygobject-3.48.0 → pygobject-3.48.2}/meson_options.txt +0 -0
  257. {pygobject-3.48.0 → pygobject-3.48.2}/pygobject-3.0.pc.in +0 -0
  258. {pygobject-3.48.0 → pygobject-3.48.2}/pygobject.doap +0 -0
  259. {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/__init__.py +0 -0
  260. {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/generictreemodel.py +0 -0
  261. {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/meson.build +0 -0
  262. {pygobject-3.48.0 → pygobject-3.48.2}/pygtkcompat/pygtkcompat.py +0 -0
  263. {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/.gitignore +0 -0
  264. {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/glib.wrap +0 -0
  265. {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/gobject-introspection.wrap +0 -0
  266. {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/libffi.wrap +0 -0
  267. {pygobject-3.48.0 → pygobject-3.48.2}/subprojects/pycairo.wrap +0 -0
  268. {pygobject-3.48.0 → pygobject-3.48.2}/tests/conftest.py +0 -0
  269. {pygobject-3.48.0 → pygobject-3.48.2}/tests/gi/overrides/__init__.py +0 -0
  270. {pygobject-3.48.0 → pygobject-3.48.2}/tests/gimarshallingtestsextra.c +0 -0
  271. {pygobject-3.48.0 → pygobject-3.48.2}/tests/gimarshallingtestsextra.h +0 -0
  272. {pygobject-3.48.0 → pygobject-3.48.2}/tests/helper.py +0 -0
  273. {pygobject-3.48.0 → pygobject-3.48.2}/tests/meson.build +0 -0
  274. {pygobject-3.48.0 → pygobject-3.48.2}/tests/org.gnome.test.gschema.xml +0 -0
  275. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-floating.c +0 -0
  276. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-floating.h +0 -0
  277. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-thread.c +0 -0
  278. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-thread.h +0 -0
  279. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-unknown.c +0 -0
  280. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test-unknown.h +0 -0
  281. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_atoms.py +0 -0
  282. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_cairo.py +0 -0
  283. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_docstring.py +0 -0
  284. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_error.py +0 -0
  285. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_everything.py +0 -0
  286. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_fields.py +0 -0
  287. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gdbus.py +0 -0
  288. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_generictreemodel.py +0 -0
  289. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gi.py +0 -0
  290. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gio.py +0 -0
  291. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_glib.py +0 -0
  292. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gobject.py +0 -0
  293. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gtk_template.py +0 -0
  294. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_gtype.py +0 -0
  295. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_import_machinery.py +0 -0
  296. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_interface.py +0 -0
  297. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_internal_api.py +0 -0
  298. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_iochannel.py +0 -0
  299. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_mainloop.py +0 -0
  300. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_object_marshaling.py +0 -0
  301. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_option.py +0 -0
  302. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_ossig.py +0 -0
  303. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gdk.py +0 -0
  304. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gdkpixbuf.py +0 -0
  305. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gio.py +0 -0
  306. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_glib.py +0 -0
  307. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gobject.py +0 -0
  308. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_gtk.py +0 -0
  309. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_overrides_pango.py +0 -0
  310. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_properties.py +0 -0
  311. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_pycapi.py +0 -0
  312. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_pygtkcompat.py +0 -0
  313. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_repository.py +0 -0
  314. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_resulttuple.py +0 -0
  315. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_signal.py +0 -0
  316. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_source.py +0 -0
  317. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_subprocess.py +0 -0
  318. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_thread.py +0 -0
  319. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_typeclass.py +0 -0
  320. {pygobject-3.48.0 → pygobject-3.48.2}/tests/test_unknown.py +0 -0
  321. {pygobject-3.48.0 → pygobject-3.48.2}/tests/testhelpermodule.c +0 -0
  322. {pygobject-3.48.0 → pygobject-3.48.2}/tests/valgrind.supp +0 -0
  323. {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
- RUN pyenv install pypy3.9
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
@@ -2,7 +2,7 @@
2
2
 
3
3
  set -e
4
4
 
5
- TAG="registry.gitlab.gnome.org/gnome/pygobject/main:v22"
5
+ TAG="registry.gitlab.gnome.org/gnome/pygobject/main:v23"
6
6
 
7
7
  sudo docker build --build-arg HOST_USER_ID="$UID" --tag "${TAG}" \
8
8
  --file "Dockerfile" .
@@ -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:v22
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.9:
114
+ pypy3:
115
115
  allow_failure: true
116
116
  variables:
117
- PYTHON_VERSION: "pypy3.9"
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
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyGObject
3
- Version: 3.48.0
3
+ Version: 3.48.2
4
4
  Summary: Python bindings for GObject Introspection
5
5
  Author-Email: James Henstridge <james@daa.com.au>
6
6
  Maintainer: Christoph Reiter
@@ -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,5 +1,5 @@
1
1
  project('pygobject', 'c',
2
- version : '3.48.0',
2
+ version : '3.48.2',
3
3
  meson_version : '>= 0.64.0',
4
4
  default_options : [ 'warning_level=1',
5
5
  'buildtype=debugoptimized'])
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "PyGObject"
3
- version = "3.48.0"
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 modules
21
+ from ..importer import get_introspection_module
22
+ from ..overrides import override
22
23
 
23
- Regress = modules['Regress']._introspection_module
24
+ Regress = get_introspection_module('Regress')
24
25
 
25
26
  REGRESS_OVERRIDE = 42
26
- __all__ = ['REGRESS_OVERRIDE']
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 (&regress_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(&regress_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