jdev - 2023-03-01

  1. nicoco has left

  2. nicoco has joined

  3. nicoco has left

  4. wurstsalat has left

  5. nicoco has joined

  6. nicoco has left

  7. nicoco has joined

  8. nicoco has left

  9. Beherit has joined

  10. nicoco has joined

  11. nicoco has left

  12. nicoco has joined

  13. nicoco has left

  14. nicoco has joined

  15. nicoco has left

  16. nicoco has joined

  17. nicoco has left

  18. nicoco has joined

  19. nicoco has left

  20. nicoco has joined

  21. nicoco has left

  22. nicoco has joined

  23. nicoco has left

  24. nicoco has joined

  25. nicoco has left

  26. nicoco has joined

  27. nicoco has left

  28. nicoco has joined

  29. nicoco has left

  30. nicoco has joined

  31. nicoco has left

  32. nicoco has joined

  33. nicoco has left

  34. nicoco has joined

  35. nicoco has left

  36. nicoco has joined

  37. nicoco has left

  38. nicoco has joined

  39. nicoco has left

  40. nicoco has joined

  41. nicoco has left

  42. nicoco has joined

  43. nicoco has left

  44. nicoco has joined

  45. nicoco has left

  46. nicoco has joined

  47. nicoco has left

  48. nicoco has joined

  49. nicoco has left

  50. nicoco has joined

  51. nicoco has left

  52. nicoco has joined

  53. nicoco has left

  54. nicoco has joined

  55. nicoco has left

  56. nicoco has joined

  57. nicoco has left

  58. nicoco has joined

  59. nicoco has left

  60. nicoco has joined

  61. nicoco has left

  62. nicoco has joined

  63. nicoco has left

  64. nicoco has joined

  65. nicoco has left

  66. snow has joined

  67. singpolyma has left

  68. singpolyma has joined

  69. moparisthebest has left

  70. Dele Olajide has left

  71. Mx2 has left

  72. adx has left

  73. stefan has left

  74. moparisthebest has joined

  75. singpolyma has left

  76. singpolyma has joined

  77. Mjolnir Archon has left

  78. Maranda has left

  79. nicoco has joined

  80. nicoco has left

  81. nicoco has joined

  82. nicoco has left

  83. singpolyma has left

  84. singpolyma has joined

  85. singpolyma has left

  86. singpolyma has joined

  87. Beherit has left

  88. Yagizа has joined

  89. snow has left

  90. singpolyma has left

  91. singpolyma has joined

  92. snow has joined

  93. singpolyma has left

  94. singpolyma has joined

  95. Menel has left

  96. Mx2 has joined

  97. Kev has left

  98. Kev has joined

  99. atomicwatch has left

  100. singpolyma has left

  101. Mjolnir Archon has joined

  102. atomicwatch has joined

  103. singpolyma has joined

  104. Maranda has joined

  105. stefan has joined

  106. Maranda has left

  107. Mjolnir Archon has left

  108. stefan has left

  109. nicoco has joined

  110. nicoco has left

  111. singpolyma has left

  112. singpolyma has joined

  113. sponji has joined

  114. stefan has joined

  115. atomicwatch has left

  116. spiral has left

  117. spiral has joined

  118. atomicwatch has joined

  119. Schimon_ has joined

  120. sponji has left

  121. sponji has joined

  122. nik has joined

  123. Menel has joined

  124. pulkomandy has left

  125. marc0s has left

  126. marc0s has joined

  127. snow has left

  128. selurvedu has left

  129. Maranda has joined

  130. Mjolnir Archon has joined

  131. mirux has joined

  132. atomicwatch has left

  133. MSavoritias (fae,ve) has joined

  134. goffi has joined

  135. nicola has left

  136. nicola has joined

  137. nicoco has joined

  138. Beherit has joined

  139. atomicwatch has joined

  140. atomicwatch has left

  141. wurstsalat has joined

  142. atomicwatch has joined

  143. atomicwatch has left

  144. atomicwatch has joined

  145. atomicwatch has left

  146. Mario Sabatino has joined

  147. goffi has left

  148. goffi has joined

  149. atomicwatch has joined

  150. atomicwatch has left

  151. atomicwatch has joined

  152. atomicwatch has left

  153. atomicwatch has joined

  154. atomicwatch has left

  155. atomicwatch has joined

  156. atomicwatch has left

  157. atomicwatch has joined

  158. goffi has left

  159. goffi has joined

  160. adx has joined

  161. u has left

  162. u has joined

  163. sonny has left

  164. nik has left

  165. sonny has joined

  166. hearty has joined

  167. larma has joined

  168. nik has joined

  169. sonny has left

  170. atomicwatch has left

  171. pulkomandy has joined

  172. sonny has joined

  173. jgart has left

  174. atomicwatch has joined

  175. atomicwatch has left

  176. lennart has left

  177. xecks has left

  178. xecks has joined

  179. atomicwatch has joined

  180. atomicwatch has left

  181. atomicwatch has joined

  182. atomicwatch has left

  183. qy has left

  184. qy has joined

  185. atomicwatch has joined

  186. atomicwatch has left

  187. sonny has left

  188. Dele Olajide has joined

  189. sonny has joined

  190. atomicwatch has joined

  191. atomicwatch has left

  192. kapad has joined

  193. kapad has left

  194. kapad has joined

  195. kapad has left

  196. atomicwatch has joined

  197. atomicwatch has left

  198. atomicwatch has joined

  199. Maranda has left

  200. Mjolnir Archon has left

  201. kapad has joined

  202. kapad has left

  203. kapad has joined

  204. sponji has left

  205. Maranda has joined

  206. Mjolnir Archon has joined

  207. Maranda has left

  208. Mjolnir Archon has left

  209. sponji has joined

  210. Menel has left

  211. nik has left

  212. hearty has left

  213. sonny has left

  214. hearty has joined

  215. sonny has joined

  216. rubi has left

  217. rubi has joined

  218. rubi has left

  219. rubi has joined

  220. rubi has left

  221. rubi has joined

  222. edhelas has left

  223. edhelas has joined

  224. Dele Olajide has left

  225. Dele Olajide has joined

  226. Laura has left

  227. Maranda has joined

  228. Mjolnir Archon has joined

  229. sponji has left

  230. nik has joined

  231. sponji has joined

  232. sponji has left

  233. sponji has joined

  234. sponji has left

  235. Laura has joined

  236. PapaTutuWawa has joined

  237. u has left

  238. u has joined

  239. u has left

  240. nik has left

  241. u has joined

  242. homebeach has left

  243. Matrix Traveler (bot) has left

  244. homebeach has joined

  245. Matrix Traveler (bot) has joined

  246. sponji has joined

  247. sponji has left

  248. Mx2 has left

  249. norayr has left

  250. moparisthebest has left

  251. rubi has left

  252. rubi has joined

  253. antranigv has left

  254. rubi has left

  255. rubi has joined

  256. norayr has joined

  257. rubi has left

  258. rubi has joined

  259. sponji has joined

  260. norayr has left

  261. norayr has joined

  262. sponji has left

  263. moparisthebest has joined

  264. kapad has left

  265. antranigv has joined

  266. Alex has left

  267. Alex has joined

  268. paul has joined

  269. sponji has joined

  270. Wojtek has joined

  271. lennart has joined

  272. sonny has left

  273. pep.

    Is there any testing harness (big word) for JID validation?

  274. sponji has left

  275. larma has left

  276. sonny has joined

  277. larma has joined

  278. MattJ

    Nothing universal. Prosody's tests are at https://hg.prosody.im/trunk/file/tip/spec/util_jid_spec.lua and it's been quite a while since anyone found bugs in it...

  279. edhelas

    Wondering how we can have test suites accros languages

  280. MattJ

    Defined input and output formats, not unheard of

  281. edhelas

    I'm currently looking to have a proper RFC 6122 support in PHP

  282. rubi has left

  283. rubi has joined

  284. sponji has joined

  285. nik has joined

  286. Dele Olajide has left

  287. dele.olajide has joined

  288. sponji has left

  289. rubi has left

  290. rubi has joined

  291. Zash

    pep., MattJ: nothing universal and every time it is brought up someone NIHs a new format

  292. sponji has joined

  293. sponji has left

  294. sponji has joined

  295. sponji has left

  296. sponji has joined

  297. sponji has left

  298. sponji has joined

  299. MattJ

    Might as well just publish some CSV or whatever with inputs and expected results, something boringly simple and easy to parse - then people can figure out how to get that into whatever framework they use

  300. sponji has left

  301. sponji has joined

  302. sponji has left

  303. Zash

    MattJ: I might even have started but got bored when yet another custom format was proposed instead

  304. sponji has joined

  305. sponji has left

  306. sponji has joined

  307. sponji has left

  308. sponji has joined

  309. sponji has left

  310. sponji has joined

  311. sponji has left

  312. sponji has joined

  313. sponji has left

  314. pep.

    "," isn't valid in any JID part?

  315. pep.

    I'd have two files, so that isn't an issue

  316. Kev

    I thought it was valid in resources, but haven't checked.

  317. Link Mauve has left

  318. homebeach has left

  319. Matrix Traveler (bot) has left

  320. homebeach has joined

  321. Matrix Traveler (bot) has joined

  322. Link,Mauve

    It is valid in resources.

  323. Link,Mauve has left

  324. nicola has left

  325. pep.

    You demonstrated at best it's valid in Prosody MUCs :P

  326. lovetox has left

  327. singpolyma has left

  328. lovetox has joined

  329. edhelas

    Movim accepts it as well, as there is no proper validation at all :p

  330. nicoco

    what would be super great for me is a "random UTF8 junk to valid resource part" converter. some legacy service allow control chars it seems. Or maybe it's slixmpp that is not permissive enough? Is "×͜× " a valid resource?

  331. Zash

    nicoco, resourceprep says "maybe"

  332. Link Mauve

    nicoco, it isn’t.

  333. Link Mauve

    (I just tried, and poezio showed no error… Will fix.)

  334. Link Mauve

    nicoco, you might get some issue with multiple “random UTF-8 junk” mapping to the same resourcepart.

  335. nicoco

    my "nickname cleaner" right now is `"".join(x for x in nickname if x in string.printable) + " [renamed by slidge]"`, but for this nickname for instance, it turns it to " [renamed by slidge]", which is not very satisfying

  336. Link Mauve

    For instance, Link Mauve and Link Mauve do map to the same resource after resourceprep.

  337. Beherit

    (In the xsf muc I suggested to discuss whether we should consider Google Season of Docs for writing XEPs. https://developers.google.com/season-of-docs/docs/get-started?hl=en xmpp:xsf@muc.xmpp.org?join )

  338. nicoco

    and also, yes Link Mauve, you're right, I'm risking collisions

  339. Link Mauve

    If the legacy protocol you map to considers those two different users, here be dragons.

  340. nicoco

    well, they are 2 different users, but in MUCs, even non anonymous, the nickname is supposedly also a unique identifier

  341. thomaslewis has joined

  342. nicoco

    actually I was dropping by to ask whether it made any sense to use "XEP-0421: Anonymous unique occupant identifiers for MUCs" in *non*anonymous mucs.

  343. sonny has left

  344. nicola has joined

  345. PapaTutuWawa has left

  346. Zash

    nicoco, where everyone sees real JIDs? not much value in it, but I suppose it doesn't hurt for the server to do it anyway

  347. homebeach has left

  348. Matrix Traveler (bot) has left

  349. homebeach has joined

  350. Matrix Traveler (bot) has joined

  351. singpolyma has joined

  352. singpolyma

    > "," isn't valid in any JID part? Why wouldn't it be? Almost everything is allowed in localpart

  353. nicoco

    in fact, AFAIU, none of the legacy services I map right now even have the concept of anonymous groups. but I suspect some clients are not going to allow retractions without it anyway. I'd rather avoid adding it if it doesn't make sense. more code = more trouble. ^^

  354. Zash

    reference to the C in CSV? it has quoting, so not a problem

  355. MattJ

    I almost wrote TSV (which I prefer), but it's less of a standard

  356. PapaTutuWawa has joined

  357. MattJ

    CSV is a standard because there are so many variants to choose from

  358. sonny has joined

  359. nicoco

    is that the definition of a standard? something that you have many variants to choose from?

  360. Zash

    I think I'd just cry a tear and suggest JSON

  361. MattJ

    I almost suggested JSON, but that's not ideal if you want to test various unicode things

  362. Zash

    Is that how ... was it flow? ended up with some newline-based custom format?

  363. singpolyma

    JSON is required to be utf8, no? So Unicode should be no issue

  364. Zash

    singpolyma, no, it's UTF-16

  365. MattJ

    No, and the Prosody tests include invalid UTF-8

  366. singpolyma

    Zash: I think you're talking about the escape sequences?

  367. MattJ

    So anything required to be valid unicode is not suitable, unless you add additional encoding

  368. singpolyma

    UTF16 encoded json is not a thing

  369. Zash

    Sure, escapes that use surrogate pairs and stuff. Depending on your JSON library.

  370. Zash

    Lua is obviously the best format :)

  371. Zash

    Binary safe, descendant of an actual data description format :)

  372. singpolyma

    MattJ: ah, so the tests assume utf8 decoder but contain raw binary?

  373. singpolyma

    What we did for the dhall tests was folders with input in one file and output in another

  374. singpolyma

    No format, just use the filesystem

  375. thomaslewis has left

  376. MattJ

    Prosody's tests don't assume anything, as Lua isn't unicode-aware so you can put most things literally in strings. That's not always sensible due to editors and stuff, though.

  377. MattJ

    So for some things we apply hex or base64

  378. Zash

    Soooooooooooooo we're doing another round of format bikeshedding?

  379. singpolyma

    Zash: no, were just talking :)

  380. singpolyma

    Zash: no, we're just talking :)

  381. singpolyma

    I'm just here because someone said commas might not be allowed in jid and I freaked out ;)

  382. pep.

    "Zash> Is that how ... was it flow? ended up with some newline-based custom format?" yeah fwiw I would do one line per entry, on two separate files. Not much parsing required, very little chance for confusion..

  383. pep.

    singpolyma, not what I said, I asked indeed because of CSV

  384. Zash

    pep., but how do you test jids with newlines???

  385. pep.

    Is that a thing?

  386. Zash

    no, but how do you verify that your library rejects it? :)

  387. pep.


  388. Zash throws CBOR in the ring

  389. Zash

    or why not netstrings?

  390. singpolyma

    I mean, people can use whatever works for them :)

  391. sponji has joined

  392. sponji has left

  393. sponji has joined

  394. Zash

    Hah! The thing I had started used XML

  395. Zash

    <?xml version="1.0" encoding="UTF-8"?> <tests type="invalid"> <test> <jid>node@/server</jid> </test> <test> <jid>@server</jid> </test> ...

  396. sonny has left

  397. Zash

    and XSLT for turning into unit tests

  398. sponji has left

  399. sonny has joined

  400. sponji has joined

  401. larma has left

  402. thomaslewis has joined

  403. thomaslewis has left

  404. sponji has left

  405. sonny has left

  406. goffi has left

  407. goffi has joined

  408. sonny has joined

  409. wurstsalat

    seems like the obvious choice, given the standard this room is about

  410. sponji has joined

  411. sponji has left

  412. singpolyma has left

  413. singpolyma has joined

  414. sponji has joined

  415. sponji has left

  416. singpolyma

    Means inventing a format and can't do invalid utf8 in the general case, but obviously it's an option

  417. sponji has joined

  418. sponji has left

  419. edhelas has left

  420. edhelas has joined

  421. sponji has joined

  422. sponji has left

  423. moparisthebest

    Why not just a jid per line and a valid.txt and an invalid.txt

  424. Zash


  425. singpolyma has left

  426. sponji has joined

  427. pep.

    moparisthebest, I proposed that. And that means you can't test newlines in your jids

  428. TheCoffeMaker has left

  429. sponji has left

  430. moparisthebest

    JIDs shouldn't have newlines ;)

  431. singpolyma has joined

  432. sponji has joined

  433. moparisthebest

    But fine, seperate lines with \0

  434. sponji has left

  435. sponji has joined

  436. sponji has left

  437. singpolyma

    Or just use one file per input one per output and you don't need a format at all. So many options!

  438. sponji has joined

  439. nik has left

  440. sponji has left

  441. sponji has joined

  442. edhelas has left

  443. sponji has left

  444. sonny has left

  445. sponji has joined

  446. sponji has left

  447. edhelas has joined

  448. TheCoffeMaker has joined

  449. sponji has joined

  450. adx has left

  451. nik has joined

  452. sponji has left

  453. sponji has joined

  454. sponji has left

  455. sponji has joined

  456. sonny has joined

  457. goffi has left

  458. goffi has joined

  459. goffi has left

  460. goffi has joined

  461. MattJ

    It's not just "valid" or "invalid" though - Prosody's tests extensively test correct splitting, which many clients/libraries have got wrong in the past

  462. larma has joined

  463. u has left

  464. pep.

    splitting? the 3 parts?

  465. singpolyma

    Rather than standard tests I'd rather see well tested libraries, ideally.

  466. singpolyma

    Most libraries right now accept almost any random crap in their jid "parser"

  467. Zash

    Isn't the goal here to have common test data and test all the libraries at the same time?

  468. u has joined

  469. jgart has joined

  470. adx has joined

  471. goffi has left

  472. MattJ

    Exactly. That's part of the reason libraries aren't sufficiently tested... because without shared test cases, every project just writes their own and inevitably misses some

  473. MattJ

    If they write any at all

  474. goffi has joined

  475. hearty has left

  476. Zash

    Something like what exists for JSON and Markdown libraries ... but of course I couldn't those sites now

  477. flow

    MattJ, fwiw, the valid jids are tested for proper splitting

  478. MattJ

    in Smack?

  479. flow

    no in jxmpp (which is used by Smack)

  480. dele.olajide has left

  481. MattJ

    Right, sure

  482. MattJ

    I'm not commenting on any individual implementation

  483. pep.

    I guess flow meant there is not need to test splitting separately?

  484. MattJ

    Just saying I agree that a common set of test cases would be beneficial

  485. flow


  486. MattJ

    I brought up splitting because having a list of "invalid JIDs" and a list of "valid JIDs" is not sufficient for testing a JID parser

  487. pep.

    Anyway I'm happy with whatever people have. Maybe label tests so that they can be run separately?

  488. MattJ

    and that's one of the solutions that was proposed

  489. flow

    ahh ok, the list of valid JIDs in jxmpp corpus also consists of the expected splitted parts

  490. MattJ

    Exactly. In what format? :)

  491. Dele Olajide has joined

  492. flow

    the grammar is defined in https://github.com/igniterealtime/jxmpp/blob/master/jxmpp-strings-testframework/src/main/resources/xmpp-strings/jids/valid/main#L13-L20

  493. singpolyma has left

  494. flow

    basically using control chars to separate the parts

  495. singpolyma has joined

  496. pep.

    I guess that's easily convertible to another format anyway?

  497. flow

    which yields the nice property that it's still a simple text file that can hold the corpus, while you do not need to escape antyhing

  498. flow

    sure, transformations are possible, but I wonder if there is a better format. but I am happy to hear the ideas

  499. flow

    the format jxmpp's jid corpus uses is trivially parsable

  500. pep.

    Is that the corpus?

  501. pep.

    Or just an example

  502. flow

    the two files are the currently existing corpus

  503. pep.

    I see

  504. flow

    I have some invalid JIDs scraped from openfire (courtesty of Guus) that I need to add

  505. flow

    but since every JID is checked with 4 different "stringprep" implementations, it is a bit of work to add them to the corpus. because you first have to play protocol laywer and decide if its a valid jid or not, and then mask the non-conforming implementations

  506. pep.

    That doesn't seem to hard to use in xmpp-rs/jid

  507. flow

    it shouldn't be, I am surse there is a decent PEG parser for rust

  508. pep.

    yeah yeah

  509. flow

    it shouldn't be, I am sure there is a decent PEG parser for rust

  510. pep.

    it's twice faster than nom.

  511. pep.

    (Sorry, private joke on #rust-fr)

  512. oshn has left

  513. sponji has left

  514. archiwistkaapokalipsy has left

  515. archiwistkaapokalipsy has joined

  516. PeterW has joined

  517. sponji has joined

  518. sponji has left

  519. sponji has joined

  520. sponji has left

  521. sponji has joined

  522. flow

    pff, inside jokes :)

  523. sponji has left

  524. sponji has joined

  525. sponji has left

  526. sponji has joined

  527. sponji has left

  528. sponji has joined

  529. sponji has left

  530. sponji has joined

  531. goffi has left

  532. sponji has left

  533. sponji has joined

  534. sponji has left

  535. sponji has joined

  536. sponji has left

  537. sponji has joined

  538. sonny has left

  539. sponji has left

  540. sponji has joined

  541. sponji has left

  542. sponji has joined

  543. sponji has left

  544. PapaTutuWawa has left

  545. goffi has joined

  546. sponji has joined

  547. pep.

    It's because pest, a peg parser in Rust, had a graph on their web page a while back showing how better it was than other Rust parsers, and it was totally bonkers. #Benchmarks

  548. pep.

    And the nom dev is a regular in #rust-fr so that was the joke

  549. sponji has left

  550. PeterW has left

  551. sponji has joined

  552. sponji has left

  553. sonny has joined

  554. sponji has joined

  555. PapaTutuWawa has joined

  556. sponji has left

  557. sponji has joined

  558. sponji has left

  559. sponji has joined

  560. sponji has left

  561. sponji has joined

  562. sponji has left

  563. sponji has joined

  564. sponji has left

  565. flow

    I would be happy of the jid corpus had a size where parsing speed would be of consideration :)

  566. sponji has joined

  567. sponji has left

  568. oshn has joined

  569. sponji has joined

  570. sponji has left

  571. sponji has joined

  572. sponji has left

  573. sponji has joined

  574. sponji has left

  575. sponji has joined

  576. sponji has left

  577. PeterW has joined

  578. sponji has joined

  579. sponji has left

  580. sponji has joined

  581. sponji has left

  582. sponji has joined

  583. sponji has left

  584. Dele Olajide has left

  585. sponji has joined

  586. sponji has left

  587. sponji has joined

  588. sponji has left

  589. sponji has joined

  590. sponji has left

  591. sponji has joined

  592. sponji has left

  593. sponji has joined

  594. sponji has left

  595. sponji has joined

  596. sponji has left

  597. sponji has joined

  598. sponji has left

  599. sponji has joined

  600. Menel has joined

  601. sponji has left

  602. sponji has joined

  603. sponji has left

  604. sponji has joined

  605. sponji has left

  606. sponji has joined

  607. sponji has left

  608. sponji has joined

  609. sponji has left

  610. sponji has joined

  611. Mx2 has joined

  612. antranigv has left

  613. antranigv has joined

  614. sponji has left

  615. sponji has joined

  616. sponji has left

  617. Mx2 has left

  618. sponji has joined

  619. sponji has left

  620. sponji has joined

  621. sponji has left

  622. sponji has joined

  623. sponji has left

  624. sponji has joined

  625. sponji has left

  626. sponji has joined

  627. norayr has left

  628. sponji has left

  629. sponji has joined

  630. sponji has left

  631. sponji has joined

  632. nik has left

  633. sponji has left

  634. hearty has joined

  635. sponji has joined

  636. antranigv has left

  637. sponji has left

  638. sponji has joined

  639. sponji has left

  640. PeterW has left

  641. sponji has joined

  642. sponji has left

  643. sponji has joined

  644. antranigv has joined

  645. Wojtek has left

  646. pep.

    flow, is this correct? Corpus → Entry* Entry → Jid* | CommentLine*

  647. snow has joined

  648. pep.

    Shouldn't Entry be Jid | CommentLine ? (without the *)

  649. homebeach has left

  650. Matrix Traveler (bot) has left

  651. homebeach has joined

  652. Matrix Traveler (bot) has joined

  653. pep.

    So that there is something

  654. pep.

    So that there is something to parse

  655. pep.

    Since Corpus is already Entry*

  656. Laura has left

  657. flow

    is it currenlty simply saying that an entry consists of either potentially multiple Jid or CommentLine entries?

  658. flow

    so the * suffix for Jid and CommentLine is not strictly required, but also technically not wrong

  659. flow

    or am I missing something?

  660. flow

    (it's been a while since I wrote this…)

  661. pep.

    Ah I thought * was 0+ not 1+

  662. pep.

    Yeah it's not wrong

  663. pep.

    hmm, wait, an entry consists of multiple jids or coments?

  664. pep.

    hmm, wait, an entry consists of multiple jids or comments?

  665. pep.

    I'd say at most one jid or at most one comment?

  666. pep.

    I mean, I think this is what it should be

  667. thomaslewis has joined

  668. kapad has joined

  669. thomaslewis has left

  670. moparisthebest

    I'm using afl to generate stanza/nonza test cases, could do the same for JIDs

  671. pep.

    https://gitlab.com/xmpp-rs/xmpp-rs/-/commit/7fece526332dfe4d32c1f1989349fbc17e6018c3 That's only the valid parser. Untested.

  672. sponji has left

  673. pep.

    afk nao

  674. Wojtek has joined

  675. sponji has joined

  676. sponji has left

  677. sponji has joined

  678. sponji has left

  679. sponji has joined

  680. sponji has left

  681. sponji has joined

  682. sponji has left

  683. sponji has joined

  684. snow has left

  685. snow has joined

  686. Laura has joined

  687. Mjolnir Archon has left

  688. Maranda has left

  689. PeterW has joined

  690. PeterW has left

  691. PeterW has joined

  692. PapaTutuWawa has left

  693. Laura has left

  694. archiwistkaapokalipsy has left

  695. archiwistkaapokalipsy has joined

  696. Mario Sabatino has left

  697. Mario Sabatino has joined

  698. singpolyma has left

  699. Mario Sabatino has left

  700. Mario Sabatino has joined

  701. Laura has joined

  702. singpolyma has joined

  703. PeterW has left

  704. sponji has left

  705. sponji has joined

  706. spiral has left

  707. antranigv has left

  708. antranigv has joined

  709. techmetx11 has left

  710. techmetx11 has joined

  711. techmetx11 has left

  712. Schimon_ has left

  713. larma has left

  714. spiral has joined

  715. techmetx11 has joined

  716. larma has joined

  717. Schimon_ has joined

  718. larma has left

  719. sponji has left

  720. sponji has joined

  721. Wojtek has left

  722. PapaTutuWawa has joined

  723. larma has joined

  724. Wojtek has joined

  725. larma has left

  726. Yagizа has left

  727. larma has joined

  728. Ge0rG has left

  729. larma has left

  730. larma has joined

  731. Ge0rG has joined

  732. sponji has left

  733. Menel has left

  734. Menel has joined

  735. Dele Olajide has joined

  736. sponji has joined

  737. singpolyma has left

  738. jgart has left

  739. spiral has left

  740. Ingolf has left

  741. singpolyma has joined

  742. spiral has joined

  743. Ingolf has joined

  744. nik has joined

  745. xnamed has left

  746. TheCoffeMaker has left

  747. xnamed has joined

  748. larma has left

  749. larma has joined

  750. larma has left

  751. larma has joined

  752. larma has left

  753. jgart has joined

  754. larma has joined

  755. larma has left

  756. larma has joined

  757. larma has left

  758. larma has joined

  759. larma has left

  760. nik has left

  761. Menel has left

  762. snow has left

  763. Menel has joined

  764. paul has left

  765. singpolyma has left

  766. homebeach has left

  767. Matrix Traveler (bot) has left

  768. homebeach has joined

  769. Matrix Traveler (bot) has joined

  770. rubi has left

  771. rubi has joined

  772. singpolyma has joined

  773. larma has joined

  774. larma has left

  775. larma has joined

  776. larma has left

  777. larma has joined

  778. larma has left

  779. Maranda has joined

  780. larma has joined

  781. paul has joined

  782. Mjolnir Archon has joined

  783. snow has joined

  784. larma has left

  785. larma has joined

  786. Wojtek has left

  787. Maranda has left

  788. Mjolnir Archon has left

  789. larma has left

  790. larma has joined

  791. larma has left

  792. larma has joined

  793. larma has left

  794. larma has joined

  795. larma has left

  796. mirux has left

  797. larma has joined

  798. mirux has joined

  799. sponji has left

  800. larma has left

  801. Yagizа has joined

  802. larma has joined

  803. larma has left

  804. thomaslewis has joined

  805. nicoco has left

  806. Menel has left

  807. thomaslewis has left

  808. nik has joined

  809. u has left

  810. u has joined

  811. Menel has joined

  812. Trung has left

  813. Trung has joined

  814. larma has joined

  815. nicoco has joined

  816. larma has left

  817. thomaslewis has joined

  818. thomaslewis has left

  819. nicoco_ has joined

  820. paul has left

  821. MSavoritias (fae,ve) has left

  822. nicoco_ has left

  823. nicoco_ has joined

  824. u has left

  825. u has joined

  826. Schimon_ has left

  827. mirux has left

  828. Trung has left

  829. Trung has joined

  830. Trung has left

  831. Trung has joined

  832. Maranda has joined

  833. nicoco_ has left

  834. Mjolnir Archon has joined

  835. Maranda has left

  836. Mjolnir Archon has left

  837. norayr has joined

  838. edhelas has left

  839. edhelas has joined

  840. Trung has left

  841. Trung has joined

  842. larma has joined

  843. larma has left

  844. Mario Sabatino has left

  845. singpolyma has left

  846. Trung has left

  847. Trung has joined

  848. singpolyma has joined

  849. atomicwatch has left

  850. Trung has left

  851. Trung has joined

  852. atomicwatch has joined

  853. singpolyma has left

  854. singpolyma has joined

  855. larma has joined

  856. larma has left

  857. Trung has left

  858. Trung has joined

  859. Wojtek has joined

  860. Dele Olajide has left

  861. Trung has left

  862. Trung has joined

  863. Trung has left

  864. Trung has joined

  865. larma has joined

  866. paul has joined

  867. snow has left

  868. larma has left

  869. larma has joined

  870. singpolyma has left

  871. singpolyma has joined

  872. Vaulor has left

  873. larma has left

  874. edhelas has left

  875. edhelas has joined

  876. Trung has left

  877. Trung has joined

  878. nik has left

  879. larma has joined

  880. larma has left

  881. thomaslewis has joined

  882. u has left

  883. u has joined

  884. thomaslewis has left

  885. thomaslewis has joined

  886. Dele Olajide has joined

  887. Vaulor has joined

  888. spiral has left

  889. spiral has joined

  890. thomaslewis has left

  891. Trung has left

  892. Trung has joined

  893. larma has joined

  894. moparisthebest has left

  895. moparisthebest has joined

  896. atomicwatch has left

  897. PapaTutuWawa has left

  898. thomaslewis has joined

  899. u has left

  900. singpolyma has left

  901. Dele Olajide has left

  902. Dele Olajide has joined

  903. thomaslewis has left

  904. thomaslewis has joined

  905. singpolyma has joined

  906. thomaslewis has left

  907. Trung has left

  908. Trung has joined

  909. Dele Olajide has left

  910. Dele Olajide has joined

  911. u has joined

  912. Dele Olajide has left

  913. Dele Olajide has joined

  914. Wojtek has left

  915. Wojtek has joined

  916. u has left

  917. u has joined

  918. larma has left

  919. larma has joined

  920. larma has left

  921. stefan has left

  922. Dele Olajide has left

  923. Yagizа has left

  924. Yagizа has joined

  925. Wojtek has left

  926. u has left

  927. marc0s has left

  928. marc0s has joined

  929. nicoco has left