#1017558 libboost-filesystem-dev: boost::filesystem::copy_file() throws "Invalid cross-device link" #1017558
- Package:
- libboost-filesystem-dev
- Source:
- libboost-filesystem-dev
- Description:
- filesystem operations (portable paths, iteration over directories, etc) in C++ (default version)
- Submitter:
- Andre Offringa
- Date:
- 2024-05-24 04:06:03 UTC
- Severity:
- normal
- Tags:
Dear Maintainer, Version 1.74 of boost filesystem contains a bug that causes copy_file() to misbehave. The issue has been filed upstream (https://github.com/boostorg/filesystem/issues/254), and it's supposed to be fixed in later version of Boost. The means that upgrading should fix it. Regards, André
Control: tags 1017558 + pending Dear maintainer, I've prepared a patch for boost1.74 (versioned as 1.74.0+ds1-21.1) that should close 1017558. The patch fixes a bug with copy_file when copying between devices or filesystems by using the fallback copy_write implementation. This issue has been fixed with >boost1.77 but this patch should fix the issue for current version of boost without the need to actually upgrade. Regards, Elisei
Dear Elisei, thanks for your effort and patch! boost1.74 will not be released with trixie (see #1060102 <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1060102>) as it has been superseded by 1.83. Removal from testing is scheduled on 05 of June. So, I do not see too much reasons for the NMU. Thanks again and best regards Anton
Dear Anton, No problem. Thank you for the fast response! This issue affects all packages that depend on libboost-filesystem1.74 in bookworm and try to copy a file between file systems/devices with boost::copy_file In bookworm the default boost version is still 1.74. Does that mean that these problems will not be fixed in current stable? Will default boost version be changed in next point release with Debian 12.6? I understand if its not possible and thank you again for the fast response. Best regards, Elisei
Hi, no, it is not possible to change the default version in stable release. It is only possible to fix some critical bugs. Best regards Anton