When specifying 'portmaster port-1.23 dependency-of-port-2.34'
the dependency would be built twice because the PM_NEEDS_UPDATE
list is kept by ORIGIN. So use the same technique to validate
the port in the build phase that we are using in the first pass.
Also, update the documentation on full version upgrades to encourage
users to back up any vital file in /usr/local before "making sure that
it is empty."
+ This unbreaks the build, removing BROKEN= tag.
- For examples, use [NO]PORTEXAMPLES instead of [NO]PORTDOCS
- HAS_CONFIGURE -> GNU_CONFIGURE
- Drop all patches from files/,
+ patch-configure.in and patch-newsstar.in integrated in upstream
+ patch-Makefile.am no longer needed after further upstream fixes
- Drop USE_AUTOTOOLS, we're no longer patching *.ac/*.am files.
- Mark MAKE_JOBS_SAFE for parallel builds.
- Note I cannot actually test the resulting executable for lack of local
news servers, hence I'm not taking maintainership either.
Feature safe: yes
MyBatis is a first class persistence framework with support for custom
SQL, stored procedures and advanced mappings. MyBatis eliminates almost
all of the JDBC code and manual setting of parameters and retrieval of
results. MyBatis can use simple XML or Annotations for configuration and
map primitives, Map interfaces and Java POJOs (Plain Old Java Objects)
to database records.
WWW: http://www.mybatis.org/
by other modules. Other modules which sport the same functions can
also be used to support Math::BigInt, like Math::BigInt::GMP or
Math::BigInt::Pari.
WWW: http://search.cpan.org/dist/Math-BigInt-FastCalc/
PR: ports/152635
Submitted by: Gea-Suan Lin <gslin at gslin.org>
manifest, or the equivalent in your build process.
I use this as I don't have superfluous files lying around in the
distribution directories, and have set the relevant svk ignore
properties.
To use it, just list in your .shipit file.
WWW: http://search.cpan.org/dist/ShipIt-Step-Manifest/
PR: ports/152634
Submitted by: Gea-Suan Lin <gslin at gslin.org>
sequence of moves which is established for giving equal outcomes to
both players", but it has come into general use to describe any fixed
form of behaviour.
Dist::Joseki offers you tools that help you in developing Perl module
distributions if you stick to a certain formulaic style of
structuring your distributions.
WWW: http://search.cpan.org/dist/Dist-Joseki/
PR: ports/152633
Submitted by: Gea-Suan Lin <gslin at gslin.org>
Instead of declaring the options in a hash with references to the
variables and subroutines affected by the options, you can use the
Getopt attribute on the variables and subroutines directly.
As you can see from the Synopsis, the attribute takes an argument of
the same format as you would give as the hash key for Getopt::Long.
See the Getopt::Long manpage for details.
WWW: http://search.cpan.org/dist/Getopt-Attribute/
PR: ports/152631
Submitted by: Gea-Suan Lin <gslin at gslin.org>
Class::Accessor does. While the latter deals with accessors for
scalar values, this module provides accessor makers for arrays,
hashes, integers, booleans, sets and more.
As seen in the synopsis, you can chain calls to the accessor makers.
Also, because this module inherits from Class::Accessor, you can put
a call to one of its accessor makers at the end of the chain.
The accessor generators also generate documentation ready to be used
with Sub::Documentation.
WWW: http://search.cpan.org/~marcel/Class-Accessor-Complex-1.100880/
PR: ports/152630
Submitted by: Gea-Suan Lin <gslin at gslin.org>
setting $_ to each element) and return the list composed of the
results of such evaluations. $_ can be used to modify the elements.
Data::Rmap currently traverses HASH, ARRAY, SCALAR and GLOB reference
types and ignores others. Depending on which rmap_* wrapper is used,
the BLOCK is called for only scalar values, arrays, hashes,
references, all elements or a customizable combination.
The list of data structures is traversed pre-order in a depth-first
fashion. That is, the BLOCK is called for the container reference
before is it called for it's elements (although see "recurse" below
for post-order). The values of a hash are traversed in the usual
"values" order which may affect some applications.
If the "cut" subroutine is called in the BLOCK then the traversal
stops for that branch, say if you "cut" an array then the code is
never called for it's elements (or their sub-elements). To
simultaneously return values and cut, simply pass the return list to
cut: cut('add','to','returned');
The first parameter to the BLOCK is an object which maintains the
state of the traversal. Methods available on this object are
described in "State Object" below.
WWW: http://search.cpan.org/dist/Data-Rmap/
PR: ports/152629
Submitted by: Gea-Suan Lin <gslin at gslin.org>
varying scenarios; a catch-all module for things that don't obviously
belong anywhere else. Obviously what's useful differs from person to
person, but this particular collection should be useful in
object-oriented frameworks, such as Class::Scaffold and
Data::Conveyor.
WWW: http://search.cpan.org/dist/Data-Miscellany/
PR: ports/152628
Submitted by: Gea-Suan Lin <gslin at gslin.org>
retrieve data. It does this by using a table called __Store__. Once connected
to a database, it will detect if this table is missing and create it if
necessary.
When writing data to the store, the data (a HASH reference) is first
serialized using JSON and then inserted/updated via DBIx::Class to (currently)
an SQLite backend.
Retrieving data from the store is done by key lookup or by searching an
SQL-based index. Once found, the data is deserialized via JSON and returned.
WWW: http://search.cpan.org/dist/DBIx-NoSQL/
<ChangeLog>
*) Feature: the "If-Unmodified-Since" client request header line
support.
*) Workaround: fallback to accept() syscall if accept4() was not
implemented; the issue had appeared in 0.9.0.
*) Bugfix: nginx could not be built on Cygwin; the issue had appeared
in 0.9.0.
*) Bugfix: for OpenSSL vulnerability CVE-2010-4180.
Thanks to Maxim Dounin.
</ChangeLog>