scriptkitties / perl6-dist-helper Goto Github PK
View Code? Open in Web Editor NEWA Perl 6 module to assist in dealing with dists
License: GNU General Public License v3.0
A Perl 6 module to assist in dealing with dists
License: GNU General Public License v3.0
This sub would run various quality assurance checks on a module source to report what a module could use to improve its release. See Release::Checklist
for some prior art. Some things to check for include:
META6.json
assixt
can be a little opinionated on its QA. If there are better schemes out there, I'd like to hear, though.)Quite possibly, the easiest solution would be to create a seperate module for this. If such a module were to be made, and have licenses and their headers available as well, cpan6 could use these to generate a default LICENSE
file and add license headers to all other files in the project.
This should remove all files referenced by META6.json
, but no longer exist, and remove all references in META6.json
of files that no longer exist.
A command that accepts a .tar.gz
file, and uploads it to PAUSE.
App::Cpan6 currently fails to install because of an unoptimal META6.json.
See here: ugexe/zef#211 (comment)
for an explanation of what's wrong.
This is the original error:
-bash-4.4$ zef install App::Cpan6
===> Searching for: App::Cpan6
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block at /home/patrick/.rakudobrew/moar-2017.10/install/share/perl6/site/sources/C99D66B88914FE999500CE1FA4F
1216BDBA53BE2 (Zef::Client) line 124
Use of uninitialized value @identities of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block at /home/patrick/.rakudobrew/moar-2017.10/install/share/perl6/site/sources/C99D66B88914FE999500CE1FA4F
1216BDBA53BE2 (Zef::Client) line 136
===> Searching for missing dependencies:
No such method 'starts-with' for invocant of type 'Any'
in method candidates at /home/patrick/.rakudobrew/moar-2017.10/install/share/perl6/site/sources/618E55C192A9FD29
1ABD2BE1F2C756E915C0A4BC (Zef::Repository) line 9
in method find-candidates at /home/patrick/.rakudobrew/moar-2017.10/install/share/perl6/site/sources/C99D66B8891
4FE999500CE1FA4F1216BDBA53BE2 (Zef::Client) line 108
in block at /home/patrick/.rakudobrew/moar-2017.10/install/share/perl6/site/sources/C99D66B88914FE999500CE1FA4F
1216BDBA53BE2 (Zef::Client) line 139
in sub MAIN at /home/patrick/.rakudobrew/moar-2017.10/install/share/perl6/site/sources/0396F9D56BBCF5F8CF25C8759
D77D03AEF745931 (Zef::CLI) line 137
in block <unit> at /home/patrick/.rakudobrew/moar-2017.10/install/share/perl6/site/resources/95699F546D28C01BF68
BD7A836D7D12FFB0B2943 line 1
in sub MAIN at /home/patrick/.rakudobrew/bin/../moar-2017.10/install/share/perl6/site/bin/zef line 2
in block <unit> at /home/patrick/.rakudobrew/bin/../moar-2017.10/install/share/perl6/site/bin/zef line 2
Same as doing a release
and upload
command.
Add a command to allow use of cpan6 bootstrap config
. This will ask input for all configuration options, and then save the configuration file.
The readme is currently out of date, it must be updated.
Some dependencies used in cpan6 require a minimum version due to some features used of those modules. The META6 should be updated to reflect these minimum versions, so that zef will install the right version.
This should result in less changes in the META6.json
file, since the lists will always be sorted. Currently the order of arrays and objects are random after turning the %meta
hash into a json string.
The META file locks the dependency on 0.9.6 version of JSON::Fast, which has numerous bugs, including reliance on a Rakudo bug that's fixed in latest Rakudo.
For that reason, this module won't be installable on Rakudo 2018.03 and later.
This repository currently lacks a README. To help possible users and contributors, one should be added.
This should scan the current directory for a lib
, bin
and resources
directory and generate a META6.json
file from those. This could be used to create distributable modules from existing projects that did not have a META6.json
yet.
The readme.adoc could be transformed into a manpage. This could be installed on cpan6 bootstrap man
for instance, unless there's a nicer way to let zef
do that automatically on installation.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.