Result:
found more than 985 distributions - search limited to the first 2001 files matching your query ( run in 4.651 )


Devel-cst

 view release on metacpan or  search on metacpan

lib/Devel/ppport.h  view on Meta::CPAN

BOL_t8_p8|5.033003||Viu
BOL_t8_pb|5.033003||Viu
BOL_tb|5.035004||Viu
BOL_tb_p8|5.033003||Viu
BOL_tb_pb|5.033003||Viu
BOM_UTF8|5.025005|5.003007|p
BOM_UTF8_FIRST_BYTE|5.019004||Viu
BOM_UTF8_TAIL|5.019004||Viu
boolSV|5.004000|5.003007|p
boot_core_builtin|5.035007||Viu
boot_core_mro|5.009005||Viu
boot_core_PerlIO|5.007002||Viu
boot_core_UNIVERSAL|5.003007||Viu

lib/Devel/ppport.h  view on Meta::CPAN

#endif

#endif

#if 'A' == 65
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xEF\xBB\xBF"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xEF\xBF\xBD"
#endif

#elif '^' == 95
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x73\x66\x73"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x73\x73\x71"
#endif

#elif '^' == 176
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x72\x65\x72"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x72\x72\x70"
#endif

 view all matches for this distribution


Developer-Dashboard

 view release on metacpan or  search on metacpan

t/13-integration-assets.t  view on Meta::CPAN

    like( $windows_smoke, qr/Get-Command dashboard -ErrorAction Stop/, 'Windows Strawberry smoke script requires a fresh PowerShell session to resolve dashboard through normal command discovery' );
    like( $windows_smoke, qr/DASHBOARD_RESTART_START/, 'Windows Strawberry smoke script prints an explicit dashboard restart marker during the fresh PowerShell bootstrap proof' );
    like( $windows_smoke, qr/New-SmokeSkillFixture/, 'Windows Strawberry smoke script creates a deterministic local smoke skill for the fresh PowerShell bootstrap proof' );
    like( $windows_smoke, qr/requires 'JSON::XS';/, 'Windows Strawberry smoke script gives the fresh-session smoke skill a cpanfile that exercises non-interactive cpanm without external CPAN churn' );
    like( $windows_smoke, qr/default>>make\.log/, 'Windows Strawberry smoke script gives the fresh-session smoke skill a Makefile that records target execution' );
    like( $windows_smoke, qr/Set-Content -Path \(Join-Path \$fixtureRoot "Makefile"\) -Encoding ASCII/, 'Windows Strawberry smoke script writes the generated fresh-session Makefile without a UTF-8 BOM that would break Windows make' );
    like( $windows_smoke, qr/DASHBOARD_SKILL_INSTALL_START/, 'Windows Strawberry smoke script prints an explicit smoke skill install marker during the fresh PowerShell bootstrap proof' );
    like( $windows_smoke, qr/dashboard restart/, 'Windows Strawberry smoke script exercises dashboard restart in the fresh PowerShell session' );
    like( $windows_smoke, qr/dashboard skills install \$env:DD_SMOKE_SKILL_SOURCE/, 'Windows Strawberry smoke script exercises local smoke skill installation in the fresh PowerShell session' );
    like( $windows_smoke, qr/dashboard skills install \$env:DD_SMOKE_SKILL_SOURCE 2>&1 \| Out-String/, 'Windows Strawberry smoke script captures the fresh-session smoke skill install transcript before surfacing any failure' );
    like( $windows_smoke, qr/dashboard restart failed with exit code \$LASTEXITCODE/, 'Windows Strawberry smoke script treats dashboard restart failures as fatal during the fresh PowerShell bootstrap proof' );

 view all matches for this distribution


Digest-BLAKE3

 view release on metacpan or  search on metacpan

ppport.h  view on Meta::CPAN

bind_match|5.003007||Viu
block_end|5.004000|5.004000|
block_gimme|5.004000|5.004000|u
blockhook_register|5.013003|5.013003|x
block_start|5.004000|5.004000|
BOM_UTF8|5.025005|5.003007|p
boolSV|5.004000|5.003007|p
boot_core_mro|5.009005||Viu
boot_core_PerlIO|5.007002||Viu
boot_core_UNIVERSAL|5.003007||Viu
_byte_dump_string|5.025006||cViu

ppport.h  view on Meta::CPAN

#endif

#endif

#if 'A' == 65
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xEF\xBB\xBF"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xEF\xBF\xBD"
#endif

#elif '^' == 95
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x73\x66\x73"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x73\x73\x71"
#endif

#elif '^' == 176
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x72\x65\x72"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x72\x72\x70"
#endif

 view all matches for this distribution


Digest-xxHash

 view release on metacpan or  search on metacpan

lib/Digest/ppport.h  view on Meta::CPAN

BOL_t8_p8|5.033003||Viu
BOL_t8_pb|5.033003||Viu
BOL_tb|5.035004||Viu
BOL_tb_p8|5.033003||Viu
BOL_tb_pb|5.033003||Viu
BOM_UTF8|5.025005|5.003007|p
BOM_UTF8_FIRST_BYTE|5.019004||Viu
BOM_UTF8_TAIL|5.019004||Viu
boolSV|5.004000|5.003007|p
boot_core_builtin|5.035007||Viu
boot_core_mro|5.009005||Viu
boot_core_PerlIO|5.007002||Viu
boot_core_UNIVERSAL|5.003007||Viu

lib/Digest/ppport.h  view on Meta::CPAN

#endif

#endif

#if 'A' == 65
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xEF\xBB\xBF"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xEF\xBF\xBD"
#endif

#elif '^' == 95
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x73\x66\x73"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x73\x73\x71"
#endif

#elif '^' == 176
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x72\x65\x72"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x72\x72\x70"
#endif

 view all matches for this distribution


Dir-TempChdir

 view release on metacpan or  search on metacpan

ppport.h  view on Meta::CPAN

BOL_t8_p8|5.033003||Viu
BOL_t8_pb|5.033003||Viu
BOL_tb|5.035004||Viu
BOL_tb_p8|5.033003||Viu
BOL_tb_pb|5.033003||Viu
BOM_UTF8|5.025005|5.003007|p
BOM_UTF8_FIRST_BYTE|5.019004||Viu
BOM_UTF8_TAIL|5.019004||Viu
boolSV|5.004000|5.003007|p
boot_core_builtin|5.035007||Viu
boot_core_mro|5.009005||Viu
boot_core_PerlIO|5.007002||Viu
boot_core_UNIVERSAL|5.003007||Viu

ppport.h  view on Meta::CPAN

#endif

#endif

#if 'A' == 65
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xEF\xBB\xBF"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xEF\xBF\xBD"
#endif

#elif '^' == 95
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x73\x66\x73"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x73\x73\x71"
#endif

#elif '^' == 176
#ifndef BOM_UTF8
#  define BOM_UTF8                       "\xDD\x72\x65\x72"
#endif

#ifndef REPLACEMENT_CHARACTER_UTF8
#  define REPLACEMENT_CHARACTER_UTF8     "\xDD\x72\x72\x70"
#endif

 view all matches for this distribution


Dist-Zilla-BeLike-CSJEWELL

 view release on metacpan or  search on metacpan

share/csjewell/skel/t/000_report_versions.t  view on Meta::CPAN

		return $self->_error("Did not provide a string to load");
	}

	# Byte order marks
	# NOTE: Keeping this here to educate maintainers
	# my %BOM = (
	#     "\357\273\277" => 'UTF-8',
	#     "\376\377"     => 'UTF-16BE',
	#     "\377\376"     => 'UTF-16LE',
	#     "\377\376\0\0" => 'UTF-32LE'
	#     "\0\0\376\377" => 'UTF-32BE',
	# );
	if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
		return $self->_error("Stream has a non UTF-8 BOM");
	} else {

		# Strip UTF-8 bom if found, we'll just ignore it
		$string =~ s/^\357\273\277//;
	}

 view all matches for this distribution


Dist-Zilla-MintingProfile-MooseXDeclare

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-MintingProfile-PLTK

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-MintingProfile-Project-OSM

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-PERLSRVDE

 view release on metacpan or  search on metacpan

lib/Dist/Zilla/PluginBundle/PERLSRVDE.pm  view on Meta::CPAN

use Dist::Zilla::Plugin::PodWeaver;
use Dist::Zilla::Plugin::Git::Contributors;
use Dist::Zilla::Plugin::PodSyntaxTests;
use Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable;
use Dist::Zilla::Plugin::Test::NoTabs;
use Dist::Zilla::Plugin::Test::NoBOM;
use Dist::Zilla::Plugin::Test::Perl::Critic;
use Dist::Zilla::Plugin::ExecDir;
use Dist::Zilla::Plugin::MetaJSON;
use Dist::Zilla::Plugin::MetaProvides::Package;
use Dist::Zilla::Plugin::ReadmeAnyFromPod;

lib/Dist/Zilla/PluginBundle/PERLSRVDE.pm  view on Meta::CPAN

        ],
        qw/
            PodSyntaxTests

            Test::NoTabs
            Test::NoBOM
            Test::Perl::Critic

            MetaJSON
            MetaProvides::Package

lib/Dist/Zilla/PluginBundle/PERLSRVDE.pm  view on Meta::CPAN

    include_authors = 1
    
    [PodSyntaxTests]
    [Test::Pod::Coverage::Configurable]
    [Test::NoTabs]
    [Test::NoBOM]
    [Test::Perl::Critic]
    
    [MetaProvides::Package]
    [MetaJSON]
    

 view all matches for this distribution


Dist-Zilla-Plugin-Bugtracker

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-Catalyst

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-ChangelogFromGit

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-CheckVersionIncrement

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-CopyFilesFromBuild

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-CycloneDX

 view release on metacpan or  search on metacpan

lib/Dist/Zilla/Plugin/CycloneDX.pm  view on Meta::CPAN

use Carp;
use Dist::Zilla::File::InMemory;
use Time::Piece;
use URI::PackageURL;

use SBOM::CycloneDX 1.08;
use SBOM::CycloneDX::Component;
use SBOM::CycloneDX::ExternalReference;
use SBOM::CycloneDX::License;
use SBOM::CycloneDX::Metadata;
use SBOM::CycloneDX::Metadata::Lifecycle;
use SBOM::CycloneDX::OrganizationalContact;
use SBOM::CycloneDX::Tools;
use SBOM::CycloneDX::Util qw/cpan_meta_to_spdx_license cyclonedx_component/;

has filename => (
	is      => 'ro',
	isa     => Str,
	lazy    => 1,

lib/Dist/Zilla/Plugin/CycloneDX.pm  view on Meta::CPAN

	x_twitter      => 'social',
	x_wiki         => 'documentation',
);

my sub make_externs($module, $resources) {
	my @externs = SBOM::CycloneDX::ExternalReference->new(type => 'documentation', url => "https://metacpan.org/pod/$module");
	if (my $tracker = $resources->{bugtracker}{web}) {
		push @externs, SBOM::CycloneDX::ExternalReference->new(type => 'issue-tracker', url => $tracker);
	}
	if (my $repo = $resources->{repository}{web}) {
		push @externs, SBOM::CycloneDX::ExternalReference->new(type => 'vcs', url => $repo);
	}
	if (my $irc = $resources->{x_IRC}) {
		my $url = ref $irc ? $irc->{url} : $irc;
		push @externs, SBOM::CycloneDX::ExternalReference->new(type => 'chat', url => $url);
	}
	for my $key (keys %simple_resource) {
		if (my $url = $resources->{$key}) {
			push @externs, SBOM::CycloneDX::ExternalReference->new(type => $simple_resource{$key}, url => $url);
		}
	}
	return sort { $a->type cmp $b->type } @externs;
}

lib/Dist/Zilla/Plugin/CycloneDX.pm  view on Meta::CPAN

	my $purl    = make_purl($meta->{name}, $meta->{version});
	my $bom_ref = sprintf '%s@%s', $meta->{name}, $meta->{version};
	my $module  = $meta->{name} =~ s/-/::/gr;
	my @externs = make_externs($module, $meta->{resources});

	return SBOM::CycloneDX::Component->new(
		type                => 'library',
		group               => 'CPAN',
		name                => $meta->{name},
		version             => $meta->{version},
		description         => $meta->{abstract},

lib/Dist/Zilla/Plugin/CycloneDX.pm  view on Meta::CPAN

	);
}

my sub to_organization($author) {
	my ($name, $email) = $author =~ /([^<]+?)\s+<([^>]+)>/ or croak "Could not parse author '$author'";
	return SBOM::CycloneDX::OrganizationalContact->new(name => $name, email => $email);
}

my sub make_licenses($meta) {
	if (my $spdx_expr = $meta->{x_spdx_expression}) {
		return SBOM::CycloneDX::License->new($spdx_expr);
	} else {
		my @raw = map { cpan_meta_to_spdx_license($_) } $meta->{license}->@*;
		return map { SBOM::CycloneDX::License->new($_) } @raw;
	}
}

my %self_resources = (
	bugtracker => {

lib/Dist/Zilla/Plugin/CycloneDX.pm  view on Meta::CPAN

	);
	if ($version) {
		$args{version} = $version;
		$args{purl}    = make_purl($dist, $version);
	}
	return SBOM::CycloneDX::Component->new(%args);
}

my sub make_tools($plugins) {
	my $distname = __PACKAGE__ =~ s/::/-/gr;
	my @tools = make_tool_component(__PACKAGE__, $distname, \%self_resources);
	push @tools, map { make_tool_component(ref($_), $_->cyclonedx_dist, $_->cyclonedx_resources) } $plugins->@*;
	push @tools, cyclonedx_component;

	return SBOM::CycloneDX::Tools->new(components => \@tools);
}

my sub make_metadata($meta, $plugins) {
	my $component = make_root_component($meta);
	my @authors   = map { to_organization($_) } $meta->{author}->@*;
	my $timestamp = SBOM::CycloneDX::Timestamp->new($ENV{TIMESTAMP} // scalar gmtime);
	my @licenses  = make_licenses($meta);
	my @lifecycle = SBOM::CycloneDX::Metadata::Lifecycle->new(phase => 'pre-build');
	my $tools     = make_tools($plugins);

	return SBOM::CycloneDX::Metadata->new(
		component  => $component,
		authors    => \@authors,
		timestamp  => $timestamp,
		licenses   => \@licenses,
		lifecycles => \@lifecycle,

lib/Dist/Zilla/Plugin/CycloneDX.pm  view on Meta::CPAN

}

sub gather_files($self) {
	my @plugins  = $self->zilla->plugins_with(-CycloneDXSource)->@*;
	my $metadata = make_metadata($self->zilla->distmeta, \@plugins);
	my $bom      = SBOM::CycloneDX->new(metadata => $metadata);

	for my $plugin (@plugins) {
		$plugin->add_to_bom($bom);
	}

	local $SIG{__WARN__} = sub { warn $_[0] unless $_[0] =~ /Net::IDN::Encode/ };
	if (my @errors = $bom->validate) {
		croak "Errors found in BOM: @errors";
	}

	$self->add_file(Dist::Zilla::File::InMemory->new(
		name            => $self->filename,
		encoded_content => $bom->to_string,

lib/Dist/Zilla/Plugin/CycloneDX.pm  view on Meta::CPAN


version 0.001

=head1 DESCRIPTION

This module adds a CycloneDX SBOM file to your distribution. By default this will only contain information that's already contained in the META files, but this can be extended by other plugins that implement the L<CycloneDXSource|Dist::Zilla::Role::C...

=head1 AUTHOR

Leon Timmermans <fawaka@gmail.com>

 view all matches for this distribution


Dist-Zilla-Plugin-Docker-API

 view release on metacpan or  search on metacpan

dist_zilla_docker_api_plugin_plan.md  view on Meta::CPAN

Use this only for post-release work, such as:

```text
- write docker-release.json
- print digest summary
- create provenance/SBOM later
- cleanup temp build context
```

---

dist_zilla_docker_api_plugin_plan.md  view on Meta::CPAN


- cache_from/cache_to if supported
- platform if safely supported
- target stage
- network mode
- provenance/SBOM hooks if the API path supports them

---

## Minimal skeleton

 view all matches for this distribution


Dist-Zilla-Plugin-FindDirByRegex

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-HasVersionTests

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

		return $self->_error("Did not provide a string to load");
	}

	# Byte order marks
	# NOTE: Keeping this here to educate maintainers
	# my %BOM = (
	#     "\357\273\277" => 'UTF-8',
	#     "\376\377"     => 'UTF-16BE',
	#     "\377\376"     => 'UTF-16LE',
	#     "\377\376\0\0" => 'UTF-32LE'
	#     "\0\0\376\377" => 'UTF-32BE',
	# );
	if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
		return $self->_error("Stream has a non UTF-8 BOM");
	} else {
		# Strip UTF-8 bom if found, we'll just ignore it
		$string =~ s/^\357\273\277//;
	}

 view all matches for this distribution


Dist-Zilla-Plugin-Homepage

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

		return $self->_error("Did not provide a string to load");
	}

	# Byte order marks
	# NOTE: Keeping this here to educate maintainers
	# my %BOM = (
	#     "\357\273\277" => 'UTF-8',
	#     "\376\377"     => 'UTF-16BE',
	#     "\377\376"     => 'UTF-16LE',
	#     "\377\376\0\0" => 'UTF-32LE'
	#     "\0\0\376\377" => 'UTF-32BE',
	# );
	if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
		return $self->_error("Stream has a non UTF-8 BOM");
	} else {
		# Strip UTF-8 bom if found, we'll just ignore it
		$string =~ s/^\357\273\277//;
	}

 view all matches for this distribution


Dist-Zilla-Plugin-ReadmeAnyFromPod

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-ReadmeMarkdownFromPod

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-ReportVersions

 view release on metacpan or  search on metacpan

lib/Dist/Zilla/Plugin/ReportVersions.pm  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-RequiresExternal

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    }
    else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-StaticVersion

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    } else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla-Plugin-SyncCPANfile

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

         }
      },
      "develop" : {
         "requires" : {
            "Pod::Coverage::TrustPod" : "0",
            "Test::BOM" : "0",
            "Test::More" : "0.88",
            "Test::NoTabs" : "0",
            "Test::Perl::Critic" : "0",
            "Test::Pod" : "1.41",
            "Test::Pod::Coverage" : "1.08"

 view all matches for this distribution


Dist-Zilla-Plugin-Test-Legal

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

    return $self->_error( "Did not provide a string to load" );
  }

  # Byte order marks
  # NOTE: Keeping this here to educate maintainers
  # my %BOM = (
  #     "\357\273\277" => 'UTF-8',
  #     "\376\377"     => 'UTF-16BE',
  #     "\377\376"     => 'UTF-16LE',
  #     "\377\376\0\0" => 'UTF-32LE'
  #     "\0\0\376\377" => 'UTF-32BE',
  # );
  if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
    return $self->_error( "Stream has a non UTF-8 BOM" );
  } else {

    # Strip UTF-8 bom if found, we'll just ignore it
    $string =~ s/^\357\273\277//;
  }

 view all matches for this distribution


Dist-Zilla-Plugin-Test-NoBOM

 view release on metacpan or  search on metacpan

lib/Dist/Zilla/Plugin/Test/NoBOM.pm  view on Meta::CPAN

package Dist::Zilla::Plugin::Test::NoBOM;
$Dist::Zilla::Plugin::Test::NoBOM::VERSION = '0.003';

# ABSTRACT: Author tests that ensure BOM is not used
# KEYWORDS: plugin test testing author development BOM

use Moose;
use Path::Tiny;
use Sub::Exporter::ForMethods 'method_installer';    # method_installer returns a sub.
use Data::Section 0.004                              # fixed header_re

lib/Dist/Zilla/Plugin/Test/NoBOM.pm  view on Meta::CPAN

    $self->zilla->register_prereqs(
        {
            phase => 'develop',
            type  => 'requires',
        },
        'Test::BOM'  => 0,
        'Test::More' => 0
    );
}

sub gather_files {

lib/Dist/Zilla/Plugin/Test/NoBOM.pm  view on Meta::CPAN


=encoding UTF-8

=head1 NAME

Dist::Zilla::Plugin::Test::NoBOM - Author tests that ensure BOM is not used

=head1 VERSION

version 0.003

=head1 SYNOPSIS

In your F<dist.ini>:

    [Test::NoBOM]
    finder = my_finder
    finder = other_finder

=head1 DESCRIPTION

This is a plugin that runs at the L<gather
files|Dist::Zilla::Role::FileGatherer> stage, providing the file
F<xt/author/no-bom.t>. This test program use L<Test::BOM> to
make sure that the files in your distribution don't start with a
byte-order-mark (BOM).

=for Pod::Coverage::TrustPod mvp_aliases
    register_prereqs
    gather_files
    munge_files

lib/Dist/Zilla/Plugin/Test/NoBOM.pm  view on Meta::CPAN


The filename of the test to add - defaults to F<xt/author/no-bom.t>.

=head1 SEE ALSO

=for :list * Test::BOM

=head1 AUTHOR

Gregor Goldbach <glauschwuffel@gmail.com>

lib/Dist/Zilla/Plugin/Test/NoBOM.pm  view on Meta::CPAN

use warnings;

# this test was generated with {{ ref $plugin }} {{ $plugin->VERSION }}

use Test::More 0.88;
use Test::BOM;

my @files = (
{{ join(",\n", map { "    '" . $_ . "'" } map { s/'/\\'/g; $_ } sort @filenames) }}
);

 view all matches for this distribution


Dist-Zilla-Plugin-UploadToSFTP

 view release on metacpan or  search on metacpan

t/000-report-versions.t  view on Meta::CPAN

        return $self->_error("Did not provide a string to load");
    }

    # Byte order marks
    # NOTE: Keeping this here to educate maintainers
    # my %BOM = (
    #     "\357\273\277" => 'UTF-8',
    #     "\376\377"     => 'UTF-16BE',
    #     "\377\376"     => 'UTF-16LE',
    #     "\377\376\0\0" => 'UTF-32LE'
    #     "\0\0\376\377" => 'UTF-32BE',
    # );
    if ( $string =~ /^(?:\376\377|\377\376|\377\376\0\0|\0\0\376\377)/ ) {
        return $self->_error("Stream has a non UTF-8 BOM");
    }
    else {
        # Strip UTF-8 bom if found, we'll just ignore it
        $string =~ s/^\357\273\277//;
    }

 view all matches for this distribution


Dist-Zilla

 view release on metacpan or  search on metacpan

lib/Dist/Zilla/Role/File.pm  view on Meta::CPAN

    require Encode;
    my $text =
      try { Encode::decode($enc, $bytes, Encode::FB_CROAK()) }
      catch { $self->_throw("decode $enc" => $_) };

    # Okay, look, buddy…  If you're using a BOM on UTF-8, that's fine.  You can
    # use it.  You're just not going to get it back.  If we don't do this, the
    # sequence of events will be:
    # * read file from UTF-8-BOM file on disk
    # * end up with FEFF as first character of file
    # * pass file content to PPI
    # * PPI blows up
    #
    # I'm not going to try to account for the BOM and add it back.  It's awful!
    #
    # Meanwhile, if you're using UTF-16, you can get the BOM handled by picking
    # the right encoding type, I think. -- rjbs, 2016-04-24
    $enc =~ /^utf-?8$/i && $text =~ s/\A\x{FEFF}//;

    return $text;
  }

 view all matches for this distribution


( run in 4.651 seconds using v1.01-cache-2.11-cpan-364913b4093 )