From f054f908e13e1d2c84e8d1b6443629e20500c2c4 Mon Sep 17 00:00:00 2001 From: Jaroslav Rohel Date: Thu, 2 May 2019 14:43:22 +0200 Subject: [PATCH] hawkey.Repo: add deprecation message --- python/hawkey/__init__.py | 11 ++++++++++- python/hawkey/repo-py.cpp | 5 ++--- python/hawkey/repo-py.hpp | 2 -- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/python/hawkey/__init__.py b/python/hawkey/__init__.py index f5f0816..597fbbb 100644 --- a/python/hawkey/__init__.py +++ b/python/hawkey/__init__.py @@ -131,7 +131,6 @@ REFERENCE_VENDOR = _hawkey.REFERENCE_VENDOR Package = _hawkey.Package Reldep = _hawkey.Reldep -Repo = _hawkey.Repo Sack = _hawkey.Sack Exception = _hawkey.Exception @@ -334,3 +333,13 @@ class Subject(_hawkey.Subject): def _list_or_query_to_selector(sack, list_or_query): sltr = Selector(sack) return sltr.set(pkg=list_or_query) + + +class Repo(_hawkey.Repo): + + def __init__(self, name): + warnings.simplefilter('always', DeprecationWarning) + msg = "The class hawkey.Repo is deprecated. " \ + "Please use dnf.repo.Repo instead. The class will be removed on 2019-12-31." + warnings.warn(msg, DeprecationWarning) + super(Repo, self).__init__(name) diff --git a/python/hawkey/repo-py.cpp b/python/hawkey/repo-py.cpp index eff32be..4e4c045 100644 --- a/python/hawkey/repo-py.cpp +++ b/python/hawkey/repo-py.cpp @@ -42,8 +42,7 @@ typedef struct { HyRepo repoFromPyObject(PyObject *o) { - if (!repoObject_Check(o)) { - //PyErr_SetString(PyExc_TypeError, "Expected a Repo object."); + if (!PyObject_TypeCheck(o, &repo_Type)) { return NULL; } return ((_RepoObject *)o)->repo; @@ -189,7 +188,7 @@ PyTypeObject repo_Type = { 0, /*tp_getattro*/ 0, /*tp_setattro*/ 0, /*tp_as_buffer*/ - Py_TPFLAGS_DEFAULT, /*tp_flags*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE, /*tp_flags*/ "Repo object", /* tp_doc */ 0, /* tp_traverse */ 0, /* tp_clear */ diff --git a/python/hawkey/repo-py.hpp b/python/hawkey/repo-py.hpp index cb3f014..f7a449a 100644 --- a/python/hawkey/repo-py.hpp +++ b/python/hawkey/repo-py.hpp @@ -25,8 +25,6 @@ extern PyTypeObject repo_Type; -#define repoObject_Check(v) ((v)->ob_type == &repo_Type) - HyRepo repoFromPyObject(PyObject *o); PyObject *repoToPyObject(HyRepo repo); -- libgit2 0.27.7