1Menlo(3)              User Contributed Perl Documentation             Menlo(3)
2
3
4

NAME

6       Menlo - A CPAN client
7

DESCRIPTION

9       Menlo is a backend for cpanm 2.0, developed with the goal to replace
10       cpanm internals with a set of modules that are more flexible,
11       extensible and easier to use.
12

COMPATIBILITY

14       Menlo is developed within cpanminus git repository at "Menlo"
15       subdirectory at <https://github.com/miyagawa/cpanminus>
16
17       Menlo::CLI::Compat started off as a copy of App::cpanminus::script, but
18       will go under a big refactoring to extract all the bits out of it.
19       Hopefully the end result will be just a shim and translation layer to
20       interpret command line options.
21

MOTIVATION

23       cpanm has been a popular choice of CPAN package installer for many
24       developers, because it is lightweight, fast, and requires no
25       configuration in most environments.
26
27       Meanwhile, the way cpanm has been implemented (one God class, and all
28       modules are packaged in one script with fatpacker) makes it difficult
29       to extend, or modify the behaviors at a runtime, unless you decide to
30       fork the code or monkeypatch its hidden backend class.
31
32       cpanm also has no scriptable API or hook points, which means if you
33       want to write a tool that works with cpanm, you basically have to work
34       around its behavior by writing a shell wrapper, or parsing the output
35       of its standard out or a build log file.
36
37       Menlo will keep the best aspects of cpanm, which is dependencies free,
38       configuration free, lightweight and fast to install CPAN modules. At
39       the same time, it's impelmented as a standard perl module, available on
40       CPAN, and you can extend its behavior by either using its modular
41       interfaces, or writing plugins to hook into its behaviors.
42

FAQ

44       Dependencies free? I see many prerequisites in Menlo.
45           Menlo is a set of libraries and uses non-core CPAN modules as its
46           dependencies. App-cpanminus distribution embeds Menlo and all of
47           its runtime dependencies into a fatpacked binary, so that you can
48           install App-cpanminus or Menlo without having any CPAN client to
49           begin with.
50
51       Is Menlo a new name for cpanm?
52           Right now it's just a library name, but I'm comfortable calling
53           this a new package name for cpanm 2's backend.
54

AUTHOR

56       Tatsuhiko Miyagawa <miyagawa@bulknews.net>
57
59       2010- Tatsuhiko Miyagawa
60

LICENSE

62       This software is licensed under the same terms as Perl.
63

SEE ALSO

65       cpanm
66
67
68
69perl v5.36.0                      2023-01-20                          Menlo(3)
Impressum