Re: Radix tree for character conversion
Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>
From: Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>
To: daniel@yesql.se
Cc: hlinnaka@iki.fi, robertmhaas@gmail.com, tsunakawa.takay@jp.fujitsu.com,
tgl@sss.pgh.pa.us, ishii@sraoss.co.jp, pgsql-hackers@postgresql.org
Date: 2016-11-08T11:21:22Z
Lists: pgsql-hackers
Attachments
- 0001-Edit-perl-scripts-into-modern-style.patch (text/x-patch)
Hello, this is the revising patch applies on top of the previous patch. Differences on map files are enormous but useless for discussion so they aren't included in this. (but can be generated) This still doesn't remove three .txt/.xml files since it heavily bloats the patch. I'm planning that they are removed in the final shape. All authority files including the removed files are automatically downloaded by the Makefile in this patch. At Tue, 08 Nov 2016 10:43:56 +0900 (Tokyo Standard Time), Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp> wrote in <20161108.104356.265607041.horiguchi.kyotaro@lab.ntt.co.jp> > https://www.postgresql.org/docs/devel/static/install-requirements.html > > | Perl 5.8 or later is needed to build from a Git checkout, or if > | you changed the input files for any of the build steps that use > | Perl scripts. If building on Windows you will need Perl in any > | case. Perl is also required to run some test suites. > > So, we should assume Perl 5.8 (released in 2002!) on build > time. And actually 5.10 on RedHat 6.4, 5.16 on my > environment(ContOS 7.2), and the official doc is at 5.24. Active > perl is 5.24. According to this, we should use syntax supported > as of 5.8 and/but not obsolete until 5.24, then to follow the > latest convention. But not OO. (But I can't squeeze out a > concrete syntax set out of this requirements :( ) ...(forget this for a while..) Finally the attached patch contains most of (virtually all of) Daniel's suggestion and some modification by pgperltidy. > Addition to this, I'll remove existing authority files and modify > radix generator so that it can read plain map files in the next > patch. So, I think the attached are in rather modern shape. At Tue, 08 Nov 2016 11:02:58 +0900 (Tokyo Standard Time), Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp> wrote in <20161108.110258.59832499.horiguchi.kyotaro@lab.ntt.co.jp> > Hmm. Somehow perl-mode on my Emacs is stirring with > ununderstandable indentation and I manually correct them so it is > highly probable that the style of this patch is not compatible > with the defined style. Anyway it is better that pgindent > generates smaller patch so I'll try it. The attached are applied pgperltidy. Several regions such like additional character list are marked not to be edited. One concern is what to leave by 'make distclen' and 'make maintainer-clean'. The former should remove authority *.TXT files since it shouldn't be in source archive. On the other hand it is more convenient that the latter leaves them. This seems somewhat strange but I can't come up with better behavior for now. regards, -- Kyotaro Horiguchi NTT Open Source Software Center
Commits
-
Use radix tree for character encoding conversions.
- aeed17d00037 10.0 landed
-
Small fixes to the Perl scripts to create unicode conversion tables.
- bc1686f3f653 10.0 landed
-
Rewrite the perl scripts to produce our Unicode conversion tables.
- 1de9cc0dcca6 10.0 landed
-
Remove leading zeros, for consistency with other map files.
- 6c303223be34 10.0 landed
-
Remove code points < 0x80 from character conversion tables.
- 2c09c93ce1b8 10.0 landed