Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
b7a8cba
offline: Perform gracefull powerof/reboot instead of immediate one
ppisar Jun 27, 2025
049f247
offline: Require D-Bus socket service from dnf5-offline-transaction.s…
ppisar Jun 30, 2025
8a53412
dnfdaemon-client: Call server methods asynchronously
m-blaha Jul 1, 2025
1b0f805
doc: Correct handling the translations
ppisar Jul 2, 2025
2b46677
Add dnf5daemon-server requirement for polkit subpkg
m-blaha Jul 2, 2025
3fb6c85
dnfdaemon: Fix a crash under dnf5daemon::DownloadCB::create_signal_do…
mcrha Jul 3, 2025
54fabbc
swig: Add %thread directive for repo_sack.hpp for Python
pkratoch Jun 23, 2025
cfe3c38
dnf5: distro-sync: Argument "--from-repo"
jrohel Jun 20, 2025
bb05c49
Fix: add_up_down_distrosync_to_goal: to_repo_ids filtering
jrohel Jun 20, 2025
f508277
search: Do not separate a package from a summary with a colon
ppisar Apr 9, 2025
5672bff
repoclosure: skip rich dependencies
AdamWill Jun 12, 2025
728a093
Adapt missing gpg key check for parallel downloading
kontura Jun 27, 2025
f528e1f
Update translations from weblate
invalid-email-address Jul 11, 2025
f30888b
Release 5.2.15.0
pkratoch Jul 11, 2025
1c6ec4d
swig: Add bindings for templated functions that convert nevra to string
pkratoch Jul 8, 2025
8ae46e4
Add unit tests for nevra parsing
pkratoch Jul 11, 2025
fff1ee6
Goal::Impl::add_specs_to_goal: Apply to_repo_ids settings in *ALL*
jrohel Jul 13, 2025
9a5bd31
Goal::Impl::add_specs_to_goal: Skip processing of empty query in *ALL*
jrohel Jul 13, 2025
257d985
dnf5: upgrade/distro-sync: Apply --from-repo only if pkgs are specified
jrohel Jul 14, 2025
2cb4793
Goal::Impl::add_install_to_goal: Fix to_repo_ids handling
jrohel Jul 16, 2025
0db4bf6
dnf5: "--from-repo=" option enables and validates source repositories
jrohel Jul 16, 2025
fcd19ec
rpm::PackageQuery: New filter "filter_from_repo_id"
jrohel Jun 16, 2025
507cfad
dnf5: Support --installed-from-repo= for repoquery/list/info
jrohel Jun 16, 2025
9717c48
Goal: Honor set_from_repo_ids in add_(remove,reinstall)_to_goal
jrohel Jun 16, 2025
c39d277
dnf5: Support --installed-from-repo= for reinstall/remove
jrohel Jun 16, 2025
1c3a1c7
Goal: Honor set_from_repo_ids in add_up_down_distrosync_to_goal
jrohel Jul 14, 2025
97c9d72
Goal: add_rpm_(upgrade/distro_sync) Improve support from_repo_ids
jrohel Jul 14, 2025
0bf47a0
dnf5: Support --installed-from-repo= for upgrade/downgrade/distro-sync
jrohel Jul 13, 2025
85bc321
dnf5: Support --installed-from-repo= for swap
jrohel Jul 14, 2025
f042ef5
tests: fix compat with dash and other shellcheck warnings
bluca Jul 21, 2025
edb3286
Fix various typos found by Lintian
bluca Jul 22, 2025
2282ae4
test_nevra.py: change formatting to satisfy autopep8
kontura Jul 22, 2025
6ae73f6
tests: verify `SetConstIterator` works in Python bindings
kontura Jul 8, 2025
141dabd
Copy return value from `SetConstIterator::operator*`
kontura Jul 14, 2025
71839db
Disable fastest_mirror callback for package downloading
kontura Jul 24, 2025
2463666
dnf5: Support --installed-from-repo= for "do"
jrohel Jul 22, 2025
ca1eaef
actions: Replace L10N_SSH_KEY secret with RSM CI GitHub token
evan-goode Jul 1, 2025
43c7680
repo: Do not fail on empty temporary files toml
m-blaha Jul 31, 2025
b063846
test: Add test for temp files toml with missing key
m-blaha Jul 31, 2025
4102c9d
dnfdaemon: Make it possible to set 'interactive' option for Base::cle…
mcrha Jul 2, 2025
af922af
dnfdaemon: Make it possible to set 'interactive' option for Goal::do_…
mcrha Jul 2, 2025
afbe07d
dnfdaemon: Make it possible to set 'interactive' option for Repo::con…
mcrha Jul 2, 2025
1bd2f9b
dnfdaemon: Make it possible to set 'interactive' option for Offline::…
mcrha Jul 2, 2025
9885ca3
dnfdaemon: Make it possible to set 'interactive' option for Rpm::syst…
mcrha Jul 2, 2025
0055e2c
dnfdaemon: Enable download-only transaction execution
m-blaha Jul 18, 2025
178dddb
Bump minor version to 5.2.16
m-blaha Aug 4, 2025
fd6d14d
Update translations from weblate
invalid-email-address Aug 7, 2025
0747356
Release 5.2.16.0
m-blaha Aug 7, 2025
cc4186e
dnfdaemon: Obey downloader D-Bus signal signature
mcrha Jul 4, 2025
0fd3466
Move url_encode() to libdnf5::utils::url
m-blaha Aug 7, 2025
0dc2530
utils: Add url_decode() function
m-blaha Aug 7, 2025
7ee9cde
utils: New url_path_encode() function
m-blaha Aug 7, 2025
08555ec
test: Add unit tests for common/utils/url
m-blaha Aug 7, 2025
1c3df5d
repo: Correctly URL-encode packages locations
m-blaha Aug 7, 2025
802f719
Replace locale-dependent std::isalnum checks
m-blaha Aug 11, 2025
0a811c9
doc: fix references to dnf5.conf(5)
mmarchini Aug 12, 2025
a3d2360
`--store` option: override keepcache option not to remove packages
kontura Aug 7, 2025
f233d01
Add --destdir option support to all commands with --downloadonly
m-blaha Aug 8, 2025
02e0f54
Add documentation for --destdir option
m-blaha Aug 8, 2025
5420100
Prevent transaction packages cleanup with --destdir
m-blaha Aug 19, 2025
5cb62f4
doc: Packages downloaded to destdir are not removed
m-blaha Aug 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 10 additions & 1 deletion .github/workflows/weblate-sync-pot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,15 @@ jobs:
options: --user root
timeout-minutes: 10
steps:
- uses: actions/create-github-app-token@v1
id: app-token
with:
app-id: ${{ vars.RSM_CI_APP_ID }}
private-key: ${{ secrets.RSM_CI_APP_PRIVATE_KEY }}
permissions:
contents: "write"
repositories: "rpm-software-management/dnf5-l10n"

- name: Clone source repository
uses: actions/checkout@v4
with:
Expand All @@ -33,7 +42,7 @@ jobs:
with:
path: l10n
repository: ${{ github.repository }}-l10n
ssh-key: ${{ secrets.L10N_SSH_KEY }}
token: ${{ steps.app-token.outputs.token }}

- name: Commit .pot to weblate repo
run: |
Expand Down
69 changes: 68 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,70 @@
# 5.2.16.0

- Update translations from weblate
- Bump minor version to 5.2.16
- dnfdaemon: Enable download-only transaction execution
- dnfdaemon: Make it possible to set 'interactive' option for Rpm::system_upgrade()
- dnfdaemon: Make it possible to set 'interactive' option for Offline::cancel(), Offline::clean(), Offline::set_finish_action()
- dnfdaemon: Make it possible to set 'interactive' option for Repo::confirm_key(), Repo::enable(), Repo::disable()
- dnfdaemon: Make it possible to set 'interactive' option for Goal::do_transaction()
- dnfdaemon: Make it possible to set 'interactive' option for Base::clean()
- test: Add test for temp files toml with missing key
- repo: Do not fail on empty temporary files toml
- actions: Replace L10N_SSH_KEY secret with RSM CI GitHub token
- dnf5: Support --installed-from-repo= for "do"
- Disable fastest_mirror callback for package downloading
- Copy return value from `SetConstIterator::operator*`
- tests: verify `SetConstIterator` works in Python bindings
- test_nevra.py: change formatting to satisfy autopep8
- Fix various typos found by Lintian
- tests: fix compat with dash and other shellcheck warnings
- dnf5: Support --installed-from-repo= for swap
- dnf5: Support --installed-from-repo= for upgrade/downgrade/distro-sync
- Goal: add_rpm_(upgrade/distro_sync) Improve support from_repo_ids
- Goal: Honor set_from_repo_ids in add_up_down_distrosync_to_goal
- dnf5: Support --installed-from-repo= for reinstall/remove
- Goal: Honor set_from_repo_ids in add_(remove,reinstall)_to_goal
- dnf5: Support --installed-from-repo= for repoquery/list/info
- rpm::PackageQuery: New filter "filter_from_repo_id"
- dnf5: "--from-repo=" option enables and validates source repositories
- Goal::Impl::add_install_to_goal: Fix to_repo_ids handling
- dnf5: upgrade/distro-sync: Apply --from-repo only if pkgs are specified
- Goal::Impl::add_specs_to_goal: Skip processing of empty query in *ALL*
- Goal::Impl::add_specs_to_goal: Apply to_repo_ids settings in *ALL*
- Add unit tests for nevra parsing
- swig: Add bindings for templated functions that convert nevra to string

# 5.2.15.0

- Update translations from weblate
- Adapt missing gpg key check for parallel downloading
- repoclosure: skip rich dependencies
- search: Do not separate a package from a summary with a colon
- Fix: add_up_down_distrosync_to_goal: to_repo_ids filtering
- dnf5: distro-sync: Argument "--from-repo"
- swig: Add %thread directive for repo_sack.hpp for Python
- dnfdaemon: Fix a crash under dnf5daemon::DownloadCB::create_signal_download()
- Add dnf5daemon-server requirement for polkit subpkg
- doc: Correct handling the translations
- dnfdaemon-client: Call server methods asynchronously
- offline: Require D-Bus socket service from dnf5-offline-transaction.service
- offline: Perform gracefull powerof/reboot instead of immediate one
- readthedocs: add swig include to fix doc builds
- readthedocs: extract `SOURCE_DIR` variable
- readthedocs: fix path joining
- dnfdaemon: Make permission check more consistent
- dnfdaemon: Removed incorrect output parameter names
- dnfdaemon: support all_advisories option for recent_changes()
- advisory: Add support for filtering advisories by Nevra
- dnfdaemon: support installonly pkgs in recent_changes()
- dnfdaemon: Add new History interface
- dnf5: repoclosure: Support globs in "--check=" option
- doc: Handling translations
- Docs: enhance install command behavior description
- Unify commands help with package specs
- Introduce new format denoting package spec formats
- test: ease path assertions in tests

# 5.2.14.0

- Update translations from weblate
Expand Down Expand Up @@ -800,7 +867,7 @@
- dnfdaemon: Missing signal registration
- doc: config manager plugin: wrap too long lines
- doc: document config-manager plugin
- Packit: get version from specfile for copr_builds againts main
- Packit: get version from specfile for copr_builds against main
- Update tests to use new `load_repos()` API
- Use new load_repos instead of deprecated update_and_load_enabled_repos
- Make `libdnf5::repo::Repo::load()` private
Expand Down
14 changes: 9 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,15 +106,19 @@ For details about building and testing DNF5, see the [Development environment se
Translating
-----------

Translating DNF5 from English to other langauges happens at
Translating DNF5 from English to other languages happens at
[Fedora Weblate](https://translate.fedoraproject.org/projects/dnf5/)
translation web site.

The web site extracts new English messages from this repository. Users of the web
site translate them there and the web site exports the finshed translations to
A [GitHub workflow](.github/workflows/weblate-sync-pot.yml) extracts new English
messages from this repository every day and commits them to
[dnf5-l10n](https://github.com/rpm-software-management/dnf5-l10n) repository.
The translation catalogs from the repository are copied into a DNF5 release
tar ball on every DNF5 release.
The translation web site then presents them to its users who translate
them there and the web site saves the finished translations back to the
dnf5-l10n repository.
Finally, the translation catalogs from that repository are
[copied](.github/actions/weblate-pull-translations/action.yml) into this repository
just before [every DNF5 release](.github/workflows/prepare-release.yml).


License
Expand Down
2 changes: 1 addition & 1 deletion VERSION.cmake
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
set(DEFAULT_PROJECT_VERSION_PRIME 5)
set(DEFAULT_PROJECT_VERSION_MAJOR 2)
set(DEFAULT_PROJECT_VERSION_MINOR 14)
set(DEFAULT_PROJECT_VERSION_MINOR 16)
set(DEFAULT_PROJECT_VERSION_MICRO 0)

if(DEFINED PROJECT_VERSION_PRIME)
Expand Down
6 changes: 6 additions & 0 deletions bindings/libdnf5/common.i
Original file line number Diff line number Diff line change
Expand Up @@ -225,6 +225,12 @@ fix_swigtype_trait(ClassName)
%ignore libdnf5::SetConstIterator::operator++(int);
%ignore libdnf5::SetConstIterator::operator--(int);
%ignore libdnf5::SetConstIterator::operator->() const;

%typemap(out, noblock=1) copy_return_value {
// create a copy that is owned by the caller
$result = SWIG_NewPointerObj((new $*1_ltype(*$1)), $1_descriptor, 1);
}

%include "libdnf5/common/set.hpp"
#if defined(SWIGPYTHON)
%extend libdnf5::Set {
Expand Down
2 changes: 2 additions & 0 deletions bindings/libdnf5/comps.i
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,15 @@
%include "libdnf5/comps/group/package.hpp"
%include "libdnf5/comps/group/group.hpp"
%template(VectorPackage) std::vector<libdnf5::comps::Package>;
%typemap(out) libdnf5::comps::Group & libdnf5::SetConstIterator<libdnf5::comps::Group>::operator* = copy_return_value;
%template(SetConstIteratorGroup) libdnf5::SetConstIterator<libdnf5::comps::Group>;
%template(SetGroup) libdnf5::Set<libdnf5::comps::Group>;
%template(SackQueryGroup) libdnf5::sack::Query<libdnf5::comps::Group>;
%include "libdnf5/comps/group/query.hpp"
add_iterator(SetGroup)

%include "libdnf5/comps/environment/environment.hpp"
%typemap(out) libdnf5::comps::Environment & libdnf5::SetConstIterator<libdnf5::comps::Environment>::operator* = copy_return_value;
%template(SetConstIteratorEnvironment) libdnf5::SetConstIterator<libdnf5::comps::Environment>;
%template(SetEnvironment) libdnf5::Set<libdnf5::comps::Environment>;
%template(SackQueryEnvironment) libdnf5::sack::Query<libdnf5::comps::Environment>;
Expand Down
8 changes: 7 additions & 1 deletion bindings/libdnf5/repo.i
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
#if defined(SWIGPYTHON)
%module(package="libdnf5", directors="1") repo
%module("threads"=1, package="libdnf5", directors="1") repo
%nothread;
#elif defined(SWIGPERL)
%module "libdnf5::repo"
#elif defined(SWIGRUBY)
Expand Down Expand Up @@ -143,6 +144,7 @@ wrap_unique_ptr(DownloadCallbacksUniquePtr, libdnf5::repo::DownloadCallbacks);

%include "libdnf5/repo/repo_weak.hpp"
%template(RepoWeakPtr) libdnf5::WeakPtr<libdnf5::repo::Repo, false>;
%typemap(out) libdnf5::WeakPtr<libdnf5::repo::Repo, false> & libdnf5::SetConstIterator<libdnf5::repo::RepoWeakPtr>::operator* = copy_return_value;
%template(SetConstIteratorRepoWeakPtr) libdnf5::SetConstIterator<libdnf5::repo::RepoWeakPtr>;
%template(SetRepoWeakPtr) libdnf5::Set<libdnf5::repo::RepoWeakPtr>;
%template(SackQueryRepoWeakPtr) libdnf5::sack::Query<libdnf5::repo::RepoWeakPtr>;
Expand All @@ -153,6 +155,10 @@ wrap_unique_ptr(RepoCallbacksUniquePtr, libdnf5::repo::RepoCallbacks);

%include "libdnf5/repo/repo_query.hpp"
%template(SackRepoRepoQuery) libdnf5::sack::Sack<libdnf5::repo::Repo>;

#if defined(SWIGPYTHON)
%thread;
#endif
%include "libdnf5/repo/repo_sack.hpp"
%template(RepoSackWeakPtr) libdnf5::WeakPtr<libdnf5::repo::RepoSack, false>;

Expand Down
2 changes: 2 additions & 0 deletions bindings/libdnf5/rpm.i
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,8 @@
%template(VectorNevraForm) std::vector<libdnf5::rpm::Nevra::Form>;
%template(PairBoolNevra) std::pair<bool, libdnf5::rpm::Nevra>;
%template(cmp_nevra) libdnf5::rpm::cmp_nevra<libdnf5::rpm::Nevra>;
%template(to_full_nevra_string) libdnf5::rpm::to_full_nevra_string<libdnf5::rpm::Nevra>;
%template(to_nevra_string) libdnf5::rpm::to_nevra_string<libdnf5::rpm::Nevra>;

%include "libdnf5/rpm/versionlock_config.hpp"

Expand Down
78 changes: 78 additions & 0 deletions common/utils/url.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ along with libdnf. If not, see <https://www.gnu.org/licenses/>.

#include "url.hpp"

#include "string.hpp"

#include <cctype>
#include <vector>

namespace libdnf5::utils::url {

Expand All @@ -34,4 +38,78 @@ bool is_url(std::string path) {
path.starts_with("https://");
}

std::string url_encode(const std::string & src) {
auto no_encode = [](char ch) {
return (ch >= '0' && ch <= '9') || (ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || ch == '-' ||
ch == '.' || ch == '_' || ch == '~';
};

// compute length of encoded string
auto len = src.length();
for (auto ch : src) {
if (!no_encode(ch)) {
len += 2;
}
}

// encode the input string
std::string encoded;
encoded.reserve(len);
for (auto ch : src) {
if (no_encode(ch)) {
encoded.push_back(ch);
} else {
encoded.push_back('%');
int hex;
hex = static_cast<unsigned char>(ch) >> 4;
hex += hex <= 9 ? '0' : 'a' - 10;
encoded.push_back(static_cast<char>(hex));
hex = static_cast<unsigned char>(ch) & 0x0F;
hex += hex <= 9 ? '0' : 'a' - 10;
encoded.push_back(static_cast<char>(hex));
}
}

return encoded;
}

std::string url_decode(const std::string & src) {
std::string decoded;
decoded.reserve(src.length());
auto hex_to_int = [](char ch) -> int {
if (ch >= '0' && ch <= '9') {
// digit
return ch - '0';
} else if (ch >= 'a' && ch <= 'f') {
// lowercase hex digit
return ch - 'a' + 10;
} else {
// uppercase hex digit (rely on std::isxdigit was performed before)
return ch - 'A' + 10;
}
};
for (std::size_t i = 0; i < src.length(); ++i) {
char ch = src[i];
if (ch == '%' && i + 2 < src.length() && std::isxdigit(src[i + 1]) && std::isxdigit(src[i + 2])) {
int byte_value = hex_to_int(src[i + 1]) * 16 + hex_to_int(src[i + 2]);
decoded.push_back(static_cast<char>(byte_value));
i += 2;
} else {
decoded.push_back(ch);
}
}
return decoded;
}

std::string url_path_encode(const std::string & url, bool preserve_already_encoded) {
// split by path separator and encode each part separately
std::vector<std::string> encoded_parts;
for (const auto & part : libdnf5::utils::string::split(url, "/")) {
// If preserve_already_encoded is true, decode first to prevent double-encoding (normalize)
encoded_parts.push_back(url_encode(preserve_already_encoded ? url_decode(part) : part));
}

return libdnf5::utils::string::join(encoded_parts, "/");
}

} // namespace libdnf5::utils::url
18 changes: 18 additions & 0 deletions common/utils/url.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,24 @@ namespace libdnf5::utils::url {

bool is_url(std::string path);

/// Converts the given input string to a URL encoded string
/// All input characters that are not a-z, A-Z, 0-9, '-', '.', '_' or '~' are converted
/// to their "URL escaped" version (%NN where NN is a two-digit hexadecimal number).
/// @param src String to encode
/// @return URL encoded string
std::string url_encode(const std::string & src);

/// Convert the given URL encoded string to a decoded string.
/// @param src String to decode
/// @return URL decoded string
std::string url_decode(const std::string & src);

/// Encode the given string to be safe for use in a URL path. It preserves path separators.
/// @param url The URL to encode.
/// @param preserve_already_encoded If true, do not re-encode already encoded characters (e.g. the path was already encoded by createrepo_c)
/// @return The encoded URL.
std::string url_path_encode(const std::string & url, bool preserve_already_encoded);

} // namespace libdnf5::utils::url

#endif // LIBDNF5_UTILS_URL_HPP
2 changes: 1 addition & 1 deletion dnf5-plugins/automatic_plugin/po/dnf5-plugin-automatic.pot
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/ca.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: 2025-02-24 18:43+0000\n"
"Last-Translator: Joan Aymà <joan@ayma.cat>\n"
"Language-Team: Catalan <https://translate.fedoraproject.org/projects/dnf5/"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/cs.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: 2024-02-02 12:15+0000\n"
"Last-Translator: Petr Ptacek <petr106@atlas.cz>\n"
"Language-Team: Czech <https://translate.fedoraproject.org/projects/dnf5/dnf5-"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/de.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: 2024-05-14 01:26+0000\n"
"Last-Translator: Dennis Koerner <dennis@bumblebeeman.dev>\n"
"Language-Team: German <https://translate.fedoraproject.org/projects/dnf5/"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/dnf5-plugin-builddep.pot
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/es.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: 2025-05-11 03:58+0000\n"
"Last-Translator: gossypium <gossypium@users.noreply.translate.fedoraproject."
"org>\n"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/fi.po
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: 2024-11-20 13:17+0000\n"
"Last-Translator: Ricky Tigg <ricky.tigg@gmail.com>\n"
"Language-Team: Finnish <https://translate.fedoraproject.org/projects/dnf5/"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/fr.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: 2024-05-07 13:36+0000\n"
"Last-Translator: Pierre GRASSER <pierre.grasser@proton.me>\n"
"Language-Team: French <https://translate.fedoraproject.org/projects/dnf5/"
Expand Down
2 changes: 1 addition & 1 deletion dnf5-plugins/builddep_plugin/po/it.po
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-06-19 03:39+0000\n"
"POT-Creation-Date: 2025-07-26 03:48+0000\n"
"PO-Revision-Date: 2025-04-25 21:09+0000\n"
"Last-Translator: Salvatore Cocuzza <info@salvatorecocuzza.it>\n"
"Language-Team: Italian <https://translate.fedoraproject.org/projects/dnf5/"
Expand Down
Loading