Comments (9)
We need to choose whether to copy rpmlog data into https://developer.gnome.org/glib/stable/glib-Error-Reporting.html or just have a wrapper API in HifContext for callers to set up a callback.
from libdnf.
See this code:
rc = rpmtsRun(priv->ts, NULL, problems_filter);
if (rc < 0) {
ret = FALSE;
g_set_error(error,
HIF_ERROR,
HIF_ERROR_INTERNAL_ERROR,
"Error running transaction: %s", rc, priv->error_log);
goto out;
}
from libdnf.
I'm also getting bitten by the rather opaque -1 error.
from libdnf.
I think using a GError is the only sane way to handle this.
from libdnf.
In response to my opaque -1 error (in rpm-ostree
), I tried calling rpmlogSetCallback
during hif_context_new
(was just looking at something that would be called early on) to a callback that prints everything. I also had to catch an attempt by hif_rpmts_find_package
to set the callback back to NULL
.
End result was that my logging callback never got called, so I think I must be doing something wrong.
from libdnf.
Re: GError...the problem I see with that is that there can potentially be a lot of output, right? Or just multiple unrelated lines. I'd lean a bit towards just having a thin wrapper for rpmSetLogCallback
and promising not to call it ourselves. But it's not a strong opinion. Perhaps we can do both even, use GError by default but allow callers to get the logs directly.
from libdnf.
I realized my issue was because I was missing rpmlogSetMask
or rpmSetVerbosity
. Now it's plenty chatty 😄
from libdnf.
Is the issue still valid?
from libdnf.
I am closing for an inactivity.
from libdnf.
Related Issues (20)
- Usage in 3rd party projects HOT 3
- Verify repodata integrity HOT 3
- RFE: zstd metadata support HOT 2
- Make libdnf read environment variables HTTP_PROXY and HTTPS_PROXY for global proxy configuration HOT 4
- System repo opening issue with Packagekit (only) HOT 1
- gpgme does not install gpgme-config by default HOT 4
- segfault when encountering WAL error in /var/lib/dnf/history.sqlite HOT 9
- Tests throw exception: "trailing backslash (\\)" HOT 2
- libdnf5 (python): `TransactionItem.get_reason_change_group_id()` is always empty? HOT 2
- Countme should report system age, not repository age HOT 14
- Weblate translation pulling HOT 3
- 0.71.0: test suite is failing in `test_libdnf_main` unit HOT 8
- Implement versionlock as a plugin for use in PackageKit HOT 2
- A pull request into rhel-8.10 branch executes CI tests on Fedora 38
- Difference in comment parsing HOT 1
- dnf-context: Do not modify global configuration when setting options HOT 1
- 0.73.0: test suite fails in assertion of the `test_libdnf_main` unit because use `g_assert ()` in test units HOT 1
- dnf history rollback cmd causes core dump HOT 1
- Reinstalling a packge warns "cannot find THE_PACKAGE in uninst-start" HOT 1
- Review OpenScanHub resuls for libdnf HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libdnf.