note that the ~~ operator is experimental

(cherry picked from commit 43c6e0a7ba1950c4a64b59be5d0a9cd7b1807cca)
officially discourage the use of threads

some language borrowed from a larger patch by Christian Walde
Upgrade CPAN::Meta from version 2.140630 to 2.140640
Update META files and remove blead customizations following previous commit

(The customizations were added to "fix" failures caused by the previous
upgrade of CPAN::Meta. This upgrade reverts the offending parts, so those
"fix"es can now be reverted too.)
Smarter handling of escaped semicolons in vmsify.

In theory, a Unix-format filespec can contain a semicolon and thus
need to be escaped when converted to a VMS-format filespec.  But
a much more common use case is a filespec that has a version
number despite being in Unix format.

So detect a semicolon that delimits a version specification and
pass it through but escape other semicolons.  This is apparently
what decc$to_vms does, so we're being consistent with the CRTL.
Attribute::Handlers update/changelog and version bump
Filter::Simple update/changelog and version bump
Data::Dumper update/changelog and version bump
sv.h: add some more flag usage commentary

Also, move SVphv_SHAREKEYS up to be closer to SVf_UTF8 - they are the same
flag bit, but it wasn't clear, since there was a big gap between them
make core safe against HvAUX() realloc

Since the HvAUX structure is just tacked onto the end of the HvARRAY()
struct, code like this can do bad things:

    aux = HvAUX();
    ... something that might split hv ...
    aux->foo = ...; /* SEGV! */

So I've visually audited core for places where HbAUX() is saved and then
re-used, and re-initialised the var if it looks like HvARRAY() could
have changed in the meantime.

I've been very conservative about what might be unsafe. For example,
destructors or __WARN__ handlers could call perl code that modifies the
hash.
Upgrade to Thread::Queue 3.03
Incorporate changes from CPAN release of ExtUtils-CBuilder
It is and always will be safe to delete the most recent key returned from each.
Don't rely on IPC::Cmd in ExtUtils-Install tests
Handle "no versions" feature in fileify and tovmsspec.

This is a follow-up to d5e61aaf9d7051b136, where we stopped
escaping semicolons in tovmsspec when they appeared to be the
beginning of a version specification but always escaped them
otherwise.

It turns out there is yet another CRTL feature logical name
(DECC$FILENAME_UNIX_NO_VERSION) that tells us a Unix-format
specification is not allowed to have a version number, so in
that case, always escape the semicolon since it can't be the
start of a version specification.

Also, don't add the version number when fileifying directory
specs if this "no versions" feature is in effect.
don't repeatedly call HvUSEDKEYS

HvUSEDKEYS contains a function call nowadays. Don't call it repeatedly.
remove a redundant SvTIED_mg from S_do_smartmatch

A non tied HV potentially could be checked twice for being tied. Move
HvUSEDKEYS part to avoid checking var tied twice. The redundant tied check
comes from day 1 of smart match in commit 0d863452f5 . IDK why HV sides
are swapped, but comment it.
ExtUtils-Install-1.62 has been released to CPAN
perldiag: Clarify that lexicals do not trigger "used only once"