Module::Install::Bundle(3) User Contributed Perl Documentation Module::Install::Bundle(3)

# [NAME](#NAME)

Module::Install::Bundle - Bundle distributions along with your distribution

# [SYNOPSIS](#SYNOPSIS)

Have your Makefile.PL read as follows:

```
  use inc::Module::Install;
  
  name      'Foo-Bar';
  all_from  'lib/Foo/Bar.pm';
  requires  'Baz' => '1.60';
  
  # one of either:
  bundle    'Baz' => '1.60';
  # OR:
  auto_bundle;
  
  WriteAll;
```

# [DESCRIPTION](#DESCRIPTION)

Module::Install::Bundle allows you to bundle a CPAN distribution within your distribution. When your end-users install your distribution, the bundled distribution will be installed along with yours, unless a newer version of the bundled distribution already exists on their local filesystem.

While bundling will increase the size of your distribution, it has several benefits:

```
  Allows installation of bundled distributions when CPAN is unavailable
  Allows installation of bundled distributions when networking is unavailable
  Allows everything your distribution needs to be packaged in one place
```

Bundling differs from auto-installation in that when it comes time to install, a bundled distribution will be installed based on the distribution bundled with your distribution, whereas with auto-installation the distribution to be installed will be acquired from CPAN and then installed.

# [METHODS](#METHODS)

- **auto\_bundle()**
  
  Takes no arguments, will bundle every distribution specified by a requires(). When you, as a module author, do a "perl Makefile.PL" the latest versions of the distributions to be bundled will be acquired from CPAN and placed in *inc/BUNDLES/*.
- bundle($name, $version)
  
  Takes a list of key/value pairs specifying a distribution name and version number. When you, as a module author, do a perl Makefile.PL the distributions that you specified with bundle() will be acquired from CPAN and placed in *inc/BUNDLES/*.
- bundle\_deps($name, $version)
  
  Same as "bundle", except that all dependencies of the bundled modules are also detected and bundled. To use this function, you need to declare the minimum supported perl version first, like this:
  
  ```
      perl_version( '5.005' );
      
  ```
- auto\_bundle\_deps
  
  Same as "auto\_bundle", except that all dependencies of the bundled modules are also detected and bundled. This function has the same constraints as bundle\_deps.

# [BUGS](#BUGS)

Please report any bugs to (patches welcome):

```
    http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Module-Install
```

# [AUTHORS](#AUTHORS)

Audrey Tang &lt;autrijus@autrijus.org&gt;

Documentation by Adam Foxson &lt;afoxson@pobox.com&gt;

# [COPYRIGHT](#COPYRIGHT)

Copyright 2003, 2004, 2005 by Audrey Tang &lt;autrijus@autrijus.org&gt;.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2026-10-24 perl v5.44.0

---

Document: Module::Install::Bundle(3pm) from perl-module-install 1.21-r11 (Chainguard OS)
Source: https://github.com/Perl-Toolchain-Gang/Module-Install
