Package: deb-perl-macros Version: 0.1-26.5 Architecture: all Maintainer: Victor Zhestkov Installed-Size: 42 Depends: perl Filename: all/deb-perl-macros_0.1-26.5_all.deb Size: 2622 MD5sum: d08d79286bfdacffdebfba3305c8c320 SHA1: 388978362c8d6715a23f790575c4f3275a685251 SHA256: 910f4d4a2d6fbbf00b70a225212f11255d4c228b66eb4751a862de5002e8e84b Priority: optional Homepage: https://build.opensuse.org/package/show/systemsmanagement:saltstack:bundle:debbuild/deb-perl-macros Description: Perl RPM macros for debbuild Perl RPM macros for debbuild Package: debbuild Version: 24.12.0-39.1 Architecture: all Maintainer: debbuild developers Installed-Size: 209 Depends: liblocale-gettext-perl,lsb-release,xz-utils,bash,bzip2,dpkg,dpkg-dev,fakeroot,gzip,patch,pax,perl Recommends: dpkg-sig,git-core,quilt,unzip,zip,zstd,debbuild-lua-support Suggests: rpm Filename: all/debbuild_24.12.0-39.1_all.deb Size: 55128 MD5sum: 104e77a6c8c171e0c54db2fe32696cbc SHA1: 77914a9b96ca5b17d21e26ae1f0c810691718e83 SHA256: 7703b581c13572793478925f421f1477e15bccb27e9cf565b42c9f92cd300df0 Section: devel Priority: optional Homepage: https://github.com/debbuild/debbuild Description: Build Debian-compatible .deb packages from RPM .spec files debbuild attempts to build Debian-friendly semi-native packages from RPM spec files, RPM-friendly tarballs, and RPM source packages (.src.rpm files). It accepts most of the options rpmbuild does, and should be able to interpret most spec files usefully. Package: debbuild-lua-support Version: 24.12.0-39.1 Architecture: all Maintainer: debbuild developers Installed-Size: 32 Depends: debbuild (= 24.12.0-39.1),liblua-api-perl Filename: all/debbuild-lua-support_24.12.0-39.1_all.deb Size: 8544 MD5sum: 1bce5d0fb0654cf5e53ad0145521763f SHA1: 3ec1d629fe870486f3534fc98850b7b3cf501dc6 SHA256: 3ada6021430b1650d20b763c6624190f9bc7230ab9d7ed495c802d29cd5e23b8 Section: devel Priority: optional Homepage: https://github.com/debbuild/debbuild Description: Lua macro support for debbuild This package adds the dependencies to support RPM macros written the Lua programming language. Package: debbuild-macros Version: 0.0.7-17.1 Architecture: all Maintainer: debbuild developers Installed-Size: 126 Depends: debbuild (>= 22.02.1) Provides: debbuild-macros-debpkg,debbuild-macros-cmake,cmake-deb-macros,debbuild-macros-mga-mkrel,debbuild-macros-mga-mklibname,mga-deb-macros,debbuild-macros-python,debbuild-macros-python2,debbuild-macros-python3,python-deb-macros,python2-deb-macros,python3-deb-macros,debbuild-macros-perl,perl-deb-macros,debbuild-macros-ruby,ruby-deb-macros,debbuild-macros-golang,go-deb-macros,golang-deb-macros,debbuild-macros-apache2,apache2-deb-macros,debbuild-macros-gpgverify,debbuild-macros-vpath,debbuild-macros-ninja,ninja-deb-macros,debbuild-macros-meson,meson-deb-macros,debbuild-macros-apparmor,apparmor-deb-macros,debbuild-macros-firewalld,firewalld-deb-macros,debbuild-macros-systemd,systemd-deb-macros Filename: all/debbuild-macros_0.0.7-17.1_all.deb Size: 25450 MD5sum: cffa51496a7044d59c0d456ea6c3d03a SHA1: 81d11e84fd850af6aa96b40e70da38721b5e87e2 SHA256: 2eaa1b6b4186b8a3e4e73cbf8c1c9c88f26250277e8714ef51c95dbc6cca413b Section: devel Priority: optional Homepage: https://github.com/debbuild/debbuild-macros Description: Various macros for extending debbuild functionality This package contains a set of RPM macros for debbuild, designed in such a manner that it is trivial to port RPM packaging to build Debian packages that are mostly in-line with Debian Policy. Package: liblua5-1-5 Version: 5.1.5-71.4 Architecture: i386 Maintainer: Uyuni packagers Installed-Size: 689 Replaces: lua51-libs (<< 5.1.5),liblua5-1 (<< 5.1.5-71.4) Provides: lua51-libs (= 5.1.5-71.4),liblua5-1 (= 5.1.5-71.4) Filename: i386/liblua5-1-5_5.1.5-71.4_i386.deb Size: 239482 MD5sum: 73370db0a24c3456b3727627d63e2487 SHA1: c320f2dccb473cad13cb7e8589ab2a38895e8b98 SHA256: 3f62b8051273b110bb8a1d429f3766dff3a6a44779060a333ce845251c55ecee Section: System/Libraries Priority: optional Homepage: http://www.lua.org Description: The Lua integration library Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language. . Lua combines procedural syntax (similar to Pascal) with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it suitable for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C. Package: liblua5-1-5 Version: 5.1.5-71.4 Architecture: amd64 Maintainer: Uyuni packagers Installed-Size: 855 Replaces: lua51-libs (<< 5.1.5),liblua5-1 (<< 5.1.5-71.4) Provides: lua51-libs (= 5.1.5-71.4),liblua5-1 (= 5.1.5-71.4) Filename: amd64/liblua5-1-5_5.1.5-71.4_amd64.deb Size: 240972 MD5sum: 0a041085165517b16b0e5697bb7bfc23 SHA1: edb8bd37a6a19db2044bccf03bcb47fc141322fc SHA256: cae6b40499c07cfdfc30517ad665c3cf90e8137d2694fdb11b4cd3d1876b96f9 Section: System/Libraries Priority: optional Homepage: http://www.lua.org Description: The Lua integration library Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language. . Lua combines procedural syntax (similar to Pascal) with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it suitable for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C. Package: lua-macros Version: 20210827-36.1 Architecture: all Maintainer: Uyuni packagers Installed-Size: 25 Filename: all/lua-macros_20210827-36.1_all.deb Size: 1440 MD5sum: 2706994008850c61cc6ff152ed3297de SHA1: 5021a81b9e560d8c0afab0d90b90640a426d5348 SHA256: 47c3cdb7b2538bcc500f87e03c32799fcf4fb023986561943f923d7968e45146 Section: Development/Languages/Other Priority: optional Homepage: https://www.lua.org Description: Macros for lua language RPM macros for lua packaging Package: lua51 Version: 5.1.5-71.4 Architecture: i386 Maintainer: Uyuni packagers Installed-Size: 1184 Depends: dpkg,libc6,libreadline6,libtinfo5 Provides: lua (= 5.1.5-71.4),lua-api (= 5.1) Filename: i386/lua51_5.1.5-71.4_i386.deb Size: 290590 MD5sum: c21e82bae821289dd62f683f290a0f43 SHA1: 561431a16c47e6b5b599b2ece1119d9e4abab284 SHA256: 1c42006f2be8b29031b4dca527b9ca3634a3388fb17e09c9e6897c0a4a19387c Section: Development/Languages/Other Priority: optional Homepage: http://www.lua.org Description: Small Embeddable Language with Procedural Syntax Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language. . Lua combines procedural syntax (similar to Pascal) with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it suitable for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C. Package: lua51 Version: 5.1.5-71.4 Architecture: amd64 Maintainer: Uyuni packagers Installed-Size: 1467 Depends: dpkg,libc6,libreadline6,libtinfo5 Provides: lua (= 5.1.5-71.4),lua-api (= 5.1) Filename: amd64/lua51_5.1.5-71.4_amd64.deb Size: 289570 MD5sum: 7fc1cd0b09327526fc5b815149dcc309 SHA1: c12affbacd0b71d2ac3af7dae2c1f824733934ae SHA256: f51ec8886450837d827adc9e9eb60d2af27c4d79dc5a380b21e5ef0cb93a9ef4 Section: Development/Languages/Other Priority: optional Homepage: http://www.lua.org Description: Small Embeddable Language with Procedural Syntax Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language. . Lua combines procedural syntax (similar to Pascal) with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it suitable for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C. Package: lua51-devel Version: 5.1.5-71.4 Architecture: i386 Maintainer: Uyuni packagers Installed-Size: 1025 Depends: liblua5-1-5 (= 5.1.5-71.4),lua51 (= 5.1.5-71.4),lua-macros,dpkg Provides: lua-devel (= 5.1.5-71.4),lua-devel (= 5.1),pkgconfig-lua (= 5.1.5-71.4) Filename: i386/lua51-devel_5.1.5-71.4_i386.deb Size: 308018 MD5sum: 592291ec3cb6b8e0d18c4947b9deefee SHA1: f3fa0373bb8bb472983549803f4f9344a1f5b0ca SHA256: d0bc7827588cbce36d3432ac631172d92d3c6fdaa15c05a26457cfcb3df1193a Section: Development/Libraries/C and C++ Priority: optional Homepage: http://www.lua.org Description: Development files for lua Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language. . This package contains files needed for embedding lua into your application. Package: lua51-devel Version: 5.1.5-71.4 Architecture: amd64 Maintainer: Uyuni packagers Installed-Size: 1521 Depends: liblua5-1-5 (= 5.1.5-71.4),lua51 (= 5.1.5-71.4),lua-macros,dpkg Provides: lua-devel (= 5.1.5-71.4),lua-devel (= 5.1),pkgconfig-lua (= 5.1.5-71.4) Filename: amd64/lua51-devel_5.1.5-71.4_amd64.deb Size: 310338 MD5sum: 9ab982d9c3ce704d108c36b4d2f3bbf3 SHA1: 0b02c6a866210a33c15debffb915e095876da0e1 SHA256: 090c0f1bc2a27045431b50c5a0a37eb1f8b5a3a77526100ab24f48ae8aa85d06 Section: Development/Libraries/C and C++ Priority: optional Homepage: http://www.lua.org Description: Development files for lua Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language. . This package contains files needed for embedding lua into your application. Package: lua51-doc Version: 5.1.5-71.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 330 Filename: all/lua51-doc_5.1.5-71.4_all.deb Size: 71460 MD5sum: 8e8146c9d0d804516053d9b4db06fa34 SHA1: f36fd1885314e479f759236337be4930e77d2e1f SHA256: a1a217e43465c8fe9dd827dbbe03829e92cd22835e0b46d97a5ae532be32e5e2 Section: Documentation/HTML Priority: optional Homepage: http://www.lua.org Description: Documentation for Lua, a small embeddable language Lua is a programming language originally designed for extending applications, but is also frequently used as a general-purpose, stand-alone language. . Lua combines procedural syntax (similar to Pascal) with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, interpreted from byte codes, and has automatic memory management, making it suitable for configuration, scripting, and rapid prototyping. Lua is implemented as a small library of C functions, written in ANSI C. Package: perl-capture-tiny Version: 0.48-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 121 Filename: all/perl-capture-tiny_0.48-26.4_all.deb Size: 29822 MD5sum: af01e3205b098de9fcdf50334f6aafde SHA1: 2a5b9fb137f349e1d2dfa8a105886b7837f5e176 SHA256: 7cc95ed437193cf6cb7edff1d3a1c814d697ddc79d319307698377df95d084e2 Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Capture-Tiny/ Description: Capture STDOUT and STDERR from Perl, XS or external programs Capture::Tiny provides a simple, portable way to capture almost anything sent to STDOUT or STDERR, regardless of whether it comes from Perl, from XS code or from an external program. Optionally, output can be teed so that it is captured while being passed through to the original filehandles. Yes, it even works on Windows (usually). Stop guessing which of a dozen capturing modules to use in any particular situation and just use this one. Package: perl-carp Version: 1.50-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 88 Filename: all/perl-carp_1.50-26.4_all.deb Size: 22552 MD5sum: d1fae99f62ab64d8a60eb21a0869de33 SHA1: 9b5c9814e76b5458938146d3961f8047875d1283 SHA256: d41f8ae7e4408575602c97df44ea87544f09a5aa5cf068d3dab2f4fb29d8c765 Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Carp/ Description: Alternative Warn and Die for Modules The Carp routines are useful in your own modules because they act like 'die()' or 'warn()', but with a message which is more likely to be useful to a user of your module. In the case of 'cluck()' and 'confess()', that context is a summary of every call in the call-stack; 'longmess()' returns the contents of the error message. . For a shorter message you can use 'carp()' or 'croak()' which report the error as being from where your module was called. 'shortmess()' returns the contents of this error message. There is no guarantee that that is where the error was, but it is a good educated guess. . 'Carp' takes care not to clobber the status variables '$!' and '$^E' in the course of assembling its error messages. This means that a '$SIG{__DIE__}' or '$SIG{__WARN__}' handler can capture the error information held in those variables, if it is required to augment the error message, and if the code calling 'Carp' left useful values there. Of course, 'Carp' can't guarantee the latter. . You can also alter the way the output and logic of 'Carp' works, by changing some global variables in the 'Carp' namespace. See the section on 'GLOBAL VARIABLES' below. . Here is a more complete description of how 'carp' and 'croak' work. What they do is search the call-stack for a function call stack where they have not been told that there shouldn't be an error. If every call is marked safe, they give up and give a full stack backtrace instead. In other words they presume that the first likely looking potential suspect is guilty. Their rules for telling whether a call shouldn't generate errors work as follows: . * 1. . Any call from a package to itself is safe. . * 2. . Packages claim that there won't be errors on calls to or from packages explicitly marked as safe by inclusion in '@CARP_NOT', or (if that array is empty) '@ISA'. The ability to override what @ISA says is new in 5.8. . * 3. . The trust in item 2 is transitive. If A trusts B, and B trusts C, then A trusts C. So if you do not override '@ISA' with '@CARP_NOT', then this trust relationship is identical to, "inherits from". . * 4. . Any call from an internal Perl module is safe. (Nothing keeps user modules from marking themselves as internal to Perl, but this practice is discouraged.) . * 5. . Any call to Perl's warning system (eg Carp itself) is safe. (This rule is what keeps it from reporting the error at the point where you call 'carp' or 'croak'.) . * 6. . '$Carp::CarpLevel' can be set to skip a fixed number of additional call levels. Using this is not recommended because it is very difficult to get it to behave correctly. Package: perl-class-data-inheritable Version: 0.09-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 55 Filename: all/perl-class-data-inheritable_0.09-26.4_all.deb Size: 7142 MD5sum: a1e9778ba3c7e8aec5033a94773223ab SHA1: 337c56185d0a4a04958db9b0f341f3c74a528548 SHA256: 79ac0df5c08de14e8aaccca7a2ac8ab81660733530f4d7f7535ed7341197c0b6 Priority: optional Homepage: https://metacpan.org/release/Class-Data-Inheritable Description: Inheritable, overridable class data Class::Data::Inheritable is for creating accessor/mutators to class data. That is, if you want to store something about your class as a whole (instead of about a single object). This data is then inherited by your subclasses and can be overridden. . For example: . Pere::Ubu->mk_classdata('Suitcase'); . will generate the method Suitcase() in the class Pere::Ubu. . This new method can be used to get and set a piece of class data. . Pere::Ubu->Suitcase('Red'); $suitcase = Pere::Ubu->Suitcase; . The interesting part happens when a class inherits from Pere::Ubu: . package Raygun; use base qw(Pere::Ubu); . # Raygun's suitcase is Red. $suitcase = Raygun->Suitcase; . Raygun inherits its Suitcase class data from Pere::Ubu. . Inheritance of class data works analogous to method inheritance. As long as Raygun does not "override" its inherited class data (by using Suitcase() to set a new value) it will continue to use whatever is set in Pere::Ubu and inherit further changes: . # Both Raygun's and Pere::Ubu's suitcases are now Blue Pere::Ubu->Suitcase('Blue'); . However, should Raygun decide to set its own Suitcase() it has now "overridden" Pere::Ubu and is on its own, just like if it had overridden a method: . # Raygun has an orange suitcase, Pere::Ubu's is still Blue. Raygun->Suitcase('Orange'); . Now that Raygun has overridden Pere::Ubu further changes by Pere::Ubu no longer effect Raygun. . # Raygun still has an orange suitcase, but Pere::Ubu is using Samsonite. Pere::Ubu->Suitcase('Samsonite'); Package: perl-devel-stacktrace Version: 2.04-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 113 Filename: all/perl-devel-stacktrace_2.04-26.4_all.deb Size: 28368 MD5sum: 6d5f7f94dcbb7da2d25367e052ca1d4d SHA1: 051351ab33e24ea22b826f1fc42fcd2aa98bcb13 SHA256: bfc48551c87a50c47df4e91cd5f4967f65d3b31c50a62c3589dcda8eac255cd8 Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/Devel-StackTrace Description: An object representing a stack trace The 'Devel::StackTrace' module contains two classes, 'Devel::StackTrace' and Devel::StackTrace::Frame. These objects encapsulate the information that can retrieved via Perl's 'caller' function, as well as providing a simple interface to this data. . The 'Devel::StackTrace' object contains a set of 'Devel::StackTrace::Frame' objects, one for each level of the stack. The frames contain all the data available from 'caller'. . This code was created to support my Exception::Class::Base class (part of Exception::Class) but may be useful in other contexts. Package: perl-devel-symdump Version: 2.18-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 76 Depends: perl Filename: all/perl-devel-symdump_2.18-26.4_all.deb Size: 14344 MD5sum: e6e0d55b096abc0297ca74ad0278f84d SHA1: 80ee50439fea3359fa17e6b0ca1e294fab9c4429 SHA256: a84d00c1576cfefa7ac5a0016e1fb760a121418d116209af2861b33085a9d51a Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Devel-Symdump/ Description: Dump Symbol Names or the Symbol Table This little package serves to access the symbol table of perl. Package: perl-exception-class Version: 1.45-26.8 Architecture: all Maintainer: Uyuni packagers Installed-Size: 142 Depends: perl-class-data-inheritable,perl-devel-stacktrace Filename: all/perl-exception-class_1.45-26.8_all.deb Size: 38984 MD5sum: fd6e45a7c997622f554131d49b0c1fc9 SHA1: ea1e3c7056a81cf1b3129a9a5dd36f568b49bcfe SHA256: f596bf04e11041894fb1e7654cef33d344f882c29f2f1151d6a9b118783d2a16 Priority: optional Homepage: https://metacpan.org/release/Exception-Class Description: Module that allows you to declare real exception classes in Perl *RECOMMENDATION 1*: If you are writing modern Perl code with Moose or Moo I highly recommend using Throwable instead of this module. . *RECOMMENDATION 2*: Whether or not you use Throwable, you should use Try::Tiny. . Exception::Class allows you to declare exception hierarchies in your modules in a "Java-esque" manner. . It features a simple interface allowing programmers to 'declare' exception classes at compile time. It also has a base exception class, Exception::Class::Base, that can be easily extended. . It is designed to make structured exception handling simpler and better by encouraging people to use hierarchies of exceptions in their applications, as opposed to a single catch-all exception class. . This module does not implement any try/catch syntax. Please see the "OTHER EXCEPTION MODULES (try/catch syntax)" section for more information on how to get this syntax. . You will also want to look at the documentation for Exception::Class::Base, which is the default base class for all exception objects created by this module. Package: perl-extutils-cbuilder Version: 0.280236-25.12 Architecture: all Maintainer: Uyuni packagers Installed-Size: 155 Depends: perl,perl-ipc-cmd,perl-perl-ostype Filename: all/perl-extutils-cbuilder_0.280236-25.12_all.deb Size: 39130 MD5sum: 31aabe7203eb0479f8ef3f6a008da29d SHA1: 311d136025929825512226d8c282eca7f0522502 SHA256: e7e6aa140819aaefe8a94372512311ebb25f93fdbb4fa1358c66f7411306f9cc Priority: optional Homepage: https://metacpan.org/release/ExtUtils-CBuilder Description: Compile and link C code for Perl modules This module can build the C portions of Perl modules by invoking the appropriate compilers and linkers in a cross-platform manner. It was motivated by the 'Module::Build' project, but may be useful for other purposes as well. However, it is _not_ intended as a general cross-platform interface to all your C building needs. That would have been a much more ambitious goal! Package: perl-extutils-makemaker Version: 7.66-11.5 Architecture: all Maintainer: Uyuni packagers Installed-Size: 890 Filename: all/perl-extutils-makemaker_7.66-11.5_all.deb Size: 304136 MD5sum: 044ab2d8b04e8c7cb9a9806288a0106e SHA1: 02bc14f635e266237632a15642d7e77fb1701077 SHA256: 05d033587420a32e7d973bcbb6eaf91d3d9df917c1b4adeaba6bb0a98a5b9d58 Priority: optional Homepage: https://metacpan.org/release/ExtUtils-MakeMaker Description: Create a module Makefile This utility is designed to write a Makefile for an extension module from a Makefile.PL. It is based on the Makefile.SH model provided by Andy Dougherty and the perl5-porters. . It splits the task of generating the Makefile into several subroutines that can be individually overridden. Each subroutine returns the text it wishes to have written to the Makefile. . As there are various Make programs with incompatible syntax, which use operating system shells, again with incompatible syntax, it is important for users of this module to know which flavour of Make a Makefile has been written for so they'll use the correct one and won't have to face the possibly bewildering errors resulting from using the wrong one. . On POSIX systems, that program will likely be GNU Make; on Microsoft Windows, it will be either Microsoft NMake, DMake or GNU Make. See the section on the L parameter for details. . ExtUtils::MakeMaker (EUMM) is object oriented. Each directory below the current directory that contains a Makefile.PL is treated as a separate object. This makes it possible to write an unlimited number of Makefiles with a single invocation of WriteMakefile(). . All inputs to WriteMakefile are Unicode characters, not just octets. EUMM seeks to handle all of these correctly. It is currently still not possible to portably use Unicode characters in module names, because this requires Perl to handle Unicode filenames, which is not yet the case on Windows. . See L for details of the design and usage. Package: perl-extutils-pkgconfig Version: 1.160000-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 61 Depends: pkg-config Provides: libextutils-pkgconfig-perl (= 1.160000-26.4) Filename: all/perl-extutils-pkgconfig_1.160000-26.4_all.deb Size: 10414 MD5sum: 10d7f2f57614b54aa43f47f77f76a658 SHA1: d34bee94cc360acb41c9c3eff199b10bf8bc7206 SHA256: d1fb4567df55c3ff049925f9fb6ef10e0567cc963f77c4e015ae1539e5dedbf3 Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/ExtUtils-PkgConfig/ Description: Simplistic Interface to Pkg-Config The pkg-config program retrieves information about installed libraries, usually for the purposes of compiling against and linking to them. . ExtUtils::PkgConfig is a very simplistic interface to this utility, intended for use in the Makefile.PL of perl extensions which bind libraries that pkg-config knows. It is really just boilerplate code that you would've written yourself. Package: perl-file-path Version: 2.180000-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 107 Provides: libfile-path-perl (= 2.180000-26.4) Filename: all/perl-file-path_2.180000-26.4_all.deb Size: 30568 MD5sum: ed07881d9d8f748b1c946618cbf375f7 SHA1: 623cb501337377b867cfec90300e735bb5924003 SHA256: dcd0e21d673e91511ed6e3c8b9f710ccd7cbbeb709ddecd630639925c9863d33 Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/File-Path Description: Create or remove directory trees This module provides a convenient way to create directories of arbitrary depth and to delete an entire directory subtree from the filesystem. Package: perl-file-temp Version: 0.2311-26.6 Architecture: all Maintainer: Uyuni packagers Installed-Size: 207 Depends: perl-file-path,perl-parent Filename: all/perl-file-temp_0.2311-26.6_all.deb Size: 53230 MD5sum: a2e3dda7e424fef709a04c89b9d72c61 SHA1: 76d063311a178d51c2fda1f87a813c67c8dd2510 SHA256: 221d4f9fef6cadd374cacd2840eb77a4b69a9d83100ca8e8b9a83571a6e78ab8 Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/File-Temp Description: Return name and handle of a temporary file safely 'File::Temp' can be used to create and open temporary files in a safe way. There is both a function interface and an object-oriented interface. The File::Temp constructor or the tempfile() function can be used to return the name and the open filehandle of a temporary file. The tempdir() function can be used to create a temporary directory. . The security aspect of temporary file creation is emphasized such that a filehandle and filename are returned together. This helps guarantee that a race condition can not occur where the temporary file is created by another process between checking for the existence of the file and its opening. Additional security levels are provided to check, for example, that the sticky bit is set on world writable directories. See "safe_level" for more information. . For compatibility with popular C library functions, Perl implementations of the mkstemp() family of functions are provided. These are, mkstemp(), mkstemps(), mkdtemp() and mktemp(). . Additionally, implementations of the standard POSIX tmpnam() and tmpfile() functions are provided if required. . Implementations of mktemp(), tmpnam(), and tempnam() are provided, but should be used with caution since they return only a filename that was valid when function was called, so cannot guarantee that the file will not exist by the time the caller opens the filename. . Filehandles returned by these functions support the seekable methods. Package: perl-ipc-cmd Version: 1.04-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 127 Depends: perl Filename: all/perl-ipc-cmd_1.04-26.4_all.deb Size: 32956 MD5sum: 773cbf45c8c51fe787a6517e555e4275 SHA1: 1cf4bda9b2bae797ac8cbd37a920521aa183efae SHA256: d8cce3d1d3d188d171b7998ee3c206a8abe475537a3771359e1adf06775c02eb Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/IPC-Cmd Description: Finding and running system commands made easy IPC::Cmd allows you to run commands platform independently, interactively if desired, but have them still work. . The 'can_run' function can tell you if a certain binary is installed and if so where, whereas the 'run' function can actually execute any of the commands you give it and give you a clear return value, as well as adhere to your verbosity settings. Package: perl-lua-api Version: 0.04-27.39 Architecture: i386 Maintainer: Uyuni packagers Installed-Size: 634 Depends: perl-base,liblua5-1-5,libc6 Filename: i386/perl-lua-api_0.04-27.39_i386.deb Size: 153356 MD5sum: 0e15936bd8663cbcfc61c8ba1cef06be SHA1: 881c26b5a3d71504e87309791ef6997577173487 SHA256: d610904ba10d9ac27343949ed0ab0e2c2617db52d047b1ff90a019be7a96fa8b Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/Lua-API Description: Interface to Lua's embedding API *Lua* is a simple, expressive, extension programming language that is easily embeddable. *Lua::API* provides Perl bindings to Lua's C-based embedding API. It allows Perl routines to be called from Lua as if they were written in C, and allows Perl routines to directly manipulate the Lua interpreter and its environment. It presents a very low-level interface (essentially equivalent to the C interface), so is aimed at developers who need that sort of access. . *Lua::API* is not the first place to turn to if you need a simple, more Perl-ish interface; for that, try *Inline::Lua*, which takes a much higher level approach and masks most of the underlying complexity in communicating between Lua and Perl. Unfortunately by hiding the complexity, this approach also prevents full operability. For *Inline::Lua* this is a necessary tradeoff, but it does mean that you cannot create as tight an integration with Lua. Package: perl-lua-api Version: 0.04-27.39 Architecture: amd64 Maintainer: Uyuni packagers Installed-Size: 759 Depends: perl-base,liblua5-1-5,libc6 Filename: amd64/perl-lua-api_0.04-27.39_amd64.deb Size: 165382 MD5sum: ae1b7565969c667ff2c0e7f6daa8a975 SHA1: e8376f3fc0fbc6db643d68f10f7625324236e334 SHA256: eb6f9f6d8b5c127b9b7a3dc0ce9a30f35f7a75eb48f38bdac16d0827ab44050c Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/Lua-API Description: Interface to Lua's embedding API *Lua* is a simple, expressive, extension programming language that is easily embeddable. *Lua::API* provides Perl bindings to Lua's C-based embedding API. It allows Perl routines to be called from Lua as if they were written in C, and allows Perl routines to directly manipulate the Lua interpreter and its environment. It presents a very low-level interface (essentially equivalent to the C interface), so is aimed at developers who need that sort of access. . *Lua::API* is not the first place to turn to if you need a simple, more Perl-ish interface; for that, try *Inline::Lua*, which takes a much higher level approach and masks most of the underlying complexity in communicating between Lua and Perl. Unfortunately by hiding the complexity, this approach also prevents full operability. For *Inline::Lua* this is a necessary tradeoff, but it does mean that you cannot create as tight an integration with Lua. Package: perl-module-build Version: 0.423400-29.12 Architecture: all Maintainer: Uyuni packagers Installed-Size: 733 Depends: perl,perl-extutils-cbuilder,perl-base,perl-module-metadata,perl-perl-ostype Recommends: libextutils-manifest-perl (>= 1.54) Provides: libmodule-build-perl (= 0.423400-29.12) Filename: all/perl-module-build_0.423400-29.12_all.deb Size: 251670 MD5sum: 3cbc753ac1727aaa83d934f896c22eca SHA1: 1a2d4902230ae2c0bf01690cbf8d50651fd0b1ef SHA256: 83cd02078661c44ade8719779a45238f5a2eb21bfb0f582ba425608bcc9b5d66 Priority: optional Homepage: https://metacpan.org/release/Module-Build Description: Build and install Perl modules 'Module::Build' is a system for building, testing, and installing Perl modules. It is meant to be an alternative to 'ExtUtils::MakeMaker'. Developers may alter the behavior of the module through subclassing. It also does not require a 'make' on your system - most of the 'Module::Build' code is pure-perl and written in a very cross-platform way. . See "COMPARISON" for more comparisons between 'Module::Build' and other installer tools. . To install 'Module::Build', and any other module that uses 'Module::Build' for its installation process, do the following: . perl Build.PL # 'Build.PL' script creates the 'Build' script ./Build # Need ./ to ensure we're using this "Build" script ./Build test # and not another one that happens to be in the PATH ./Build install . This illustrates initial configuration and the running of three 'actions'. In this case the actions run are 'build' (the default action), 'test', and 'install'. Other actions defined so far include: . build manifest clean manifest_skip code manpages config_data pardist diff ppd dist ppmdist distcheck prereq_data distclean prereq_report distdir pure_install distinstall realclean distmeta retest distsign skipcheck disttest test docs testall fakeinstall testcover help testdb html testpod install testpodcoverage installdeps versioninstall . You can run the 'help' action for a complete list of actions. Package: perl-module-metadata Version: 1.000038-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 111 Depends: perl Filename: all/perl-module-metadata_1.000038-26.4_all.deb Size: 29636 MD5sum: 6aa410705fcd81d6f04cae53a3771e46 SHA1: 55364851574ecc7324691e259dd883117324f8bd SHA256: 0097b7275907f1b703dc1079764629eedd4c45ac3aad614d8fecdf673bfcb3d4 Priority: optional Homepage: https://metacpan.org/release/Module-Metadata Description: Gather package and POD information from perl module files This module provides a standard way to gather metadata about a .pm file through (mostly) static analysis and (some) code execution. When determining the version of a module, the '$VERSION' assignment is 'eval'ed, as is traditional in the CPAN toolchain. Package: perl-module-runtime Version: 0.016-26.20 Architecture: all Maintainer: Uyuni packagers Installed-Size: 74 Filename: all/perl-module-runtime_0.016-26.20_all.deb Size: 18288 MD5sum: 127cd7581fb6a364a7bd1d91c2585897 SHA1: 9277659561ff4522fce39c78bb192eac8da10695 SHA256: b558914c5d916b237e15fd13030b0e8548665dadc36b137f6efb0fb03f17aef2 Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Module-Runtime/ Description: Runtime Module Handling The functions exported by this module deal with runtime handling of Perl modules, which are normally handled at compile time. This module avoids using any other modules, so that it can be used in low-level infrastructure. . The parts of this module that work with module names apply the same syntax that is used for barewords in Perl source. In principle this syntax can vary between versions of Perl, and this module applies the syntax of the Perl on which it is running. In practice the usable syntax hasn't changed yet. There's some intent for Unicode module names to be supported in the future, but this hasn't yet amounted to any consistent facility. . The functions of this module whose purpose is to load modules include workarounds for three old Perl core bugs regarding 'require'. These workarounds are applied on any Perl version where the bugs exist, except for a case where one of the bugs cannot be adequately worked around in pure Perl. Package: perl-mro-compat Version: 0.15-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 81 Filename: all/perl-mro-compat_0.15-26.4_all.deb Size: 17034 MD5sum: aacdece22ca0d0be86fd9c90d0dbdc0a SHA1: 06d21877fa7592c3f8099771383d2f9909797bb1 SHA256: 8b49ac664d78c8f22301e22ff003dd74244bcfd7abeec2692bde5c0f188e0f29 Priority: optional Homepage: https://metacpan.org/release/MRO-Compat Description: Mro::* interface compatibility for Perls < 5.9.5 The "mro" namespace provides several utilities for dealing with method resolution order and method caching in general in Perl 5.9.5 and higher. . This module provides those interfaces for earlier versions of Perl (back to 5.6.0 anyways). . It is a harmless no-op to use this module on 5.9.5+. That is to say, code which properly uses MRO::Compat will work unmodified on both older Perls and 5.9.5+. . If you're writing a piece of software that would like to use the parts of 5.9.5+'s mro:: interfaces that are supported here, and you want compatibility with older Perls, this is the module for you. . Some parts of this code will work better and/or faster with Class::C3::XS installed (which is an optional prereq of Class::C3, which is in turn a prereq of this package), but it's not a requirement. . This module never exports any functions. All calls must be fully qualified with the 'mro::' prefix. . The interface documentation here serves only as a quick reference of what the function basically does, and what differences between MRO::Compat and 5.9.5+ one should look out for. The main docs in 5.9.5's mro are the real interface docs, and contain a lot of other useful information. Package: perl-parent Version: 0.241-1.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 48 Filename: all/perl-parent_0.241-1.4_all.deb Size: 8814 MD5sum: f80d49b0fc182436d82777c40c9745b4 SHA1: 7784268c4c72be096a6f399665062906881ef762 SHA256: 9924aaf1c53133e1a4fada13df182d0edbbf21325350bdd52d2eafdc972532c8 Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/parent Description: Establish an ISA relationship with base classes at compile time Allows you to both load one or more modules, while setting up inheritance from those modules at the same time. Mostly similar in effect to . package Baz; BEGIN { require Foo; require Bar; push @ISA, qw(Foo Bar); } . By default, every base class needs to live in a file of its own. If you want to have a subclass and its parent class in the same file, you can tell 'parent' not to load any modules by using the '-norequire' switch: . package Foo; sub exclaim { "I CAN HAS PERL" } . package DoesNotLoadFooBar; use parent -norequire, 'Foo', 'Bar'; # will not go looking for Foo.pm or Bar.pm . This is equivalent to the following code: . package Foo; sub exclaim { "I CAN HAS PERL" } . package DoesNotLoadFooBar; push @DoesNotLoadFooBar::ISA, 'Foo', 'Bar'; . This is also helpful for the case where a package lives within a differently named file: . package MyHash; use Tie::Hash; use parent -norequire, 'Tie::StdHash'; . This is equivalent to the following code: . package MyHash; require Tie::Hash; push @ISA, 'Tie::StdHash'; . If you want to load a subclass from a file that 'require' would not consider an eligible filename (that is, it does not end in either '.pm' or '.pmc'), use the following code: . package MySecondPlugin; require './plugins/custom.plugin'; # contains Plugin::Custom use parent -norequire, 'Plugin::Custom'; Package: perl-perl-ostype Version: 1.010-26.5 Architecture: all Maintainer: Uyuni packagers Installed-Size: 74 Filename: all/perl-perl-ostype_1.010-26.5_all.deb Size: 15084 MD5sum: f52caf903e19a924ea6a35769c95253c SHA1: 2d69202f7129ad1ee0fd15c8af6d3ab6891a2493 SHA256: 4c1f4c0e8dc7400754f92b46216aa53ab3a4284f23aa8483800c7cf9a918a492 Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Perl-OSType/ Description: Map Perl operating system names to generic types Modules that provide OS-specific behaviors often need to know if the current operating system matches a more generic type of operating systems. For example, 'linux' is a type of 'Unix' operating system and so is 'freebsd'. . This module provides a mapping between an operating system name as given by '$^O' and a more generic type. The initial version is based on the OS type mappings provided in Module::Build and ExtUtils::CBuilder. (Thus, Microsoft operating systems are given the type 'Windows' rather than 'Win32'.) Package: perl-pod-coverage Version: 0.23-28.8 Architecture: all Maintainer: Uyuni packagers Installed-Size: 85 Depends: perl-devel-symdump,perl Filename: all/perl-pod-coverage_0.23-28.8_all.deb Size: 18984 MD5sum: 0ca5067a42f84026c001a0aa5f2e2f79 SHA1: df58d46618f73bbf96be53bfa44ff2b179c649cc SHA256: 1b99358ec7e51b9640005f193dd1aed7bda034d8aef132c3ca3fe705f007412a Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/Pod-Coverage Description: Checks if the documentation of a module is comprehensive Developers hate writing documentation. They'd hate it even more if their computer tattled on them, but maybe they'll be even more thankful in the long run. Even if not, _perlmodstyle_ tells you to, so you must obey. . This module provides a mechanism for determining if the pod for a given module is comprehensive. . It expects to find either a '=head(n>1)' or an '=item' block documenting a subroutine. . Consider: # an imaginary Foo.pm package Foo; . =item foo . The foo sub . = cut . sub foo {} sub bar {} . 1; __END__ . In this example 'Foo::foo' is covered, but 'Foo::bar' is not, so the 'Foo' package is only 50% (0.5) covered Package: perl-sub-uplevel Version: 0.2800-25.23 Architecture: all Maintainer: Uyuni packagers Installed-Size: 112 Filename: all/perl-sub-uplevel_0.2800-25.23_all.deb Size: 22058 MD5sum: 0f24fafd21d0836707f7509b9e198926 SHA1: 8c3cfe7daba0e310db0c9649783912d05eb1ad7a SHA256: 7b8dcbf0b289832b7f65b60a755c79f987739911eb41bb09f336dac8fab0156f Section: Development/Libraries/Perl Priority: optional Homepage: https://metacpan.org/release/Sub-Uplevel Description: Apparently run a function in a higher stack frame Like Tcl's uplevel() function, but not quite so dangerous. The idea is just to fool caller(). All the really naughty bits of Tcl's uplevel() are avoided. Package: perl-test-class Version: 0.52-26.30 Architecture: all Maintainer: Uyuni packagers Installed-Size: 208 Depends: perl-mro-compat,perl-module-runtime,perl,perl-try-tiny Filename: all/perl-test-class_0.52-26.30_all.deb Size: 56502 MD5sum: 37690fe3559c04761a03d8ec06ba5de8 SHA1: d1f83338c3f945d9356aca56ea50235cff0dda87 SHA256: bdc3c2ecb70891f5d83a4b7962c05b2ffe0f9120039a71f2abdd04e28e8a248b Priority: optional Homepage: https://metacpan.org/release/Test-Class Description: Easily create test classes in an xUnit/JUnit style Test::Class provides a simple way of creating classes and objects to test your code in an xUnit style. . Built using Test::Builder, it was designed to work with other Test::Builder based modules (Test::More, Test::Differences, Test::Exception, etc.). . _Note:_ This module will make more sense, if you are already familiar with the "standard" mechanisms for testing perl code. Those unfamiliar with Test::Harness, Test::Simple, Test::More and friends should go take a look at them now. Test::Tutorial is a good starting point. Package: perl-test-compile Version: 3.3.1-26.18 Architecture: all Maintainer: Uyuni packagers Installed-Size: 86 Depends: perl-base,perl-parent Provides: libtest-compile-perl (= 3.3.1-26.18),libtest-compile-internal-perl (= 3.3.1-26.18) Filename: all/perl-test-compile_3.3.1-26.18_all.deb Size: 21370 MD5sum: 53fd599e7a5d36900a92f05f07318b50 SHA1: d8bd09db21296e3ab2a42bf0e6f443008dc4d3a8 SHA256: 61b77f4fc26bb2bccbd4036a48e5b4fd1db0e8874fd0104a5a80cc3ec8d446b3 Priority: optional Homepage: https://metacpan.org/release/Test-Compile Description: Assert that your Perl files compile OK 'Test::Compile' lets you check the whether your perl modules and scripts compile properly, results are reported in standard 'Test::Simple' fashion. . The basic usage - as shown above, will locate your perl files and test that they all compile. . Module authors can (and probably should) include the following in a _t/00-compile.t_ file and have 'Test::Compile' automatically find and check all Perl files in a module distribution: . #!perl use strict; use warnings; use Test::Compile qw(); . my $test = Test::Compile->new(); $test->all_files_ok(); $test->done_testing(); Package: perl-test-deep Version: 1.204-27.7 Architecture: all Maintainer: Uyuni packagers Installed-Size: 353 Depends: perl Filename: all/perl-test-deep_1.204-27.7_all.deb Size: 87820 MD5sum: 8edf8e0e30cd43e45d0cd0e66e424c99 SHA1: 24fe257e740bf945bfcd2fcae7c251cf0cefac98 SHA256: 82fb089aeb91b26ac8db7386346ecedc4cff150a009e287b2e15db9e844c39a0 Priority: optional Homepage: https://metacpan.org/release/Test-Deep Description: Extremely flexible deep comparison If you don't know anything about automated testing in Perl then you should probably read about Test::Simple and Test::More before preceding. Test::Deep uses the Test::Builder framework. . Test::Deep gives you very flexible ways to check that the result you got is the result you were expecting. At its simplest it compares two structures by going through each level, ensuring that the values match, that arrays and hashes have the same elements and that references are blessed into the correct class. It also handles circular data structures without getting caught in an infinite loop. . Where it becomes more interesting is in allowing you to do something besides simple exact comparisons. With strings, the 'eq' operator checks that 2 strings are exactly equal but sometimes that's not what you want. When you don't know exactly what the string should be but you do know some things about how it should look, 'eq' is no good and you must use pattern matching instead. Test::Deep provides pattern matching for complex data structures . Test::Deep has *_a lot_* of exports. See EXPORTS below. Package: perl-test-differences Version: 0.710.0-26.9 Architecture: all Maintainer: Uyuni packagers Installed-Size: 73 Depends: perl-capture-tiny,perl,perl-text-diff Provides: libtest-differences-perl (= 0.710.0-26.9) Filename: all/perl-test-differences_0.710.0-26.9_all.deb Size: 18302 MD5sum: 54c3972ea12d5e83f888d1922efb3d09 SHA1: aa500f121a8905bf6196da9635199118b3b6b1f2 SHA256: f98718f94e159ad11e31a6fbd1b36174d6317f945f1d9c6a3ca80f34cc2883fe Priority: optional Homepage: https://metacpan.org/release/Test-Differences Description: Test strings and data structures and show differences if not ok When the code you're testing returns multiple lines, records or data structures and they're just plain wrong, an equivalent to the Unix 'diff' utility may be just what's needed. Here's output from an example test script that checks two text documents and then two (trivial) data structures: . t/99example....1..3 not ok 1 - differences in text # Failed test ((eval 2) at line 14) # +---+----------------+----------------+ # | Ln|Got |Expected | # +---+----------------+----------------+ # | 1|this is line 1 |this is line 1 | # * 2|this is line 2 |this is line b * # | 3|this is line 3 |this is line 3 | # +---+----------------+----------------+ not ok 2 - differences in whitespace # Failed test ((eval 2) at line 20) # +---+------------------+------------------+ # | Ln|Got |Expected | # +---+------------------+------------------+ # | 1| indented | indented | # * 2| indented |\tindented * # | 3| indented | indented | # +---+------------------+------------------+ not ok 3 # Failed test ((eval 2) at line 22) # +----+-------------------------------------+----------------------------+ # | Elt|Got |Expected | # +----+-------------------------------------+----------------------------+ # * 0|bless( [ |[ * # * 1| 'Move along, nothing to see here' | 'Dry, humorless message' * # * 2|], 'Test::Builder' ) |] * # +----+-------------------------------------+----------------------------+ # Looks like you failed 3 tests of 3. . eq_or_diff_...() compares two strings or (limited) data structures and either emits an ok indication or a side-by-side diff. Test::Differences is designed to be used with Test.pm and with Test::Simple, Test::More, and other Test::Builder based testing modules. As the SYNOPSIS shows, another testing module must be used as the basis for your test suite. Package: perl-test-exception Version: 0.430000-26.22 Architecture: all Maintainer: Uyuni packagers Installed-Size: 71 Depends: perl-sub-uplevel,perl Provides: libtest-exception-perl (= 0.430000-26.22) Filename: all/perl-test-exception_0.430000-26.22_all.deb Size: 18044 MD5sum: f5b56b4161ca8cefa3ec6322209f1da8 SHA1: 08c300c86340e437568d7cd9d484750038ce8b32 SHA256: 82b2dc53bbbbc35accbc32b3f1ce6d8007a0e3cf9f14a5cf02a518e80d4195ca Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Test-Exception/ Description: Test exception-based code This module provides a few convenience methods for testing exception based code. It is built with Test::Builder and plays happily with Test::More and friends. . If you are not already familiar with Test::More now would be the time to go take a look. . You can specify the test plan when you 'use Test::Exception' in the same way as 'use Test::More'. See Test::More for details. . NOTE: Test::Exception only checks for exceptions. It will ignore other methods of stopping program execution - including exit(). If you have an exit() in evalled code Test::Exception will not catch this with any of its testing functions. . NOTE: This module uses Sub::Uplevel and relies on overriding 'CORE::GLOBAL::caller' to hide your test blocks from the call stack. If this use of global overrides concerns you, the Test::Fatal module offers a more minimalist alternative. . * *throws_ok* . Tests to see that a specific exception is thrown. throws_ok() has two forms: . throws_ok BLOCK REGEX, TEST_DESCRIPTION throws_ok BLOCK CLASS, TEST_DESCRIPTION . In the first form the test passes if the stringified exception matches the give regular expression. For example: . throws_ok { read_file( 'unreadable' ) } qr/No file/, 'no file'; . If your perl does not support 'qr//' you can also pass a regex-like string, for example: . throws_ok { read_file( 'unreadable' ) } '/No file/', 'no file'; . The second form of throws_ok() test passes if the exception is of the same class as the one supplied, or a subclass of that class. For example: . throws_ok { $foo->bar } "Error::Simple", 'simple error'; . Will only pass if the 'bar' method throws an Error::Simple exception, or a subclass of an Error::Simple exception. . You can get the same effect by passing an instance of the exception you want to look for. The following is equivalent to the previous example: . my $SIMPLE = Error::Simple->new; throws_ok { $foo->bar } $SIMPLE, 'simple error'; . Should a throws_ok() test fail it produces appropriate diagnostic messages. For example: . not ok 3 - simple error # Failed test (test.t at line 48) # expecting: Error::Simple exception # found: normal exit . Like all other Test::Exception functions you can avoid prototypes by passing a subroutine explicitly: . throws_ok( sub {$foo->bar}, "Error::Simple", 'simple error' ); . A true value is returned if the test succeeds, false otherwise. On exit $@ is guaranteed to be the cause of death (if any). . A description of the exception being checked is used if no optional test description is passed. . NOTE: Remember when you 'die $string_without_a_trailing_newline' perl will automatically add the current script line number, input line number and a newline. This will form part of the string that throws_ok regular expressions match against. . * *dies_ok* . Checks that a piece of code dies, rather than returning normally. For example: . sub div { my ( $a, $b ) = @_; return $a / $b; }; . dies_ok { div( 1, 0 ) } 'divide by zero detected'; . # or if you don't like prototypes dies_ok( sub { div( 1, 0 ) }, 'divide by zero detected' ); . A true value is returned if the test succeeds, false otherwise. On exit $@ is guaranteed to be the cause of death (if any). . Remember: This test will pass if the code dies for any reason. If you care about the reason it might be more sensible to write a more specific test using throws_ok(). . The test description is optional, but recommended. . * *lives_ok* . Checks that a piece of code doesn't die. This allows your test script to continue, rather than aborting if you get an unexpected exception. For example: . sub read_file { my $file = shift; local $/; open my $fh, '<', $file or die "open failed ($!)\n"; $file = ; return $file; }; . my $file; lives_ok { $file = read_file('test.txt') } 'file read'; . # or if you don't like prototypes lives_ok( sub { $file = read_file('test.txt') }, 'file read' ); . Should a lives_ok() test fail it produces appropriate diagnostic messages. For example: . not ok 1 - file read # Failed test (test.t at line 15) # died: open failed (No such file or directory) . A true value is returned if the test succeeds, false otherwise. On exit $@ is guaranteed to be the cause of death (if any). . The test description is optional, but recommended. . * *lives_and* . Run a test that may throw an exception. For example, instead of doing: . my $file; lives_ok { $file = read_file('answer.txt') } 'read_file worked'; is $file, "42", 'answer was 42'; . You can use lives_and() like this: . lives_and { is read_file('answer.txt'), "42" } 'answer is 42'; # or if you don't like prototypes lives_and(sub {is read_file('answer.txt'), "42"}, 'answer is 42'); . Which is the same as doing . is read_file('answer.txt'), "42\n", 'answer is 42'; . unless 'read_file('answer.txt')' dies, in which case you get the same kind of error as lives_ok() . not ok 1 - answer is 42 # Failed test (test.t at line 15) # died: open failed (No such file or directory) . A true value is returned if the test succeeds, false otherwise. On exit $@ is guaranteed to be the cause of death (if any). . The test description is optional, but recommended. Package: perl-test-most Version: 0.38-26.30 Architecture: all Maintainer: Uyuni packagers Installed-Size: 87 Depends: perl-exception-class,perl-test-deep,perl-test-differences,perl-test-exception,perl,perl-test-warn Filename: all/perl-test-most_0.38-26.30_all.deb Size: 23270 MD5sum: cf5beb26fbe4a888a5ecb43da045154e SHA1: 10413b227ab2d6d853ef88d381ce767405db468a SHA256: 3fc7ff183bf5ed70ff05cc6896ca78bd6d1cce9f29d91490cbeffd65e2bdba38 Priority: optional Homepage: https://metacpan.org/release/Test-Most Description: Most commonly needed test functions and features Test::Most exists to reduce boilerplate and to make your testing life easier. We provide "one stop shopping" for most commonly used testing modules. In fact, we often require the latest versions so that you get bug fixes through Test::Most and don't have to keep upgrading these modules separately. . This module provides you with the most commonly used testing functions, along with automatically turning on strict and warning and gives you a bit more fine-grained control over your test suite. . use Test::Most tests => 4, 'die'; . ok 1, 'Normal calls to ok() should succeed'; is 2, 2, '... as should all passing tests'; eq_or_diff [3], [4], '... but failing tests should die'; ok 4, '... will never get to here'; . As you can see, the 'eq_or_diff' test will fail. Because 'die' is in the import list, the test program will halt at that point. . If you do not want strict and warnings enabled, you must explicitly disable them. Thus, you must be explicit about what you want and no longer need to worry about accidentally forgetting them. . use Test::Most tests => 4; no strict; no warnings; Package: perl-test-pod Version: 1.52-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 62 Depends: perl Filename: all/perl-test-pod_1.52-26.4_all.deb Size: 13210 MD5sum: 03aa69ba2f833d3c893ac53fccd3f468 SHA1: 2ce70509189872d558105de2f6a7784bce717fd2 SHA256: 114db20200a41d667f590565c71afb56dd1d1fa6ae2ea0489da4611b6aa2802a Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Test-Pod/ Description: Check for Pod Errors in Files Check POD files for errors or warnings in a test file, using 'Pod::Simple' to do the heavy lifting. Package: perl-test-pod-coverage Version: 1.10-27.11 Architecture: all Maintainer: Uyuni packagers Installed-Size: 61 Depends: perl-pod-coverage Filename: all/perl-test-pod-coverage_1.10-27.11_all.deb Size: 10846 MD5sum: a543cad8f7a11e3c1754074ae3da7bd8 SHA1: f34cc68057520eabaed85e00200ec1a4c165cd3f SHA256: 500617f5af0405731841ad61e89f9c8c1a49042feb23c3da70e8332cc580d74d Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Test-Pod-Coverage/ Description: Check for pod coverage in your distribution. Test::Pod::Coverage is used to create a test for your distribution, to ensure that all relevant files in your distribution are appropriately documented in pod. . Can also be called with the Pod::Coverage manpage parms. . use Test::Pod::Coverage tests=>1; pod_coverage_ok( "Foo::Bar", { also_private => [ qr/^[A-Z_]+$/ ], }, "Foo::Bar, with all-caps functions as privates", ); . The the Pod::Coverage manpage parms are also useful for subclasses that don't re-document the parent class's methods. Here's an example from the Mail::SRS manpage. . pod_coverage_ok( "Mail::SRS" ); # No exceptions . # Define the three overridden methods. my $trustme = { trustme => [qr/^(new|parse|compile)$/] }; pod_coverage_ok( "Mail::SRS::DB", $trustme ); pod_coverage_ok( "Mail::SRS::Guarded", $trustme ); pod_coverage_ok( "Mail::SRS::Reversable", $trustme ); pod_coverage_ok( "Mail::SRS::Shortcut", $trustme ); . Alternately, you could use the Pod::Coverage::CountParents manpage, which always allows a subclass to reimplement its parents' methods without redocumenting them. For example: . my $trustparents = { coverage_class => 'Pod::Coverage::CountParents' }; pod_coverage_ok( "IO::Handle::Frayed", $trustparents ); . (The 'coverage_class' parameter is not passed to the coverage class with other parameters.) . If you want POD coverage for your module, but don't want to make Test::Pod::Coverage a prerequisite for installing, create the following as your _t/pod-coverage.t_ file: . use Test::More; eval "use Test::Pod::Coverage"; plan skip_all => "Test::Pod::Coverage required for testing pod coverage" if $@; . plan tests => 1; pod_coverage_ok( "Pod::Master::Html"); . Finally, Module authors can include the following in a _t/pod-coverage.t_ file and have 'Test::Pod::Coverage' automatically find and check all modules in the module distribution: . use Test::More; eval "use Test::Pod::Coverage 1.00"; plan skip_all => "Test::Pod::Coverage 1.00 required for testing POD coverage" if $@; all_pod_coverage_ok(); Package: perl-test-warn Version: 0.37-26.24 Architecture: all Maintainer: Uyuni packagers Installed-Size: 70 Depends: perl-carp,perl-sub-uplevel Filename: all/perl-test-warn_0.37-26.24_all.deb Size: 14734 MD5sum: 7d62cc7a530675ea01765aa678ba1748 SHA1: cafcfc49a9283922cfb80f7ee95bff15f7358e1e SHA256: 2a1073b75b83bb9e5ab2af5b9a5a76677976b167cb0641c9edc03fded3514f08 Priority: optional Homepage: https://metacpan.org/release/Test-Warn Description: Perl extension to test methods for warnings A good style of Perl programming calls for a lot of diverse regression tests. . This module provides a few convenience methods for testing warning based-code. . If you are not already familiar with the Test::More manpage now would be the time to go take a look. Package: perl-text-diff Version: 1.45-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 129 Depends: libalgorithm-diff-perl Filename: all/perl-text-diff_1.45-26.4_all.deb Size: 33296 MD5sum: ca2cc12fcb5f17884b0c07b4399898d5 SHA1: e0b93054b08739967903b81d9cea803fae156dfa SHA256: ce96c22fa1c5ff3869a68765c230d9e40465142c568411dded3432c65b678bbb Section: Development/Libraries/Perl Priority: optional Homepage: http://search.cpan.org/dist/Text-Diff/ Description: Perform diffs on files and record sets 'diff()' provides a basic set of services akin to the GNU 'diff' utility. It is not anywhere near as feature complete as GNU 'diff', but it is better integrated with Perl and available on all platforms. It is often faster than shelling out to a system's 'diff' executable for small files, and generally slower on larger files. . Relies on Algorithm::Diff for, well, the algorithm. This may not produce the same exact diff as a system's local 'diff' executable, but it will be a valid diff and comprehensible by 'patch'. We haven't seen any differences between Algorithm::Diff's logic and GNU 'diff''s, but we have not examined them to make sure they are indeed identical. . *Note*: If you don't want to import the 'diff' function, do one of the following: . use Text::Diff (); . require Text::Diff; . That's a pretty rare occurrence, so 'diff()' is exported by default. . If you pass a filename, but the file can't be read, then 'diff()' will 'croak'. Package: perl-try-tiny Version: 0.31-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 80 Filename: all/perl-try-tiny_0.31-26.4_all.deb Size: 23880 MD5sum: 2d3d82a536874e18cbd7c9a70848e514 SHA1: 31942b8da4341d2e057d7a1ba167a04df7531699 SHA256: 7b857391a623dca0070958c69f2e7266c8932620d2546c9b5cce29c9aa38bd6a Priority: optional Homepage: https://metacpan.org/release/Try-Tiny Description: Minimal try/catch with proper preservation of $@ This module provides bare bones 'try'/'catch'/'finally' statements that are designed to minimize common mistakes with eval blocks, and NOTHING else. . This is unlike TryCatch which provides a nice syntax and avoids adding another call stack layer, and supports calling 'return' from the 'try' block to return from the parent subroutine. These extra features come at a cost of a few dependencies, namely Devel::Declare and Scope::Upper which are occasionally problematic, and the additional catch filtering uses Moose type constraints which may not be desirable either. . The main focus of this module is to provide simple and reliable error handling for those having a hard time installing TryCatch, but who still want to write correct 'eval' blocks without 5 lines of boilerplate each time. . It's designed to work as correctly as possible in light of the various pathological edge cases (see BACKGROUND) and to be compatible with any style of error values (simple strings, references, objects, overloaded objects, etc). . If the 'try' block dies, it returns the value of the last statement executed in the 'catch' block, if there is one. Otherwise, it returns 'undef' in scalar context or the empty list in list context. The following examples all assign '"bar"' to '$x': . my $x = try { die "foo" } catch { "bar" }; my $x = try { die "foo" } || "bar"; my $x = (try { die "foo" }) // "bar"; . my $x = eval { die "foo" } || "bar"; . You can add 'finally' blocks, yielding the following: . my $x; try { die 'foo' } finally { $x = 'bar' }; try { die 'foo' } catch { warn "Got a die: $_" } finally { $x = 'bar' }; . 'finally' blocks are always executed making them suitable for cleanup code which cannot be handled using local. You can add as many 'finally' blocks to a given 'try' block as you like. . Note that adding a 'finally' block without a preceding 'catch' block suppresses any errors. This behaviour is consistent with using a standalone 'eval', but it is not consistent with 'try'/'finally' patterns found in other programming languages, such as Java, Python, Javascript or C#. If you learned the 'try'/'finally' pattern from one of these languages, watch out for this. Package: perl-universal-require Version: 0.19-26.4 Architecture: all Maintainer: Uyuni packagers Installed-Size: 52 Filename: all/perl-universal-require_0.19-26.4_all.deb Size: 8844 MD5sum: c1f97ddcef667ace2a3056c6e864e4b9 SHA1: d2be386db5a4b2529e904b25cc1845f8d16de1b9 SHA256: 002e6ac0d7b6050db94cd79ec141b7198721499e7f9242f6bd73e7f93cb073f5 Priority: optional Homepage: https://metacpan.org/release/UNIVERSAL-require Description: Require() modules from a variable [deprecated] Before using this module, you should look at the alternatives, some of which are listed in SEE ALSO below. . This module provides a safe mechanism for loading a module at runtime, when you have the name of the module in a variable. . If you've ever had to do this... . eval "require $module"; . to get around the bareword caveats on require(), this module is for you. It creates a universal require() class method that will work with every Perl module and its secure. So instead of doing some arcane eval() work, you can do this: . $module->require; . It doesn't save you much typing, but it'll make a lot more sense to someone who's not a ninth level Perl acolyte.