in reply to Module::Build Build.PL parameter inserted by Module::Starter - fatal error

Module::Starter defaults to ExtUtils::MakeMaker. What parameters did you call module-starter with?

I've used Module::Starter for most of my distributions and I've never encountered the described problem.

It seems release_status is populated by Module::Starter::Simple, but its value is stable, not experimental. What version of Module::Starter did you use?

map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]

Replies are listed 'Best First'.
Re^2: Module::Build Build.PL parameter inserted by Module::Starter - fatal error
by Discipulus (Canon) on Sep 03, 2025 at 12:11 UTC
    as side note ExtUtils-MakeMaker seems to accept only:  m{\A(?:stable|testing|unstable)\z}

    L*

    There are no rules, there are no thumbs..
    Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.

      That's good to know, Discipulus.

      Sep 03, 2025 at 17:56 UTC

Re^2: Module::Build Build.PL parameter inserted by Module::Starter - fatal error
by Intrepid (Curate) on Sep 02, 2025 at 23:10 UTC

    choroba said:

    I've used Module::Starter for most of my distributions and I've never encountered the described problem.

    Great, thanks for replying. First, I think there's a misinterpretation to dismiss (my fault, I'm sure). When I wrote about preferring M::B over EU:MM, I was referring to cpan deciding what to do when there are both Makefile.PL and Build.PL files present in the distro. I went back and checked my CPAN config (after writing, of course ;/) and it was set up to prefer Build.PL. No idea why.

    What parameters did you call module-starter with?
    Sorry, I'm afraid I don't recall. It was several weeks ago and it has scrolled off my bash history. Whatever I did, I ended up with both a Makefile.PL and a Build.PL file. Let's see ... just tested it, yeah, you can do that by providing
    both --eumm and --mb on the commandline. I must have done that?

    What version of Module::Starter did you use?
    $Module::Starter::VERSION == 1.78

    Sep 02, 2025 at 22:26 UTC

      G'day Intrepid,

      "Sorry, I'm afraid I don't recall. It was several weeks ago and it has scrolled off my bash history. Whatever I did, I ended up with both a Makefile.PL and a Build.PL file. Let's see ... just tested it, yeah, you can do that by providing both --eumm and --mb on the commandline. I must have done that?"

      Check your ~/.module-starter/config file. I have:

      ken@titan ~/.module-starter $ cat config | grep build builder: ExtUtils::MakeMaker

      The builder entry takes a space-separated list. Perhaps you have something like this:

      builder: ExtUtils::MakeMaker Module::Build

      I believe that would cause the "ended up with both a Makefile.PL and a Build.PL file" situation.

      — Ken

        Ken wrote:
        Check your ~/.module-starter/config file

        I didn't have such a file, I just starting in using module-starter without any config, just cli options. I've created one now, it's a good idea to have your prefs be consistent from one usage to another.

        Thanks for taking the time to comment.

        I'm gonna point out that there's a spec that recommends a filesystem location for config files. Quoting:

        $XDG_CONFIG_HOME defines the base directory relative to which user-specific configuration files should be stored. If it is either not set or empty, a default equal to $HOME/.config should be used.

        It's probably the least observed of the recommendations in that document; it's a widely defaulted-to convention to locate a dotfile or dotdir directly under the user's HOME. But after awhile this fills up ~ with many config files/dirs and arguably this is not a good thing.

            — Soren

        Sep 18, 2025 at 17:18 UTC