This is intended as a guide for how to write a perldelta. There has never
been a formal specification - the working rule is "fake up a document that
looks something close to the existing perldeltas". So if it's unclear how
-do to do something, see if it's been done before, and if the approach works
+to do something, see if it's been done before, and if the approach works
there, steal it.
=head2 Template
-Note there is a file F<Porting/perldelta_template> which contains a
+Note there is a file F<Porting/perldelta_template.pod> which contains a
skeleton version of a perldelta.pod file, which should normally be copied
in at the start of a new release.
B<FIXME> - this could be automated better
If Module::CoreList has been updated, then F<Porting/corelist-perldelta.pl>
-will automatically print out this section following a template like this:
+will automatically print out several sections if relevant that can be
+pasted into F<perldelta>:
+
+ * New Modules and Pragmata
+ * Pragmata Changes
+ * Updated Modules
+ * Removed Modules and Pragmata
+
+Each section will have stub entries following a template like this:
=item C<less>
Upgraded from version 0.01 to 0.02
-That's a start and the output can be copied/inserted into the perldelta.
+It does not include modules listed in F<Porting/Maintainers.pl> under
+C<_PERLLIB>, but it's a start. Where relevant, a summary of changes can be
+added by hand.
A more adventurous enhancement would be to automate grabbing
the changelogs for dual lived modules. For each of them, grab the relevant
You can find the list of committers and authors by:
- % git log v5.11.1..HEAD | perl -nlwe '$seen{$1}++ if /^Author: ([^<]*)/; END { print for sort keys %seen }'
+ % git log --pretty='format:%an' v5.11.1..HEAD | sort | uniq
And how many files where changed by:
- % git diff v5.11.1..HEAD | diffstat
+ % git diff --stat=200,200 v5.11.1..HEAD
=item Reporting Bugs