Actually, let's go with unicode everywhere over bytes.
authorRalph Bean <rbean@redhat.com>
Mon, 16 Nov 2015 04:29:50 +0000 (23:29 -0500)
committerRalph Bean <rbean@redhat.com>
Mon, 16 Nov 2015 04:29:50 +0000 (23:29 -0500)
19 files changed:
src/python/checksum-py.c
src/python/compression_wrapper-py.c
src/python/contentstat-py.c
src/python/load_metadata-py.c
src/python/locate_metadata-py.c
src/python/package-py.c
src/python/parsepkg-py.c
src/python/repomd-py.c
src/python/repomdrecord-py.c
src/python/sqlite-py.c
src/python/typeconversion.c
src/python/typeconversion.h
src/python/updatecollection-py.c
src/python/updatecollectionpackage-py.c
src/python/updateinfo-py.c
src/python/updaterecord-py.c
src/python/updatereference-py.c
src/python/xml_dump-py.c
src/python/xml_file-py.c

index cff92a17b04e5857928aa0800351f3849f8e45f2..65a83ee03a0d239d0548e7d8551e1319315fdcd3 100644 (file)
@@ -34,7 +34,7 @@ py_checksum_name_str(G_GNUC_UNUSED PyObject *self, PyObject *args)
     if (!PyArg_ParseTuple(args, "i:py_checksum_name_Str", &type))
         return NULL;
 
-    return PyBytesOrNone_FromString(cr_checksum_name_str(type));
+    return PyUnicodeOrNone_FromString(cr_checksum_name_str(type));
 }
 
 PyObject *
index 63f7cd7ed02c20dfef8f5acc44bf2361a3a39c25..eb586ab39dad34b770695d94b8b13d1822c37544 100644 (file)
@@ -38,7 +38,7 @@ py_compression_suffix(G_GNUC_UNUSED PyObject *self, PyObject *args)
     if (!PyArg_ParseTuple(args, "i:py_compression_suffix", &type))
         return NULL;
 
-    return PyBytesOrNone_FromString(cr_compression_suffix(type));
+    return PyUnicodeOrNone_FromString(cr_compression_suffix(type));
 }
 
 PyObject *
@@ -192,7 +192,7 @@ crfile_repr(_CrFileObject *self)
             mode = "Unknown mode";
     }
 
-    return PyBytes_FromFormat("<createrepo_c.CrFile %s object>", mode);
+    return PyUnicode_FromFormat("<createrepo_c.CrFile %s object>", mode);
 }
 
 /* CrFile methods */
index e69db67dc1da14bd8f665acebea14652d44ac07b..700a699556f3b45f6e4f15465ae25b56be31e39b 100644 (file)
@@ -106,7 +106,7 @@ contentstat_dealloc(_ContentStatObject *self)
 static PyObject *
 contentstat_repr(G_GNUC_UNUSED _ContentStatObject *self)
 {
-    return PyBytes_FromFormat("<createrepo_c.ContentStat object>");
+    return PyUnicode_FromFormat("<createrepo_c.ContentStat object>");
 }
 
 /* getsetters */
@@ -142,7 +142,7 @@ get_str(_ContentStatObject *self, void *member_offset)
     char *str = *((char **) ((size_t) rec + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 static int
@@ -196,7 +196,7 @@ set_str(_ContentStatObject *self, PyObject *value, void *member_offset)
 {
     if (check_ContentStatStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
+    if (!PyUnicode_Check(value) && value != Py_None) {
         PyErr_SetString(PyExc_TypeError, "String or None expected!");
         return -1;
     }
index a7cee06ceceb764e37e910637edfe853c284225a..bc508a7f439485b6e5d8440eca44cdbde783b91e 100644 (file)
@@ -111,7 +111,7 @@ metadata_dealloc(_MetadataObject *self)
 static PyObject *
 metadata_repr(G_GNUC_UNUSED _MetadataObject *self)
 {
-    return PyBytes_FromFormat("<createrepo_c.Metadata object>");
+    return PyUnicode_FromFormat("<createrepo_c.Metadata object>");
 }
 
 /* Getters */
@@ -256,7 +256,7 @@ ht_keys(_MetadataObject *self, G_GNUC_UNUSED PyObject *args)
     PyObject *list = PyList_New(0);
 
     for (GList *elem = keys; elem; elem = g_list_next(elem)) {
-        PyObject *py_str = PyBytes_FromString(elem->data);
+        PyObject *py_str = PyUnicode_FromString(elem->data);
         assert(py_str);
         if (PyList_Append(list, py_str) == -1) {
             Py_XDECREF(list);
index 6db3362d74116ab1356a154c40b140cd9540fd61..c99436de89571b4053c0b3a0376f4e12fbf86863 100644 (file)
@@ -109,7 +109,7 @@ metadatalocation_dealloc(_MetadataLocationObject *self)
 static PyObject *
 metadatalocation_repr(G_GNUC_UNUSED _MetadataLocationObject *self)
 {
-    return PyBytes_FromFormat("<createrepo_c.MetadataLocation object>");
+    return PyUnicode_FromFormat("<createrepo_c.MetadataLocation object>");
 }
 
 /* MetadataLocation methods */
@@ -132,16 +132,22 @@ PyObject *
 getitem(_MetadataLocationObject *self, PyObject *pykey)
 {
     char *key, *value;
+    PyObject *bytekey;
 
     if (check_MetadataLocationStatus(self))
         return NULL;
 
-    if (!PyBytes_Check(pykey)) {
-        PyErr_SetString(PyExc_TypeError, "String expected!");
+    if (!PyUnicode_Check(pykey) && !PyBytes_Check(pykey)) {
+        PyErr_SetString(PyExc_TypeError, "Unicode or bytes expected!");
         return NULL;
     }
 
-    key = PyBytes_AsString(pykey);
+    if (PyUnicode_Check(pykey)) {
+        bytekey = PyUnicode_AsUTF8String(pykey);
+        key = PyBytes_AsString(bytekey);
+    } else {
+        key = PyBytes_AsString(pykey);
+    }
     value = NULL;
 
     if (!strcmp(key, "primary")) {
@@ -165,7 +171,7 @@ getitem(_MetadataLocationObject *self, PyObject *pykey)
     }
 
     if (value)
-        return PyBytes_FromString(value);
+        return PyUnicode_FromString(value);
     else
         Py_RETURN_NONE;
 }
index d6161939b6d22c150f4c9d6f88c6b3934f6d793f..6c934710d95bbcaf331fc2871ce71fc445d8b439 100644 (file)
@@ -148,11 +148,11 @@ package_repr(_PackageObject *self)
     cr_Package *pkg = self->package;
     PyObject *repr;
     if (pkg) {
-        repr = PyBytes_FromFormat("<createrepo_c.Package object id %s, %s>",
+        repr = PyUnicode_FromFormat("<createrepo_c.Package object id %s, %s>",
                                    (pkg->pkgId ? pkg->pkgId : "-"),
                                    (pkg->name  ? pkg->name  : "-"));
     } else {
-       repr = PyBytes_FromFormat("<createrepo_c.Package object id -, ->");
+       repr = PyUnicode_FromFormat("<createrepo_c.Package object id -, ->");
     }
     return repr;
 }
@@ -165,10 +165,10 @@ package_str(_PackageObject *self)
         return NULL;
     if (self->package) {
         char *nevra = cr_package_nvra(self->package);
-        ret = PyBytes_FromString(nevra);
+        ret = PyUnicode_FromString(nevra);
         free(nevra);
     } else {
-        ret = PyBytes_FromString("-");
+        ret = PyUnicode_FromString("-");
     }
     return ret;
 }
@@ -186,7 +186,7 @@ nvra(_PackageObject *self, G_GNUC_UNUSED void *nothing)
     if (check_PackageStatus(self))
         return NULL;
     char *nvra = cr_package_nvra(self->package);
-    pystr = PyBytesOrNone_FromString(nvra);
+    pystr = PyUnicodeOrNone_FromString(nvra);
     free(nvra);
     return pystr;
 }
@@ -202,7 +202,7 @@ nevra(_PackageObject *self, G_GNUC_UNUSED void *nothing)
     if (check_PackageStatus(self))
         return NULL;
     char *nevra = cr_package_nevra(self->package);
-    pystr = PyBytesOrNone_FromString(nevra);
+    pystr = PyUnicodeOrNone_FromString(nevra);
     free(nevra);
     return pystr;
 }
@@ -261,7 +261,7 @@ get_str(_PackageObject *self, void *member_offset)
     char *str = *((char **) ((size_t) pkg + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 /** Return offset of a selected member of cr_Package structure. */
@@ -395,8 +395,8 @@ set_str(_PackageObject *self, PyObject *value, void *member_offset)
 {
     if (check_PackageStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
-        PyErr_SetString(PyExc_TypeError, "String or None expected!");
+    if (!PyUnicode_Check(value) && !PyBytes_Check(value) && value != Py_None) {
+        PyErr_SetString(PyExc_TypeError, "Unicode, bytes, or None expected!");
         return -1;
     }
     cr_Package *pkg = self->package;
@@ -416,7 +416,14 @@ set_str(_PackageObject *self, PyObject *value, void *member_offset)
     if (!pkg->chunk)
         pkg->chunk = g_string_chunk_new(0);
 
-    char *str = g_string_chunk_insert(pkg->chunk, PyBytes_AsString(value));
+    PyObject *bytes;
+    if (PyUnicode_Check(value)) {
+        bytes = PyUnicode_AsUTF8String(value);
+    } else {
+        bytes = value;
+    }
+
+    char *str = g_string_chunk_insert(pkg->chunk, PyBytes_AsString(bytes));
     *((char **) ((size_t) pkg + (size_t) member_offset)) = str;
     return 0;
 }
index 7ead0591b116c3bb5aa5178a737da43bedbf049b..68a541225604c82b2a80245978071c95765fc226 100644 (file)
@@ -87,9 +87,9 @@ py_xml_from_rpm(G_GNUC_UNUSED PyObject *self, PyObject *args)
     if ((tuple = PyTuple_New(3)) == NULL)
         goto py_xml_from_rpm_end; // Free xml_res and return NULL
 
-    PyTuple_SetItem(tuple, 0, PyBytesOrNone_FromString(xml_res.primary));
-    PyTuple_SetItem(tuple, 1, PyBytesOrNone_FromString(xml_res.filelists));
-    PyTuple_SetItem(tuple, 2, PyBytesOrNone_FromString(xml_res.other));
+    PyTuple_SetItem(tuple, 0, PyUnicodeOrNone_FromString(xml_res.primary));
+    PyTuple_SetItem(tuple, 1, PyUnicodeOrNone_FromString(xml_res.filelists));
+    PyTuple_SetItem(tuple, 2, PyUnicodeOrNone_FromString(xml_res.other));
 
 py_xml_from_rpm_end:
     free(xml_res.primary);
index 7ba1bf7473a252a1061c105731982898e256a851..22ee880067dc660c4b1cc2225a1d7f166ece3786 100644 (file)
@@ -101,7 +101,7 @@ repomd_dealloc(_RepomdObject *self)
 static PyObject *
 repomd_repr(G_GNUC_UNUSED _RepomdObject *self)
 {
-    return PyBytes_FromString("<createrepo_c.Repomd object>");
+    return PyUnicode_FromString("<createrepo_c.Repomd object>");
 }
 
 /* Repomd methods */
@@ -251,7 +251,7 @@ xml_dump(_RepomdObject *self, G_GNUC_UNUSED void *nothing)
         nice_exception(&tmp_err, NULL);
         return NULL;
     }
-    py_str = PyBytesOrNone_FromString(xml);
+    py_str = PyUnicodeOrNone_FromString(xml);
     free(xml);
     return py_str;
 }
@@ -299,9 +299,9 @@ typedef int (*ConversionToCheckFunc)(PyObject *);
 typedef void *(*ConversionToFunc)(PyObject *, GStringChunk *);
 
 static int
-CheckPyBytes(PyObject *dep)
+CheckPyUnicode(PyObject *dep)
 {
-    if (!PyBytes_Check(dep)) {
+    if (!PyUnicode_Check(dep)) {
         PyErr_SetString(PyExc_TypeError, "Element of list has to be a string");
         return 1;
     }
@@ -334,16 +334,16 @@ typedef struct {
 /** List of convertors for converting a lists in cr_Package. */
 static ListConvertor list_convertors[] = {
     { offsetof(cr_Repomd, repo_tags),
-      (ConversionFromFunc) PyBytesOrNone_FromString,
-      (ConversionToCheckFunc) CheckPyBytes,
+      (ConversionFromFunc) PyUnicodeOrNone_FromString,
+      (ConversionToCheckFunc) CheckPyUnicode,
       (ConversionToFunc) PyObject_ToChunkedString },
     { offsetof(cr_Repomd, distro_tags),
       (ConversionFromFunc) PyObject_FromDistroTag,
       (ConversionToCheckFunc) CheckPyDistroTag,
       (ConversionToFunc) PyObject_ToDistroTag },
     { offsetof(cr_Repomd, content_tags),
-      (ConversionFromFunc) PyBytesOrNone_FromString,
-      (ConversionToCheckFunc) CheckPyBytes,
+      (ConversionFromFunc) PyUnicodeOrNone_FromString,
+      (ConversionToCheckFunc) CheckPyUnicode,
       (ConversionToFunc) PyObject_ToChunkedString },
     { offsetof(cr_Repomd, records),
       (ConversionFromFunc) PyObject_FromRepomdRecord,
@@ -362,7 +362,7 @@ get_str(_RepomdObject *self, void *member_offset)
     char *str = *((char **) ((size_t) repomd + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 static PyObject *
@@ -396,7 +396,7 @@ set_str(_RepomdObject *self, PyObject *value, void *member_offset)
 {
     if (check_RepomdStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
+    if (!PyUnicode_Check(value) && value != Py_None) {
         PyErr_SetString(PyExc_TypeError, "String or None expected!");
         return -1;
     }
index 4ad28e995fdb95c93129efb9d5ba1cf6c7d17018..787600e01ca8fcc4b861654dd36d87be71b94d76 100644 (file)
@@ -125,10 +125,10 @@ static PyObject *
 repomdrecord_repr(G_GNUC_UNUSED _RepomdRecordObject *self)
 {
     if (self->record->type)
-        return PyBytes_FromFormat("<createrepo_c.RepomdRecord %s object>",
+        return PyUnicode_FromFormat("<createrepo_c.RepomdRecord %s object>",
                                    self->record->type);
     else
-        return PyBytes_FromFormat("<createrepo_c.RepomdRecord object>");
+        return PyUnicode_FromFormat("<createrepo_c.RepomdRecord object>");
 }
 
 /* RepomdRecord methods */
@@ -296,7 +296,7 @@ get_str(_RepomdRecordObject *self, void *member_offset)
     char *str = *((char **) ((size_t) rec + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 static int
@@ -350,7 +350,7 @@ set_str(_RepomdRecordObject *self, PyObject *value, void *member_offset)
 {
     if (check_RepomdRecordStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
+    if (!PyUnicode_Check(value) && value != Py_None) {
         PyErr_SetString(PyExc_TypeError, "String or None expected!");
         return -1;
     }
index 981a49f22d5cb711998deec258e0655aafed998a..5f8d92e30118e87d93208a0dfd55e510fb2bb7d6 100644 (file)
@@ -119,7 +119,7 @@ sqlite_repr(_SqliteObject *self)
     else if (self->db->type == CR_DB_FILELISTS) type = "FilelistsDb";
     else if (self->db->type == CR_DB_OTHER)     type = "OtherDb";
     else                                        type = "UnknownDb";
-    return PyBytes_FromFormat("<createrepo_c.Sqlite %s object>", type);
+    return PyUnicode_FromFormat("<createrepo_c.Sqlite %s object>", type);
 }
 
 /* Sqlite methods */
index 2c4d47478ac09fddf3bc20eb7050179f994acde0..9d85803dbda4f6078de0affb57b35ac07bf0af74 100644 (file)
@@ -49,27 +49,30 @@ PyErr_ToGError(GError **err)
         g_set_error(err, ERR_DOMAIN, CRE_XMLPARSER,
                     "Error while error handling");
     } else {
+        PyObject *bytes = PyUnicode_AsUTF8String(pystr);
         g_set_error(err, ERR_DOMAIN, CRE_XMLPARSER,
-                    "%s", PyBytes_AsString(pystr));
+                    "%s", PyBytes_AsString(bytes));
     }
 
     Py_XDECREF(pystr);
 }
 
 PyObject *
-PyBytesOrNone_FromString(const char *str)
+PyUnicodeOrNone_FromString(const char *str)
 {
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 char *
 PyObject_ToStrOrNull(PyObject *pyobj)
 {
     // String returned by this function shoud not be freed or modified
-    if (PyBytes_Check(pyobj))
-        return PyBytes_AsString(pyobj);
+    if (PyUnicode_Check(pyobj)) {
+        PyObject *bytes = PyUnicode_AsUTF8String(pyobj);
+        return PyBytes_AsString(bytes);
+    }
     // TODO: ? Add support for pyobj like: ("xxx",) and ["xxx"]
     return NULL;
 }
@@ -104,11 +107,11 @@ PyObject_FromDependency(cr_Dependency *dep)
     if ((tuple = PyTuple_New(6)) == NULL)
         return NULL;
 
-    PyTuple_SetItem(tuple, 0, PyBytesOrNone_FromString(dep->name));
-    PyTuple_SetItem(tuple, 1, PyBytesOrNone_FromString(dep->flags));
-    PyTuple_SetItem(tuple, 2, PyBytesOrNone_FromString(dep->epoch));
-    PyTuple_SetItem(tuple, 3, PyBytesOrNone_FromString(dep->version));
-    PyTuple_SetItem(tuple, 4, PyBytesOrNone_FromString(dep->release));
+    PyTuple_SetItem(tuple, 0, PyUnicodeOrNone_FromString(dep->name));
+    PyTuple_SetItem(tuple, 1, PyUnicodeOrNone_FromString(dep->flags));
+    PyTuple_SetItem(tuple, 2, PyUnicodeOrNone_FromString(dep->epoch));
+    PyTuple_SetItem(tuple, 3, PyUnicodeOrNone_FromString(dep->version));
+    PyTuple_SetItem(tuple, 4, PyUnicodeOrNone_FromString(dep->release));
     PyTuple_SetItem(tuple, 5, PyBool_FromLong((long) dep->pre));
 
     return tuple;
@@ -149,9 +152,9 @@ PyObject_FromPackageFile(cr_PackageFile *file)
     if ((tuple = PyTuple_New(3)) == NULL)
         return NULL;
 
-    PyTuple_SetItem(tuple, 0, PyBytesOrNone_FromString(file->type));
-    PyTuple_SetItem(tuple, 1, PyBytesOrNone_FromString(file->path));
-    PyTuple_SetItem(tuple, 2, PyBytesOrNone_FromString(file->name));
+    PyTuple_SetItem(tuple, 0, PyUnicodeOrNone_FromString(file->type));
+    PyTuple_SetItem(tuple, 1, PyUnicodeOrNone_FromString(file->path));
+    PyTuple_SetItem(tuple, 2, PyUnicodeOrNone_FromString(file->name));
 
     return tuple;
 }
@@ -182,9 +185,9 @@ PyObject_FromChangelogEntry(cr_ChangelogEntry *log)
     if ((tuple = PyTuple_New(3)) == NULL)
         return NULL;
 
-    PyTuple_SetItem(tuple, 0, PyBytesOrNone_FromString(log->author));
+    PyTuple_SetItem(tuple, 0, PyUnicodeOrNone_FromString(log->author));
     PyTuple_SetItem(tuple, 1, PyLong_FromLong((long) log->date));
-    PyTuple_SetItem(tuple, 2, PyBytesOrNone_FromString(log->changelog));
+    PyTuple_SetItem(tuple, 2, PyUnicodeOrNone_FromString(log->changelog));
 
     return tuple;
 }
@@ -215,8 +218,8 @@ PyObject_FromDistroTag(cr_DistroTag *tag)
     if ((tuple = PyTuple_New(2)) == NULL)
         return NULL;
 
-    PyTuple_SetItem(tuple, 0, PyBytesOrNone_FromString(tag->cpeid));
-    PyTuple_SetItem(tuple, 1, PyBytesOrNone_FromString(tag->val));
+    PyTuple_SetItem(tuple, 0, PyUnicodeOrNone_FromString(tag->cpeid));
+    PyTuple_SetItem(tuple, 1, PyUnicodeOrNone_FromString(tag->val));
 
     return tuple;
 }
@@ -251,10 +254,11 @@ GSList_FromPyList_Str(PyObject *py_list)
     for (Py_ssize_t x=0; x < size; x++) {
         PyObject *py_str = PyList_GetItem(py_list, x);
         assert(py_str != NULL);
-        if (!PyBytes_Check(py_str))
+        if (!PyUnicode_Check(py_str))
             // Hmm, element is not a string, just skip it
             continue;
-        list = g_slist_prepend(list, PyBytes_AsString(py_str));
+        PyObject *py_bytes = PyUnicode_AsUTF8String(py_str);
+        list = g_slist_prepend(list, PyBytes_AsString(py_bytes));
     }
 
     return list;
index 40cae4d6eb6294b5ee7281add2a1930f5425cb78..99147b45962fbdf3e26154ad60a1da3fd595cf6c 100644 (file)
@@ -26,7 +26,7 @@
 // Clears the current Python Exception and return its representation in GError
 void PyErr_ToGError(GError **err);
 
-PyObject *PyBytesOrNone_FromString(const char *str);
+PyObject *PyUnicodeOrNone_FromString(const char *str);
 char *PyObject_ToStrOrNull(PyObject *pyobj);
 char *PyObject_ToChunkedString(PyObject *pyobj, GStringChunk *chunk);
 
index a14b4ecd08007b2590999fec63f6b3846bb17dea..dd82c575e9af8341989f8fff36ac3ef50b533b4d 100644 (file)
@@ -118,7 +118,7 @@ updatecollection_dealloc(_UpdateCollectionObject *self)
 static PyObject *
 updatecollection_repr(G_GNUC_UNUSED _UpdateCollectionObject *self)
 {
-    return PyBytes_FromFormat("<createrepo_c.UpdateCollection object>");
+    return PyUnicode_FromFormat("<createrepo_c.UpdateCollection object>");
 }
 
 /* UpdateCollection methods */
@@ -222,7 +222,7 @@ get_str(_UpdateCollectionObject *self, void *member_offset)
     char *str = *((char **) ((size_t) rec + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 static PyObject *
@@ -254,7 +254,7 @@ set_str(_UpdateCollectionObject *self, PyObject *value, void *member_offset)
 {
     if (check_UpdateCollectionStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
+    if (!PyUnicode_Check(value) && value != Py_None) {
         PyErr_SetString(PyExc_TypeError, "String or None expected!");
         return -1;
     }
index df0d3528ae3b7e54c44033fa6ce5ba31bb25d0f2..eb3eda239c27df1fe397e976791a98176e907ac7 100644 (file)
@@ -117,7 +117,7 @@ updatecollectionpackage_dealloc(_UpdateCollectionPackageObject *self)
 static PyObject *
 updatecollectionpackage_repr(G_GNUC_UNUSED _UpdateCollectionPackageObject *self)
 {
-    return PyBytes_FromFormat("<createrepo_c.UpdateCollectionPackage object>");
+    return PyUnicode_FromFormat("<createrepo_c.UpdateCollectionPackage object>");
 }
 
 /* UpdateCollectionPackage methods */
@@ -164,7 +164,7 @@ get_str(_UpdateCollectionPackageObject *self, void *member_offset)
     char *str = *((char **) ((size_t) pkg + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 static int
@@ -195,7 +195,7 @@ set_str(_UpdateCollectionPackageObject *self, PyObject *value, void *member_offs
 {
     if (check_UpdateCollectionPackageStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
+    if (!PyUnicode_Check(value) && value != Py_None) {
         PyErr_SetString(PyExc_TypeError, "String or None expected!");
         return -1;
     }
index 6786f14659f1245f9395a3f8f80a91aaf920bf53..9c0d691b34e3af42ae99510df356f1e28d4bbb80 100644 (file)
@@ -101,7 +101,7 @@ updateinfo_dealloc(_UpdateInfoObject *self)
 static PyObject *
 updateinfo_repr(G_GNUC_UNUSED _UpdateInfoObject *self)
 {
-    return PyBytes_FromFormat("<createrepo_c.UpdateInfo object>");
+    return PyUnicode_FromFormat("<createrepo_c.UpdateInfo object>");
 }
 
 /* UpdateInfo methods */
@@ -141,7 +141,7 @@ xml_dump(_UpdateInfoObject *self, G_GNUC_UNUSED void *nothing)
         nice_exception(&tmp_err, NULL);
         return NULL;
     }
-    py_str = PyBytesOrNone_FromString(xml);
+    py_str = PyUnicodeOrNone_FromString(xml);
     free(xml);
     return py_str;
 }
index 5042f0acbd0f9506516da3368e3351c6cbeb2eab..2b8b76b572365133bbe0f929abfe99bbfdd0e111 100644 (file)
@@ -121,7 +121,7 @@ updaterecord_dealloc(_UpdateRecordObject *self)
 static PyObject *
 updaterecord_repr(G_GNUC_UNUSED _UpdateRecordObject *self)
 {
-    return PyBytes_FromFormat("<createrepo_c.UpdateRecord object>");
+    return PyUnicode_FromFormat("<createrepo_c.UpdateRecord object>");
 }
 
 /* UpdateRecord methods */
@@ -257,7 +257,7 @@ get_str(_UpdateRecordObject *self, void *member_offset)
     char *str = *((char **) ((size_t) rec + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 static PyObject *
@@ -316,7 +316,7 @@ set_str(_UpdateRecordObject *self, PyObject *value, void *member_offset)
 {
     if (check_UpdateRecordStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
+    if (!PyUnicode_Check(value) && value != Py_None) {
         PyErr_SetString(PyExc_TypeError, "String or None expected!");
         return -1;
     }
index 86a7d672c6e40437b76d4fa74694146ba20a27b7..e3cd456ee4eeacf767d5f46889984e663e125d9d 100644 (file)
@@ -118,10 +118,10 @@ static PyObject *
 updatereference_repr(G_GNUC_UNUSED _UpdateReferenceObject *self)
 {
     if (self->reference->type)
-        return PyBytes_FromFormat("<createrepo_c.UpdateReference %s object>",
+        return PyUnicode_FromFormat("<createrepo_c.UpdateReference %s object>",
                                    self->reference->type);
     else
-        return PyBytes_FromFormat("<createrepo_c.UpdateReference object>");
+        return PyUnicode_FromFormat("<createrepo_c.UpdateReference object>");
 }
 
 /* UpdateReference methods */
@@ -157,7 +157,7 @@ get_str(_UpdateReferenceObject *self, void *member_offset)
     char *str = *((char **) ((size_t) ref + (size_t) member_offset));
     if (str == NULL)
         Py_RETURN_NONE;
-    return PyBytes_FromString(str);
+    return PyUnicode_FromString(str);
 }
 
 static int
@@ -165,7 +165,7 @@ set_str(_UpdateReferenceObject *self, PyObject *value, void *member_offset)
 {
     if (check_UpdateReferenceStatus(self))
         return -1;
-    if (!PyBytes_Check(value) && value != Py_None) {
+    if (!PyUnicode_Check(value) && value != Py_None) {
         PyErr_SetString(PyExc_TypeError, "String or None expected!");
         return -1;
     }
index c901b2b7c3eb5b4fc9a9ccf1643a428df8c8ede8..de86a29a1e59706a3d6bdcfa7614358e203d4973 100644 (file)
@@ -44,7 +44,7 @@ py_xml_dump_primary(G_GNUC_UNUSED PyObject *self, PyObject *args)
         return NULL;
     }
 
-    py_str = PyBytesOrNone_FromString(xml);
+    py_str = PyUnicodeOrNone_FromString(xml);
     free(xml);
     return py_str;
 }
@@ -65,7 +65,7 @@ py_xml_dump_filelists(G_GNUC_UNUSED PyObject *self, PyObject *args)
         return NULL;
     }
 
-    py_str = PyBytesOrNone_FromString(xml);
+    py_str = PyUnicodeOrNone_FromString(xml);
     free(xml);
     return py_str;
 }
@@ -86,7 +86,7 @@ py_xml_dump_other(G_GNUC_UNUSED PyObject *self, PyObject *args)
         return NULL;
     }
 
-    py_str = PyBytesOrNone_FromString(xml);
+    py_str = PyUnicodeOrNone_FromString(xml);
     free(xml);
     return py_str;
 }
@@ -115,9 +115,9 @@ py_xml_dump(G_GNUC_UNUSED PyObject *self, PyObject *args)
         return NULL;
     }
 
-    PyTuple_SetItem(tuple, 0, PyBytesOrNone_FromString(xml_res.primary));
-    PyTuple_SetItem(tuple, 1, PyBytesOrNone_FromString(xml_res.filelists));
-    PyTuple_SetItem(tuple, 2, PyBytesOrNone_FromString(xml_res.other));
+    PyTuple_SetItem(tuple, 0, PyUnicodeOrNone_FromString(xml_res.primary));
+    PyTuple_SetItem(tuple, 1, PyUnicodeOrNone_FromString(xml_res.filelists));
+    PyTuple_SetItem(tuple, 2, PyUnicodeOrNone_FromString(xml_res.other));
 
     free(xml_res.primary);
     free(xml_res.filelists);
@@ -144,7 +144,7 @@ py_xml_dump_updaterecord(G_GNUC_UNUSED PyObject *self, PyObject *args)
         return NULL;
     }
 
-    py_str = PyBytesOrNone_FromString(xml);
+    py_str = PyUnicodeOrNone_FromString(xml);
     free(xml);
     return py_str;
 }
index 77daf56ad9bf41e49e517dd05589bcfb235e848c..6bfef0dcebc07d59b926d3a866404d12d451b05c 100644 (file)
@@ -155,7 +155,7 @@ xmlfile_repr(_XmlFileObject *self)
             type = "Unknown";
     }
 
-    return PyBytes_FromFormat("<createrepo_c.XmlFile %s object>", type);
+    return PyUnicode_FromFormat("<createrepo_c.XmlFile %s object>", type);
 }
 
 /* XmlFile methods */