XSF Discussion - 2013-01-25


  1. Lance switching to using some form of UUID would eliminate having to deal with converting relative/full paths though
  2. Jef well, it is certaintly more simple
  3. Jef i like it
  4. Lance honestly, I would probably even go one further and move the <file /> element into the fis namespace
  5. Lance but, using the existing one does make sense, since you'll want to do file transfer. so idk
  6. Jef yea, it is better to reuse what we have already
  7. Jef and we don't really need to add or remove anything from the metadata defined in jingle
  8. Lance right. so that works great as is
  9. Jef are you going to Fosdem?
  10. Lance yeah. the summit and saturday at fosdem
  11. Jef that's awesome
  12. Lance I also have: https://gist.github.com/4630085
  13. Lance to play with doing things with disco
  14. arcriley hey lance
  15. arcriley are you a PSF member?
  16. Lance I dont think so
  17. arcriley would you like to be?
  18. Lance sure
  19. arcriley perk: special members luncheon at PyCon
  20. arcriley all current and prospective members can attend
  21. Lance sounds like the XSF perks
  22. arcriley pretty much lol except we dont do voting every quarter
  23. Lance application process?
  24. arcriley via nomination, and then you're voted in person at the luncheon
  25. Lance ah, ok
  26. arcriley do you maintain any python packages beyond Sleek?
  27. Lance Not anymore. There were a few personal ones a while back that have been obsoleted and removed
  28. arcriley ok
  29. Lance I may end up with a whole collection of them if I go with making each sleek plugin a separate package
  30. arcriley heh
  31. Lance the independent versioning that way is very tempting
  32. arcriley well i need to writeup a nomination about things you do in the python community. anything else i can add, like speaking at groups, sprints, etc?
  33. Lance unfortunately, sleek has been my only involvement in the greater python community so far
  34. Lance all of the groups and hackathons i've done have been at xsf functions
  35. arcriley oh will you be staying for the sprints at pycon?
  36. arcriley (thats when the real fun at pycon begins, btw)
  37. Lance maybe. i still have to review the schedules and what my work schedule allows
  38. arcriley the weekend is for the suits. they go to these massive talks and rub shoulders with us. then the conference suddenly drops to just developers and the booze and shenanegans start up
  39. Lance Jef: I sent a link with some disco pondering, in case you missed it in the chat history
  40. arcriley so much work gets done during the sprints too
  41. Lance sounds good, I'll try to be there then
  42. arcriley when fosdem is over we should start hammering out the poster. 4' x 4' infographic.
  43. Lance nods
  44. arcriley hey lance, quick "which is more pythonic" opinion
  45. arcriley right now the class decorator for xslt extensions is nodetree.Stylesheet.extension, eg: @nodetree.Stylesheet.extension('http://example.com/namespace') class MyExtension:
  46. arcriley the reason thats a decorator and not a superclass is the decorator registers the class to the namespace url, which a superclass couldn't do in response to defining the class
  47. arcriley writing a set of method decorators which "register" methods within it as either function or element extensions, which looks more pythonic:
  48. Neustradamus has joined
  49. arcriley @nodetree.Stylesheet.ext_function('hello') def hello(self, args) : return 'hello, world!'
  50. arcriley or @nodetree.Stylesheet.Extension.function('hello') def hello(self, args) :
  51. Neustradamus has joined
  52. Lance has joined
  53. Lance has joined
  54. Lance arcriley: one sec, reading
  55. arcriley the latter is more verbose and an extra level of namespace, but i think it looks cleaner and i like that the association between class and method decorators is clear
  56. arcriley tho four levels of namespace starts to feel like java
  57. Lance what are you extending? ie, what is 'hello'?
  58. arcriley XSLT. so, eg, "<exam:hello/>" in the XSLT would be replaced with an xml text node "hello, world!"
  59. Lance ok, so that's the xpath for the template
  60. arcriley actually sorry i confused it, function would be xpath yes, where element would be my example
  61. arcriley the class decorator Element registers the defined class with libxslt and stores it in Stylesheet.__extensions for later access.
  62. Lance what else falls in Extension?
  63. arcriley that's about it. as a type it needs to hold the uri you're defining long enough to wrap, and then its cleaned up. its just a decorator
  64. Lance i'd just go with @nodetree.Stylesheet.extension
  65. Lance and just do the appropriate thing if given a function or a class
  66. arcriley eh?
  67. arcriley the question is how to name the method decorators
  68. Lance oh, i think i'm confused from too many converstations
  69. arcriley without them, there's no way to know whether a method is for a function or element, or potentially other extension point
  70. Lance do you have an example of a class with these in use?
  71. arcriley no because im writing the code right now :-)
  72. arcriley brand new API.
  73. Lance I'd either go with the ext_* version
  74. Lance or make the extension type a parameter
  75. Lance @nodetree.Stylesheet.extend('function', ....)
  76. Lance sorry, have to go to an appointmen
  77. arcriley no prob im talking to a few people about this
  78. Ashley has joined
  79. Ashley has joined
  80. Jef has left
  81. Ashley has joined
  82. Ashley has joined
  83. Neustradamus has joined
  84. Neustradamus has joined
  85. arcriley has left
  86. arcriley has joined
  87. Neustradamus has joined
  88. Neustradamus has joined
  89. Lance has joined
  90. Alex has joined
  91. Alex has left
  92. Neustradamus has joined
  93. Neustradamus has joined
  94. Neustradamus has joined
  95. Neustradamus has joined
  96. Lance has left
  97. Lance has left
  98. Lance has left
  99. Lance has left
  100. Lance has left
  101. Nÿco has joined
  102. Lance has joined
  103. ralphm has left
  104. Kev has left
  105. Zash has joined
  106. Kev has joined
  107. Zash has left
  108. stpeter has joined
  109. Ashley has joined
  110. Ashley has left
  111. Neustradamus has joined
  112. Neustradamus has left
  113. Neustradamus has joined
  114. Ashley has joined
  115. Lance has joined
  116. Ashley has left
  117. Alex has joined
  118. Lance sigh, why do most clients display adhoc command forms in the ugliest ways?
  119. Alex has left
  120. stpeter Lance: good question
  121. stpeter Lance: clearly someone needs to develop a sleek new client on top of SleekXMPP ;-)
  122. Lance there's poezio, but its console only
  123. stpeter the other thing we could do is complete the voting on a website and use the JIDs for XEP-0070 authorization
  124. Lance do any clients support that?
  125. stpeter I have not tested it in a long time
  126. Lance or rather, do browsers support it
  127. Lance clients only have to display a link
  128. Lance ok, looks like just digest-md5, so they should
  129. Lance puts xep-0070 on short list of new plugins to add to sleek
  130. stpeter yeah, ultra-secure digest-md5!
  131. Lance what I really want in a client is one that displays message forms inline with chats
  132. arcriley is that actually used by anyone?
  133. Lance they would if they showed up inline
  134. Lance it would just make interacting with bots so much nicer. an actual form instead of pseudo-form text commands
  135. arcriley WWW-Authenticate: Basic realm="xmpp" Do any browsers actually use that? ^^
  136. Lance ooh
  137. arcriley client aside thats the big issue I see
  138. Lance we'd have to test, but I think they would
  139. arcriley that'd have to use some javascript hook im not aware of
  140. Lance oh, basic
  141. Lance i was thinking of the digest one
  142. arcriley either
  143. Lance goes to make a test script
  144. Lance the realm option is pretty standard though, its just not a domain in this case
  145. Lance oh, but it would also try asking for a password
  146. arcriley IIRC when you get a authorization request a dialog opens requesting your username/password.
  147. arcriley and you would then have to script to return your JID, etc etc
  148. Lance username would be your jid, and empty password
  149. Lance er, no. the password is the transaction id
  150. arcriley how would the user have a transaction ID?
  151. Lance it gets sent to your JID via your xmpp client
  152. Lance copy/paste
  153. arcriley is there a javascript hook for that?
  154. Lance it is certainly not the most user friendly workflow
  155. Lance not that i'm aware of. it would certainly make it a smoother process
  156. Lance but it can still be done manually
  157. Lance this really is a case where cridland's 'browsers need to run xmpp natively' idea shines
  158. arcriley i agree with that.
  159. arcriley its a chicken and egg problem tho.
  160. Lance chrome already does it for syncing apparently; it would be nice if it was just more exposed and configurable
  161. arcriley the big problem that needs to be worked out is the javascript security model for it. how to keep malicious websites from sending xmpp spam on your behalf, stealing your contact data, etc while also providing enough functionality to be genuinely useful
  162. Lance right
  163. bear couldn't the transationid/password dealio be handled like oauth tokens
  164. bear that way the owner of the jid could revoke an apps use of their xmpp stream
  165. bear and have it tied directly to a resource part of the jid
  166. bear hell, make it bear@jid.com/transactionid
  167. Lance has left
  168. Nÿco has left
  169. stpeter has left
  170. Ashley has joined