diff --git a/ChangeLog b/ChangeLog index f5860d2..404132c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,21 @@ -2009-02-18 David Ayers +2009-02-20 David Ayers + + * EOControl/gdl2.EOControl.make, + * EOAccess/gdl2.EOAccess.make, + * EOInterface/gdl2.EOInterface.make: Remove convenience + make file fragements. + * EOControl/Makefile.postamble, + * EOAccess/Makefile.postamble, + * EOInterface/Makefile.postamble: Remove references to + convenience make file fragements. + + * README: Add documentation on usage of GDL2 components. + Update versions of dependencies. Add documentation for some missing + components. Remove obsolete documentation. Refer to TODO file for + missing features. + * TODO: Update. + +2009-02-19 David Ayers * EOAccess/EOGenericRecord.h/m ([-entity]): New category. * EOAccess/GNUmakefile (EOGenericRecord): Build and install new diff --git a/EOAccess/Makefile.postamble b/EOAccess/Makefile.postamble index 1d5cc9a..9c6be47 100644 --- a/EOAccess/Makefile.postamble +++ b/EOAccess/Makefile.postamble @@ -43,16 +43,13 @@ # before-install:: # Things to do after installing -after-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary - $(INSTALL_DATA) gdl2.EOAccess.make \ - $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOAccess.make +# after-install:: # Things to do before uninstalling # before-uninstall:: # Things to do after uninstalling -after-uninstall:: - rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOAccess.make +# after-uninstall:: # Things to do before cleaning # before-clean:: diff --git a/EOAccess/gdl2.EOAccess.make b/EOAccess/gdl2.EOAccess.make deleted file mode 100644 index 913913b..0000000 --- a/EOAccess/gdl2.EOAccess.make +++ /dev/null @@ -1,34 +0,0 @@ -# -*-makefile-*- -# gdl2.EOAccess.make -# -# Makefile include segment which handles linking to the GNUstep -# Database Library; requires the GNUstep makefile package. -# -# Copyright (C) 2009 Free Software Foundation, Inc. -# -# Author: David Ayers -# -# This file is part of the GNUstep Database Library. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 3 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. -# -# You should have received a copy of the GNU Library General Public -# License along with this library; -# If not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# - -# Don't reload if already loaded -ifneq ($(GDL2_EOACCESS_LOADED),yes) -include $(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOControl.make -GDL2_EOACCESS_LOADED=yes -ADDITIONAL_NATIVE_LIBS+=EOAccess -endif diff --git a/EOControl/Makefile.postamble b/EOControl/Makefile.postamble index c1e21e0..fd728fd 100644 --- a/EOControl/Makefile.postamble +++ b/EOControl/Makefile.postamble @@ -43,16 +43,13 @@ before-all:: $(GNUSTEP_TARGET_DIR)/config.h # before-install:: # Things to do after installing -after-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary - $(INSTALL_DATA) gdl2.EOControl.make \ - $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOControl.make +# after-install:: # Things to do before uninstalling # before-uninstall:: # Things to do after uninstalling -after-uninstall:: - rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOControl.make +# after-uninstall:: # Things to do before cleaning # before-clean:: diff --git a/EOControl/gdl2.EOControl.make b/EOControl/gdl2.EOControl.make deleted file mode 100644 index 67945aa..0000000 --- a/EOControl/gdl2.EOControl.make +++ /dev/null @@ -1,33 +0,0 @@ -# -*-makefile-*- -# gdl2.EOControl.make -# -# Makefile include segment which handles linking to the GNUstep -# Database Library; requires the GNUstep makefile package. -# -# Copyright (C) 2009 Free Software Foundation, Inc. -# -# Author: David Ayers -# -# This file is part of the GNUstep Database Library. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 3 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. -# -# You should have received a copy of the GNU Library General Public -# License along with this library; -# If not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# - -ifneq ($(GDL2_EOCONTROL_LOADED),yes) -include $(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.make -GDL2_EOCONTROL_LOADED=yes -ADDITIONAL_NATIVE_LIBS+=EOControl -endif diff --git a/EOInterface/Makefile.postamble b/EOInterface/Makefile.postamble index 906ce4b..9c6be47 100644 --- a/EOInterface/Makefile.postamble +++ b/EOInterface/Makefile.postamble @@ -43,16 +43,13 @@ # before-install:: # Things to do after installing -after-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary - $(INSTALL_DATA) gdl2.EOInterface.make \ - $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOInterface.make +# after-install:: # Things to do before uninstalling # before-uninstall:: # Things to do after uninstalling -after-uninstall:: - rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOInterface.make +# after-uninstall:: # Things to do before cleaning # before-clean:: diff --git a/EOInterface/gdl2.EOInterface.make b/EOInterface/gdl2.EOInterface.make deleted file mode 100644 index a613e1c..0000000 --- a/EOInterface/gdl2.EOInterface.make +++ /dev/null @@ -1,33 +0,0 @@ -# -*-makefile-*- -# gdl2.EOInterface.make -# -# Makefile include segment which handles linking to the GNUstep -# Database Library; requires the GNUstep makefile package. -# -# Copyright (C) 2009 Free Software Foundation, Inc. -# -# Author: David Ayers -# -# This file is part of the GNUstep Database Library. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Library General Public -# License as published by the Free Software Foundation; either -# version 3 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Library General Public License for more details. -# -# You should have received a copy of the GNU Library General Public -# License along with this library; -# If not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# - -ifneq ($(GDL2_EOINTERFACE_LOADED),yes) -include $(GNUSTEP_MAKEFILES)/Auxiliary/gdl2.EOAccess.make -GDL2_EOINTERFACE_LOADED=yes -ADDITIONAL_NATIVE_LIBS+=EOInterface -endif diff --git a/README b/README index b0f2b65..4562d7b 100644 --- a/README +++ b/README @@ -6,10 +6,11 @@ Objective-C objects to rows of relational database management systems (RDBMS). It aims to be compatible with Enterprise Objects Framework (EOF) as released with WebObjects 4.5 from Apple Inc. It has been tested against the following package versions: -- the GNUstep Make Package 2.0.0 -- the Base Package 1.14.0 -- the GUI/Back Package 1.12.0 -- the GORM Package 1.2.0 +- the GNUstep Make Package 2.0.6 +- the Base Package 1.16.3 +- the GUI/Back Package 1.14.0 +- the GORM Package 1.2.6 +- the Renaissance SVN Version 27301 (0.10.0 prerelease) GDL2 consists of the following components: @@ -46,13 +47,39 @@ the PostgreSQL and SQLite databases. GDL2 will offers a UI application to create and maintain .eomodel(d) files. This is the first release of a preliminary version. -- Trading +- EOModeler + +This framework is which is used by DBModeler can used to write bundles +for DBModeler to interface with the application. + +- GDL2Palette +Both Gorm and InterfaceBuilder can be used to create nib files which +contain display groups an EOEditingContext. The palette provides those +applications with the necessary code to hook up UI components with +the model objects. + +- Examples/Trading The Trading framework, provides an example model, and some routines to create a database from the model, and populate the database with data, while not an example itself it is indented for use by example applications using GDL2 alone, EOInterface or GSWeb, and for higher level tests. +- Using GDL2 in other Projects + +Typically you would want to use EOControl and EOAccess for tools and +EOInterface additionally for applications. + +Tools: +ADDITIONAL_NATIVE_LIBS += EOControl EOAccess + +Applications: +ADDITIONAL_NATIVE_LIBS += EOControl EOAccess EOInterface + +GDL2 based Palettes / DBModeler Bundles: +ADDITIONAL_NATIVE_LIBS += EOControl EOAccess EOInterface EOModeler + + ====================== *** Important Note *** ====================== @@ -67,11 +94,9 @@ Expect the current interface to change especially with respect to functions and methods not documented in EOF 4.5. Even the library names themselves may change. -With respect to EOF, GDL2 is currently missing EOSharedEditingContext, -EOMultiReaderLocks and the EOEvent classes. Also we currently do not -support the EOSchemaSynchronization methods yet. But you are likely -to find many more missing implementations within the source. If you -identify something that you need, please let us know at +See the TODO file for parts that still need implementains or testing. + +If you identify something that you need, please let us know at or even better get copyright assignment for the FSF and post a patch. @@ -79,8 +104,8 @@ Initial reading =============== The file `NEWS' has the library's feature history. - - The files `INSTALL' gives instructions for installing the library. + The file `INSTALL' gives instructions for installing the library. + The file `TODO' lists components which are not fully implemented. License ======= diff --git a/TODO b/TODO index 2a04e3a..e111da2 100644 --- a/TODO +++ b/TODO @@ -1,29 +1,25 @@ EOControl: - validateTakeValue:forKeyPath: - test whether the method propagates - thourgh key path - determine who calls this from within - GDL2 + Implement & Test: EOControl/EOMultiReaderLocks + Implement & Test: EOControl/EOEvent(Center) + Test: EOSharedEditingContext + Test: validateTakeValue:forKeyPath: (does the method propagate or is it forwarded down to last component?) + EOAccess: - Headers/Categories: - EOGenericRecord (category) - EOSchemaSynchronization + Implement databaseFailedToFetchObject mechanism. (EODatabaseContextDelegation) Cf Developper's guide p 121 + Implement & Test: EOAccesss/EOSchemaSynchronization + Test: EOAccess/EOGenericRecord category -Documentation: - API Documentation - Tutorials - -Examples: - -Adaptors: - -o Implement databaseFailedToFetchObject mechanism. - Cf Developper's guide p 121 -o Implement to-one PK to Foreign Key support - Not implemented by WO but it's really cool. + Implement & Test: to-one PK to Foreign Key support (Not implemented by WO but it's really cool) DBModeler: when removing something, make sure there is no references to it, if there are pop up a dialog allowing the user to cancel, or remove the references. +Adaptors: + +Documentation: + API Documentation + Tutorials: See Trading example of a Framework usable for EOInterface and GSWeb + +Examples: