|
NAMEFile::Copy::Recursive::Reduced - Recursive copying of files and directories within Perl 5 toolchainSYNOPSISuse File::Copy::Recursive::Reduced qw(fcopy dircopy); fcopy($orig,$new) or die $!; dircopy($orig,$new) or die $!; DESCRIPTIONThis library is intended as a not-quite-drop-in replacement for certain functionality provided by CPAN distribution File-Copy-Recursive <http://search.cpan.org/dist/File-Copy-Recursive/>. The library provides methods similar enough to that distribution's "fcopy()", "dircopy()" and "rcopy()" functions to be usable in those CPAN distributions often described as being part of the Perl toolchain.RationaleFile::Copy::Recursive (hereinafter referred to as FCR) is heavily used in other CPAN libraries. Out of over 30,000 other CPAN distributions studied in early 2018, it ranks by one calculation as the 129th highest distribution in terms of its total direct and indirect reverse dependencies. In current parlance, it sits "high upstream on the CPAN river." Hence, it ought to work correctly and be installable on all operating systems where Perl is well supported.However, as of early April 2018, FCR version 0.40 wass failing to pass its tests against either Perl 5.26 or Perl 5 blead on important operating systems including Windows, FreeBSD and NetBSD (<http://fast-matrix.cpantesters.org/?dist=File-Copy-Recursive%200.40>). As a consequence, CPAN installers such as cpan and cpanm were failing to install it (unless one resorted to the "--force" option). This prevented distributions dependent (directly or indirectly) on FCR from being installed as well. Some patches had been provided to the FCR bug tracker <https://rt.cpan.org/Dist/Display.html?Name=File-Copy-Recursive> for this problem. However, as late as April 18 2018 those patches had not yet been applied. This posed a critical problem for the ability to assess the impact of the soon-to-be-released perl-5.28.0 on CPAN distributions (the so-called "Blead Breaks CPAN" ("BBC") problem) on platforms other than Linux. File::Copy::Recursive::Reduced (hereinafter referred to as FCR2) is intended to provide a minimal subset of FCR's functionality -- just enough to get the Perl toolchain working on the platforms where FCR is currently failing. Functions will be added to FCR2 only insofar as investigation shows that they can replace usage of FCR functions in toolchain and other heavily used modules. No attempt will be made to reproduce all the functionality currently provided or claimed to be provided by FCR. On April 19 2018, FCR's author, Daniel Muey, released version 0.41 to CPAN. This version included a patch submitted by Tom Hukins which corrected the problem addressed by FCR2. FCR once again built and tested correctly on FreeBSD. That meant that its 6000-plus reverse dependencies can once again be reached by cpan and other installers. That in turn means that we can conduct exhaustive BBC investigations on FreeBSD and other platforms. With that correction in FCR, the original rationale for FCR2 has been superseded. I will continue to maintain the code and respond to bug reports, but am suspending active development. I now deem FCR2 feature-complete. SUBROUTINESThe current version of FCR2 provides three exportable and publicly supported subroutines partially equivalent to the similarly named subroutines exported by FCR."fcopy()"
Four cases should be noted:
"dircopy()"
"rcopy()"
File::Copy::Recursive Subroutines Not Supported in File::Copy::Recursive::ReducedAs of the current version, FCR2 has no publicly documented, exportable subroutines equivalent to the following FCR exportable subroutines:rcopy_glob fmove rmove rmove_glob dirmove pathempty pathrm pathrmdir Consideration is being given to supporting "rcopy()". BUGS AND SUPPORTPlease report any bugs by mail to "bug-File-Copy-Recursive-Reduced@rt.cpan.org" or through the web interface at <http://rt.cpan.org>.ACKNOWLEDGEMENTSNotwithstanding the fact that this distribution is being released to address certain problems in File-Copy-Recursive, credit must be given to FCR author Daniel Muey <http://www.cpan.org/authors/id/D/DM/DMUEY/> for ingenious conception and execution. The implementation of the subroutines provided by FCR2 follows that found in FCR to a significant extent.Thanks also to Tom Hukins for supplying the patch which corrects FCR's problems and which has been incorporated into FCR2 as well. AUTHORJames E Keenan CPAN ID: JKEENAN jkeenan@cpan.org http://thenceforward.net/perl COPYRIGHTThis program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.The full text of the license can be found in the LICENSE file included with this module. Copyright James E Keenan 2018. All rights reserved. SEE ALSOperl(1). File::Copy::Recursive(3).
Visit the GSP FreeBSD Man Page Interface. |