Subject: CVS commit: pkgsrc/devel/rudiments
From: Adam Ciarcinski
Date: 2021-02-16 14:10:19
Message id: 20210216131019.56573FA95@cvs.NetBSD.org

Log Message:
rudiments: updated to 1.3.1

Rudiments 1.3.1

This patch release fixes a bug in the rpm spec file and a missing library \ 
dependency in the link command for librudiments-apache.

Rudiments 1.3.0

This release mainly featured integration of code from other projects. The \ 
remnants of the old firstworks project "stencil" have been merged in, \ 
as well as some MVC base classes from other projects. Some date-time parsing \ 
code from SQL Relay has been pushed down into the datetime class.

There are some new features as well - most notably an encryption framework and \ 
aes128 class. There are also sax/dom parsers for CSV, ini, and java-style \ 
properties files as well, similar to the xml/json sax/dom classes.

The logger classes have been refactored a bit, in back-incompatible ways. Thus \ 
the minor version bump.

Full ChangeLog follows:

unattended tests
added support for escaping single/double-quotes to templateengine
migrated in clasess from stencil project
added librudiments-apache
added \r\n support when parsing CSVs
integrated MVC base classes from other projects
added inisax/inidom and propsax/propdom classes
added cronschedule class
added logger start/end methods
logger string-write works like printf now
logger indent uses uint32_t now
removed some unused logger::write() methods
added a log level to the logger class
process::spawn()'s forked child exits if exec() fails now
charstring::replace() methods are null-safe now
migrated datetime::parse() and datetime::formatAs() from sqlrelay
csvsax accepts empty (or all whitespace) files now
logger::write() is null-safe now
base64encode is whitespace-safe now
added support for 5-part dates and day-month-year 4-part dates
added datetime::getWeekOfYear
added file::extension
added directory::createTemporaryDirectory
added directory::removeTree
added encryption interface
added aes128 encryption
added charstring::startsWith/endsWith

Rudiments 1.2.2

This is a minor bug-fix release. ChangeLog follows:

fixed another long-standing charstring::httpEscape bug
-Wno-deprecated-declarations is now included if possible
added configure tests for RB_HALT/AUTOBOOT (enums on solaris 11.4)
certificate tests use sha1 if sha256 is unavailable
filedescriptor::pvt->_lstnr is initialzed to NULL in clone operation now
listener::listen() safely handles non pollin/out events now
removed waitForChildren() from shutdown/crash handlers
sigsuspend() fails if errno!=EINTR now instead of whether it returns -1
filtered out -Wl,-Bsymbolic-functions -Wl,-z,relro from krb5-config

Rudiments 1.2.1

This is a minor bug-fix release. ChangeLog follows:

charstring::isYes includes "on" and charstring::isNo includes \ 
"off"
tabs are url-encoded correctly now
"unsafe" characters are url-encoded now
httpEscape uses character::isAlphanumeric now (to improve perforamnce)
some file-descriptor-passing tweaks for modern FreeBSD
fixed some json parsing bugs
updated default_md=sha256 in ca.cnf to generate ca.pem in tests
fixed a possible double-free in listener::cleanUp

Rudiments 1.2.0

This release adds a few minor features, and fixes a few minor bugs...

The jsonsax/dom classes handle escaping correctly now.

The url class features a getError() method which returns more detailed error \ 
information than the error class. For example, if there's a protocol error, as \ 
opposed to an operating-system-level error, then url::getError() returns it.

A sha256 class has been added. The sha1, sha256, and md5 classes now prefer to \ 
use libcrypto implementations, if they are available, as they might be hardware \ 
accelerated, but fall back to internal implementations if they are not \ 
available.

hash::getHash() returns binary data now, for all hashes. Previously sha1/256 \ 
returned binary data and md5 returned a string.

charstring::hexEncode()/hexDecode(), and charstring::before()/between()/after() \ 
methods have been added to the charstring class.

The url class now supports setting the user agent and other headers for http \ 
urls. It also supports making http POST requests.

The various container classes (linkedlist, avltree, dictionary, etc.) all \ 
support remove/clearAnd(Array)Delete methods. The removeAnd(Array)Delete methods \ 
remove the node from the container and delete the value stored in the node as \ 
well. The clearAnd(Array)Delete methods operate similarly, removing all nodes.

Files:
RevisionActionfile
1.2removepkgsrc/devel/rudiments/patches/patch-src_xmldomnode.cpp
1.1addpkgsrc/devel/rudiments/patches/patch-src_Makefile.in
1.3modifypkgsrc/devel/rudiments/patches/patch-src_listener.cpp
1.4modifypkgsrc/devel/rudiments/patches/patch-include_rudiments_private_socketclient.h
1.24modifypkgsrc/devel/rudiments/distinfo
1.36modifypkgsrc/devel/rudiments/buildlink3.mk
1.21modifypkgsrc/devel/rudiments/PLIST
1.63modifypkgsrc/devel/rudiments/Makefile