[Pas2js] pas2js development trees

Michael Van Canneyt michael at freepascal.org
Mon Nov 1 07:47:25 CET 2021



On Sun, 31 Oct 2021, Wayne Sherman wrote:

> There are currently two development trees for pas2js:
>
>  Source Tree "fpc/pas2js":
>  https://gitlab.com/freepascal.org/fpc/pas2js

This tree contains the pas2js RTL and packages.

It contains the below tree as a submodule, however we're thinking to remove
that. Git submodules are a little awkward to work with - to say the least.

>
>  Source Tree "fpc/source"
>  https://gitlab.com/freepascal.org/fpc/source/-/tree/main/utils/pas2js
>  https://gitlab.com/freepascal.org/fpc/source/-/tree/main/packages/pastojs

This tree contains the compiler sources. They are part of Free Pascal:
the scanner/parser/AST is also used in the documentation generator of FPC.


>
> With respect to pas2js, these source trees have different directory
> structures.  Some pas2js files in one tree do not exist in the other.
> In some cases, pas2js files within these trees have the same name, but
> have different changes and commit histories.

Some of the pas2js rtl/package units have a history in FPC, they have been
ported to pas2JS.

>
> I have been considering creating a pas2js "how-to" installation walk
> thru for Linux.  I am trying to decide which tree to use, or if I
> should show both trees and explain why to use one tree or the other
> depending on the intent.

You will always need both trees.

>
> Some questions please:
> 1) How are these two pas2js trees related and what is the intent of each tree?

See above.

> 2) Which tree receives new pas2js features first?

The compiler features always go to the "fpc/source" tree.

RTL/Package features always go to the "fpc/pas2js" tree.

> 3) Is the intent to unify these into a single tree at some point?

No.

Although that was my original intent, but 
a) the rtl/packages differ too much.
b) the FPC team itself prefers to keep things separate, so it will remain separate.

Michael.


More information about the Pas2js mailing list