Difference between revisions of "Uno/To-Dos"

From Apache OpenOffice Wiki
< Uno
Jump to: navigation, search
m (Protected the categories.)
(Bugs: Added another bug. Fixed a link.)
Line 7: Line 7:
  
 
==Bugs==
 
==Bugs==
* Move the module {{Uno/UDKlink|api|udkapi}} from [http://api.openoffice.org/ API] project into the [http://udk.openoffice.org UDK] project.
+
* Move the module {{Uno/UDKlink|api|udkapi}} from [http://api.openoffice.org/ API] project into the [http://udk.openoffice.org Uno] project.
* Fix {{Uno/UDKlink|cli_ure}} dependency against {{Uno/UDKlink|api|offapi}}.
+
* Fix {{Uno/UDKlink|cli_ure}} dependency against {{Uno/UDKlink|offapi|api}}.
* Move the module {{Uno/UDKlink|io|util}} from the [http://util.openoffice.org/ util] project into the [http://udk.openoffice.org UDK] project.
+
* Fix {{Uno/UDKlink|cpputools}} dependency against {{Uno/UDKlink|offuh|api}}.
* Move the module {{Uno/UDKlink|jut/util}} into the [http://udk.openoffice.org UDK] project.
+
* Move the module {{Uno/UDKlink|io|util}} from the [http://util.openoffice.org/ util] project into the [http://udk.openoffice.org Uno] project.
* [http://udk.openoffice.org/issues/buglist.cgi?Submit+query=Submit+query&issue_type=DEFECT&issue_type=ENHANCEMENT&issue_type=FEATURE&issue_type=PATCH&component=udk&issue_status=UNCONFIRMED&issue_status=NEW&issue_status=STARTED&issue_status=REOPENED&issue_status=RESOLVED&email1=&emailtype1=exact&emailassigned_to1=1&email2=&emailtype2=exact&emailreporter2=1&issueidtype=include&issue_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=allwords&long_desc=&long_desc_type=allwords&issue_file_loc=&issue_file_loc_type=substring&status_whiteboard=&status_whiteboard_type=substring&keywords=&keywords_type=anytokens&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=%27Importance%27 Query for UDK bugs]
+
* Move the module {{Uno/UDKlink|jut/util}} into the [http://udk.openoffice.org Uno] project.
 +
* [http://udk.openoffice.org/issues/buglist.cgi?Submit+query=Submit+query&issue_type=DEFECT&issue_type=ENHANCEMENT&issue_type=FEATURE&issue_type=PATCH&component=udk&issue_status=UNCONFIRMED&issue_status=NEW&issue_status=STARTED&issue_status=REOPENED&issue_status=RESOLVED&email1=&emailtype1=exact&emailassigned_to1=1&email2=&emailtype2=exact&emailreporter2=1&issueidtype=include&issue_id=&changedin=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&short_desc=&short_desc_type=allwords&long_desc=&long_desc_type=allwords&issue_file_loc=&issue_file_loc_type=substring&status_whiteboard=&status_whiteboard_type=substring&keywords=&keywords_type=anytokens&field0-0-0=noop&type0-0-0=noop&value0-0-0=&cmdtype=doit&order=%27Importance%27 Query for Uno bugs]
  
 
==Naming / Clean up==
 
==Naming / Clean up==

Revision as of 10:42, 15 January 2007

To-Dos and potential To-Dos.

General

Uno/Todo/Clear Separation between C and Cpp and Core Components

Bugs

Naming / Clean up

  • Rename module udk/cppu to reflect that it is implementing the Binary Uno runtime.
  • Rename module udk/cppuhelper to reflect that it is implementing the C++ Uno runtime.
  • Rename the Binary Uno to JNI (Jave Native Interface) bridge: java_uno -> jni_uno. Because that is what the bridge is about.
  • Rename the Binary Uno to Remote Uno bridge: urp_uno -> remote_uno. Because that is what the bridge is about (actually, there is no URP object to program against, at least not in Binary Uno).
  • Remove the "lib" prefixes under UNIX from the Binary Uno bridges.
  • Rename udk/cpputools to something like "unotools" (unfortunately this name is already in use).
  • Mark SAL_IMPLEMENT_MAIN_WITH_ARGS as deprecated, the right way to deal with args are the RTL command line arg functions, see porting/sal/inc/rtl/process.h

Simplification and Performance

  • Remove the Binary Uno Object Binary Interface (OBI) (struct uno_Interface) and friends, replace it with one of the platform C++ OBIs.
  • Support direct access of Uno types in Uno IDL, without includes.
  • Let the *makers retrieve type information from the type providers and not from rdb files.
  • Harmonize initial object access for Remote Uno and components -> it is actually the same. E.g.
    "uno:library;[gcc3];<implementation name>"
    may be used to access an instance factory, or any other object of interest.
  • Leverage Purpose Bridges for global variables, e.g. the "ServiceManager" or the "ComponentContext". Use this for bootstrapping as well. E.g.
    Reference<XComponentContext> cppu::getComponentContext();
    always returns the current component context. It is usable in components, libraries or applications and may even bootstrap Uno, if no context is available yet.
  • Remove all exception specifications.
  • Consolidate the Binary Uno structs "uno_Environment" and "uno_ExtEnvironment".
  • Remove #ifndef EXCEPTIONS_OFF macros, actually C++ Uno is not usable without exceptions anyway.
  • Is SAL_CALL really necessary for "inline" stuff? If not, remove it.
  • Unify command line interface for all Uno tools.
  • Convert the ProxyFactory service into a library and deprecate it.

Features

  • Introduce process lifecycle based on living threads.
  • Have Uno package support for the URE.
  • Move the UCB into the URE.
  • Move the configr mgr. into the URE.
  • Move the most useful helpers from comphelper into the URE.
  • Uno alien type support e.g. for Java (e.g. a type description provider implemented in Java based on Java reflection).
  • A Uno-SOAP Bridge. Some considerations
  • Allow (remote) proxy detection, needed for remote detection and optimizations.
  • Zones.
  • Write man pages.
  • Write a DBUS bridge.
  • Various IDE integrations.
  • Allow connection parameters in environment descriptions for remote environments, e.g.
    "remote[urp,socket=<port>,host=<name>]"
  • Bridge the interface gap e.g. of Java and C++ Uno - AKA know as "smart mapping".
  • Graphical and Command line tool for registry data modification.
  • COM Bridge
  • CORBA Bridge Concept Paper
  • Logging support
  • Exceptions with Stack Traces

Tests

Personal tools