[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[orion-dev] Orion editor development and integration

Hello everyone!

The Mozilla developer tools team is evaluating the use of the Orion editor
project, for possible integration into the Mozilla codebase. We would like
to have a code editor component available by default for some of the
upcoming developer tools. If the editor will be integrated into the
codebase, future Firefox extensions will also be able to use it.

In order to proceed we are looking for answers to some of our concerns and

The editor needs to meet the requirement of running in a different
environment/context than that of a pure web page. This means that the
editor source code needs to cope with XUL documents where, for example, we
have no document.body, or where we have the requirement that
createElementNS(XHTMLNS, "foo") is used (this is because the default
namespace is the XUL namespace, and for any new HTML element added the
editor needs to provide the XHTML namespace). We will try to keep code
changes as minimal as possible - for example, we might be able to avoid
the problems mentioned by putting the editor inside an iframe.

Setting the technical details aside, we will look into the integration
work needed to be done, and we would like to know what is the best way for
us to contribute changes back to the Orion project? Inevitably we will
have to make changes to the code editor to fit our use-cases, within the
contexts where we would like to use it. We would like to keep clear from
maintaining a fork of our own for the Orion editor, hence code
contributions upstream make sense.



It looks like the suggested approach is to get the Orion client and server
code, and use Eclipse for development.

Some of our concerns:

- Is it possible to just do development work on the editor, without having
to go knee-deep into the development work-flow of the Orion client and
server? By the looks of things, yes, it's possible. As simple as one does
embed the Orion editor in a web page, one can also make changes to the
code and ... test them.

Reading through the architecture overview of the project it would seem
that indeed Orion's components are loosely coupled, sufficiently
independent of each other.

( http://wiki.eclipse.org/Orion/Documentation/Developer_Guide/Architecture

- Still, that seems to entail making changes that fit our needs without
any regression testing. The orion.editor folder includes the js-tests
folder which holds two JavaScript-based tests. Where is the documentation
on running these tests?

- The Orion editor component is used by the Orion client. Our changes
should not introduce regressions into the wider project. Do the
editor-only tests suffice? From our perspective we should not directly
worry about these matters - since the editor tests should deal with this.
If there's a regression that's later caught, then the editor will/should
have a new test added by the one who fixes the bug.

- Does the github mirror represent the latest Orion editor snapshot? Is
this a repo of a "stable" codebase? Are there any different repos with
other work that's being done, that might be of interest to us?

- Do you accept pull requests on github? Or how shall we proceed when we
want a change in the code? Obviously pull requests and specific changes
will be discussed at their own times, and changes will be made such that
they fit both with our needs and the overall upstream project.

Or is there a different process to submitting changes from external

- Are there any coding guidelines? To make sure we don't submit pull
requests with obvious mistakes.

( beyond those at http://wiki.eclipse.org/Orion/Coding_conventions )

Apologies for this long email. Looking forward to your answers. Thank you!

Best regards, Mihai

-- Mihai Sucan http://www.robodesign.ro