Security Advisories (1)
CVE-2025-30672 (2025-04-01)

Mite for Perl before 0.013000 generates code with the current working directory ('.') added to the @INC path similar to CVE-2016-1238. If an attacker can place a malicious file in current working directory, it may be loaded instead of the intended file, potentially leading to arbitrary code execution. This affects the Mite distribution itself, and other distributions that contain code generated by Mite.

NAME

Mite::Manual::Workflow - how to work with Mite

MANUAL

1. Install Mite

Only developers must have Mite installed. Install it normally from CPAN.

Do not declare Mite as a dependency. It is not needed to install your release.

2. mite init <Your::Project>

Initialize your project. Tell it your project name.

This will create a .mite directory and a shim file in lib.

3. Write your code using your mite shim.

Instead of use Mite, you should use Your::Project::Mite. The name of this file will depend on the name of your project.

Mite is a subset of Moose.

4. mite compile after each change

Mite is "compiled" in that the code must be processed after editing before you run it. This is done by running mite compile. It will create .mite.pm files for each .pm file in lib.

To make development smoother, we provide utility modules to link Mite with the normal build process. See Mite::MakeMaker and Mite::ModuleBuild for MakeMaker/Makefile.PL and Module::Build/Build.PL development respectively.

5. Make sure the .mite directory is not in your MANIFEST.

The .mite directory should not be shipped with your distribution. Add ^\.mite$ to your MANIFEST.SKIP file.

6. Make sure the mite files are in your MANIFEST.

The compiled .mite.pm files must ship with your code, so make sure they get picked up in your MANIFEST file. This should happen when you build the MANIFEST normally.

7. Ship normally

Build and ship your distribution normally. It contains everything it needs.

BUGS

Please report any bugs to https://github.com/tobyink/p5-mite/issues.

AUTHOR

Michael G Schwern <mschwern@cpan.org>.

Toby Inkster <tobyink@cpan.org>.

COPYRIGHT AND LICENCE

This software is copyright (c) 2011-2014 by Michael G Schwern.

This software is copyright (c) 2022 by Toby Inkster.

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

DISCLAIMER OF WARRANTIES

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.