Subject: KampalaMeetingLog2016x10x20.txt Date: October 20, 2016 at 4:12:58 PM PDT [3:02pm] PeterThoeny: hi HideyoImazu-san [3:02pm] PeterThoeny: what's new in tokyo? [3:03pm] HideyoImazu: Hi Peter [3:03pm] HideyoImazu: It's autumn [3:03pm] HideyoImazu: best time of the year [3:04pm] PeterThoeny: i like all the colors [3:04pm] PeterThoeny: gifu-ken is nice in fall [3:04pm] HideyoImazu: sure [3:05pm] PeterThoeny: not much news on my side [3:05pm] HideyoImazu: I haven't done a lot of sightseeing in GIfu though [3:05pm] PeterThoeny: one place i definitely would like to see again is shirakawago [3:05pm] HideyoImazu: Two cities in Gifu are hot now [3:06pm] HideyoImazu: There are two animation movies featuring two cities in Gifu [3:06pm] PeterThoeny: ah [3:06pm] HideyoImazu: not quite featuring [3:06pm] PeterThoeny: what cities? [3:06pm] HideyoImazu: Hida-shi and Ogaki-shi [3:07pm] HideyoImazu: top box sale of this year movie "Your Name" has many scenes in Hida-shi [3:07pm] PeterThoeny: your hometown! [3:07pm] HideyoImazu: that's righ [3:07pm] HideyoImazu: right [3:08pm] PeterThoeny: my daugther wll be in japan for 2 weeks in dec [3:08pm] HideyoImazu: where in Japan? [3:08pm] PeterThoeny: visiting fiends in tokyo, osaka, and possibly nagoya [3:08pm] PeterThoeny: my r key does not cooperate [3:08pm] PeterThoeny: "friends" [3:09pm] HideyoImazu: please tell her to text me or call me when she's stuck [3:09pm] PeterThoeny: ok, thank you! [3:10pm] PeterThoeny: time check: +10 min [3:10pm] PeterThoeny: looks like just two of us [3:10pm] PeterThoeny: let's start [3:10pm] PeterThoeny: http://twiki.org/cgi-bin/view/Codev/KampalaReleaseMeeting2016x10x20 [3:11pm] PeterThoeny: 1. Feature Requests for Kampala Release [3:11pm] PeterThoeny: 2. Extensions [3:11pm] PeterThoeny: 3. Review Urgent and Not So Urgent Bugs [3:11pm] PeterThoeny: 4. Miscellaneous [3:11pm] PeterThoeny: usual agenda [3:11pm] PeterThoeny: ---++ 1. Feature Requests for Kampala Release [3:11pm] PeterThoeny: http://twiki.org/cgi-bin/view/Codev/WebChanges [3:11pm] PeterThoeny: no changes since last time [3:11pm] PeterThoeny: any feature you'd like to discuss? [3:11pm] HideyoImazu: no [3:12pm] PeterThoeny: not at a feature proposal stage, but i had an intersting discussion with a friend the other day [3:13pm] PeterThoeny: what if more of the processing is done on the browser instead of the server [3:13pm] HideyoImazu: ah [3:13pm] PeterThoeny: all rendering could be done in the browser using js [3:13pm] HideyoImazu: i thought about that [3:14pm] PeterThoeny: with a proptocol to send raw data back and forth [3:14pm] HideyoImazu: given maturity of js libraries and js runtime on browsers [3:14pm] PeterThoeny: so, for viewing, raw tml would be sent to bowser, and js does the heavy lifting [3:14pm] HideyoImazu: Gmail and other Google apps are running in that way to a large extent [3:15pm] PeterThoeny: on change, just snippets could be sent to server, for incrememtal & real time update of content [3:15pm] PeterThoeny: e.g. simultaneous editing of docs [3:15pm] PeterThoeny: yup [3:16pm] PeterThoeny: lots of details need to be worked out [3:16pm] PeterThoeny: for example, a %SERCH{}%, does this initiate an ajax call just for the search? [3:17pm] PeterThoeny: i meant %SEARCH{}% [3:17pm] PeterThoeny: the api could be defined fo various apps, twiki just one of them [3:18pm] PeterThoeny: others could chat apps etc [3:18pm] PeterThoeny: anyway, just wanted to plant the seed [3:18pm] HideyoImazu: probably we need to rethink totally how a wiki implemented that way should be [3:18pm] PeterThoeny: yes [3:19pm] PeterThoeny: move to next topic? [3:19pm] PeterThoeny: ---++ 2. Extensions [3:19pm] PeterThoeny: http://twiki.org/cgi-bin/view/Plugins/WebChanges [3:20pm] PeterThoeny: no updates since last time [3:20pm] PeterThoeny: ---++ 3. Review Urgent and Not So Urgent Bugs [3:20pm] PeterThoeny: http://develop.twiki.org/~twiki/cgi-bin/view/Bugs/WebChanges [3:21pm] PeterThoeny: http://develop.twiki.org/~twiki/cgi-bin/view/Bugs/Item7755 -  Item7755: During edit mono/proportional font preference fails [3:21pm] PeterThoeny: looks like fixed, but someone posted a feedback that proportional switch does not wok [3:22pm] PeterThoeny: i could not reproduce, once i updated twiki.org, it works as expected [3:22pm] HideyoImazu: I will take a look [3:23pm] PeterThoeny: i suspect an upgrade issue on his side [3:23pm] PeterThoeny: ---++ 4. Miscellaneous [3:23pm] PeterThoeny: anything? [3:24pm] HideyoImazu: no [3:26pm] HideyoImazu: ah one thing I'm thinking about [3:26pm] PeterThoeny: there was a small thing i considered duing our discussion, slipped my mind [3:26pm] PeterThoeny: guess not that important [3:26pm] PeterThoeny: ok, go ahead [3:26pm] HideyoImazu: TWiki can do a lot with %VARIABLE{...}% [3:26pm] HideyoImazu: but it's difficult and not so pretty [3:28pm] HideyoImazu: it might be great if TWiki has a better macro feature [3:28pm] PeterThoeny: can you elaborate? [3:28pm] PeterThoeny: indeed, there are so many variables, and difficult to find the ight one [3:28pm] PeterThoeny: "right one" [3:29pm] PeterThoeny: and then th challenge is to learn all the paameters [3:29pm] HideyoImazu: leveraging Perl 6's syntax processing might be interesting [3:29pm] PeterThoeny: "parameters" [3:29pm] PeterThoeny: in twiki-6 i tried to make it easier to discover with the variable wizard [3:29pm] PeterThoeny: http://twiki.org/cgi-bin/view/TWiki06x00/TWikiVariables [3:30pm] PeterThoeny: you click on a category, select a variable, then see the details [3:30pm] PeterThoeny: i think this is a first step [3:30pm] PeterThoeny: but eally, it should b integrated into the editor [3:30pm] HideyoImazu: that's a good move. [3:30pm] PeterThoeny: ideally like a code editor with auto-expand [3:31pm] HideyoImazu: but my concern here is the very nature of variable expansion in TWiki [3:31pm] PeterThoeny: you type %S and see all variables starting with S [3:31pm] PeterThoeny: if you select %SEARCH you see all possible parameters with explanation [3:31pm] PeterThoeny: like? [3:32pm] HideyoImazu: TWiki's variable processing is macro expansion [3:33pm] HideyoImazu: nested macro expansion is difficult to deal with when you want to change the order of expansion [3:33pm] HideyoImazu: you need to do $dollar, $dollardollar [3:33pm] PeterThoeny: oh yes, that is a challenge [3:34pm] PeterThoeny: if you want inside out expansion it is obvious [3:34pm] PeterThoeny: but delayed expansion is a challenge [3:34pm] HideyoImazu: there are things pretty difficult to achieve [3:34pm] PeterThoeny: any idea how to present that better? [3:35pm] HideyoImazu: if you get %SOMETHING% from %INCLUDE{http://something}%, making sure it's displayed as %SOMETHING% is difficult. [3:36pm] PeterThoeny: that's a different case: recursive (or not) expansion [3:37pm] PeterThoeny: i think there is a switch in INCLUDE to prevent recusive expansion [3:37pm] HideyoImazu: if %INCLUDE{...}% has encode="...", you can achieve displaying %SOMETHIN% as it is [3:38pm] PeterThoeny: ah, raw="on" [3:38pm] HideyoImazu: but what if you want to process "%SOMETHING%" on your own with %CALCULATE{...}% [3:38pm] PeterThoeny: doc: If raw="on" is specified, that variable expansion does not happen [3:39pm] PeterThoeny: ah, i see that's for topic include [3:39pm] PeterThoeny: behaviour is different for url include [3:39pm] PeterThoeny: so, yes, your case is not covered [3:40pm] HideyoImazu: these things can happen with all variables [3:41pm] HideyoImazu: and in ordinary programming, these don't happen. [3:41pm] PeterThoeny: any idea how to enhance the spec to say "stop expanding" at any level? [3:41pm] PeterThoeny: for any type of variable? [3:42pm] HideyoImazu: not all but various variables [3:42pm] PeterThoeny: maybe a new variable to control what's happening inside? [3:43pm] HideyoImazu: e.g. %HEADLINE{...}% [3:43pm] HideyoImazu: %LDAP{...}% [3:43pm] HideyoImazu: %DATABASE{...}% [3:44pm] PeterThoeny: such as %EXPANDVAR{ stoplevel="2" variable="%SEARCH{… format="…" }" }% [3:44pm] HideyoImazu: any variable retrieving data from external sources or internal [3:46pm] PeterThoeny: yes, a generic way to control expansion would be useful [3:46pm] HideyoImazu: %EXPANDVAR{...}% or otherwise, we can control variable expansion more [3:46pm] HideyoImazu: but that makes variable expansion even more difficult to understand [3:47pm] PeterThoeny: or a %VARIABLECONFIG{}% you can use before a variable to change the behavious of expansion [3:48pm] HideyoImazu: doing LDAP query in a loop is not fun in TWiki variables [3:48pm] PeterThoeny: %VARIABLECONFIG{ expand="0" }% to turn off expansion [3:48pm] HideyoImazu: I really like the dynamic nature of TWiki -- variable expansion. [3:48pm] PeterThoeny: %VARIABLECONFIG{ expand="2" }% to expand up to level 2 etc [3:49pm] HideyoImazu: but it's difficult to deal with. [3:49pm] PeterThoeny: %VARIABLECONFIG{ expand="on" }% is the default [3:49pm] PeterThoeny: example: [3:49pm] PeterThoeny: %VARIABLECONFIG{ expand="2" }% [3:49pm] PeterThoeny: %INCLUDE{...}% [3:49pm] PeterThoeny: %VARIABLECONFIG{ expand="on" }% [3:50pm] PeterThoeny: so you could turn off and on the expansion [3:51pm] HideyoImazu: what if you want to process %INCLUDE{...}% result with %CALCULATE{...}%? [3:51pm] HideyoImazu: without %SOMETHING% in %INCLUDE{...}% result expanded [3:51pm] PeterThoeny: let me understand [3:52pm] PeterThoeny: so, if INCLUDE returns a %SOMETHING% [3:52pm] PeterThoeny: where is CALCULATE coming into play? [3:53pm] HideyoImazu: let's say you want to do string manipulation with %INCLUDE{...}% result. [3:54pm] HideyoImazu: let's say you want to get a string between two %'s [3:55pm] PeterThoeny: ah, %CALCULATE{ …. (%INCLUDE{}%)…. }, where INCLUDE resolves, but not included text [3:56pm] HideyoImazu: in ordinary programming, there is nothing special [3:56pm] HideyoImazu: var1 = include(...); [3:56pm] HideyoImazu: var2 = calculate(var1, ...); [3:57pm] HideyoImazu: or even [3:57pm] HideyoImazu: calculate(include(...), ...) [3:57pm] PeterThoeny: i ee [3:57pm] PeterThoeny: i see [3:58pm] PeterThoeny: i think that INCLUDE does a special thing to explicitely expand the result [3:59pm] PeterThoeny: other vars don't do that [3:59pm] PeterThoeny: that warrants a new switch in INCLUDE to not do expand [3:59pm] PeterThoeny: what do you think? [4:00pm] HideyoImazu: I don't think INCLUDE is special. [4:00pm] HideyoImazu: %%IF{"condition" then="LDAP{" else="HIDE{"}% LDAP parameters }% [4:01pm] HideyoImazu: if variable expansion yields a variable, that variable is expanded. [4:02pm] PeterThoeny: these are two different cases [4:02pm] PeterThoeny: the include explicitely expends the result before returning (special to include) [4:02pm] HideyoImazu: ah, that's right [4:03pm] PeterThoeny: the IF resolves in the usual inside-out/right-to-left eval order [4:03pm] PeterThoeny: "expands the result" [4:03pm] HideyoImazu: variables in %INCLUDE{...}% result need to expanded in the context of the included topic [4:03pm] PeterThoeny: which is the case [4:04pm] PeterThoeny: to summarize, i think a new switch just for INCLUDE to not expand is appropriate [4:04pm] HideyoImazu: the bottom line here is I'd like to make web app development in TWiki more fun and easy [4:05pm] PeterThoeny: in addition, possibly a configuration to tell the render engine to stop exanding at any level, or to delay the expansion at any level [4:05pm] PeterThoeny: the latter could be useful for IF then/else and SEARCH format [4:06pm] PeterThoeny: the raw="on" switch behaves differently for topic include and url include [4:07pm] PeterThoeny: what if we change the spec of url include to not expand variables if raw="on" ? [4:07pm] PeterThoeny: changing spec is usually a no-no, but in this case possibly appropriate? [4:07pm] HideyoImazu: that will help [4:08pm] HideyoImazu: shall we wrap this up? [4:08pm] PeterThoeny: i think it is appropriate to align the behaviour of the two types of include [4:08pm] PeterThoeny: oh yes, :68 min [4:08pm] PeterThoeny: +68 min [4:08pm] PeterThoeny: i'll post the logs and minutes as usual [4:09pm] PeterThoeny: if you want, how about adding a proposal for the raw="on" behaviour? [4:09pm] HideyoImazu: let me think [4:10pm] PeterThoeny: and i will think about the delay/stop expansion question [4:10pm] PeterThoeny: ok, gotta go [4:10pm] HideyoImazu: ttyl [4:11pm] PeterThoeny: thanks HideyoImazu-san [4:11pm] PeterThoeny: ttyl