In my last post I wrapped up the final section [Legal] found in the [@Default] template for Pod::Weaver. Since I am on such a roll I will go on and look at a number of other 'Sections' that available on CPAN.
The first one I am going to look at is [Availability]. This will add an section to you POD that will contain an Availability blurb depending on what you have configured in your 'dist.ini' file.
This plug-in cannot be used stand alone you will have to use both the 'Dist::Zilla::Plugin::Bugtracker' and the 'Dist::Zilla::Plugin::Homepage plug-in in your 'dist.ini' file. Now I have yet to play with these two plug-ins so I will install and then add them to my '.ini' file
As part of the MetaCPAN hackathon, meta::hack, I was invited to work on the CPAN Testers integration. CPAN Testers is a community of CPAN users who send in test reports for CPAN modules as they are uploaded. MetaCPAN adds a summary of those test reports to every CPAN distribution to help you determine which module you'd most like to use. For quite a few months, this integration was broken, and the nature of the current integration (a SQLite database) means it is not as generally useful as it could be.
This was not just a bad year for musicians. Unfortunately not. And the last three months were busy, with lot of (mostly bureaucratic) work. I was expecting the Christmas day to have some extra-time and do, at least one, a decent PR, but I got sick and the will to program just passed by.
So, this semester we had:
October, Perl-Critic-StricterSubs: my patch was to define the minimum required Perl version, as requested by CPANTS.
November, Net-SFTP-Foreign: following CPANTS suggestions, set the same module version for all distribution modules, and declare minimum required Perl version.
December, WWW-Pastebin-PastebinCom-API: generate META.json when building the dist.
I know, not proud of any of these PRs. I said to Neil I want to continue, but I really hope to start being more useful to module authors, or I will just quit...
I can see the end soon for POD here in the Dist-Pen but not quite yet.
In my last post I had a real quick look at the [Authors] section plug-in and how the trick to using it is to know that the list of authors comes from your 'dist.ini' file. Today I am going to look [Legal] the last of the sections found in the [@Default] template.
As you can guess this is where
Pod::Weaver
dumps the legal stuff we all love to add to your PODs. Like the [Authors] plug-in this one gets its info from the 'dist.ini' file. In my file I have
Silver Gold Bull is your trusted silver and gold dealer. It provide you with competitive, up-to-minute pricing and make sure your precious metals are delivered to your door discreetly and fully insured.
SilverGoldBull::API provides with the following functionality:
- get all product/order list;
- get full information about product/order;
- or even create and sell your own product;
- and etc.
This is the C::Blocks Advent Calendar, in which I release a new treat each day about the C::Blocks library. Yesterday I compared C::Blocks to other TinyCC-based Perl libraries. Today I will focus on a fun diversion: hacking on the parser with a bit of C::Blocks code.
I must admit that some of yesterday's results have me a bit depressed. I've put a lot of work into this library, and I am really surprised and worried about the performance cliffs I illustrated yesterday. Today, though, we're going to have some fun.
Still plunking away in the POD world today in the Dist-Pen.
In my last post I had a look a the very simple [Leftovers] section plug-in and how it dumps all unaccounted for POD in the that place on your template. Today I am going to look at another simple one from the [@default] template [Authors]
Looking at the POD for the first time is plug-in one would be quite lost at how to use it. I guess the original POD writer though that is was so simple to use it need no explanation. The trick here is this particular plug-in gets all its info from the 'dist.ini' file. In that file there will be a least one 'author' line as in mine;
Your early holiday gift from the Dancer Core Team has arrived - Dancer2 0.204002 is on its way to your favorite CPAN mirror. This release provides the following:
A fix for public_dir: When using public_dir , Dancer2 now waits for the configuration to be read before deciding where static content should be served from
A new plugin helper method, find_plugin(), that lets you import another plugin’s DSL for use in your own custom plugin
A variety of documentation fixes and enhancements
Make sure to check out the Dancer Advent Calendar! It features a number of great articles not only from the Dancer Core Team, but a number of our community members too.
The Dancer Core Team would like to thank all of our contributors and community members for another great year. Simply put, you are the reason we keep working hard at Dancer, and we are grateful to have such a great community of users and developers around us. Here’s to a great 2017… Hope you all have a safe and happy holiday season!
After almost 3 years of development and more than 2 years in production, 2 talks at YAPC::EU (Granada and Cluj) and one talk at the Dancer conference last year in Vienna, I think it's time to announce Amusewiki on blogs. perl.org as well, as I consider it more or less feature complete and robust enough for a larger audience.
Amusewiki is basically a CMS, but it's not "yet another one". Its main feature is that it creates for each published text various PDF (via LaTeX) and EPUB (for e-readers and mobile devices) files, along with an HTML version. It's also able to produce slides. Also the bookbuilder provides a way to extract, merge and customize the texts stored in the archive. You may want to give amusewiki a try if you're interested in publishing and distributing texts. If you just need a wiki or a blog for posting code snippets and lolcats, you probably want to look elsewhere. Amusewiki is suitable for publishing whole books as well.
In my last post I had a look at the [Collect] section plug-in and how you can use it to gather up similar parts of your POD in to one section in a document. Useful when you want to keep the POD next to the code but you have a mix of function attributes and subs in the code for other valid reasons.
Today I am looking aI would guess would be the simplest plug-in to use [Leftovers]. As the name implies it dump any Pod that has not been put into another section.
In the case of the [@Default] template it is here;
After a couple of years of more or less "maintenance mode" on DBD::mysql - we had a hand full of people contributing occasional fixes and a whole slew of drive-by contributors - we now have a prolific contributor again: Pali Rohár.
It's great to see some more long-standing issues taken care of!
This time around, in the new development release 4.041_01 that is on CPAN now, there are some important fixes for some Unicode-related issues that I would like to point out. The sections below I have distilled based on the descriptions made by Pali.
Automatically converting to UTF-8 for bind parameters
Before this release perl scalars (statements or bind parameters) without UTF8 status flag were not encoded to UTF-8 even if mysql_enable_utf8 was enabled. This caused perl scalars with internal Latin1 encoding to be sent to the mysql server as Latin1 even if mysql_enable_utf8 was enabled.
This is the C::Blocks Advent Calendar, in which I release a new treat each day about the C::Blocks library. Yesterday I dug into the details of writing a type that can be used with C::Blocks. Today I explain how to use C::Blocks in multithreaded Perl code.
In my last post I looked at the rather plain but useful [Generic] section plug-in, that lets the Pod writer control where any section of POD that begins with =head1 can be moved to anywhere on the page. Today I am going to look at another of the often used plug-in the [Collect] section or plug-in.
This section is used to gather, group collect or otherwise gather together items under a named '=head1' tag what have the same POD tag. Looking at the [@Default] template again you will see there are three of them;
This is the fourth article in a series about MetaCPAN. The first article described the two main parts that make up the MetaCPAN project: the API and the search interface. The second article gave a high level overview of how the API uses Elasticsearch to hold and search information about CPAN distributions and authors. The third article showed how MetaCPAN fits into the rest of the CPAN ecosystem.
In this article we'll show how you can use the MetaCPAN API to get information about releases to CPAN. We'll start off with a very simple query, then gradually refine it to narrow down which releases are returned, and what information you request for each release.
This article is brought to you by Elastic, who were a Gold sponsor for meta::hack. We were very happy to have their support, especially given the central role that Elasticsearch plays in MetaCPAN.
In my $dayjob at GetResponse I have to deal constantly with time dependent features. For example this email marketing platform allows you to use something called 'Time Travel', which is sending messages to your contacts at desired hour in their time zones. So people around the world can get email at 8:00, when they start their work and chance for those messages message being read are highest. No matter where they live.
But even such simple feature has more pitfalls that you can imagine. For example user has three contacts living in Europe/Warsaw, America/Phoenix and Australia/Sydney time zones.
This is the C::Blocks Advent Calendar, in which I release a new treat each day about the C::Blocks library. Yesterday I explained how to use C::Blocks in multithreaded Perl code. Today I will compare C::Blocks to other TinyCC-based Perl libraries.