summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--MSVC.README.rst10
-rw-r--r--NEWS33
-rw-r--r--giscanner/utils.py3
-rw-r--r--tests/scanner/Regress-1.0-C-expected/Regress.TestObj-byte_array.page14
-rw-r--r--tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-byte_array.page14
-rw-r--r--tests/scanner/Regress-1.0-expected.gir5
-rw-r--r--tests/scanner/regress.c8
-rw-r--r--tests/scanner/regress.h1
9 files changed, 89 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index 9b3e0fa1..c0b05fd0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -134,6 +134,8 @@ docs/reference/version.xml
#Shinx documentation output
docs/giscanner/_build/*
+giscanner/_version.py
+
#g-ir-doc-tool tests
*.page
!tests/scanner/*-expected/*.page
diff --git a/MSVC.README.rst b/MSVC.README.rst
index 82000773..a666f59d 100644
--- a/MSVC.README.rst
+++ b/MSVC.README.rst
@@ -51,7 +51,15 @@ well.
Open a Visual Studio command prompt and create an empty build directory (which needs
to be on the same drive as the G-I sources). In that directory, run the following::
- python $(PythonInstallationPath)\scripts\meson.py $(G-I_srcdir) --buildtype=<build_configuration> --prefix=$(PREFIX) -Dcairo-libname=<DLL filename of cairo-gobject>
+ python $(PythonInstallationPath)\scripts\meson.py $(G-I_srcdir) --buildtype=<build_configuration> --prefix=$(PREFIX) -Dcairo-libname=<DLL filename of cairo-gobject> -Dpython=<full path to Python interpreter to build _giscanner.pyd>
+
+The -Dcairo-libname is likely necessary as the default DLL file name for Cairo-GObject
+may likely not match the default "libcairo-gobject-2.dll", which is the default
+DLL filename for Cairo-GObject that is built with MinGW/mingw-w64.
+
+The -Dpython is likely necessary when using multiple Python installations on the
+system and is necessary when building with Visual Studio 2008~2013 when building
+with later versions of Meson (which requires Python 3.5+), due to CRT differences.
When Meson completes configuring and generating the build files, proceed building
using Ninja or the generated Visual Studio projects.
diff --git a/NEWS b/NEWS
index 928b4f65..7499f43f 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,36 @@
+=== 2.58 ======================================================================
+
+ • Changes:
+ - Update annotations imported from GLib, and require GLib 2.58
+ - Ensure that G-I builds on macOS
+ - Add a --version argument to the Python-based tools
+ - Allow selecting the output format for g-ir-doc-tool
+ - Drop the Visual Studio templates
+ - Use Sphinx to generate the user documentation; gtk-doc is still
+ required for the girepository-1.0 C API reference
+ - Support all _Float* C types from ISO/IEC TS 18661-3:2015
+
+ • Issues resolved on gitlab.gnome.org:
+ - #139 - make check fails for gobject-introspection 1.44.0 on
+ OS X 10.10.4
+ - #184 - Default element-type not set for GByteArray object
+ properties
+ - #189 - c:type missing pointer/array information in GIR for
+ C array parameters
+ - #134 - Allow multiple output formats
+ - #218 - gtk2 hits unreachable code after enable -Wswitch-default
+ - #113 - Memory leaks in GI regress and marshalling tests property
+ setters
+
+ • Bugs resolved on bugzilla.gnome.org:
+ - #702788 - The girepository DLL is acquiring pointers incorrectly
+ on Windows/x64
+
+ • Contributors:
+ Tomasz Miąsko, Emmanuele Bassi, Rico Tzschichholz, Chun-wei Fan,
+ Philip Chimento, Tom Schoonjans, Christoph Reiter, Ray Donnelly,
+ Marcus Calhoun-Lopez, Florian Müllner
+
=== 2.56 ======================================================================
• Changes:
diff --git a/giscanner/utils.py b/giscanner/utils.py
index f6cd0b4f..2feddab0 100644
--- a/giscanner/utils.py
+++ b/giscanner/utils.py
@@ -238,6 +238,9 @@ def makedirs(name, mode=0o777, exist_ok=False):
# be happy if someone already created the path
if e.errno != errno.EEXIST:
raise
+ cdir = os.path.curdir
+ if isinstance(tail, bytes):
+ cdir = os.path.curdir.encode("ascii")
if tail == cdir: # xxx/newdir/. exists if xxx/newdir exists
return
try:
diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-byte_array.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-byte_array.page
new file mode 100644
index 00000000..fa7fbe28
--- /dev/null
+++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestObj-byte_array.page
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-byte_array"
+ type="topic"
+ style="field"
+ xmlns="http://projectmallard.org/1.0/"
+ xmlns:api="http://projectmallard.org/experimental/api/"
+ xmlns:ui="http://projectmallard.org/1.0/ui/">
+ <info>
+ <link xref="Regress.TestObj" group="field" type="guide"/>
+ </info>
+ <title>Regress.TestObj->byte_array</title>
+
+
+</page>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-byte_array.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-byte_array.page
new file mode 100644
index 00000000..fa7fbe28
--- /dev/null
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestObj-byte_array.page
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<page id="Regress.TestObj-byte_array"
+ type="topic"
+ style="field"
+ xmlns="http://projectmallard.org/1.0/"
+ xmlns:api="http://projectmallard.org/experimental/api/"
+ xmlns:ui="http://projectmallard.org/1.0/ui/">
+ <info>
+ <link xref="Regress.TestObj" group="field" type="guide"/>
+ </info>
+ <title>Regress.TestObj->byte_array</title>
+
+
+</page>
diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir
index ad6af895..f69b8514 100644
--- a/tests/scanner/Regress-1.0-expected.gir
+++ b/tests/scanner/Regress-1.0-expected.gir
@@ -3709,6 +3709,11 @@ raise an error.</doc>
<field name="name_conflict">
<type name="gint" c:type="gint"/>
</field>
+ <field name="byte_array">
+ <array name="GLib.ByteArray" c:type="GByteArray*">
+ <type name="guint8" c:type="guint8"/>
+ </array>
+ </field>
<field name="function_ptr">
<callback name="function_ptr">
<return-value transfer-ownership="none">
diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c
index 2302209f..330a8d16 100644
--- a/tests/scanner/regress.c
+++ b/tests/scanner/regress.c
@@ -2165,6 +2165,10 @@ regress_test_obj_set_property (GObject *object,
self->name_conflict = g_value_get_int (value);
break;
+ case PROP_TEST_OBJ_BYTE_ARRAY:
+ self->byte_array = g_value_get_boxed (value);
+ break;
+
default:
/* We don't have any other property... */
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -2226,6 +2230,10 @@ regress_test_obj_get_property (GObject *object,
g_value_set_int (value, self->name_conflict);
break;
+ case PROP_TEST_OBJ_BYTE_ARRAY:
+ g_value_set_boxed (value, self->byte_array);
+ break;
+
default:
/* We don't have any other property... */
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h
index f07d162c..f0885f2b 100644
--- a/tests/scanner/regress.h
+++ b/tests/scanner/regress.h
@@ -780,6 +780,7 @@ struct _RegressTestObj
char* string;
GType gtype;
gint name_conflict;
+ GByteArray *byte_array;
/* < private > */
void (*function_ptr) (void);