You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by Jason Stewart <ja...@gmail.com> on 2006/02/17 11:24:11 UTC

Fwd: Xerces-P and Xerces-C merge by 3.0

Hi All,

I sent this to the PMC, but haven't gotten any feedback yet. I wanted
to let the xerces-c developers know what I'm requesting as well to get
your feedback of how best to merge the two codebases/projects.

Cheers, jas.

---------- Forwarded message ----------
From: Jason Stewart <ja...@gmail.com>
Date: Feb 3, 2006 8:19 AM
Subject: Xerces-P and Xerces-C merge by 3.0
To: pmc@xerces.apache.org


Hey,

I know we haven't discussed this much lately, but I want to begin this for real.

I want Xerces-P to be included with Xerces-C by the 3.0 release.

Here is my suggestions:

New Directories in Xerces-C:
--
We add two new directories in the Xerces-C distribution, Perl/ and
SWIG/ these will contain the Perl module components and the generic
SWIG interface definitions respectively.

Build Process
--
Then anyone who wants to build Xerces-P will just download Xerces-C
and go into the Perl/ directory and make the perl project like a
normal perl module (perl Makefile.PL && make && make test && make
install). If libxerces-c.so is not already compiled the perl Makefile
will compile it also.

Test Suite
--
The Perl test harness makes testing Xerces *really* easy. There is
already a suite for most of the Xerces classes - but not for all. We
should include successfully building Xerces-P and running the perl
test suite as a pre-condition for making a new release of Xerces-C. I
could use help fleshing out and organizing the Perl test suite to
include the pieces I don't quite understand.

Other Scripting Languages (Python, Ruby, Tcl, ...)
--
SWIG has the ability to generate C++ wrappers for *many* languages
(some 20 at last count). If there is an interest in anyone in the
Xerces dev group we can extend my SWIG support to their language
*trivially*. I have spent a fair amount of time over the last year
splitting out the perl-specific interfaces from the generic SWIG
interfaces. To add a new language requires defining two methods: one
to map from UTF16 to the languages Unicode format, and the second
mapping from the languages Unicode format to Xerces UTF16 format.

Website Changes
--
I think leaving the two sites independent is good. There is enough
Perl specific info that it requires it's own space. I'm in the process
of moving Xerces-P site to forrest. I'm offering to do the same for
Xerces-C.

Let me know what you think. jas.

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: Fwd: Xerces-P and Xerces-C merge by 3.0

Posted by Jason Stewart <ja...@gmail.com>.
Hi Boris,

On 2/20/06, Boris Kolpackov <bo...@kolpackov.net> wrote:
> Jason,
>
> Jason Stewart <ja...@gmail.com> writes:
>
> > I sent this to the PMC, but haven't gotten any feedback yet. I wanted
> > to let the xerces-c developers know what I'm requesting as well to get
> > your feedback of how best to merge the two codebases/projects.
>
> I am not a developer, rather a user but I am going to voice my opinion
> anyway.

That's why I'm discussing this on the c-dev list and not the c-user list.

We've been discussing this codebase merge for over a year.

Next time, please tone down the intensity of your mail - I don't enjoy
getting yelled at. If you want to take the time to learn what's going
on, I would be happy to share any information you need. But if you
react aggressively, I'm not likely to want to.

Cheers, jas.

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: Fwd: Xerces-P and Xerces-C merge by 3.0

Posted by Boris Kolpackov <bo...@kolpackov.net>.
Jason,

Jason Stewart <ja...@gmail.com> writes:

> I sent this to the PMC, but haven't gotten any feedback yet. I wanted
> to let the xerces-c developers know what I'm requesting as well to get
> your feedback of how best to merge the two codebases/projects.

I am not a developer, rather a user but I am going to voice my opinion
anyway.


> I want Xerces-P to be included with Xerces-C by the 3.0 release.

Why would you want to do that? In your email there is not a single line
that describes the motivation.


> Then anyone who wants to build Xerces-P will just download Xerces-C

How about Xerces-C users who don't want to build Xerces-P but have
to download the source code anyway? As a user of Xerces-C, I don't
want to waste my time/bandwidth downloading code that I don't need.


-boris

-- 
Boris Kolpackov
Code Synthesis Tools CC
www.codesynthesis.com


---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: Xerces-P and Xerces-C merge by 3.0

Posted by Jason Stewart <ja...@gmail.com>.
Hey,

Since Boris asked some good questions I thought I would give a more
detailed answer. Feedback is welcome.

Cheers, jas.
--

Xerces-P and Xerces-C are merging this mail is to give a basis for
what is happening and why.

The 3.0 release of Xerces-C will now contain the Perl bindings which
are autogenerated from SWIG.

Why Merge?
--

Xerces-P is *not* a seperate project, but instead a set of Perl
bindings for Xerces-C which must be updated whenever the Xerces-C
public interface changes. By keeping the source code contained within
the same project it will be simpler to keep the projects in sync.

By the ASF bylas Xerces-P needs more oversight than it has been
getting over the past few years. By merging projects we can ensure
that for every Xerces-C release the Perl bindings are fully
working. In the past Xerces-P release lagged nearly 6 months to a year
behind each Xerces-C release.

The COM bindings have been included for a long time, but the Perl
bindings have been relegated to a seperate project. In this way all
language bindings can be maintained together.

Finally, it is hoped that we will use Xerces-P to create an integrated
test-suite for all the Xerces-C code.

What is affected?
--

A new directory, swig/, is added at the top level. It currently
contains two subdirectories swig/perl/, for the Perl-specific
bindings, and swig/interfaces/, for the language-independent
bindings. This makes it possible to add future languages alongside the
perl/ directory.

The swig bindings add 12M to the codebase. The pre-merge codebase size
was 103M, after merge it increases to 115M.

Here is a comparison of the top-level directories:
32M     Projects
828K    config
4.7M    doc
408K    lib
496K    m4
168K    obj
8.1M    samples
404K    scripts
46M     src
12M     swig
4.7M    tests
3.5M    tools

So for example the Projects/Win32/ and Projects/MacOS/ directories are
nearly 3x larger than the current swig bindings.

The Xerces-P Perl bindings are *not* built by default. To build
Xerces-P you must cd into the swig/perl/ directory and follow the
standard Perl module build procedure.

Roadmap
--

The code has been committed to SVN and is working.

The build procedure for the Perl bindings should build libxerces.so if
it has not yet been built (currently you must first build libxerces
and then build the perl module).

The current Perl test suite needs to be expanded to include all
important components of Xerces-C

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org