Skip to content

Commit

Permalink
Merge pull request #1074 from vojtechtrefny/3.2.x-branch_backport1
Browse files Browse the repository at this point in the history
Prepare 3.2.1 release
  • Loading branch information
vojtechtrefny authored Nov 7, 2024
2 parents 27881cb + 5e6e460 commit b829b60
Show file tree
Hide file tree
Showing 18 changed files with 199 additions and 39 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
- name: Install build dependencies
run: |
sudo apt -y install ansible
ansible-playbook -b -i "localhost," -c local misc/install-test-dependencies.yml
ansible-playbook -b -i "localhost," -c local misc/install-test-dependencies.yml -e "test_dependencies=false"
- name: Build
run: |
Expand Down
6 changes: 3 additions & 3 deletions .packit.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
actions:
post-upstream-clone:
- 'cp dist/libblockdev.spec.in dist/libblockdev.spec'
- 'sed -i -E "s/@WITH_.+@/1/g" dist/libblockdev.spec'
- 'sed -i -e "s/@WITH_.+@/1/g" -e "s/@MAJOR_VER@/3/g" dist/libblockdev.spec'
create-archive:
- './autogen.sh'
- './configure'
Expand Down Expand Up @@ -37,7 +37,7 @@ jobs:
# bump release to 99 to always be ahead of Fedora builds
- 'bash -c "sed -i -r \"s/Release:(\s*)\S+/Release: 99%{?dist}/\" dist/libblockdev.spec.in"'
- 'cp dist/libblockdev.spec.in dist/libblockdev.spec'
- 'sed -i -E "s/@WITH_.+@/1/g" dist/libblockdev.spec'
- 'sed -i -e "s/@WITH_.+@/1/g" -e "s/@MAJOR_VER@/3/g" dist/libblockdev.spec'
create-archive:
- './autogen.sh'
- './configure'
Expand All @@ -58,7 +58,7 @@ jobs:
# bump release to 99 to always be ahead of Fedora builds
- 'bash -c "sed -i -r \"s/Release:(\s*)\S+/Release: 99%{?dist}/\" dist/libblockdev.spec.in"'
- 'cp dist/libblockdev.spec.in dist/libblockdev.spec'
- 'sed -i -E "s/@WITH_.+@/1/g" dist/libblockdev.spec'
- 'sed -i -e "s/@WITH_.+@/1/g" -e "s/@MAJOR_VER@/3/g" dist/libblockdev.spec'
create-archive:
- './autogen.sh'
- './configure'
Expand Down
4 changes: 2 additions & 2 deletions Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -172,8 +172,8 @@ tag:

rpmlog:
@cl=`grep -n %changelog dist/libblockdev.spec.in |cut -d : -f 1 |head -1` ; \
version_release=`tail --lines=+$$(($$cl + 1)) dist/libblockdev.spec.in|head -1|cut -d- -f2-3|sed 's/ //g'` ; \
git log --no-merges --pretty="format:- %s (%ae)" "$$version_release.." |sed -e 's/@.*)/)/' ; \
version=`tail --lines=+$$(($$cl + 1)) dist/libblockdev.spec.in|head -1|cut -d- -f2|sed 's/ //g'` ; \
git log --no-merges --pretty="format:- %s (%ae)" "$$version.." |sed -e 's/@.*)/)/' ; \
echo

shortlog:
Expand Down
30 changes: 30 additions & 0 deletions NEWS.rst
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
Libblockdev 3.2.1
------------------

New bugfix release of the libblockdev library with multiple fixes. See below
for details.

**Full list of changes**

James Hilliard (1):

- crypto: check that IOC_OPAL_GET_STATUS is defined

Tomas Bzatek (3):

- smart: Clarify use of ID_ATA_SMART_ACCESS udev property
- smart: Clarify ID_ATA_SMART_ACCESS udev property values
- nvme: Avoid element-type g-i annotations

Vojtech Trefny (9):

- README: Update supported technologies
- dist: Fix source URL in spec
- packit: Fix generating spec from template
- dist: Sync spec with downstream
- misc: Fix installing test dependencies on Debian/Ubuntu
- ci: Do not try to install test dependencies for CodeQL analysis
- lvm: Clarify the global config functionallity in libblockdev
- ci: Install 'python3-libdnf5' for TMT test plans
- Makefile: Fix generating RPM log during bumpver

Libblockdev 3.2.0
------------------

Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,16 @@ Following storage technologies are supported by libblockdev
- encryption
- LUKS, TrueCrypt/VeraCrypt, BitLocker, FileVault2
- integrity
- SED OPAL
- DM (device mapper)
- loop devices
- MD RAID
- multipath
- s390
- DASD, zFCP
- NVDIMM namespaces
- NVDIMM namespaces (deprecated)
- NVMe
- SMART

#### Architecture

Expand Down
2 changes: 1 addition & 1 deletion configure.ac
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# configure.ac for libblockdev

AC_INIT([libblockdev], [3.2.0], [], [], [https://github.com/storaged-project/libblockdev])
AC_INIT([libblockdev], [3.2.1], [], [], [https://github.com/storaged-project/libblockdev])

# Disable building static libraries.
# This needs to be set before initializing automake
Expand Down
77 changes: 75 additions & 2 deletions dist/libblockdev.spec.in
Original file line number Diff line number Diff line change
Expand Up @@ -85,12 +85,12 @@
%define configure_opts %{?python3_copts} %{?lvm_dbus_copts} %{?btrfs_copts} %{?crypto_copts} %{?dm_copts} %{?loop_copts} %{?lvm_copts} %{?lvm_dbus_copts} %{?mdraid_copts} %{?mpath_copts} %{?swap_copts} %{?part_copts} %{?fs_copts} %{?nvdimm_copts} %{?tools_copts} %{?gi_copts} %{?nvme_copts} %{?smart_copts} %{?smartmontools_copts}

Name: libblockdev
Version: 3.2.0
Version: 3.2.1
Release: 1%{?dist}
Summary: A library for low-level manipulation with block devices
License: LGPL-2.1-or-later
URL: https://github.com/storaged-project/libblockdev
Source0: https://github.com/storaged-project/libblockdev/releases/download/%{version}-%{release}/%{name}-%{version}.tar.gz
Source0: https://github.com/storaged-project/libblockdev/releases/download/%{version}/%{name}-%{version}.tar.gz

BuildRequires: make
BuildRequires: glib2-devel
Expand Down Expand Up @@ -635,7 +635,19 @@ A meta-package that pulls all the libblockdev plugins as dependencies.
%autosetup -n %{name}-%{version} -p1

%build
# workaround for https://bugzilla.redhat.com/show_bug.cgi?id=2247319
%ifarch aarch64
find . -name Makefile.am | xargs sed -i -e 's/-Werror//g'
%endif

autoreconf -ivf

# workaround for https://bugzilla.redhat.com/show_bug.cgi?id=2247319
%ifarch aarch64
%global _fortify_level 0
%global optflags $(echo %optflags | sed -e 's/-O2/-O0/g') -Wp,-D_FORTIFY_SOURCE=0
%endif

%configure %{?configure_opts}
%{__make} %{?_smp_mflags}

Expand Down Expand Up @@ -946,6 +958,21 @@ find %{buildroot} -type f -name "*.la" | xargs %{__rm}
%files plugins-all

%changelog
* Thu Nov 07 2024 Vojtech Trefny <[email protected]> - 3.2.1-1
- Makefile: Fix generating RPM log during bumpver (vtrefny)
- nvme: Avoid element-type g-i annotations (tbzatek)
- ci: Install 'python3-libdnf5' for TMT test plans (vtrefny)
- lvm: Clarify the global config functionallity in libblockdev (vtrefny)
- smart: Clarify ID_ATA_SMART_ACCESS udev property values (tbzatek)
- smart: Clarify use of ID_ATA_SMART_ACCESS udev property (tbzatek)
- ci: Do not try to install test dependencies for CodeQL analysis (vtrefny)
- misc: Fix installing test dependencies on Debian/Ubuntu (vtrefny)
- dist: Sync spec with downstream (vtrefny)
- crypto: check that IOC_OPAL_GET_STATUS is defined (james.hilliard1)
- packit: Fix generating spec from template (vtrefny)
- dist: Fix source URL in spec (vtrefny)
- README: Update supported technologies (vtrefny)

* Tue Sep 10 2024 Vojtech Trefny <[email protected]> - 3.2.0-1
- ci: Add a simple GH action to run spelling tools on our code (vtrefny)
- crypto: Fix GType macro for crypto context (vtrefny)
Expand Down Expand Up @@ -1053,6 +1080,37 @@ find %{buildroot} -type f -name "*.la" | xargs %{__rm}
- Makefile: Fix bumpver to work with micro versions (vtrefny)
- Makefile: Do not include release in the tag (vtrefny)

* Thu Aug 15 2024 Vojtech Trefny <[email protected]> - 3.1.1-11
- crypto: LUKS OPAL support (#2304174)

* Fri Jul 26 2024 Vojtech Trefny <[email protected]> - 3.1.1-10
- fs: Ignore unused-parameter warning in the FS plugin

* Thu Jul 18 2024 Fedora Release Engineering <[email protected]> - 3.1.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild

* Fri Jun 07 2024 Python Maint <[email protected]> - 3.1.1-8
- Rebuilt for Python 3.13

* Thu Apr 11 2024 Dan Horák <dan[at]danny.cz> - 3.1.1-7
- Disable -Werror and build with -O0 on aarch64 to workaround #2247319

* Mon Apr 08 2024 Dan Horák <dan[at]danny.cz> - 3.1.1-6
- Back to standard build by reverting instrumentations for #2247319

* Fri Apr 05 2024 Dan Horák <dan[at]danny.cz> - 3.1.1-5
- Apply ASAN instrumentation for #2247319

* Wed Mar 27 2024 Adam Williamson <[email protected]> - 3.1.1-4
- Apply UBSAN instrumentation per Dan Horák for #2247319

* Tue Mar 26 2024 Adam Williamson <[email protected]> - 3.1.1-3
- Drop the de-optimization changes from -2

* Tue Mar 26 2024 Adam Williamson <[email protected]> - 3.1.1-2
- Backport proposed upstream fix for #2247319
- Disable -Werror and build with -O0 to help further debug #2247319

* Tue Mar 26 2024 Vojtech Trefny <[email protected]> - 3.1.1-1
- lvm-dbus: Fix passing size for pvresize over DBus (vtrefny)
- nvme: Add bd_nvme_is_tech_avail to the API file (vtrefny)
Expand All @@ -1067,6 +1125,21 @@ find %{buildroot} -type f -name "*.la" | xargs %{__rm}
- Use glib2 G_GNUC_UNUSED in place of UNUSED locally defined (giulio.benetti)
- Makefile: Fix bumpver to work with micro versions (vtrefny)

* Sat Mar 23 2024 Adam Williamson <[email protected]> - 3.1.0-6
- Slightly stronger workaround attempt for #2247319

* Sat Mar 23 2024 Adam Williamson <[email protected]> - 3.1.0-5
- Tentative workaround for #2247319 based on diagnosis from -4

* Fri Mar 22 2024 Adam Williamson <[email protected]> - 3.1.0-4
- Try something else dumb to diagnose #2247319

* Thu Mar 21 2024 Adam Williamson <[email protected]> - 3.1.0-3
- Disable some log statements to see if it works around #2247319

* Thu Jan 25 2024 Fedora Release Engineering <[email protected]> - 3.1.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild

* Fri Jan 19 2024 Vojtech Trefny <[email protected]> - 3.1.0-1
- tests: Skip some checks for btrfs errors with btrfs-progs 6.6.3 (vtrefny)
- Fix missing progress initialization in bd_crypto_luks_add_key (vtrefny)
Expand Down
2 changes: 1 addition & 1 deletion misc/install-test-dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@
- udftools
- volume-key
- xfsprogs
when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu' and test_dependencies|bool
when: (ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu') and test_dependencies|bool

####### Common actions

Expand Down
2 changes: 1 addition & 1 deletion plans/blivet.fmf
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ prepare:
- name: copr
how: shell
script:
- sudo dnf install -y 'dnf-command(copr)'
- sudo dnf install -y python3-libdnf5 'dnf-command(copr)'
- sudo dnf copr enable -y @storage/udisks-daily
# TF prioritizes Fedora tag repo over all others, in particular our daily COPR
- for f in $(grep -l -r 'testing-farm-tag-repository' /etc/yum.repos.d); do sed -i '/priority/d' "$f" ;done
Expand Down
2 changes: 1 addition & 1 deletion plans/tests.fmf
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ prepare:
- name: copr
how: shell
script:
- sudo dnf install -y 'dnf-command(copr)'
- sudo dnf install -y python3-libdnf5 'dnf-command(copr)'
- sudo dnf copr enable -y @storage/udisks-daily
# TF prioritizes Fedora tag repo over all others, in particular our daily COPR
- for f in $(grep -l -r 'testing-farm-tag-repository' /etc/yum.repos.d); do sed -i '/priority/d' "$f" ;done
Expand Down
2 changes: 1 addition & 1 deletion plans/udisks.fmf
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ prepare:
- name: copr
how: shell
script:
- sudo dnf install -y 'dnf-command(copr)'
- sudo dnf install -y python3-libdnf5 'dnf-command(copr)'
- sudo dnf copr enable -y @storage/udisks-daily
# TF prioritizes Fedora tag repo over all others, in particular our daily COPR
- for f in $(grep -l -r 'testing-farm-tag-repository' /etc/yum.repos.d); do sed -i '/priority/d' "$f" ;done
Expand Down
18 changes: 14 additions & 4 deletions src/lib/plugin_apis/lvm.api
Original file line number Diff line number Diff line change
Expand Up @@ -1474,10 +1474,17 @@ gboolean bd_lvm_thsnapshotcreate (const gchar *vg_name, const gchar *origin_name

/**
* bd_lvm_set_global_config:
* @new_config: (nullable): string representation of the new global LVM
* configuration to set or %NULL to reset to default
* @new_config: (nullable): string representation of the new global libblockdev LVM
* configuration to set or %NULL to reset to default
* @error: (out) (optional): place to store error (if any)
*
*
* Note: This function sets configuration options for LVM calls internally
* in libblockdev, it doesn't change the global lvm.conf config file.
* Calling this function with `backup {backup=0 archive=0}` for example
* means `--config=backup {backup=0 archive=0}"` will be added to all
* calls libblockdev makes.
*
* Returns: whether the new requested global config @new_config was successfully
* set or not
*
Expand All @@ -1489,8 +1496,11 @@ gboolean bd_lvm_set_global_config (const gchar *new_config, GError **error);
* bd_lvm_get_global_config:
* @error: (out) (optional): place to store error (if any)
*
* Returns: a copy of a string representation of the currently set LVM global
* configuration
* Returns: (transfer full): a copy of a string representation of the currently
* set libblockdev LVM global configuration
*
* Note: This function does not change the global `lvm.conf` config
* file, see %bd_lvm_set_global_config for details.
*
* Tech category: %BD_LVM_TECH_GLOB_CONF no mode (it is ignored)
*/
Expand Down
4 changes: 2 additions & 2 deletions src/lib/plugin_apis/nvme.api
Original file line number Diff line number Diff line change
Expand Up @@ -364,7 +364,7 @@ GType bd_nvme_namespace_info_get_type ();
* @features: features and capabilities present for this namespace, see #BDNVMENamespaceFeature.
* @format_progress_remaining: The percentage value remaining of a format operation in progress.
* @write_protected: %TRUE if the namespace is currently write protected and all write access to the namespace shall fail.
* @lba_formats: (array zero-terminated=1) (element-type BDNVMELBAFormat): A list of supported LBA Formats.
* @lba_formats: (array zero-terminated=1): A list of supported LBA Formats.
* @current_lba_format: A LBA Format currently used for the namespace. Contains zeroes in case of
* an invalid or no supported LBA Format reported.
*/
Expand Down Expand Up @@ -800,7 +800,7 @@ GType bd_nvme_self_test_log_get_type ();
* BDNVMESelfTestLog:
* @current_operation: Current running device self-test operation. There's no corresponding record in @entries for a device self-test operation that is in progress.
* @current_operation_completion: Percentage of the currently running device self-test operation. Only valid when @current_operation is other than #BD_NVME_SELF_TEST_ACTION_NOT_RUNNING.
* @entries: (array zero-terminated=1) (element-type BDNVMESelfTestLogEntry): Self-test log entries for the last 20 operations, sorted from newest (first element) to oldest.
* @entries: (array zero-terminated=1): Self-test log entries for the last 20 operations, sorted from newest (first element) to oldest.
*/
typedef struct BDNVMESelfTestLog {
BDNVMESelfTestAction current_operation;
Expand Down
2 changes: 1 addition & 1 deletion src/plugins/crypto.c
Original file line number Diff line number Diff line change
Expand Up @@ -3642,7 +3642,7 @@ gboolean bd_crypto_fvault2_close (const gchar *fvault2_device, GError **error) {
*
* Tech category: %BD_CRYPTO_TECH_SED_OPAL-%BD_CRYPTO_TECH_MODE_QUERY
*/
#ifndef HAVE_LINUX_OPAL
#if !defined(HAVE_LINUX_OPAL) || !defined(IOC_OPAL_GET_STATUS)
gboolean bd_crypto_opal_is_supported (const gchar *device G_GNUC_UNUSED, GError **error) {
/* this will return FALSE and set error, because OPAL technology is not available */
return bd_crypto_is_tech_avail (BD_CRYPTO_TECH_SED_OPAL, BD_CRYPTO_TECH_MODE_QUERY, error);
Expand Down
16 changes: 13 additions & 3 deletions src/plugins/lvm-dbus.c
Original file line number Diff line number Diff line change
Expand Up @@ -3418,10 +3418,17 @@ gboolean bd_lvm_thsnapshotcreate (const gchar *vg_name, const gchar *origin_name

/**
* bd_lvm_set_global_config:
* @new_config: (nullable): string representation of the new global LVM
* configuration to set or %NULL to reset to default
* @new_config: (nullable): string representation of the new global libblockdev LVM
* configuration to set or %NULL to reset to default
* @error: (out) (optional): place to store error (if any)
*
*
* Note: This function sets configuration options for LVM calls internally
* in libblockdev, it doesn't change the global lvm.conf config file.
* Calling this function with `backup {backup=0 archive=0}` for example
* means `--config=backup {backup=0 archive=0}"` will be added to all
* calls libblockdev makes.
*
* Returns: whether the new requested global config @new_config was successfully
* set or not
*
Expand Down Expand Up @@ -3451,7 +3458,10 @@ gboolean bd_lvm_set_global_config (const gchar *new_config, GError **error G_GNU
* @error: (out) (optional): place to store error (if any)
*
* Returns: (transfer full): a copy of a string representation of the currently
* set LVM global configuration
* set libblockdev LVM global configuration
*
* Note: This function does not change the global `lvm.conf` config
* file, see %bd_lvm_set_global_config for details.
*
* Tech category: %BD_LVM_TECH_GLOB_CONF no mode (it is ignored)
*/
Expand Down
16 changes: 13 additions & 3 deletions src/plugins/lvm.c
Original file line number Diff line number Diff line change
Expand Up @@ -2536,10 +2536,17 @@ gboolean bd_lvm_thsnapshotcreate (const gchar *vg_name, const gchar *origin_name

/**
* bd_lvm_set_global_config:
* @new_config: (nullable): string representation of the new global LVM
* configuration to set or %NULL to reset to default
* @new_config: (nullable): string representation of the new global libblockdev LVM
* configuration to set or %NULL to reset to default
* @error: (out) (optional): place to store error (if any)
*
*
* Note: This functions sets configuration options for LVM calls internally
* in libblockdev, it doesn't change the global lvm.conf config file.
* Calling this function with `backup {backup=0 archive=0}` for example
* means `--config=backup {backup=0 archive=0}"` will be added to all
* calls libblockdev makes.
*
* Returns: whether the new requested global config @new_config was successfully
* set or not
*
Expand Down Expand Up @@ -2569,7 +2576,10 @@ gboolean bd_lvm_set_global_config (const gchar *new_config, GError **error G_GNU
* @error: (out) (optional): place to store error (if any)
*
* Returns: (transfer full): a copy of a string representation of the currently
* set LVM global configuration
* set libblockdev LVM global configuration
*
* Note: This function does not change the global `lvm.conf` config
* file, see %bd_lvm_set_global_config for details.
*
* Tech category: %BD_LVM_TECH_GLOB_CONF no mode (it is ignored)
*/
Expand Down
Loading

0 comments on commit b829b60

Please sign in to comment.