An alternate base32 encoder (not RFC 3548 compliant).
The rationale for base-32 encoding in RFC 3548 [1] is as written therein: "The
Base 32 encoding is designed to represent arbitrary sequences of octets in a
form that needs to be case insensitive but need not be humanly readable.".
The rationale for our encoding is different -- it is to represent arbitrary
sequences of octets in a form that is as convenient as possible for human
users to manipulate. In particular, z-base-32 was created in order to serve
the Mnet project [3], where 30-octet cryptographic values are encoded into
URIs for humans to manipulate. Anticipated uses of these URIs include cut-
and-paste, text editing (e.g. in HTML files), manual transcription via a
keyboard, manual transcription via pen-and-paper, vocal transcription over
phone or radio, etc.
The desiderata for such an encoding are:
* minimizing transcription errors -- e.g. the well-known problem of confusing
`0' with `O'
* embedding into other structures -- e.g. search engines, structured or
marked-up text, file systems, command shells
* brevity -- Shorter URLs are better than longer ones.
* ergonomics -- Human users (especially non-technical ones) should find the
URIs as easy and pleasant as possible. The uglier the URI looks, the worse.
A fast erasure codec which can be used with the command-line, C,
Python, or Haskell.
Fast, portable, programmable erasure coding a.k.a. "forward error
correction": the generation of redundant blocks of information such
that if some blocks are lost then the original data can be recovered
from the remaining blocks. The zfec package includes command-line
tools, C API, Python API, and Haskell API.
Version 1.38 April 26, 2010
* Support ENVIRONMENT and FILES sections.
* Move all translated text into .po files (previously .h2m include
files were handled seperately).
* Submit package to the Translation Project (translationproject.org).
* Add Vietnamese translation.
* Add some comments for translators.
Version 1.37 November 14, 2009
* Update GPL to v3.
* Add --version-string option.
* Add --no-discard-stderr option.
* Add line breaks into bug reporting section.
* Add Brazilian Portuguese and German translations.
* Select a reasonable configure default for --enable-nls.
* Revise preload mechanism to not require preloadable libintl.
version 2.29).
Pkgsrc changes:
- Canonical MASTER_SITES
Upstream changes:
2.29 Wed Mar 17 02:39:12 CET 2010
- fix a memory leak when callbacks set using filter_json_object
or filter_json_single_key_object were called (great testcase
by Eric Wilhelm).
skf (1.97.1)
* enable -i and -o in nkf compatible mode.
* restore old umask after overwrite.
* add flush on unic*de and b-right.
* disable adding lineend on encode-tail when in LWL extension.
Upstream changes:
2.28 Thu Mar 11 20:30:46 CET 2010
- implement our own atof function - perl's can be orders of
magnitudes slower than even the system one. on the positive
side, ours seems to be more exact in general than perl's.
(testcase provided by Tim Meadowcroft).
- clarify floating point conversion issues a bit.
- update jpsykes csrf article url.
- updated benchmark section - JSON::PP became much faster!
Upstream changes:
2010-01-25 Release 3.09 - Gisle Aas <gisle@ActiveState.com>
The Quoted-Printable encoder would sometimes output lines
that were 77 characters long. The max line length should be 76.
[RT#53919]
pkgsrc changes:
- Adding license definition
- Adjusting dependencies
Upstream changes:
2010-01-18 Gisle Aas <gisle@ActiveState.com>
Release 0.13
Header order tweak to make it compile with Strawberry Perl [RT#50443]
Get rid of CVS artifacts
2.17 Thu Jan 7 12:23:13 2010
[JSON]
- fixed a problem caused by JSON::XS backend and support_by_pp option
(rt#52842, rt#52847 by ikegami)
[JSON::PP]
- made compatible with JSON::XS 2.27
- patched decode for incr_parse (rt#52820 by ikegami)
- relaxed option caused an infinite loop in some condition.
2.16 Fri Oct 16 15:07:37 2009
[JSON][JSON::PP]
- made compatible with JSON::XS 2.26
*indent adds a final newline
- corrected copyrights in JSON::PP58.
Solaris if GCC is used. As this bit is both operating system and compiler
specific we can simple bypass "libtool" which is what must have happened
with the old "libtool".
The build in the non-GCC case or under Linux respectively OSF1 might
still be broken. But I don't have a setup to test that.
so change MASTER_SITES to only ftp.sra.co.jp and force to use newer one.
As sccsid in source, ${MASTE_SITE_FREEBSD}'s one is 2.2, and sra's one is 2.3,
so bump PKGVERSION to 2.3.
This issue noticed by taca@ by private mail.
While here, set LICENSE=gnu-gpl-v2, modify pach-aa to suppress some
warings by addition of include stdlib.h.
skf (1.96.5)
* delete _phpswigglue on clean
* fix --set-g* does not work on misc mb codeset.
* preconvert detect and result inconsistency further fix up.
* ebcdic related ascii loading error fixed.
Upstream changes:
1.33 Wed Oct 28 09:04:38 CET 2009
- handle yEnc files with part end=0 and total= more gracefully.
I wish yEnc had been created by somebody who knows;
what he does;
but I doubt he even knows;
what he did.
(while here, added commented out LICENSE=zlib-liccense)
This release is maintainance release, mainly for bug fixes.
* Add install target to Makefile
* Let to recognize hankaku-kana in 8bit JIS
* Fixes perl module build
* Fixes no effect of -Z1, -Z2 and -Z0 option
* Fixes input specification for UTF-16 and UTF-32
* Fixes missing BOM output for UTF-32.
* Fixes miss guesses and output for 4bytes UTF-8
2.0.1 (2009-11-10)
* Migrated to http://code.google.com/p/chardet
* Fixed minor typo in documentation
* Synchronized version numbers of Python 2 and Python 3 versions
ChangeLog:
2.26 Sat Oct 10 03:26:19 CEST 2009
- big integers could become truncated (based on patch
by Strobl Anton).
- output format change: indent now adds a final newline, which is
more expected and more true to the documentation.
pkgsrc changes:
- Adding license definition
Upstream changes:
1.32 Wed Sep 16 20:07:13 CEST 2009
- Due to a glitch with CVS, configure lacked executable bits.
(Quickly reported by Anton Berezin).
1.31 Wed Sep 16 09:04:30 CEST 2009
- do not use system-replacements for case-insensitive string
functions when found, as they are broken on too many systems
(mostly bsds, as usual, but at least some versions of GNU/Linux
disagree with themselves apparently). Analyzed by Anton Berezin.
1.3 Sat Aug 29 01:24:35 CEST 2009
- major changes, new bugs and changes in decoding behaviour are
expected (but not intended).
- major scanning and decoding speed-up (by a factor of 4),
by replacing ultra-slow _FP_gets and improving IsKnownHeader
(but fgets is *still* responsible for >50% if the time).
- new option OPT_AUTOCHECK to disable O(n) UUCheckGlobalList
call after every loadfile, majorly speeds up large decodes
(easily by a factor of 10..100).
- allow "Smerge -1" to call UUCheckGlobalList.
- majorly speed up part insertion (still O(n), but much faster).
- allow for 1023 octet headers instead of the standard
255 octet ones.
- support strcasestr, strcasecmp, strncasecmp for added speed.
pkgsrc changes:
- Adding dependency to devel/p5-common-sense
Upstream changes since 2.24:
2.25 Sat Aug 8 12:04:41 CEST 2009
- the perl debugger completely breaks lvalue subs - try to work
around the issue.
- ignore RMAGICAL hashes w.r.t. CANONICAL.
- try to work around a possible char signedness issue on aix.
- require common sense.
- Updating package for p5 module JSON::Any from 1.19 to 1.21
- Adjusting license according to META.yml
- Adjusting dependency to JSON::XS according to Makefile.PL
Upstream changes:
1.21 2009-07-03
* Update JSON::XS boolean support; it provides true/false methods (semifor)
* Added a workaround for handlers that fail to decode bare true/false values (semifor)
1.20 2009-07-02
* Re-work things so that deprecated modules just warn but aren't actually excluded (perigrin)
* Improve the warnings when things go awry (semifor)
- Updating package of p5 module JSON::XS from 2.232 to 2.240 (module
version 2.24)
- Setting license to ${PERL5_LICENSE} according to COPYING
Upstream changes:
2.24 Sat May 30 08:25:45 CEST 2009
- the incremental parser did not update its parse offset
pointer correctly when parsing utf8-strings (nicely
debugged by Martin Evans).
- appending a non-utf8-string to the incremental parser
in utf8 mode failed to upgrade the string.
- wording of parse error messages has been improved.
- Updating package of p5 module JSON and subclasses from 2.14 to 2.15
- Setting LICENSE to ${PERL5_LICENSE} accroding to META.yaml
Upstream changes:
2.15 Tue Jun 2 16:36:42 2009
[JSON]
- made compatible with JSON::XS 2.24
- corrected copyrights in some modules.
[JSON::PP]
- modified incr_parse, pointed by Martin J. Evans (rt#46439)
- deleted a meaningless code
- updating package of p5 module MIME::Base64 from 3.07nb1 to 3.08
- adjusting LICENSE according to module documentation
Upstream changes:
2009-06-09 - Release 3.08: Gisle Aas <gisle@ActiveState.com>
Jarkko Hietaniemi (1):
EBCDIC changes from core
Nicholas Clark (1):
Get rid of the PERL_CORE hacks
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
on some platforms that lacked shared library support in the past. The
list hasn't been maintained at all and the gain is very limited, so just
get rid of it.
1.5 Thu Aug 30 14:42:08 CEST 2007
- Various small changes to make Text::Iconv compile on OpenVMS
(based on a patch by Peter (Stig) Edwards)
- Output buffer was always initialized to 5 bytes--this was
just for testing, but I'd forgotten to revert back to the
original code (detected via a bug report by Aldo LeTellier).
1.6 Sat Oct 13 00:16:30 CEST 2007
- Makefile.PL now uses File::Spec to portably specify the null
device. This should make it possible to build Text::Iconv
on Windows "out of the box".
- Added get_attr() and set_attr() methods. They provide an
interface to the iconvctl() function of GNU libiconv.
1.7 Wed Oct 17 15:49:56 CEST 2007
- Makefile.PL now explicitly declares "use 5.006;" since it
uses functionality like delete() for array elements.
- In Iconv.xs, moved the variable declarations in
ti_set_attr() and ti_get_attr() into the PREINIT: section.
This makes it possible to compile it using gcc 2.96.
Upstream changes:
2.232 Sun Feb 22 11:12:25 CET 2009
- use an exponential algorithm to extend strings, to
help platforms with bad or abysmal==windows memory
allocater performance, at the expense of some memory
wastage (use shrink to recover this extra memory).
(nicely analysed by Dmitry Karasik).
2.2311 Thu Feb 19 02:12:54 CET 2009
- add a section "JSON and ECMAscript" to explain some
incompatibilities between the two (problem was noted by
various people).
- add t/20_faihu.t.
Upstream changes:
2.14 Tue Feb 24 11:20:24 2009
[JSON]
- the compatible XS version was miswritten in document.
2.13 Sat Feb 21 17:01:05 2009
[JSON::PP]
- decode() didn't upgrade unicode escaped charcters \u0080-\u00ff.
this problem was pointed by rt#43424 (Mika Raento)
[JSON::PP::56]
- fixed utf8::encode/decode emulators bugs.
- defined a missing B module constant in Perl 5.6.0.
(reported by Clinton Pierce)
[JSON::PP::5005]
- _decode_unicode() returned a 0x80-0xff value as UTF8 encoded byte.
[JSON]
- added a refference to JSON::XS's document "JSON and ECMAscript".
- fixed a typo in the document (pointed by Jim Cromie).
pkgsrc changes:
- Destdir support.
- Include fixes for implicit function declarations probably broken on LP64.
- Fix for 64-bit time_t world in netbsd-current.
- Fix some pkglint.
- Suppress warning about mktemp() on NetBSD; usage checked.
Upstream changes:
1.6 -- Jul 21 2003
Use automake and a little bit of autoconf
convert K&R declarations/definitions to ANSI
Fixed buffer overflow in getParam and getDispositionFilename (debian patch)
Fixed possible crash in ParseContent (debian patch)
fix typo in getDispositionFilename (from Steve Friedl)
use system strcasecmp and getopt where possible.
use O_EXCL where available when creating files.
1.14
- this release is once more dedicated to Perl::Encode. There is no
way to do a check for valid UTF-8 which works with all Perl releases
from 5.8.0 up to 5.10.0. We now have to test which code works in
our Perl's Encode version and then decide which code path to go.
While here, add support of self test if PKGSRC_RUN_TEST=YES,
and let p5-nkf to sync with nkf.
Changes:
* Add -Z4 option. Convert JIS X 0208 KANA to JIS X 0201 KANA (ZENKAKU to HANKAKU).
* Add -g=0, -g=1, --guess=0 and --guess=1 option.
guesses linefeed code.
* Add some comple option. See also config.h for more information.
* Some bug fixes.
* Change license from original one to zlib's one.
* Change SCM from CVS to Git.
by shattered and bsadewitz.
help2man is a tool for automatically generating simple manual pages from
program output.
It is intended to provide an easy way for software authors to include a
manual page in their distribution without having to maintain that document.
Given a program which produces resonably standard --help and --version
outputs, help2man will attempt to re-arrange that output into something
which resembles a manual page.
1.13
- move non fatal Perl bug checks into the help screen output
- fix Perl warnings when wrong/unknown charset is used
- run check for some essential Encode functionality at every startup
- add --fixdouble option to only fix files that are double-UTF-8 encoded
- add --parsable option to allow convmv output parsable suggestions for external tools to to something with it
- add --preserve-mtimes option to restore mtimes of parent directories
- allow an argv to be a symlink
- don't checksum deleted files in tar ball and use sha256 now
- allow skippig of certain test suite tests, useful for OS X to skip NFC/NFD related stuff, for example "make test SKIPTESTS=nfd-test,someothertest" will skip that test(s)
Upstream changes:
2.231 Thu Nov 20 04:59:08 CET 2008
- work around 5.10.0 magic bugs where manipulating magic values
(such as $1) would permanently damage them as perl would
ignore the magicalness, by making a full copy of the string,
reported by Dmitry Karasik.
- work around spurious wanrings under older perl 5.8's.
TECkit is a low-level toolkit intended to be used by other
applications that need to perform encoding conversions (e.g., when
importing legacy data into a Unicode-based application). The primary
component of the TECkit package is therefore a library that performs
conversions; this is the "TECkit engine". The engine relies on
mapping tables in a specific binary format (for which documentation is
available); there is a compiler that creates such tables from a
human-readable mapping description (a simple text file).
Upstream changes:
1.12 Mon Oct 13 14:11:01 CEST 2008
- use the yencode filesize as additional matching criterium
to avoid false matches.
- made the example decoder more verbose w.r.t. error handling.
- removed potentially confusing decide_temp calls from
example decoder.
to trigger/signal a rebuild for the transition 5.8.8 -> 5.10.0.
The list of packages is computed by finding all packages which end
up having either of PERL5_USE_PACKLIST, BUILDLINK_API_DEPENDS.perl,
or PERL5_PACKLIST defined in their make setup (tested via
"make show-vars VARNAMES=...").
Upstream changes:
2.23 Mon Sep 29 05:08:29 CEST 2008
- fix a compilation problem when perl is not using char * as, well,
char *.
- use PL_hexdigit in favour of rolling our own.
simplejson is a simple, fast, extensible JSON encoder/decoder for Python
simplejson is compatible with Python 2.3 and later with no external
dependencies. It covers the full JSON specification for both encoding and
decoding, with unicode support. By default, encoding is done in an encoding
neutral fashion (plain ASCII with \uXXXX escapes for unicode characters).
The encoder may be subclassed to provide serialization in any kind of
situation, without any special support by the objects to be serialized
(somewhat like pickle).
The decoder can handle incoming JSON strings of any specified encoding
(UTF-8 by default).
2.12 Wed Jul 16 11:14:35 2008
[JSON]
- made compatible with JSON::XS 2.22
[JSON::PP]
- fixed the incremental parser in negative nest level
(pointed and patched by Yuval Kogman)
2.11 Tue Jun 17 14:30:01 2008
[JSON::PP]
- fixed the decoding process which checks number.
regarded number like chars in Unicode (ex. U+FF11) as [\d].
- enhanced error messages compatible to JSON::XS.
Pkgsrc changes:
o Use JSON/ subdir on master site instead of author dir.
o Use 2.22.22 as version number instead of 2.2222.
Upstream changes:
2.2222 Sun Jul 20 18:49:00 CEST 2008
- same game again, broken 5.10 finds yet another assertion
failure, and the workaround causes additional runtime warnings.
Work around the next assertion AND the warning. 5.10 seriously
needs to adjust it's attitude against working code.
2.222 Sat Jul 19 06:15:34 CEST 2008
- you work around one -DDEBUGGING assertion bug in perl 5.10
just to hit the next one. work around this one, too.
2.22 Tue Jul 15 13:26:51 CEST 2008
- allow higher nesting levels in incremental parser.
- error out earlier in some cases in the incremental parser
(as suggested by Yuval Kogman).
- improve incr-parser test (Yuval Kogman).
Pkgsrc change:
o Changed to JSON/ sub-dir instead of author subdir
Upstream changes:
1.17 2008-07-05
* Added documentation indicating that allow_blessed works
for most useful cases (Robin Berjon)
* Added support for obtaining the underlying representations for
true/false in JSON.
Changes since 0.10.4:
* Minor bugfix.
* Update to Unicode Character Database 5.0.0
* Fixed type sizes when stdint.h is not available.
* Fixed type sizes on 64-bit architectures.
* We have moved to http://fribidi.org/, hosted on freedesktop.org.
ChangeLog:
1.11 Fri Jun 13 15:32:30 CEST 2008
- don't ask.
1.10 Fri Jun 13 14:22:42 CEST 2008
- fix an infinite-looping problem when scanning in freestyle
mode (testcase provided by Pieter Geens).
1.09 Fri May 25 19:38:11 CEST 2007
- create something sensible, trust a windows program to fuck
it up: work around literal "(null)" filenames in yenc-encoded
files.
- some minor cleanups.
Libqrencode is a C library for encoding data in a QR Code symbol, a kind of
2D symbology that can be scanned by handy terminals such as a mobile phone
with CCD. The capacity of QR Code is up to 7000 digits or 4000 characters,
and is highly robust.
This package installs a library and a command line tool.
Package from Alaric Snell-Pym, with some improvements by me.
Provides an adapter layer between core routines for converting to and from
UTF8 and other encodings. In essence, a way to give multiple existing
Unicode modules a single common interface so you don't have to know
the underlaying implementations to do simple UTF8 to-from other character
set encoding conversions. As such, it wraps the Unicode::String,
Unicode::Map8, Unicode::Map and Jcode modules in a standardized and
simple API.
This also provides general character set conversion operation based
on UTF8 - it is possible to convert between any two compatible and
supported character sets via a simple two step chaining of conversions.
This module converts strings from and to 2-byte Unicode UCS2 format. All
mappings happen via 2 byte UTF16 encodings, not via 1 byte UTF8 encoding.
To transform these use Unicode::String.
This module can't deal directly with utf8. Use Unicode::String to convert
utf8 to utf16 and vice versa.
Character mapping is according to the data of binary mapfiles in
Unicode::Map hierarchy. Binary mapfiles can also be created with this module,
enabling you to install own specific character sets.
2.10 Tue Jun 3 18:42:11 2008
[JSON]
- made compatible with JSON::XS 2.21
* updated the document.
- added an item pointed by rt#32361 to the doc.
[JSON::PP] [JSON::PP58] [JSON::PP56] [JSON::PP5005]
- made compatible with JSON::XS 2.21
* added incr_reset
- removed useless codes.
2.09 Sun Apr 20 20:45:33 2008
[JSON]
- made compatible with JSON::XS 2.2
- changed pod section totally.
[JSON::PP] 2.20001
- made compatible witg JSON::XS 2.2
* lifted the log2 rounding restriction of max_depth and max_size.
* incremental json parsing (EXPERIMENTAL).
* allow_unknown/get_allow_unknown methods.
- the version format was changed.
X.YYZZZ => X.YY is the same as JSON::XS. ZZZ is the PP own version.
- changed pod section totally.
2.08 Sat Apr 12 22:49:39 2008
[JSON]
- fixed JSON::Boolean inheritance mechanism.
If the backend is XS with support_by_pp mode and using PP only
support method, JSON::Boolean did not work correctly.
Thanks to hg[at]apteryx's point.
[JSON::PP] 2.07
- Now split into JSON::PP58 for Perl 5.8 and lator.
- made an error message compatible to JSON::XS
did not croak when TO_JSON method returns same object as passed.
[JSON::PP58]
- modified for Perls post 5.8.0 that don't have utf8::is_utf8.
Thanks to Andreas Koenig.
2.07 Sat Feb 16 15:52:29 2008
[JSON]
- experimentally added -convert_blessed_universally to define
UNIVERSAL::TO_JSON subroutine.
use JSON -convert_blessed_universally;
$json->convert_blessed->encode( $blessed );
- and as_nonbleesed is obsoleted (not yet removed). OK?
- fixed t/04_pretty.t.
While here, marked as DESTDIR ready.
2.21 Tue Jun 3 08:43:23 CEST 2008
- (hopefully) work around a perl 5.10 bug with -DDEBUGGING.
- remove the experimental status of the incremental parser interface.
- move =encoding around again, to avoid bugs with search.cpan.org.
when can we finally have utf-8 in pod???
- add ->incr_reset method.
2.2 Wed Apr 16 20:37:25 CEST 2008
- lifted the log2 rounding restriction of max_depth and max_size.
- make booleans mutable by creating a copy instead of handing out
the same scalar (reported by pasha sadri).
- added support for incremental json parsing (still EXPERIMENTAL).
- implemented and added a json_xs command line utility that can convert
from/to a number of serialisation formats - tell me if you need more.
- implement allow_unknown/get_allow_unknown methods.
- fixed documentation of max_depth w.r.t. higher and equal.
- moved down =encoding directive a bit, too much breaks if it's the first
pod directive :/.
- removed documentation section on other modules, it became somewhat
outdated and is nowadays mostly of historical interest.
2.1 Wed Mar 19 23:23:18 CET 2008
- update documentation here and there: add a large section
about utf8/latin1/ascii flags, add a security consideration
and extend and clarify the JSON and YAML section.
- medium speed enhancements when encoding/decoding non-ascii chars.
- minor speedup in number encoding case.
- extend and clarify the section on incompatibilities
between YAML and JSON.
- switch to static inline from just inline when using gcc.
- add =encoding utf-8 to the manpage, now that perl 5.10 supports it.
- fix some issues with UV to JSON conversion of unknown impact.
- published the yahoo locals search result used in benchmarks as the
original url changes so comparison is impossible.