view release on metacpan or search on metacpan
On Windows Extract::ArchiveTar is now always used for tar.xz
files because the BSD tar that comes with Windows can hang
on tar.xz if xz is in the PATH (gh#403, gh#404)
2.80 2023-05-11 16:31:46 -0600
- Documentation improvements (gh#399, gh#400, gh#401, gh#402)
- Do not generate .../Install/Files.pm if one is provided by the
Alien (gh#393, gh#397)
2.79 2023-05-05 15:08:46 -0600
- Updated non-binding support for Perls to match the policy
of the Perl toolchain (Perls older than 10 years old are
unsupported, with a one-time exception of Perl 5.16). The
intent is not to suddenly drop support for older Perls, but
the Alien-Build team may take advantage of features in
supported Perls that will effectively remove compatability
with unsupported Perls.
2.78 2023-03-07 11:49:27 -0700
- Test fix to handle Perls with space in the path (gh#391, mohawk++)
corpus/alien_build_plugin_fetch_wget/record/old.json view on Meta::CPAN
{"-k --content-disposition -S http://localhost/corpus/alien_build_plugin_fetch_wget/dir/foo-1.01.tar":{"stderr":"--2021-05-12 00:10:35-- http://localhost/corpus/alien_build_plugin_fetch_wget/dir/foo-1.01.tar\nResolving localhost (localhost)... ::1, ...
corpus/alien_build_plugin_fetch_wget/record/old.yml view on Meta::CPAN
--spider don't download anything
-T, --timeout=SECONDS set all timeout values to SECONDS
--dns-timeout=SECS set the DNS lookup timeout to SECS
--connect-timeout=SECS set the connect timeout to SECS
--read-timeout=SECS set the read timeout to SECS
-w, --wait=SECONDS wait SECONDS between retrievals
--waitretry=SECONDS wait 1..SECONDS between retries of a retrieval
--random-wait wait from 0.5*WAIT...1.5*WAIT secs between retrievals
--no-proxy explicitly turn off proxy
-Q, --quota=NUMBER set retrieval quota to NUMBER
--bind-address=ADDRESS bind to ADDRESS (hostname or IP) on local host
--limit-rate=RATE limit download rate to RATE
--no-dns-cache disable caching DNS lookups
--restrict-file-names=OS restrict chars in file names to ones OS allows
--ignore-case ignore case when matching files/directories
-4, --inet4-only connect only to IPv4 addresses
-6, --inet6-only connect only to IPv6 addresses
--prefer-family=FAMILY connect first to addresses of specified family,
one of IPv6, IPv4, or none
--user=USER set both ftp and http user to USER
--password=PASS set both ftp and http password to PASS
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/BIO_ADDR_free.html
x64-windows/debug/html/man3/BIO_ADDR_hostname_string.html
x64-windows/debug/html/man3/BIO_ADDR_new.html
x64-windows/debug/html/man3/BIO_ADDR_path_string.html
x64-windows/debug/html/man3/BIO_ADDR_rawaddress.html
x64-windows/debug/html/man3/BIO_ADDR_rawmake.html
x64-windows/debug/html/man3/BIO_ADDR_rawport.html
x64-windows/debug/html/man3/BIO_ADDR_service_string.html
x64-windows/debug/html/man3/BIO_accept_ex.html
x64-windows/debug/html/man3/BIO_append_filename.html
x64-windows/debug/html/man3/BIO_bind.html
x64-windows/debug/html/man3/BIO_callback_ctrl.html
x64-windows/debug/html/man3/BIO_callback_fn.html
x64-windows/debug/html/man3/BIO_callback_fn_ex.html
x64-windows/debug/html/man3/BIO_closesocket.html
x64-windows/debug/html/man3/BIO_connect.html
x64-windows/debug/html/man3/BIO_ctrl.html
x64-windows/debug/html/man3/BIO_ctrl_get_read_request.html
x64-windows/debug/html/man3/BIO_ctrl_get_write_guarantee.html
x64-windows/debug/html/man3/BIO_ctrl_pending.html
x64-windows/debug/html/man3/BIO_ctrl_reset_read_request.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/BIO_f_md.html
x64-windows/debug/html/man3/BIO_f_null.html
x64-windows/debug/html/man3/BIO_f_ssl.html
x64-windows/debug/html/man3/BIO_find_type.html
x64-windows/debug/html/man3/BIO_flush.html
x64-windows/debug/html/man3/BIO_free.html
x64-windows/debug/html/man3/BIO_free_all.html
x64-windows/debug/html/man3/BIO_get_accept_ip_family.html
x64-windows/debug/html/man3/BIO_get_accept_name.html
x64-windows/debug/html/man3/BIO_get_accept_port.html
x64-windows/debug/html/man3/BIO_get_bind_mode.html
x64-windows/debug/html/man3/BIO_get_buffer_num_lines.html
x64-windows/debug/html/man3/BIO_get_callback.html
x64-windows/debug/html/man3/BIO_get_callback_arg.html
x64-windows/debug/html/man3/BIO_get_callback_ex.html
x64-windows/debug/html/man3/BIO_get_cipher_ctx.html
x64-windows/debug/html/man3/BIO_get_cipher_status.html
x64-windows/debug/html/man3/BIO_get_close.html
x64-windows/debug/html/man3/BIO_get_conn_address.html
x64-windows/debug/html/man3/BIO_get_conn_hostname.html
x64-windows/debug/html/man3/BIO_get_conn_ip_family.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/debug/html/man3/BIO_s_file.html
x64-windows/debug/html/man3/BIO_s_mem.html
x64-windows/debug/html/man3/BIO_s_null.html
x64-windows/debug/html/man3/BIO_s_secmem.html
x64-windows/debug/html/man3/BIO_s_socket.html
x64-windows/debug/html/man3/BIO_seek.html
x64-windows/debug/html/man3/BIO_set_accept_bios.html
x64-windows/debug/html/man3/BIO_set_accept_ip_family.html
x64-windows/debug/html/man3/BIO_set_accept_name.html
x64-windows/debug/html/man3/BIO_set_accept_port.html
x64-windows/debug/html/man3/BIO_set_bind_mode.html
x64-windows/debug/html/man3/BIO_set_buffer_read_data.html
x64-windows/debug/html/man3/BIO_set_buffer_size.html
x64-windows/debug/html/man3/BIO_set_callback.html
x64-windows/debug/html/man3/BIO_set_callback_arg.html
x64-windows/debug/html/man3/BIO_set_callback_ex.html
x64-windows/debug/html/man3/BIO_set_cipher.html
x64-windows/debug/html/man3/BIO_set_close.html
x64-windows/debug/html/man3/BIO_set_conn_address.html
x64-windows/debug/html/man3/BIO_set_conn_hostname.html
x64-windows/debug/html/man3/BIO_set_conn_ip_family.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/BIO_ADDR_free.html
x64-windows/html/man3/BIO_ADDR_hostname_string.html
x64-windows/html/man3/BIO_ADDR_new.html
x64-windows/html/man3/BIO_ADDR_path_string.html
x64-windows/html/man3/BIO_ADDR_rawaddress.html
x64-windows/html/man3/BIO_ADDR_rawmake.html
x64-windows/html/man3/BIO_ADDR_rawport.html
x64-windows/html/man3/BIO_ADDR_service_string.html
x64-windows/html/man3/BIO_accept_ex.html
x64-windows/html/man3/BIO_append_filename.html
x64-windows/html/man3/BIO_bind.html
x64-windows/html/man3/BIO_callback_ctrl.html
x64-windows/html/man3/BIO_callback_fn.html
x64-windows/html/man3/BIO_callback_fn_ex.html
x64-windows/html/man3/BIO_closesocket.html
x64-windows/html/man3/BIO_connect.html
x64-windows/html/man3/BIO_ctrl.html
x64-windows/html/man3/BIO_ctrl_get_read_request.html
x64-windows/html/man3/BIO_ctrl_get_write_guarantee.html
x64-windows/html/man3/BIO_ctrl_pending.html
x64-windows/html/man3/BIO_ctrl_reset_read_request.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/BIO_f_md.html
x64-windows/html/man3/BIO_f_null.html
x64-windows/html/man3/BIO_f_ssl.html
x64-windows/html/man3/BIO_find_type.html
x64-windows/html/man3/BIO_flush.html
x64-windows/html/man3/BIO_free.html
x64-windows/html/man3/BIO_free_all.html
x64-windows/html/man3/BIO_get_accept_ip_family.html
x64-windows/html/man3/BIO_get_accept_name.html
x64-windows/html/man3/BIO_get_accept_port.html
x64-windows/html/man3/BIO_get_bind_mode.html
x64-windows/html/man3/BIO_get_buffer_num_lines.html
x64-windows/html/man3/BIO_get_callback.html
x64-windows/html/man3/BIO_get_callback_arg.html
x64-windows/html/man3/BIO_get_callback_ex.html
x64-windows/html/man3/BIO_get_cipher_ctx.html
x64-windows/html/man3/BIO_get_cipher_status.html
x64-windows/html/man3/BIO_get_close.html
x64-windows/html/man3/BIO_get_conn_address.html
x64-windows/html/man3/BIO_get_conn_hostname.html
x64-windows/html/man3/BIO_get_conn_ip_family.html
corpus/vcpkg/r2/installed/vcpkg/info/openssl-windows_1.1.1d-1_x64-windows.list view on Meta::CPAN
x64-windows/html/man3/BIO_s_file.html
x64-windows/html/man3/BIO_s_mem.html
x64-windows/html/man3/BIO_s_null.html
x64-windows/html/man3/BIO_s_secmem.html
x64-windows/html/man3/BIO_s_socket.html
x64-windows/html/man3/BIO_seek.html
x64-windows/html/man3/BIO_set_accept_bios.html
x64-windows/html/man3/BIO_set_accept_ip_family.html
x64-windows/html/man3/BIO_set_accept_name.html
x64-windows/html/man3/BIO_set_accept_port.html
x64-windows/html/man3/BIO_set_bind_mode.html
x64-windows/html/man3/BIO_set_buffer_read_data.html
x64-windows/html/man3/BIO_set_buffer_size.html
x64-windows/html/man3/BIO_set_callback.html
x64-windows/html/man3/BIO_set_callback_arg.html
x64-windows/html/man3/BIO_set_callback_ex.html
x64-windows/html/man3/BIO_set_cipher.html
x64-windows/html/man3/BIO_set_close.html
x64-windows/html/man3/BIO_set_conn_address.html
x64-windows/html/man3/BIO_set_conn_hostname.html
x64-windows/html/man3/BIO_set_conn_ip_family.html
lib/Alien/Build/Manual/AlienAuthor.pod view on Meta::CPAN
use Test::Alien;
use Alien::Libfoo;
alien_ok 'Alien::Libfoo';
run_ok(['foo', '--version'])
->exit_is(0);
done_testing;
You can also write tests specifically for L<FFI::Platypus>, if your
alien is going to be used to write FFI bindings. (the test below
is the FFI equivalent to the XS example above).
use Test2::V0;
use Test::Alien;
use Alien::Libfoo;
alien_ok 'Alien::Libfoo';
ffi_ok { symbols => [ 'something' ] }, with_subtest {
# $ffi is an instance of FFI::Platypus with the lib
# set appropriately.
lib/Alien/Build/Plugin/Build/Autoconf.pm view on Meta::CPAN
build_ffi => [
'%{configure} --enable-shared --disable-static --libdir=%{.install.autoconf_prefix}/dynamic',
'%{make}',
'%{make} install',
]
);
if($^O eq 'MSWin32')
{
# for whatever reason autohell puts the .dll files in bin, even if you
# point --bindir somewhere else.
$meta->after_hook(
build_ffi => sub {
my($build) = @_;
my $prefix = $build->install_prop->{autoconf_prefix};
my $bin = Path::Tiny->new($ENV{DESTDIR})->child($prefix)->child('bin');
my $lib = Path::Tiny->new($ENV{DESTDIR})->child($prefix)->child('dynamic');
if(-d $bin)
{
foreach my $from (grep { $_->basename =~ /.dll$/i } $bin->children)
{
my $daemon = 0;
my $kill = 0;
my $host = 'localhost';
GetOptions(
"d" => \$daemon,
"k" => \$kill,
"hosth=s" => \$host,
);
my $bindir = path(__FILE__)->parent->absolute;
my $distdir = $bindir->parent->parent;
my $config_file = $bindir->child('ftpd.json');
if(-r $config_file)
{
my $config = decode_json($config_file->slurp);
my $pid = $config->{pid};
if(defined $pid)
{
kill 'KILL', $pid;
}
}
exit if $kill;
if($daemon)
{
require Proc::Daemon;
my $daemon = Proc::Daemon->new(
child_STDOUT => $bindir->child('ftpd.log')->stringify,
child_STDERR => $bindir->child('ftpd.log')->stringify,
);
$daemon->Init;
}
my $server = AnyEvent::FTP::Server->new(
host => $host,
port => 0,
default_context => 'AnyEvent::FTP::Server::Context::FSRO',
);
root => $distdir->child('corpus/dist')->stringify,
pid => $$,
);
my $url = URI->new("ftp://localhost");
$url->host($host);
$url->path($config{root});
$url->user($config{user});
$url->password($config{pass});
$server->on_bind(sub {
my $port = shift;
$url->port($port);
});
$server->on_connect(sub {
my $con = shift;
$con->context->authenticator(sub {
my($user, $pass) = @_;
$user eq $config{user} && $pass eq $config{pass} ? 1 : 0;
});
t/bin/httpd view on Meta::CPAN
my $daemon = 0;
my $kill = 0;
my $host = 'localhost';
GetOptions(
"d" => \$daemon,
"k" => \$kill,
"host=s" => \$host,
);
my $bindir = path(__FILE__)->parent->absolute;
my $distdir = $bindir->parent->parent;
my $config_file = $bindir->child('httpd.json');
if(-r $config_file)
{
my $config = decode_json($config_file->slurp);
my $pid = $config->{pid};
if(defined $pid)
{
kill 'KILL', $pid;
}
}
exit if $kill;
if($daemon)
{
require Proc::Daemon;
my $daemon = Proc::Daemon->new(
child_STDOUT => $bindir->child('httpd.log')->stringify,
child_STDERR => $bindir->child('httpd.log')->stringify,
);
$daemon->Init;
}
my $url = URI->new('http://localhost/corpus/dist/');
$url->host($host);
$url->port(do {
require IO::Socket::INET;
IO::Socket::INET->new(Listen => 5, LocalAddr => "127.0.0.1")->sockport;
});