|
Author: State: Version: 1.0 Date: 06/09/2005 Type:
Standalone UNOThe first version of a Uno Runtime Environment (URE) will just be the core UNO (Universal Network Objects1) stuff moved out of an OpenOffice.org (short: OOo) 2 installation into an own package. Naming and versioning issues will be cleaned up. The resulting package will be freely locatable and will be multiple installable by using different locations. The package will be installed as “unbundled”3 by default and will be upgradable. The package will follow the targets system guide lines for package installations. The SDK will be adapted so that it can alternatively utilize a URE installation, or an OOo installation. The URE will be available with OOo 2.0, while OOo 2.0 will not make any use of it. OOo is planned to be adapted to it in the early cycles of its next major. For Bin-Uno (stands for Binary-Uno, this is UNO used by native languages such as 'C' or 'C++')4 the core services and types will be available in RDB5 files similar to the current OOo types.rdb and services.rdb 6. The Java-Uno7 (this is UNO for Java) core services will not be available via the provided registries, this equals the current OOo installations. Everything related to instantiating additional (AKA non core UNO components) Java-Uno components out of Bin-Uno will need to be configured by hand (e.g. using regcomp) . Bin-Uno core services will only be available to Java-Uno via the Java wrappers of the native registry based bootstrap methods. The first steps towards a URE are to clean up naming and versioning of the public files, to define the URE interface and to define the deployment schemes. UNO and the URE will remain a base technology for OpenOffice.org and future development of the URE will continue to happen in the UDK project as part of the broader OpenOffice.org community. Not CoveredIt follows a list of things, which will not be covered or available in the URE released with OOo 2.0.
The following requirements, tasks and non coverage's describe an to be build URE. Requirements
TasksThe following list gives an overview of the things needed to be done for a URE.
Tasks in DetailCreate CVS ModuleA URE module will be created in the OOo CVS repository. The module will be build as part of the normal OOo builds, will deliver the URE packages and will contain all implementation details regarding the building of the packages. Defined InterfaceEvery file in the URE will be either defined as public or private. Meaning that all files declared as public will stay compatible and will be available in future releases of the same URE major version, all relativized to OOo needs and developments. Deployment SchemaA deployment schema for every target platform will be created, which exactly states where which file of the URE will be installed to. The deployment schemes will be created according to target platforms guide lines (e.g. Linux FHS9). VersioningAll public files of the URE will follow the platform or language recommended versioning schemes. Where no recommendations are available, best practices will be followed. NamingAll public files of the URE will follow the platform or language recommendations regarding naming. Where no recommendations are available, best practices will be followed. Proper LinkingUnder UNIX, all public shared libraries must be linked in a manner, that there is no need for an application to set the LD_LIBRARY_PATH environment variable. Java “Download Extensions”All Java-Uno JAR files must be usable as so called “download extensions”10. In practice that means that JAR files are linked against each other. If this is followed for the application JAR files as well, than there is no need to set the CLASSPATH variable. Core Types&ServicesCreate corresponding generating implementation to the OOo types.rdb and services.rdb implementation for the URE core types and services. PackagingCreate OOo compatible packaging files to generate requirement fulfilling packages. SDKThe OOo 2.0 SDK will be able to utilize an installed URE. During the configuration of a OOo 2.0 SDK it will be possible to either select an URE installation or an OOo installation. Starting with the next OOo major and the adoption of the URE in OOo, the SDK is planned to be changed to require an URE. Tests and Test PlansA set of tests and test plans will be created, these tests will ensure that the above requirements are met. Outside of this, these tests will not ensure any bug freeness or anything else. TestingTesting will hopefully be reduced to trigger the available automatic tests and to check the results. Adapt OpenOffice.orgThe OOo installation sets are planned to be changed to not include any UNO runtime files in the next OOo major cycle anymore. The URE package is planned to be part of the set of packages provided with an OOo installation set and is planned to be therefor available for download with the OOo installation sets. 5RDB files are OOo specific repository files |

