-
Notifications
You must be signed in to change notification settings - Fork 23
/
modules.yml
232 lines (198 loc) · 10.2 KB
/
modules.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
---
# this is not in yml to make perigrin cry, but just because ether speaks this
# more natively than INI. change to another format as desired!
# To parse:
# perl -MYAML::Any=LoadFile -MData::Dumper -wle'print Dumper(LoadFile("modules.yml"))'
# ysh [-MSome::YAML::Module] < modules.yml
Task::Kensho::Async:
stopwords: Async Minimalistic
description: Async Programming
components:
POE: Multitasking and networking framework for Perl
IO::Async: Asynchronous event-driven programming
Future: represent an operation awaiting completion
Mojo::IOLoop: Minimalistic event loop
MCE: Many-Core Engine for Perl providing parallel processing capabilities
Parallel::ForkManager: A simple parallel processing fork manager
Task::Kensho::CLI:
stopwords: pastebin yay
description: Useful Command-line Tools
components:
App::Ack: A grep-like text finder
App::Nopaste: Easy access to any pastebin
Module::CoreList: What modules shipped with versions of perl
Reply: reply - read, eval, print, loop, yay!
Task::Kensho::Config:
description: Config Modules
components:
Config::Any: Load configuration from different file formats, transparently
Config::General: Generic Config Module
JSON::MaybeXS: wrapper around the most current and fast JSON backends
Task::Kensho::DBDev:
description: Database Development
components:
DBI: Database independent interface for Perl
DBD::SQLite: Self Contained RDBMS in a DBI Driver
DBIx::Class: Extensible and flexible object <-> relational mapper.
DBIx::Class::Schema::Loader: Dynamic definition of a DBIx::Class::Schema
SQL::Translator: Manipulate structured data definitions (SQL and more)
Task::Kensho::Dates:
description: Date Modules
components:
DateTime: A date and time object
Time::ParseDate: Date parsing both relative and absolute
Time::Moment: A fast immutable object representing a date and time
Time::Piece: A date and time object based on localtime or gmtime
Task::Kensho::Email:
description: Email
components:
Email::Simple: A B<simple> email object. No, really!
Email::Valid: Check validity of Internet email addresses
Email::Sender: A library for sending email
Email::MIME::Kit: The Swiss army chainsaw of assembling email messages
Email::Stuffer: "A more casual approach to creating and sending Email:: emails"
Task::Kensho::ExcelCSV:
stopwords: CSV XLS XLSX
description: Excel/CSV
components:
Text::CSV_XS: Manipulate comma-separated values (CSV)
Spreadsheet::Read: Read the data from a spreadsheet
Spreadsheet::WriteExcel::Simple: Create XLS documents easily
Excel::Writer::XLSX: Create spreadsheets in the XLSX format
Task::Kensho::Exceptions:
description: Exception Handling
components:
Try::Tiny: Lightweight exception handling that handles the vagaries of $@.
autodie: Make builtins and other functions die instead of returning undef on failure.
Syntax::Keyword::Try: try/catch/finally with full syntax support for control statements
Task::Kensho::Hackery:
stopwords: whippitupitude Hackery Mojo
description: Script Hackery
long_description: >-
These packages are included less for production work and more for
whippitupitude. They reflect packages that people have found incredibly
useful for prototyping and debugging before reducing down to a production
script.
components:
Smart::Comments: Comments that do more than just sit there
Term::ProgressBar::Simple: Simple progress bars
IO::All: >-
IO::All combines all of the best Perl IO modules into a single nifty
object oriented interface to greatly simplify your everyday Perl IO
idioms.
ojo: Fun one-liners with Mojo
Task::Kensho::Logging:
description: Logging
components:
Log::Dispatch: >-
This module manages a set of Log::Dispatch::* output objects that can
be logged to via a unified interface.
Log::Log4perl: >-
Log::Log4perl lets you remote-control and fine-tune the logging
behaviour of your system from the outside. It implements the widely
popular (Java-based) Log4j logging package in pure Perl.
Log::Contextual: >-
Log::Contextual is a simple interface to extensible logging. It is
bundled with a really basic logger, Log::Contextual::SimpleLogger.
Log::Any: 'Bringing loggers and listeners together.'
Task::Kensho::ModuleDev:
stopwords: profiler templated tidyall validator
description: Module Development
components:
Code::TidyAll: Engine for tidyall, your all-in-one code tidier and validator
Data::Printer: Colored pretty-print of Perl data structures and objects
Dist::Zilla: Builds distributions of code to be uploaded to the CPAN.
Devel::Dwarn: Combine warns and Data::Dumper::Concise
Devel::NYTProf: Powerful feature-rich perl source code profiler
Perl::Tidy: Parses and beautifies perl source
Perl::Critic: Critique Perl source code for best-practices.
Devel::Confess: Include stack traces on all warnings and errors
Modern::Perl: enable all of the features of Modern Perl with one command
Software::License: Packages that provide templated software licenses
Pod::Readme: Convert POD to README file
CPAN::Uploader: Upload things to the CPAN
Module::Build::Tiny: A simple, lightweight, drop-in replacement for ExtUtils::MakeMaker or Module::Build
Task::Kensho::OOP:
description: Object Oriented Programming
components:
Moose: a postmodern object system for Perl5 (see also Task::Moose for a larger list of Moose extensions)
MooseX::Getopt: a Moose role for processing command line options
MooseX::SimpleConfig: a Moose role for setting attributes from a simple configuration file
MooseX::Aliases: easy aliasing of methods and attributes in Moose
MooseX::StrictConstructor: a Moose extension that makes your object constructors blow up on unknown attributes
MooseX::NonMoose: easy subclassing of non-Moose classes
MooseX::Role::Parameterized: Moose roles with composition parameters
Moo: Minimalist Object Orientation (with Moose compatibility)
namespace::autoclean: keep imports out of your namespace (Moose-aware)
Type::Tiny: tiny, yet Moo(se)-compatible type constraints
Package::Variant: Parameterizable packages
Task::Kensho::Scalability:
stopwords: Redis
description: Scalability
components:
CHI: A unified cache interface, like DBI
Redis: Perl binding for Redis database
Task::Kensho::Testing:
description: Testing
components:
Test::Simple: Basic utilities for writing tests.
Test::Fatal: Test exception-based code
Test::Pod: Check for POD errors in files
Test::Pod::Coverage: Check for pod coverage in your distribution.
Test::Memory::Cycle: Check for memory leaks and circular memory references
Devel::Cover: Code coverage metrics for Perl
Test::Deep: Test deep data structures
Test::Requires: Make running a test conditional on a particular module being installed
Test::Warnings: Test for warnings and the lack of them
Test2::Suite: Distribution with a rich set of tools built upon the Test2 framework.
Task::Kensho::Toolchain:
stopwords: Bundler
description: Basic Toolchain
components:
App::cpanminus: Get, unpack, build and install modules from CPAN
App::cpm: a fast CPAN module installer
App::FatPacker: Pack your dependencies onto your script file
App::perlbrew: Manage perl installations in your $HOME
Carton: Perl module dependency manager (aka Bundler for Perl)
CPAN::Mini: Create a minimal mirror of CPAN
local::lib: Create and use a local lib/ for perl modules with PERL5LIB
Pinto: Curate a repository of Perl modules
version: Perl extension for Version Objects
Task::Kensho::WebCrawling:
stopwords: WebSocket
description: Web Crawling
components:
HTTP::Tiny: Lightweight HTTP client implementation
HTTP::Thin: A Thin Wrapper around HTTP::Tiny to play nice with HTTP::Message
LWP::UserAgent: Full-featured Web client library for Perl
LWP::Simple: Simple procedural interface to LWP
WWW::Mechanize: Handy web browsing in a Perl object
WWW::Mechanize::TreeBuilder: This module combines WWW::Mechanize and HTML::TreeBuilder.
WWW::Selenium: Perl Client for the Selenium Remote Control test tool
Mojo::UserAgent: Non-blocking I/O HTTP and WebSocket user agent
Task::Kensho::WebDev:
stopwords: configs RSS
description: Web Development
components:
Plack: Flexible superglue between Web Servers and Perl Web Frameworks or code.
Task::Catalyst: Catalyst is The Elegant MVC Web Application Framework. Task::Catalyst is all you need to start with Catalyst.
Dancer2: the new generation of Dancer, a lightweight yet powerful web application framework
Mojolicious: Real-time web framework
Web::Simple: A quick and easy way to build simple web applications
Template: (Template::Toolkit) Template Processing System
HTTP::BrowserDetect: Determine Web browser, version, and platform from an HTTP user agent string
HTML::FormHandler: HTML forms using Moose
CGI::FormBuilder::Source::Perl: Build CGI::FormBuilder configs from Perl syntax files.
XML::RSS: Creates and updates RSS files
XML::Atom: Atom feed and API implementation
MIME::Types: Definition of MIME types
Attean: A Semantic Web Framework
Task::Kensho::XML:
stopwords: libxml libxml2 libxslt RDF
description: XML Development
components:
XML::LibXML: Perl Binding for libxml2
XML::LibXSLT: Interface to the gnome libxslt library
XML::SAX: Simple/Streaming API for XML
XML::Generator::PerlData: Perl extension for generating SAX2 events from nested Perl data structures.
XML::SAX::Writer: Output XML from SAX2 Events