GNUe Traffic #58 For 7�Dec�2002

By Peter Sullivan

#gnuenterprise IRC defined(?) - "this channel may be devoid of taste and tact, but it is definitely not devoid of useless computer/programming knowledge"

Table Of Contents


This Cousin covers the three main mailing lists for the GNU Enterprise ( project, plus the #gnuenterprise IRC channel.

1. Application Server White Paper

23�Nov�2002�-�27�Nov�2002 (3 posts) Archive Link: "[Gnue-dev] Edition 0.0.8 of GNUe Application Server Whitepaper"

Topics: Application Server

People: Reinhard M�ller,�Daniel Baumann

Reinhard M�ller had "just committed the edition 0.0.8 of the Appserver Whitepaper, which reflects the decisions we made in the Halloween meeting" , as reported in Issue�#55, Section�#3� (2�Nov�2002:�Halloween e-mails on AppServer functionality) . He asked for it to be updated on the website, and asked everyone "especially to the ones involved with Appserver: Please read the document. Tell me what's not clear enough, and what could be improved. I plan to keep this document maintained and up to date." Daniel Baumann planned "to take a look at this and I want to somehow combine the ideas in the "architecture" paper with what you guys have done."

2. GNUe Architecture Diagram

28�Nov�2002 (1 post) Archive Link: "[Gnue-dev] Security assurance levels"

People: Stan Klein,�Stan Klein

Further to Issue�#57, Section�#2� (7�Nov�2002:�Security and Role-Based Access Control) and Issue�#56, Section�#1� (7�Nov�2002:�Designing a Security Framework for GNUe) , Stan Klein said that "The underlying concept of the draft security framework proposal is that enterprises using GNUe would review their individual business policies and legal/contractual obligations and decide what kind of security they need." In some cases, security issues overlapped with business policies and compliance. GNUe by itself would probably only be able to offer low level security ; this would need to be combined with operating system and database security for middle level security. Low security would be preferable where there was low threat, low sensitivity, existing physical security and no external contractual obligations to be secure. Medium - or even high - levels of security would be required if this was not the case. Organisations were paying "increased attention to information security."

3. GNUe on Microsoft Windows and MS SQL server

27�Nov�2002�Archive Link: "[IRC] 28 Nov 2002"

Topics: Common

People: Dmitry Sorokin,�Derek Neighbors,�ra3vat

It was asked if GNUe was portable to Microsoft Windows. Dmitry Sorokin (ra3vat) suggested "try binary build ( " from the website - "or install source packages, it would take a little more work" . There was no need to install cygwin to run GNUe on Windows. . There was no native support for a Microsoft SQL Server database backend, but you could access it using the generic ODBC driver included in the setup.exe. Derek Neighbors (derek) confirmed this - if there was a native python driver available for MS SQL server, then "we can make a mssql driver - other wise we must rely on odbc only" .

4. Debian packages for Reports

28�Nov�2002 (1 post) Archive Link: "Debian packages for Reports now in sid"

People: Peter Sullivan,�Jeff Bailey

Peter Sullivan announced that "Now it's reached version 0.1.0, GNUe Reports has been packaged for Debian and added to sid, the Debian unstable distribution" by Jeff Bailey. It was available from all the normal Debian mirrors.

5. Alternatives to wxpython on Microsoft Windows

28�Nov�2002�Archive Link: "[IRC] 29 Nov 2002"

Topics: Forms

People: Jeff Bailey,�Andrew Mitchell,�Derek Neighbors,�James Thompson

Jeff Bailey (jbailey) asked "is there a master table of which widgets need to be provided by an UI, and which drivers support which ones? I'm trying to figure out what effort I would need to put in to never see wxpython" (the python version of the multi-platform wx GUI toolkit, which was the default UI for GNUe Forms) "again" . Andrew Mitchell (ajmitch) agreed wxpython was not ideal - "why do you think i've hacked on the gtk2 driver a little?" Jeff said he would probably try to write some code for "native win32 widgets. That would solve the problem nicely. The widget files don't look like they'd take more than a week or so to write." He was "not sure I can usefully deploy this to end-users without doing something about the widget set." IT staff "would put up with it. I don't think people in other departments would. Stupid little things, like when you change a drop box, it doesn't update the drop box until you click on another box." Derek Neighbors (revDeke) believed "0.5.0 will have native win32" . Jeff thought this "was still wishlist-class." Derek noted that the feature plan ( for Forms "says 'start win32 driver', but my understanding is they want to have a 'working' one for hard testing as of 0.5.0. drop down boxes are the BIGGEST evil in the wx on win32 - and its not fixable in wx" .

Later, James Thompson (jamest) explained "0.5.0 is all about gfd file changes - at least that's what it's evolved into" Derek agreed - "i think it might be best to do gfd change only as 0.5.0 - and maybe get it out a little sooner than maybe first figured - and nto be shy to release 0.5.x's - that might have some 'features'" . Jeff asked if there was a matrix showing what widgets each User Interface supported. James said "i might be able to whip something up but I'll have to re-read the code to figure it out myself" - "all a ui driver mainly needs to do" was "interface with uidrives/_base - and generate evens like uidirver/wx - internally we don't give too much a crap how it works :)" . Derek thought that copying the existing wxpython driver "and starting to change around would be a good start" . James said that documenting the UI driver was on the release plan for 0.6.x, but he would willingly bring that forward if it meant someone else could write a new UI driver (instead of him).

Andrew suggested another possible alternative to wxpython - the existing GTK2 UI driver "needs love to make it work nicely" but "would run on windows, if you wanted it" .

6. Scope of GNUe Integrator

29�Nov�2002�Archive Link: "[IRC] 30 Nov 2002"

Topics: Integrator, Application Server

People: Derek Neighbors,�Jan Ischebeck

Further to Issue�#57, Section�#1� (6�Nov�2002:�Scope of GNUe Integrator) , Derek Neighbors (derek) said he would "like to see a 'small not overly verbose' list of what the 'goals' of integrator are - not once mentioning the implementation" . Jan Ischebeck (siesel) felt that his original e-mail ( had pretty much done that. Derek did not remember seeing this originally - it was a good basis but "i would like to see more a 'numbered' list (after dicussion) of goals and importance (similar to appserver) - like goal one is a a truly strong copyleft licensed integration engine written with copyleft tools i.e. this list will be part of the faq so when datajunction is available on linux and someone says how come you 're invented the wheel' we can point to the list of goals and the date and say 'nothing that matched that' existed at the time" . Jan agreed, "but I still would like a list of 'integrator will|could|should do this' and 'integrator won't shouldn't do that' list" . Derek did not "we need so much the 'wont' do this unless there is something that we REALLY want to make clear it wont do - as the 'do this' list should keep people busy enough to not do the 'wont do' :) - but if there are some 'common tempatations' that we dont want to do, we should list them as wont do :)" He suggested "take your email you posted - refactor based on jcater and my comments - number order in sequence you would plan to implement and repost for comment - then take comments you get and modify and post a final goals list (not final as in never changing but final as in final enough to start implementing) ;) It would be cool to see 'feature plan' too, but not mandatory" .

On the details, Derek felt "the 'sync' database thing scares me - but i would like integrator to do that 'some day' - so as long as its down on the list a bit i think its pertinent. The same coudl be said for 'real time' integration i.e. i dont think we should focus on either one of those early on - but certainly they could be long term goals" . Jan was not especially attatched to the database synchronisation idea, but had put this in Integrator rather than add it to Application Server. Derek felt that "sync is just an integration routine ran more than one time - and that we have a management tool that you can 'cron' basically the sync or such" . Jan said that AppServer would need a 'cron' tool as well. Derek said "there should be a gui cron somewhere - hopefully in python - we could build on. If not we need to write one :) - as thats needed for 'enterprises'" .

7. New screenshots of 0.5.0 Designer

30�Nov�2002�Archive Link: "[IRC] 01 Dec 2002"

Topics: Designer

People: Jeff Bailey,�Andrew Mitchell,�Jason Cater,�Dmitry Sorokin,�ra3vat

Jason Cater (jcater) pointed to a screenshot ( of the new 0.5.x version of Designer, showing the docking functionality. Jeff Bailey (jbailey) asked "What are the plans for native UIs for designer? It didn't look like it had the UI broken out the way forms does." Andrew Mitchell (ajmitch) said "none afaik :) - since you'd be duplicating too much functionality in each UI driver" . Jason agreed - "yeah, I'm somewhat tied to wx for designer - I'd like to do UI independence" but " it's not like forms - so much would have to be rewritten for each gui" . Andrew said "you'd essentially need to write your own toolkit abstraction (like wx)" . Jeff was not too worried - "My end users don't have to see designer. =) And it wouldn't be so bad if it weren't... quirky." .

Later, Jeff said "I'm just looking at your designer screen shot - It looks like almost a straight ripoff of parts of anjuta. =0 That means I'll probably like it. =)" Jason said "all the tool panels are repositionably or, can even be made free floating - that's just my particular arrangement. Let's see - I've heard, 1. It's almost like Delphi 4+ - 2. It's like anjunda - 3. It's like Eclipse - um - /me has heard others - but I forget them :)" Dmitry Sorokin (ra3vat) said that, if you extended the anology enough, "4. it's like cat > file" . Jason cried "it's emacs!"

8. Business rules in 2-tier and n-tier

1�Dec�2002�Archive Link: "[IRC] 02 Dec 2002"

Topics: Forms, Application Server, Common

People: Derek Neighbors,�James Thompson

It was asked how business rules were expressed in GNUe. Derek Neighbors (derek) explained "currently in 2 tier mode you define 'triggers' (or rules) and they are written in python - you can put them in the form themselves or you can put in external 'repositories' which more than one form can call" . Triggers were "implemented by 'events' - so you have for example a prefocus in event for an entry widget - that gets 'fired' before focus happens on an entry widget. You can then call a 'trigger' when this event fires - it can be directly in the form or 'imported' from a repository (if you want reuse)" . James Thompson (jamest) added that n-tier business rules would be done by the Application Server implementing "the rules on the server side - but it's not ready yet" . He agreed that having to define triggers on each individual form was not ideal - "i've had multiple forms in the past in Oracle sql*forms that shared logic - it was a major PITA - our importable repository (libraries) are a small attempt to address this" . Derek agreed - "from my understanding of shared repository with imports, for the most part i think it gives most of the functionality of an application server wrt central rule base. I think central importable repository speaks a bit to that problem and surely appserver will" .

9. New point release of GNUe Tools

3�Dec�2002 (1 post) Archive Link: "[Gnue-announce] 0.4.2 releases of Forms, Designer, Common"

Topics: Forms, Designer, Common

People: Peter Sullivan

Peter Sullivan announced "The GNU Enterprise team is proud to announce a new release of" Forms, Designer and Common. "This is the next point release of the 0.4.x stable branch" , and was available (in source code form only as of time of writing) from the Downloads section of the website. He explained "The main aims of this point release are to do some final tidying-up before the big push for the 0.5.0 releases. This includes bringing into the main code base many of the useful changes that our friends at Via Libre working on Project Papo have written" , as previously discussed in Issue�#56, Section�#13� (14�Nov�2002:�Merging GNUe and Papo CVS code) .

10. Forms triggers

2�Dec�2002�Archive Link: "[IRC] 03 Dec 2002"

Topics: Forms, Common

People: Dmitry Sorokin,�James Thompson,�Jason Cater,�ra3vat

Dmitry Sorokin (ra3vat) asked "how PRE-UPDATE trigger work? what is the difference it with PRE-COMMIT?" James Thompson (jamest) explained "pre-update only gets called if a record is modified so the save will generate a sql update statement - vs pre-insert which only gets called on new record inserts" . Jason Cater (jcater) expanded "pre-commit gets called whether it's an insert, update, or a delete" , so for any given change to the database, one of the Pre-Insert, Pre-Delete or Pre-Update triggers would be called, then always the Pre-Committ trigger. (It was obviously up to application form authors to decide whether to attatch code to the first trigger, the second trigger or both, depending on what they wanted to do.) Dmitry said that was what he had expected, "but did not get it working" . James warned "how we claim it should work does not necessarily mean that is how it is working :)" Dmitry had "also tried ON-SWITCH trigger and i hoped it catch an event when 1 entry comes up after initialization but it is not" . James said "i consider that a bug myself - i noticed it too but haven't looked into why it's what way" .

11. Running GNUe on Apple iMac

4�Dec�2002 (1 post) Archive Link: "[Gnue-dev] Re: Gnue forms on DarwinX"

Topics: Forms

People: Neil Tiffin

Neil Tiffin explained that "Darwin is the open source underpinnings of OS X" , the operating system used on Apple iMacs. He had never been able to get wxMac (the native Macintosh version of the wx GUI toolkit) to work - although "That was a year ago and it has been improved so your mileage may be better." However, "If you want to get GNUe working ASAP I would recommend using Fink ( and wxGTK." He explained "Fink is a set of Perl scripts that download and compile source (and binary, which i dont use) tarballs." As "Progress on wxgtk and wxpython is still very rapid" he recommended using the unstable release of these - despite the name, "I use unstable all of the time and have not had any negative side effects. Of course your experience may vary so you should be cautious." He also noted "You need to make sure that postgresql is working before you attempt to work on forms. You should have it running an be able to connect with psql, create tables etc." .

12. Scalability of GNUe at enteprise level

3�Dec�2002�Archive Link: "[IRC] 04 Dec 2002"

Topics: Application Server, Forms

People: Andrew Mitchell,�Dmitry Sorokin,�Charles Rouzer,�Derek Neighbors,�ra3vat

Andrew Mitchell (ajmitch) explained that GNUe was a framework "for building ERP apps :)" - "i heard someone mentions JD Edwards/Baan/Oracle/Peoplesoft/SAP ::)" . Dmitry Sorokin (ra3vat) said that the GNUe tools would be used to build GNUe Packages with ERP functionality - "think of GNUe Forms like Oracle SQL Forms - gnue-forms helps to rapidly build data-entry forms to enterprise db" . Andrew said that, to scale up to the levels needed for the largest enterprise, GNUe would be "using an application server between the client & the database to handle the logic" . Charles Rouzer (Mr_You) said that "enterprise-level" implied "usually high scalability and developer options" . Andrew said that Application Server was still "in development" , and Integrator - "for doing things like merging databases, integrating existing stuff" - was in the planning stage.

It was asked whether a transaction manager like Application Server should be actually inside the kernel, rather than run on (say) the default Linux kernel. Andrew doubted that this would be effective. Charles felt "it would be overkill for the appliance probably, unless it was a big appliance hehe.. quad proc." Andrew could see that "ideally you want to minimise the number of system calls, as each call involves a costly privilege switch" , but Charles said "having a customize kernel and having a transaction manager kernel module are two different things" .

Later, Derek Neighbors (derek) noted that "you can always throw down that gnue has been used in production against an os/390 mainframe running db2 - /me isnt sure if you can get more 'enterprise' than that" .

Sharon And Joy

Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License version 2.0.