chillywilly: I commited the change at about 8:30 CST so you were too late anyway :) it has potentional in my book it it that derek is writing a book out of your ideas, jamest? * dimas runs lol *** jamest has quit IRC *** holycow has joined #gnuenterprise *** holycow has quit IRC *** reinhard has joined #gnuenterprise good morning all FWIW I like the idea of jamest's last change however it will probably add quite some complexity to format masks (being able to enter ">=:08/10/05" into a date field) did anybody test things with my latest commits? hi reinhard hi ajmitch planning final release on friday basically everything done but want to have some pre release testing great I'll try & do some fast talking next week for ubuntu then :) *** kilo has joined #gnuenterprise *** yure has joined #gnuenterprise *** btami has joined #gnuenterprise *** kilo has quit IRC *** jamest has joined #gnuenterprise reinhard: i committed a change to the way forms does queries last night. only did the base stuff as I wanted feedback on what I was doing was wondering what you thought of the approach/idea reinhard: FWIW I like the idea of jamest's last change reinhard: however it will probably add quite some complexity to format masks (being able to enter ">=:08/10/05" into a date field) yes is what I wrote this morning :) it also screws up the max length yes and i think should also include adding some type of default query conditional to a field so while I see the problem I'm not sure if it is the best solution but OTOH I can't think of any different solution at all what I wanted to do was during a query display a dropdown of operators per field, but that butchers the UI and really seems a bit overly complex hmmmm but if we changed it to a operator syntax like say :>=:123 could the input mask system see the : and not include it in the mask or the max length calcs plus I wasn't sure how to handle the cases where : is actually in the data being queried right now if it doesn't recognize the foo: part it passes it in like a normal query :>=:123 could work if you want to test for : you simply would give :=:: so is it worth keeping then and trying to make work or do we find a better way to implement it yes but I think we need it *starting* with a specific character yes the symbols I tossed about were : and ~ as i doubted either are used much in fields (at least my fields :) i also figured the symbol should be overrideable at least at the gnue.conf level reinhard: about your questoin in the logs about testing last night the wx driver was segfaulting and I was getting an error about Warning: No handler found for image type i figured it was my home machine as I hadn't ran forms there in a while but now i update to todays head at work and it's segfaulting w/ same error too I would prefer : (it is easier to reach on some non-us keyboards) segfault: do you try something that has worked before? and do you have an image on that form? here haven't been changs in the wx driver for weeks non data aware forms work fine (like intro) and there are no images on the forms the wx driver was worked on in the last few days i've been looking thru the commit mails trying to see what could have caused it since it segfaults I don't get a traceback so I have no idea where the error originates may have found it is there a reason you removed the __init__ from the wx UILoginHandler part of the r7806 commit he just wanted to test if someone will test hes changes :) * btami hides lol btami: any gotchas in win32 ? i'm deploying a remote window gnue install for one of our work at home accountants nothing i ca remember... IIRC this __init__ did nothing except set a variable that is not used anywhere i don't have any win gnue installs anymore so its a big unknown to me :) s/ca/can did I overlook something? reinhard: it's not used specifically but it does setup the wx environment errr reinhard: no, it's one of those voodoo things * jamest kicks wx so you mean this function has side effects? ok gotcha i'll put a note in as well can you reinsert it? yes, excellent already did it we need more comments on such pieces of code wx really does annoy the hell out of me (applies to my code as well) reinhard: at one time it was used but it evolved away from it :) reinhard: something else I've started doing in my code running it throught pylint through btw. any feedback on new formula support in reports ? btami: not tried it the monthly.grd in foobulations sample demonstrates what i did hmm any hint on how to use pylint? gives me bazillions of messages and then dies with an AttributeError hmm... pylint seems to want me to indent 4 spaces instead of 2 you can adjust those features found --indent-string it also hates thisNamingStyle iirc there is a pylintrc file oh nice do you have one? at home :) could we commit it to svn? (under common/utils or so) well, if we want to use it i find it forces me to write cleaner code in my game code and plan to use it in house pylint is a Python source code analyzer which looks for programming errors, helps enforcing a coding standard and sniffs for some code smells (as defined in Martin Fowler's Refactoring book) yes especially the middle part cought my eye ;-) I could even see us extend it with your code cleanup i figured it was worth mentioning it from what I understand you can add more checks yourself, right? as gnue code was running at a horrible smell rating :) that is beyond where i use it at like test if every function has a #--- comment it already checks for doc strings which is a big + oh wow cool it also lists all lines that contain the string FIXME :-) or TODO and Iirc is wants PEP8 style the python style guide which is why it hates camelCaps but you can tell it either in the .py file or the rc file to skip certain tests I also like the check for unused imports that kills us as it also checks for used items that aren't imported like say gDebug :) yep right or checktype or _ lol checks if you have lots of duplicate code nice i was going to play a bit more before I brought it up but again with your cleanup work I figured I should mention it definitely it's worth playing with however I think it *requires* some playing before we can use it in gnue lol i just ran it on the UILoginHandler in wx it scores a negative 1257.73 out of 10 lol wow what I was going to ask wrt to pylint after more playing is if it was worth moving to PEP8 datasources/drivers/Base is 3.36/10 url? which is a huge change http://www.python.org/peps/pep-0008.html also, in case you missed it pylint --generate-rcfile > ~/.pylintrc * jamest fears he may have just caused a huge distraction for reinhard :) about PEP8 I'm ready to discuss PEP8 at the point when guido is going to include parts of gnue as Python standard modules :) seriously there are a low number of issues where our current coding style differs i'm actually glad to hear that [8:25:04] which is a huge change however these issues relate to more or less 100% of the code lines :) i just know that things like thisFunction happened because I started coding them that way s/I/we actually I argued a lot *against* camel case originally i think I started doing it in forms and others followed suit but we've gone way too far to change that now i recall that i think iirc jason's reply was along the lines of "i just stuck with what was already there" furthermore, on some issues I just plainly disagree with him for example spacing or indenting of continued lines good i prefer 2 me too actually I wouldn't feel too strong about the number but things like resultset.query ('object', self.cache, table = self.table, fieldnames = self.__fieldReferences.keys (), condition = cond, sortorder = self.__sortorder and self.__sortorder or [], distinct = self.distinct) would become quite unreadable if you indent the following lines below the ( of the first line root._instance.connections.addConnectionSpecification (self.name, { 'name': self.name, 'provider': self.provider, 'dbname': self.dbname, 'host': self.host }) would be close to impossible to do with his specification also IMHO this is much better readable than *not* aligning the =: self.__defaultData = defaultData self.__connection = connection self.__tablename = tablename self.__rowidField = rowidField self.__primarykeyFields = primarykeyFields self.__primarykeySeq = primarykeySeq ok, cool ok, I'll stop now :) these were the things in pylint that I wasn't happy with :) what I was thinking about doing was providing a base pylintrc with spacing set right and some based tests disabled *** btami has quit IRC but other tests *** btami has joined #gnuenterprise * jamest is trying to find example what does "jst" mean? you have a middle name? scott i should have put jamest sorry, wasn't thinking *lol* sorry the test I was thinking of was IIRC the use w/o import issue it found bugs in my game code always having fun about "James T." (Kirk) and GNU Enterprise and now your middle name is Scotty ;-)) but is annoying for things like the gConfig checktype and such maybe you can provide a list of identifiers it accepts so I figured we could put in the ignore tests lines in the comments per file it's not more than gDebug gEnter gLeave gConfig checktype _ u_ o IIRC i don't think you can that was on my play list sigh none of my pylint stuff is checked into adrius's svn so I can't find example of a disabled test nevermind IMHO it's no priority no but between unit tests and pylint both found errors I would have missed otherwise *** SachaS has joined #gnuenterprise everybody ready for prereleases? reinhard: do I need to back out that query thing? or try and get it working with :null: or can I leave for now actually it doesn't break anything, so I would say leave it for now ok, then yes :) *** jcater has joined #gnuenterprise oh btw epydocs are not generated since mid july gack i'll look *** chillywilly has quit IRC *** chillywilly has joined #gnuenterprise *** chillywilly has quit IRC *** chillywilly has joined #gnuenterprise oh yeah on that pylint config file there is a bug in the sarge version it cannot accept a disable-msg= in the .pylintrc file you have to install 0.7 from the main site the unstable debs work fine on sarge reinhard: you thinking that gnue-common/utils/pylint/ is the place to put the README and a base pylintrc file? what happened with the $topic ? jamest: if possible, I would prefer a script going in gnue-common/utils script? to test the whole project? calling pylint with the correct parameters and such yes oh wow i figured we'd run it on a file after we edited it but that's a quick shot ah hmmm so it'd be then I'd prefer it as a commit hook on ash edit ;-) pylint file.py as it's a pretty interactive process to get one file from bad score to good score jamest: I'm ok with putting it in utils/pylint I think off for today cu all *** reinhard has quit IRC *** btami has quit IRC *** jamest_ has joined #gnuenterprise *** someon has joined #gnuenterprise Hey all... WRT to the Query-By-Example stuff... I'd love to see it, I just don't know how to code it. The "other" system that I use allows you to put things into date fields like "> 01/01/2005 2:00 PM" and it will return all entires where that date field is a value more than that timestamp. One thing is that the application converts all date/times to a Unix Time Stamp before storing in the DB... that might make it easier or harder. *** jamest has quit IRC someon: ? nevermind, i read it a 3rd time and understood :) all our conditionals are handled in our drivers so we won't have to convert anything The other thing that the "other" system does, is it has something called an "Advanced Query" which provides a WHERE clause in addition to the QBE... So if a user puts "> 01/01/2005 2:00 PM" in a date field, and " 'ID' > 15 and 'ID' < 20 " into the Advanced bar, it would AND the QBE with the Advanced Search to become " 'Date' > "01/01/2005 2:00 PM" AND 'ID' > 15 AND 'ID' < 20 " which ends up being really important for passing a query from a search The "Advanced Query" allows OR statements and brackets, so I'm not exacltly sure how it codes up the SQL statement... eg. " ( 'Name' LIKE "%this%" OR 'Name' LIKE "%that%" ) AND ( 'ID' < 5 OR 'ID' = 10) Which in plain text translates to "Show all records where Name contains this or that, but those records must also have an ID below 5 or and ID of 10 well, we can't really pass raw sql to the backend as some backends don't do sql we could provide a query builder that could do this that could construct the statement from GConditions s/statement/condition I just find it looks SQL-ish to me... It's really their own condition format. SQL doesn't allow the use of Brackets like that... I like where GNUe is going, but there's still a few features that I need that I don't know how to add... Row and Column level security RBAC Easy form development [12:35:35] Row and Column level security are you talking about in appserver? I'm not a coder, so telling me to write all my "On Save" items in Python is a bit much... The "Other" system allows me a point and click method to build "On Save" checks and form automation (on lose focus, set the following fields based on a DB Query) That to me would be the best place to implement it... I just don't know how; to make matters even worse, I don't know python... I have been trying to think through the design part of it, to be able to say: Can someone add a function in AppServer that does (x,y,z) before a query gets passed to the DB Handler? Row and Column Level security - allow a user to be able to query specific rows or specific columns based on either UserID, Group Membershi, or some other RBAC basically filtering the result sets if a specified user isn't supposed to be able to see something. *** someon has quit IRC *** jamest_ has quit IRC *** jamest_ has joined #gnuenterprise *** jamest_ has quit IRC *** jamest_ has joined #gnuenterprise *** jamest_ has left #gnuenterprise *** sjc has joined #gnuenterprise *** jamest has joined #gnuenterprise *** kilo has joined #gnuenterprise *** btami has joined #gnuenterprise *** neilt has joined #gnuenterprise *** btami has quit IRC does anyone know how long till release? pre1 was released today *** jamest has left #gnuenterprise *** neilt has quit IRC *** jcater has quit IRC *** jcater has joined #gnuenterprise *** neilt has joined #gnuenterprise what I meant was how long will it take to move from pre1 to release If it is a few days, I will wait for the release to continue testing on the mac (I am using the last release right now). if it will be a few weeks I will start using pre1 for testing release due at about this weekend iirc excellent, thanks kilo yw planning final release on friday *** sjc has quit IRC *** yure has quit IRC *** kilo has quit IRC *** SachaS has quit IRC *** jamest has joined #gnuenterprise *** neilt has quit IRC *** mnemoc_ has joined #gnuenterprise *** mnemoc has quit IRC *** kreiszner has joined #gnuenterprise *** jcater has quit IRC *** jamest has quit IRC