Thursday, 2012-08-09

*** Joins: dregad (~dregad@155.250.128.35)00:05
*** Quits: dregad (~dregad@155.250.128.35) (Quit: Ex-Chat)01:13
*** Joins: dregad (~dregad@155.250.128.35)01:13
*** Quits: dregad (~dregad@155.250.128.35) (Client Quit)01:13
*** Joins: dregad (~dregad@155.250.128.35)01:13
*** Joins: Paul_46 (~IceChat09@cpc1-enfi15-2-0-cust580.hari.cable.virginmedia.com)03:38
Paul_46dregad: mo?03:46
Paul_46or jreese even03:46
dregad<Paul_46> ?05:09
Paul_46lo05:10
Paul_46events05:10
Paul_46any idea why john might have put the signals in random files e.g. bug_update.php and not in bug api's update function05:11
dregadnot really no05:14
dregadmaybe because the event handler may interact with the GUI05:14
Paul_46that strikes me as something you should be able to detect05:15
Paul_46i.e. if you delete a bug, which deletes bugnotes for instance05:15
Paul_46that should fire bugnote delete event for each bugnote then a bug delete event05:15
Paul_46and wow05:19
Paul_46gonna need to think about this05:19
dregadit would make more sense to have them in the api I guess - guarantees integrity and consistent calling of events05:35
Paul_46[PATCH 264/350] Add 'Close' button for bugs06:17
Paul_46dregad: from memory we used to have a close button06:17
Paul_46but then it got removed06:17
GitHub37[mantisbt] siebrand pushed 1 new commit to master-1.2.x: http://git.io/NGM2YA07:03
GitHub37[mantisbt/master-1.2.x] Localisation updates from http://translatewiki.net. - Siebrand Mazeland07:03
*** Quits: kirillka (~Miranda@195.242.142.17) (Quit: kirillka)07:06
dregadwhy was it removed ? it's a necessary feature when you allow reporters to close08:43
dregadiirc, using the 'change status' list + button instead, caused issues (security due to workflow bypass)08:45
dregadsee http://www.mantisbt.org/bugs/view.php?id=1415608:45
Paul_46right - bbiab09:05
*** Quits: giallu (~giallu@fedora/giallu) (Remote host closed the connection)09:41
*** Quits: dregad (~dregad@155.250.128.35) (Quit: Ex-Chat)10:02
jreesePaul_46: I agree with you that a lot of the events *should* be part of the API, but the problem is, as dregad guessed, because most of the use cases that I was dealing with were explicitly surrounding improvements or additions to the user interface, and calling the API's from non-UI contexts would either cause errors when triggering the events, or would greatly complicate the way in which plugins would need to use those events10:03
jreeseideally, I think two sets of events are really needed: one set of events embedded into the API to enable extending pure business logic, and a second "outer" set of events that are specific to the needs of the UI10:03
Paul_46atm, i'm trying to get them to be part of the API10:55
Paul_46for things like 'bugupdate/delete, notes etc10:55
Paul_46a simple "plugin" I can think someone might like to have is to get a notification when a bugnote is deleted10:55
Paul_46and atm, the bugnote delete hook only triggers in certain places10:55
Paul_46atm, if you add a bugnote via the legacy soap api it does't get logged - so kinda 'breaks' plugins anyway10:57
Paul_46at the same time, i've been trying to move some of the logic for various things into the core api, so that it's easier to add a bug/note via a future webservice api or mobile interface10:58
Paul_46however, it's a big experiment atm10:58
jreesewell, depending on the plugin, letting the SOAP API trigger the event can "break" things as well; that's what I was trying to get at above10:58
Paul_46yea10:58
Paul_46however, i'd probably argue that the plugin should handle that10:59
jreeseyes and no10:59
Paul_46it could be a mobile client, a web browser or a xmlrpc/json/soap api10:59
jreeseI'd rather see two different events than force all plugins to do some complicated checks to make sure they're only running in appropriate contexts11:00
Paul_46yea, but i'd probably be inclined to argue that the 'extra' event should be added as a sensible need arises11:01
jreeseie, one set of events for "headless" events that happen via APIs, and a complimentary set for UI events that allow plugins to display output, form elements, and process user input11:01
Paul_46for example: EVENT_MANAGE_VERSION_CREATE11:02
jreesewell, of course not every single event needs to be duplicated11:02
Paul_46"This event allows plugins to do post-processing of newly-created project versions from the View Project page, or versions copied from other projects. This event is triggered for each version created."11:02
Paul_46we need an EVENT_VERSION_CREATE in your context11:02
jreesebut at this point, I don't think any good solution is possible without breaking everything that already exists11:03
Paul_46i'm not too fussed about that11:03
Paul_46as the 2.0 db api already breaks stuff11:03
jreeseand given my current position with the project, tbh I don't really care what the end result is, I just think erring on the side of more events helps to keep the plugin hooks simpler by reducing how much they actually need to do to the minimum11:04
Paul_46nod11:04
Paul_46it's unfortunate that the plugin api hooks were created to match the setup of mantis - as whilst some of the events are great some are kinda wierd :)11:07
jreeseyeah, the problem of working more towards direct goals and needs rather than a blue sky approach11:08
Paul_46we should fire a hook really before/after any db change11:10
Paul_46and then on some forms11:10
Paul_46the first 2 allow for a) log plugins b) someone to enforce a rule e.g. capitalise users full name regardless of input source11:11
Paul_46the 2nd is for the specific display issues11:11
Paul_46e.g. provider user info11:12
Paul_46-r11:12
Paul_46the only question then is if you need [and you may do]11:12
Paul_46plugin to hook html to add field to form11:12
Paul_46event to hook response from form11:12
Paul_46api->create function:11:12
Paul_46event to hook before db insert11:13
Paul_46event to hook after db insert11:13
Paul_46or whether 'hook response from form' can be handled by 'before db insert'11:13
Paul_46[you could always do a switch case (pagename) if you wanted to do certain thins on certain paths into the app only11:13
GitHub180[mantisbt] rombert pushed 1 new commit to master-1.2.x: http://git.io/xNmzDw12:51
GitHub180[mantisbt/master-1.2.x] api soap: correct usage of bugnote_set_view_state - Robert Munteanu12:51
GitHub148[mantisbt] rombert pushed 1 new commit to master: http://git.io/ksCA2w12:51
GitHub148[mantisbt/master] api soap: correct usage of bugnote_set_view_state - Robert Munteanu12:51
*** Joins: giallu (~giallu@fedora/giallu)13:14
*** Quits: giallu (~giallu@fedora/giallu) (Ping timeout: 276 seconds)15:15
*** Quits: Paul_46 (~IceChat09@cpc1-enfi15-2-0-cust580.hari.cable.virginmedia.com) (Quit: Light travels faster then sound, which is why some people appear bright, until you hear them speak)16:32
*** Quits: sdfjkljkdfsljkl (~sdfjkljkd@static.96.23.63.178.clients.your-server.de) (Remote host closed the connection)17:00
*** Joins: sdfjkljkdfsljkl (~sdfjkljkd@static.96.23.63.178.clients.your-server.de)17:00
*** Joins: kirillka (~Miranda@195.242.142.17)22:31
*** Joins: giallu (~giallu@fedora/giallu)23:33
*** Quits: kirillka (~Miranda@195.242.142.17) (Ping timeout: 252 seconds)23:42

Generated by irclog2html.py 2.10.0 by Marius Gedminas - find it at mg.pov.lt!