coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Multibyte support for sort, uniq, join, tr, cut, paste, expand, unex


From: Assaf Gordon
Subject: Re: Multibyte support for sort, uniq, join, tr, cut, paste, expand, unexpand, fmt, fold, and pr
Date: Fri, 29 Dec 2017 17:34:27 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0

Hello Eric,

On 2017-12-29 01:34 AM, Eric Fischer wrote:
I've recently spent some time adding multibyte support to the coreutils
text processing tools (sort, uniq, join, tr, cut, paste, expand, unexpand,
fmt, fold, and pr) in this repository:

     https://github.com/ericfischer/coreutils-utf8

First of all, thank you for working on this!
Multibyte support in coreutils is indeed an ongoing effort,
and any help is appreciated.

Before I put any more work into cleaning up my branch, I also have a
general development question: Is it OK to make multibyte additions to the
lib directory here, or do those changes need to made in an upstream
repository or in the applications themselves?

To move forward, I would suggest the following:

1.
Base your work on the coreutils GIT repository instead of the coreutils-8.28 tarball (version 8.29 was just released).

A good starting points are:
https://git.savannah.gnu.org/cgit/coreutils.git/tree/README-hacking
https://git.savannah.gnu.org/cgit/coreutils.git/tree/HACKING


2.
Regarding "lib" directory:
When using the coreutils git repository (and running "./bootstrap"),
it will automatically clone the gnulib git repository
as a git-submodule. Then, any changes you make under "lib"
will be tracked against the "gnulib" git repository (which is,
as you've said, a separate upstream project).



3.
GNU coreutils requires copyright assignment for major code contributions.
To learn more, see: https://www.gnu.org/licenses/why-assign.html

It'll be good to start the copyright assignment process by filling this form: https://git.savannah.gnu.org/cgit/gnulib.git/tree/doc/Copyright/request-assign.future

Please enter both "COREUTILS" and "GNULIB" as the projects/packages in the form to ensure you can contribute to both.

Completing the copyright assignment early ensures we can safely incorporate any future patches you send.


4.
If you wish to also experiment with the other multibyte effort,
the following commands should be used:

   git clone git://git.sv.gnu.org/coreutils.git
   cd coreutils/
wget https://files.housegordon.org/src/coreutils-multibyte-2017-12-23.patch.xz
   unxz coreutils-multibyte-2017-12-23.patch.xz
   git am < coreutils-multibyte-2017-12-23.patch
   ./bootstrap
   ./configure
   make


5.
Past discussions mentioned on
https://crashcourse.housegordon.org/coreutils-multibyte-support.html
have some good points and recommendations about
implementation details and requirements.




regards,
 - assaf



reply via email to

[Prev in Thread] Current Thread [Next in Thread]