]> granicus.if.org Git - recode/log
recode
7 years agoAdd test for correct error code returned on untranslatable character
Reuben Thomas [Wed, 17 Jan 2018 22:19:38 +0000 (22:19 +0000)]
Add test for correct error code returned on untranslatable character

See Debian bug #348909.

7 years agoRecode.pyx: add method to get error from Task
Reuben Thomas [Wed, 17 Jan 2018 22:15:40 +0000 (22:15 +0000)]
Recode.pyx: add method to get error from Task

7 years agoiconv.c: fix a misspelling in a comment
Reuben Thomas [Wed, 17 Jan 2018 21:33:58 +0000 (21:33 +0000)]
iconv.c: fix a misspelling in a comment

7 years agorecodext.h: clarify Star Trek reference in a comment
Reuben Thomas [Wed, 17 Jan 2018 21:33:32 +0000 (21:33 +0000)]
recodext.h: clarify Star Trek reference in a comment

7 years agoiconv.c: fix comment typo
Reuben Thomas [Wed, 17 Jan 2018 20:46:55 +0000 (20:46 +0000)]
iconv.c: fix comment typo

7 years agot40_java.py: fix qp to Java test
Reuben Thomas [Wed, 17 Jan 2018 14:34:41 +0000 (14:34 +0000)]
t40_java.py: fix qp to Java test

When converting individual characters in Java source, we don’t add BOMs, so
don’t require them in the output.

test_2 ends up only doing one direction, but that’s OK because test_1 does
the other.

7 years agoRecode.pyx: expose RECODE_TASK
Reuben Thomas [Wed, 17 Jan 2018 14:34:15 +0000 (14:34 +0000)]
Recode.pyx: expose RECODE_TASK

Minimal interface for just what we need right now!

7 years agobase64.c: fix handling of EOF and LF (fixes Debian bug #271939)
Reuben Thomas [Wed, 17 Jan 2018 13:13:12 +0000 (13:13 +0000)]
base64.c: fix handling of EOF and LF (fixes Debian bug #271939)

LF can occur before the end of a full line (76 characters) if it’s
immediately followed by EOF.

The last line can be any number of quadruplets long; it need not be 76
characters. (I suspect this was an attempt to deal with LF without the extra
call to get_byte and goto.)

7 years agorecodext.h: re-punctuate comment to fix the sense
Reuben Thomas [Wed, 17 Jan 2018 13:11:56 +0000 (13:11 +0000)]
recodext.h: re-punctuate comment to fix the sense

7 years agot40_java.py: spell “Java” correctly (not all upper-case)
Reuben Thomas [Wed, 17 Jan 2018 13:10:41 +0000 (13:10 +0000)]
t40_java.py: spell “Java” correctly (not all upper-case)

7 years agomixed.c: remove “inline” comments from function declarations
Reuben Thomas [Wed, 17 Jan 2018 13:09:32 +0000 (13:09 +0000)]
mixed.c: remove “inline” comments from function declarations

Compilers can work this stuff out for themselves nowadays.

7 years agoRecode.pyx: allow NULs in recoded data
Reuben Thomas [Tue, 16 Jan 2018 11:07:44 +0000 (11:07 +0000)]
Recode.pyx: allow NULs in recoded data

Expose recode_buffer_to_buffer rather than recode_string, and check return
value. This makes some tests fail (see Debian bug #271939)

Add a comment explaining why we prefer the buffer APIs, and don’t bother
with string APIs at all.

Also add a FIXME to expose file APIs.

7 years agoRecode.pyx: minor improvements
Reuben Thomas [Tue, 16 Jan 2018 10:37:48 +0000 (10:37 +0000)]
Recode.pyx: minor improvements

size_t is supported natively these days, so don’t make a dangerous guess as
to its value (in particular, should never hard-wire things determined in
config.h!).

Use libcpp’s bool instead of hand-defining a bool enum.

Use True for C true (will be automatically coerced).

7 years agovaria.c: resolve various conflicts
Reuben Thomas [Tue, 16 Jan 2018 01:06:51 +0000 (01:06 +0000)]
varia.c: resolve various conflicts

Rather than compile-time macros for two different options:

1. Resolve the Kamenický encoding by referring to the Wikipedia version at
https://en.wikipedia.org/wiki/Kamenick%C3%BD_encoding
2. Allow the extra characters in the Cork encoding table.

Also fill in some missing Unicode code points, fixing some FIXMEs.

7 years agoutf8.c: remove support for non-standard 32nd bit
Reuben Thomas [Tue, 16 Jan 2018 00:41:33 +0000 (00:41 +0000)]
utf8.c: remove support for non-standard 32nd bit

7 years agonames.c: remove support for dumping hash stats
Reuben Thomas [Tue, 16 Jan 2018 00:38:15 +0000 (00:38 +0000)]
names.c: remove support for dumping hash stats

7 years agonames.c: remove hard-wired define DEFAULT_CHARSET support
Reuben Thomas [Tue, 16 Jan 2018 00:35:33 +0000 (00:35 +0000)]
names.c: remove hard-wired define DEFAULT_CHARSET support

7 years agoatarist.c: remove non-RFC1345 option
Reuben Thomas [Tue, 16 Jan 2018 00:32:55 +0000 (00:32 +0000)]
atarist.c: remove non-RFC1345 option

7 years agocharsets.def: fix missing characters in IBM870
Reuben Thomas [Tue, 16 Jan 2018 00:29:32 +0000 (00:29 +0000)]
charsets.def: fix missing characters in IBM870

Patch from Carey Evans <careye@spamcop.net>

Fixes Debian bug #270414

7 years agoDon’t insist on chmod succeeding for output files
Reuben Thomas [Tue, 16 Jan 2018 00:23:58 +0000 (00:23 +0000)]
Don’t insist on chmod succeeding for output files

Support file systems that lack permissions (e.g. FAT).

Fixes Debian bug #237249.

7 years agomain.c: assume we have rename(3) as it’s standard since C89
Reuben Thomas [Tue, 16 Jan 2018 00:11:25 +0000 (00:11 +0000)]
main.c: assume we have rename(3) as it’s standard since C89

In fact, since my recent changes, HAVE_RENAME was not being defined, so
rename was not used!

7 years agomain.c: fix potential buffer overflow (Debian bug #754945)
Reuben Thomas [Mon, 15 Jan 2018 23:55:16 +0000 (23:55 +0000)]
main.c: fix potential buffer overflow (Debian bug #754945)

Patch from Alexander Gerasiov <gq@debian.org>

7 years agosrc/Makefile.am: libgnu is needed by librecode, not just recode
Reuben Thomas [Mon, 15 Jan 2018 23:51:56 +0000 (23:51 +0000)]
src/Makefile.am: libgnu is needed by librecode, not just recode

7 years agodoc: add a missing dependency and some missing .gitignore entries
Reuben Thomas [Mon, 15 Jan 2018 22:45:49 +0000 (22:45 +0000)]
doc: add a missing dependency and some missing .gitignore entries

7 years agoMove maintainer documentation into HACKING.org
Reuben Thomas [Mon, 15 Jan 2018 15:40:52 +0000 (15:40 +0000)]
Move maintainer documentation into HACKING.org

Minor updates, and add how to release with woger

7 years agoMakefile.am: add release target
Reuben Thomas [Mon, 15 Jan 2018 15:40:39 +0000 (15:40 +0000)]
Makefile.am: add release target

7 years agoCount more code in loc target
Reuben Thomas [Mon, 15 Jan 2018 14:33:47 +0000 (14:33 +0000)]
Count more code in loc target

Include the currently-experimental Cython binding, and the build system.

7 years agoAdd Travis and AppVeyor CI
Reuben Thomas [Sun, 14 Jan 2018 23:32:02 +0000 (23:32 +0000)]
Add Travis and AppVeyor CI

7 years agoCheck for Python >= 2.2 during configuration
Reuben Thomas [Sun, 14 Jan 2018 22:58:38 +0000 (22:58 +0000)]
Check for Python >= 2.2 during configuration

7 years agoDon't ship help2man, but cope with it missing
Reuben Thomas [Sun, 14 Jan 2018 22:43:25 +0000 (22:43 +0000)]
Don't ship help2man, but cope with it missing

7 years agoRemove unused copy of mdate-sh
Reuben Thomas [Sun, 14 Jan 2018 22:17:11 +0000 (22:17 +0000)]
Remove unused copy of mdate-sh

7 years agoUpdate git installation instructions
Reuben Thomas [Sun, 14 Jan 2018 22:09:15 +0000 (22:09 +0000)]
Update git installation instructions

7 years agoRename MASK macro to BIT_MASK to avoid clash with Python headers
Reuben Thomas [Sun, 14 Jan 2018 22:04:05 +0000 (22:04 +0000)]
Rename MASK macro to BIT_MASK to avoid clash with Python headers

7 years agoFix warnings
Reuben Thomas [Sun, 14 Jan 2018 00:39:12 +0000 (00:39 +0000)]
Fix warnings

7 years agoRemove custom maintainer targets
Reuben Thomas [Sun, 14 Jan 2018 18:57:09 +0000 (18:57 +0000)]
Remove custom maintainer targets

gnulib handles po file updating, and the others are personal to François
Pinard.

7 years agoMake all steps, surfaces & fallbacks depend on generated *steps.h header files
Reuben Thomas [Sun, 14 Jan 2018 18:47:19 +0000 (18:47 +0000)]
Make all steps, surfaces & fallbacks depend on generated *steps.h header files

7 years agosrc/Makefile.am: hide timestamp-updating command for consistency
Reuben Thomas [Sun, 14 Jan 2018 17:34:56 +0000 (17:34 +0000)]
src/Makefile.am: hide timestamp-updating command for consistency

7 years agoTimestamp files should definitely not be in git!
Reuben Thomas [Sun, 14 Jan 2018 17:34:14 +0000 (17:34 +0000)]
Timestamp files should definitely not be in git!

7 years agoNeither cleaner.h nor recodext.h needs to be generated
Reuben Thomas [Sun, 14 Jan 2018 13:03:21 +0000 (13:03 +0000)]
Neither cleaner.h nor recodext.h needs to be generated

So don’t generate them, and move cleaner.h into src; this fixes dependency
tracking, and prevents system headers from installations of librecode being
used erroneously.

Also remove defunct symbols from cleaner.h.

Also fix a wrong dependency: charname.lo depends on charname.h, not
rfc1345.h.

7 years agoRemove generated file doc/stamp-vti
Reuben Thomas [Sun, 14 Jan 2018 01:38:00 +0000 (01:38 +0000)]
Remove generated file doc/stamp-vti

7 years agoRemove some more generated files from git
Reuben Thomas [Sun, 14 Jan 2018 00:02:23 +0000 (00:02 +0000)]
Remove some more generated files from git

7 years agoUse gnulib's manywarnings module
Reuben Thomas [Sat, 13 Jan 2018 22:41:57 +0000 (22:41 +0000)]
Use gnulib's manywarnings module

7 years agoUpdate .po files
Reuben Thomas [Sat, 13 Jan 2018 22:29:30 +0000 (22:29 +0000)]
Update .po files

Remove .gmo files from git; add a couple more generated gettext files to
.gitignore

7 years ago.gitignore: add distribution tarball
Reuben Thomas [Sat, 13 Jan 2018 22:26:20 +0000 (22:26 +0000)]
.gitignore: add distribution tarball

7 years agoFix make distcheck
Reuben Thomas [Sat, 13 Jan 2018 22:25:25 +0000 (22:25 +0000)]
Fix make distcheck

7 years agotests/Makefile.am: remove mention of removed file NOTES
Reuben Thomas [Sat, 13 Jan 2018 22:08:47 +0000 (22:08 +0000)]
tests/Makefile.am: remove mention of removed file NOTES

7 years agoaclocal.sh hack no longer needed
Reuben Thomas [Sat, 13 Jan 2018 22:06:36 +0000 (22:06 +0000)]
aclocal.sh hack no longer needed

7 years agoBump version to 3.7, and add NEWS
Reuben Thomas [Sat, 13 Jan 2018 22:00:02 +0000 (22:00 +0000)]
Bump version to 3.7, and add NEWS

7 years agoREADME.org: update
Reuben Thomas [Sat, 13 Jan 2018 21:58:29 +0000 (21:58 +0000)]
README.org: update

Remove 3.7beta release notes and various other out-of-date material, and
update contact details.

7 years agoRemove most of the contrib/ directory
Reuben Thomas [Sat, 13 Jan 2018 21:55:12 +0000 (21:55 +0000)]
Remove most of the contrib/ directory

Specifically, the Amiga and DJGPP ports, the RPM specfiles, and utf8.el, all
of which are obsolete.

recode.el looks like it still contains some useful bits.

7 years agoRemove USE_HELPERS and INLINE_HARDER
Reuben Thomas [Sat, 13 Jan 2018 21:46:09 +0000 (21:46 +0000)]
Remove USE_HELPERS and INLINE_HARDER

These days we can safely leave this stuff to compilers.

7 years agotask.c: get better version of pipeline code compiling again
Reuben Thomas [Sat, 13 Jan 2018 21:13:05 +0000 (21:13 +0000)]
task.c: get better version of pipeline code compiling again

It does not work currently for multiple steps. Document this.

7 years agomain.c: remove a FIXME: doesn't need to be done
Reuben Thomas [Sat, 13 Jan 2018 21:05:36 +0000 (21:05 +0000)]
main.c: remove a FIXME: doesn't need to be done

7 years agoRemove #if 0-commented code, except FIXMEs
Reuben Thomas [Sat, 13 Jan 2018 17:21:04 +0000 (17:21 +0000)]
Remove #if 0-commented code, except FIXMEs

7 years agoRemove after-patch hacks
Reuben Thomas [Sat, 13 Jan 2018 17:07:30 +0000 (17:07 +0000)]
Remove after-patch hacks

7 years agoAdd target to count code with loc
Reuben Thomas [Sat, 13 Jan 2018 17:06:39 +0000 (17:06 +0000)]
Add target to count code with loc

7 years agoRemove more generated files from git
Reuben Thomas [Sat, 13 Jan 2018 16:54:30 +0000 (16:54 +0000)]
Remove more generated files from git

7 years agoUpdate to gettext 0.19; fixes some autotools warnings
Reuben Thomas [Sat, 13 Jan 2018 16:48:44 +0000 (16:48 +0000)]
Update to gettext 0.19; fixes some autotools warnings

7 years agoMake shared library file names and library build directories portable
Reuben Thomas [Sat, 13 Jan 2018 16:42:47 +0000 (16:42 +0000)]
Make shared library file names and library build directories portable

7 years agoRemove generated file tests/Recode.c from git
Reuben Thomas [Sat, 13 Jan 2018 16:34:34 +0000 (16:34 +0000)]
Remove generated file tests/Recode.c from git

7 years agoUse Gnulib as much as possible
Reuben Thomas [Sat, 13 Jan 2018 16:32:46 +0000 (16:32 +0000)]
Use Gnulib as much as possible

Require C99, and use Gnulib to provide everything else.

7 years agoRemove ChangeLog files
Reuben Thomas [Sat, 13 Jan 2018 12:50:10 +0000 (12:50 +0000)]
Remove ChangeLog files

7 years agoUpdate translations
Reuben Thomas [Sat, 13 Jan 2018 09:38:11 +0000 (09:38 +0000)]
Update translations

7 years agoGnulib-ify
Reuben Thomas [Sat, 13 Jan 2018 09:35:38 +0000 (09:35 +0000)]
Gnulib-ify

7 years agopytest: fix typo (French word should be English) in output
Reuben Thomas [Sat, 13 Jan 2018 08:03:20 +0000 (08:03 +0000)]
pytest: fix typo (French word should be English) in output

7 years agoFix conditional in Makefile.am: use automake conditional
Reuben Thomas [Fri, 12 Jan 2018 18:13:15 +0000 (18:13 +0000)]
Fix conditional in Makefile.am: use automake conditional

7 years agoRemove generated files from git
Reuben Thomas [Fri, 12 Jan 2018 18:12:59 +0000 (18:12 +0000)]
Remove generated files from git

10 years agoTODO: Nit.
François Pinard [Sun, 2 Feb 2014 19:58:48 +0000 (14:58 -0500)]
TODO: Nit.

11 years agoSite overhaul in progress.
François Pinard [Mon, 27 Jan 2014 05:48:23 +0000 (00:48 -0500)]
Site overhaul in progress.

11 years agotests/Makefile.in: Towards Python 3.
François Pinard [Fri, 10 Jan 2014 13:51:42 +0000 (08:51 -0500)]
tests/Makefile.in: Towards Python 3.

11 years agoREADME.org: Clarification.
François Pinard [Mon, 2 Dec 2013 19:15:09 +0000 (14:15 -0500)]
README.org: Clarification.
Thanks to Aurélien Bondis.

11 years agoDerived files.
François Pinard [Mon, 2 Dec 2013 04:14:48 +0000 (23:14 -0500)]
Derived files.

11 years agopytest: Mark skipped tests in output. Flush after each write.
François Pinard [Sun, 1 Dec 2013 23:02:45 +0000 (18:02 -0500)]
pytest: Mark skipped tests in output.  Flush after each write.

11 years agotests/Makefile.am, tests/setup.py.in: Build in place.
François Pinard [Mon, 2 Dec 2013 01:31:33 +0000 (20:31 -0500)]
tests/Makefile.am, tests/setup.py.in: Build in place.

11 years agotests/common.py: The Python API is not optional, do not work around it.
François Pinard [Sun, 1 Dec 2013 22:57:59 +0000 (17:57 -0500)]
tests/common.py: The Python API is not optional, do not work around it.

11 years agosrc/Makefile.am: Remove ansi2knr crumbs.
François Pinard [Sun, 1 Dec 2013 22:54:22 +0000 (17:54 -0500)]
src/Makefile.am: Remove ansi2knr crumbs.

11 years agoREADME.org: Some more blurb on Speed and Memory.
François Pinard [Sun, 1 Dec 2013 22:53:24 +0000 (17:53 -0500)]
README.org: Some more blurb on Speed and Memory.

11 years agoREADME.org: Remove tool version table.
François Pinard [Sun, 1 Dec 2013 22:52:11 +0000 (17:52 -0500)]
README.org: Remove tool version table.

11 years agoREADME.org: Recipe for hurry installation.
François Pinard [Sat, 30 Nov 2013 17:55:07 +0000 (12:55 -0500)]
README.org: Recipe for hurry installation.

11 years agoRecode.pyx: Add copyright block.
François Pinard [Mon, 2 Dec 2013 03:53:34 +0000 (22:53 -0500)]
Recode.pyx: Add copyright block.

11 years agoRecode.pyx: Whitespace as Python, not as C.
François Pinard [Sat, 30 Nov 2013 17:54:26 +0000 (12:54 -0500)]
Recode.pyx: Whitespace as Python, not as C.

11 years agoDerived files.
François Pinard [Sat, 30 Nov 2013 14:44:17 +0000 (09:44 -0500)]
Derived files.

11 years agotests/Makefile.am: Switch from Pyrex to Cython.
François Pinard [Sat, 30 Nov 2013 14:38:58 +0000 (09:38 -0500)]
tests/Makefile.am: Switch from Pyrex to Cython.

11 years agoconfigure.ac, lib/Makefile.am, src/Makefile: Modernized a bit.
François Pinard [Sat, 30 Nov 2013 14:38:28 +0000 (09:38 -0500)]
configure.ac, lib/Makefile.am, src/Makefile: Modernized a bit.

11 years agoREADME: Still needed, points to README.org.
François Pinard [Sat, 30 Nov 2013 14:35:46 +0000 (09:35 -0500)]
README: Still needed, points to README.org.

11 years agoREADME.org: Add a last migration step.
François Pinard [Fri, 29 Nov 2013 17:12:44 +0000 (12:12 -0500)]
README.org: Add a last migration step.

11 years agoREADME.org: New name and format for README.
François Pinard [Fri, 29 Nov 2013 04:26:34 +0000 (23:26 -0500)]
README.org: New name and format for README.
Also, document the planned future of Recode.

11 years agoAdministrivia.
François Pinard [Sat, 12 Oct 2013 05:19:03 +0000 (01:19 -0400)]
Administrivia.

12 years agoIgnore GNUmakefile.
François Pinard [Tue, 28 Aug 2012 00:48:38 +0000 (20:48 -0400)]
Ignore GNUmakefile.

12 years agoAdd .hgignore.
François Pinard [Mon, 18 Jun 2012 02:42:55 +0000 (22:42 -0400)]
Add .hgignore.

13 years agoTHANKS: Seanster was not a real name
François Pinard [Wed, 23 Nov 2011 04:13:33 +0000 (23:13 -0500)]
THANKS: Seanster was not a real name

13 years agorequest.c (scan_options): Write new_ instead of new.
François Pinard [Tue, 22 Nov 2011 04:33:53 +0000 (23:33 -0500)]
request.c (scan_options): Write new_ instead of new.
Reported by Seanster.

13 years agoMerge pull request #2 from jpopelka/master
François Pinard [Thu, 20 Oct 2011 16:57:49 +0000 (09:57 -0700)]
Merge pull request #2 from jpopelka/master

Possible problems found by static analysis of code

13 years agoCoverity: RESOURCE_LEAK
Jiri Popelka [Thu, 23 Jun 2011 13:24:52 +0000 (15:24 +0200)]
Coverity: RESOURCE_LEAK

src/hash.c:783: var_assign: Assigning: "new_table" =  storage returned from
                "hash_initialize(candidate, table->tuning, table->hasher,
                                 table->comparator, table->data_freer)".
src/hash.c:816: leaked_storage: Variable "new_table" going out of scope
                                leaks the storage it points to.

src/html.c:428: var_assign: Assigning: "table" =  storage returned from
                "hash_initialize(0U, NULL, code_hash, code_compare, NULL)".
src/html.c:436: leaked_storage: Variable "table" going out of scope
                                leaks the storage it points to.

src/html.c:609: var_assign: Assigning: "table" =  storage returned from
                "hash_initialize(0U, NULL, string_hash, string_compare, NULL)".
src/html.c:617: leaked_storage: Variable "table" going out of scope
                                leaks the storage it points to.

src/request.c:758: var_assign: Assigning: "new" =  storage returned from
                               "recode_malloc(outer, 16UL)".
src/request.c:768: leaked_storage: Variable "new" going out of scope
                                   leaks the storage it points to.

13 years agoCoverity: UNINIT
Jiri Popelka [Thu, 23 Jun 2011 13:11:57 +0000 (15:11 +0200)]
Coverity: UNINIT

src/recode.c:192: var_decl: Declaring variable "right_table" without initializer.
src/recode.c:240: uninit_use_in_call: Using uninitialized value
                  "right_table[right]" when calling "recode_error".

src/recode.c:191: var_decl: Declaring variable "left_table" without initializer.
src/recode.c:228: uninit_use_in_call: Using uninitialized value
                  "left_table[left]" when calling "recode_error".
src/recode.c:281: uninit_use: Using uninitialized value "left_table[search]".

13 years agoCoverity: FORWARD_NULL
Jiri Popelka [Thu, 23 Jun 2011 12:16:07 +0000 (14:16 +0200)]
Coverity: FORWARD_NULL

src/mixed.c:56: assign_zero: Assigning: "task->input.name" = 0.
src/mixed.c:64: var_deref_op: Dereferencing null variable "task->input.name".

13 years agorecode.texi: Add notes on the exit status.
François Pinard [Thu, 3 Mar 2011 14:07:06 +0000 (09:07 -0500)]
recode.texi: Add notes on the exit status.

Reported by Dan Jacobson

13 years agoREADME: More on GitHub and after-patch.
François Pinard [Thu, 24 Feb 2011 13:21:56 +0000 (08:21 -0500)]
README: More on GitHub and after-patch.

13 years agoJust Recode, not Free Recode
François Pinard [Thu, 24 Feb 2011 13:19:49 +0000 (08:19 -0500)]
Just Recode, not Free Recode

14 years agoTo Automake 1.11.1, Autoconf 2.67 and Libtool 2.2.6b
François Pinard [Wed, 29 Dec 2010 14:59:48 +0000 (09:59 -0500)]
To Automake 1.11.1, Autoconf 2.67 and Libtool 2.2.6b