Re: dxml 0.2.0 released

2018-02-23 Thread Jesse Phillips via Digitalmars-d-announce
On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. Documentation: http://jmdavisprog.com/docs/dxml/0.2.0/ Github: https://github.com/jmdavis/dxml/tree/v0.2.0 Dub: http://code.dlang.org/packages/dxml - Jonathan M Davis This is absolutely

Re: dxml 0.2.0 released

2018-02-15 Thread jmh530 via Digitalmars-d-announce
On Thursday, 15 February 2018 at 02:40:03 UTC, Jonathan M Davis wrote: LOL. That's actually part of what makes writing range-based libraries so much harder to get right than simply using ranges in your program. [snip] That sounds like an interesting topic for a blog post.

Re: dxml 0.2.0 released

2018-02-14 Thread Jonathan M Davis via Digitalmars-d-announce
On Thursday, February 15, 2018 01:55:28 rikki cattermole via Digitalmars-d- announce wrote: > On 14/02/2018 5:13 PM, Jonathan M Davis wrote: > > On Wednesday, February 14, 2018 14:09:21 rikki cattermole via > > Digitalmars-d-> > > announce wrote: > >> On 14/02/2018 2:02 PM, Adrian Matoga wrote: >

Re: dxml 0.2.0 released

2018-02-14 Thread rikki cattermole via Digitalmars-d-announce
On 14/02/2018 5:13 PM, Jonathan M Davis wrote: On Wednesday, February 14, 2018 14:09:21 rikki cattermole via Digitalmars-d- announce wrote: On 14/02/2018 2:02 PM, Adrian Matoga wrote: On Wednesday, 14 February 2018 at 10:57:26 UTC, rikki cattermole wrote: See lines: - Input!IR temp = input; -

Re: dxml 0.2.0 released

2018-02-14 Thread Jonathan M Davis via Digitalmars-d-announce
On Wednesday, February 14, 2018 14:09:21 rikki cattermole via Digitalmars-d- announce wrote: > On 14/02/2018 2:02 PM, Adrian Matoga wrote: > > On Wednesday, 14 February 2018 at 10:57:26 UTC, rikki cattermole wrote: > >> See lines: > >> - Input!IR temp = input; > >> - input = temp; > >> > >>

Re: dxml 0.2.0 released

2018-02-14 Thread rikki cattermole via Digitalmars-d-announce
On 14/02/2018 2:02 PM, Adrian Matoga wrote: On Wednesday, 14 February 2018 at 10:57:26 UTC, rikki cattermole wrote: See lines: - Input!IR temp = input; - input = temp;    bool commentLine() {     Input!IR temp = input; (...)     if (!temp.empty) { (...)     input =

Re: dxml 0.2.0 released

2018-02-14 Thread Adrian Matoga via Digitalmars-d-announce
On Wednesday, 14 February 2018 at 10:57:26 UTC, rikki cattermole wrote: See lines: - Input!IR temp = input; - input = temp; bool commentLine() { Input!IR temp = input; (...) if (!temp.empty) { (...) input = temp;

Re: dxml 0.2.0 released

2018-02-14 Thread rikki cattermole via Digitalmars-d-announce
On 14/02/2018 10:32 AM, Jonathan M Davis wrote: On Wednesday, February 14, 2018 10:14:44 Kagamin via Digitalmars-d-announce wrote: It looks like EntityRange requires forward range, is it ok for a parser? It's very difficult in general to write a parser that isn't at least a forward range,

Re: dxml 0.2.0 released

2018-02-14 Thread Jonathan M Davis via Digitalmars-d-announce
On Wednesday, February 14, 2018 10:14:44 Kagamin via Digitalmars-d-announce wrote: > It looks like EntityRange requires forward range, is it ok for a > parser? It's very difficult in general to write a parser that isn't at least a forward range, because without that, you're stuck at only one

Re: dxml 0.2.0 released

2018-02-14 Thread Chris via Digitalmars-d-announce
On Tuesday, 13 February 2018 at 22:13:36 UTC, H. S. Teoh wrote: Ironically, the general advice I found online w.r.t XML vulnerabilities is "don't allow DTDs", "don't expand entities", "don't resolve externals", etc.. There also aren't many XML parsers out there that fully support all the

Re: dxml 0.2.0 released

2018-02-14 Thread Jonathan M Davis via Digitalmars-d-announce
On Wednesday, February 14, 2018 10:03:45 Patrick Schluter via Digitalmars-d- announce wrote: > On Tuesday, 13 February 2018 at 22:00:59 UTC, Jonathan M Davis > > wrote: > > On Tuesday, February 13, 2018 21:18:12 Patrick Schluter via > > > > Digitalmars-d- announce wrote: > >> [...] > > > > Well,

Re: dxml 0.2.0 released

2018-02-14 Thread Kagamin via Digitalmars-d-announce
On Tuesday, 13 February 2018 at 22:29:27 UTC, H. S. Teoh wrote: - provide some way of hooking into non-default entities so that DTD-defined entities can be expanded by the DTD implementation. The parser now returns raw text, entity replacement can be done by DTD processor without any

Re: dxml 0.2.0 released

2018-02-14 Thread Patrick Schluter via Digitalmars-d-announce
On Tuesday, 13 February 2018 at 22:00:59 UTC, Jonathan M Davis wrote: On Tuesday, February 13, 2018 21:18:12 Patrick Schluter via Digitalmars-d- announce wrote: [...] Well, if dxml just passes the entity references along unparsed beyond validating that the entity reference itself contains

Re: dxml 0.2.0 released

2018-02-13 Thread Jonathan M Davis via Digitalmars-d-announce
On Tuesday, February 13, 2018 14:29:27 H. S. Teoh via Digitalmars-d-announce wrote: > Given the insane complexities of DTD that I'm only slowly beginning to > grasp from actually reading the spec, I'm quickly adopting the opinion > that dxml should remain as-is, and any DTD implementation should

Re: dxml 0.2.0 released

2018-02-13 Thread Jonathan M Davis via Digitalmars-d-announce
On Tuesday, February 13, 2018 14:13:36 H. S. Teoh via Digitalmars-d-announce wrote: > Great, just > great. Now I know why I've always had this gut feeling that > *something* is off about the whole XML mania.) Well, there are plenty of folks who talk like XML is a pile of steaming muck that

Re: dxml 0.2.0 released

2018-02-13 Thread Jonathan M Davis via Digitalmars-d-announce
On Tuesday, February 13, 2018 21:18:12 Patrick Schluter via Digitalmars-d- announce wrote: > There's also the issue that entity references open a whole can of > worms concerning security. It quite possible to have an > exponential growing entity replacement that can take down any > parser. Well,

Re: dxml 0.2.0 released

2018-02-13 Thread Patrick Schluter via Digitalmars-d-announce
On Tuesday, 13 February 2018 at 20:10:59 UTC, Jonathan M Davis wrote: On Tuesday, February 13, 2018 15:22:32 Kagamin via Digitalmars-d-announce wrote: On Monday, 12 February 2018 at 16:50:16 UTC, Jonathan M Davis wrote: > The core problem is that entity references get replaced with > more XML

Re: dxml 0.2.0 released

2018-02-13 Thread Jonathan M Davis via Digitalmars-d-announce
On Tuesday, February 13, 2018 15:22:32 Kagamin via Digitalmars-d-announce wrote: > On Monday, 12 February 2018 at 16:50:16 UTC, Jonathan M Davis > > wrote: > > The core problem is that entity references get replaced with > > more XML that needs to be parsed. So, they can't simply be > > passed on

Re: dxml 0.2.0 released

2018-02-13 Thread Kagamin via Digitalmars-d-announce
On Tuesday, 13 February 2018 at 02:53:21 UTC, Nick Sabalausky (Abscissa) wrote: On 02/12/2018 11:15 AM, rikki cattermole wrote: dxml 7.5k LOC std.xml 3k LOC dxml would make the situation a lot worse. 4.5k LOC == "a lot worse"? Uuuuhhh...WAT? And it's like 2k LOC of code and 5.5k LOC of

Re: dxml 0.2.0 released

2018-02-13 Thread Kagamin via Digitalmars-d-announce
On Monday, 12 February 2018 at 16:50:16 UTC, Jonathan M Davis wrote: The core problem is that entity references get replaced with more XML that needs to be parsed. So, they can't simply be passed on for post-processing. As I understand it, they have to be replaced while the parsing is going

Re: dxml 0.2.0 released

2018-02-13 Thread Russel Winder via Digitalmars-d-announce
On Mon, 2018-02-12 at 14:54 +, rikki cattermole via Digitalmars-d- announce wrote: > […] > > Personally I find J.M.D. arguments quite reasonable for a third- > party > library, since yes it does cover 90% of the use cases. The problem is that std.xml needs removing to make it clear there is

Re: dxml 0.2.0 released

2018-02-13 Thread Chris via Digitalmars-d-announce
On Monday, 12 February 2018 at 21:51:56 UTC, H. S. Teoh wrote: [...] We can even design the DTD support wrapper to start with being just a thin wrapper around dxml, and lazily switch to full DTD mode only if a DTD section is encountered. Then user code that doesn't care to use dxml's raw API

Re: dxml 0.2.0 released

2018-02-12 Thread Jacob Carlborg via Digitalmars-d-announce
On 2018-02-12 21:19, Chris wrote: A few lines of code that could be replaced easily once something better is available? Fairly easy because it's so small. I'm actually using the SAX interface from std.xml and it quite nicely fits my needs. -- /Jacob Carlborg

Re: dxml 0.2.0 released

2018-02-12 Thread Nick Sabalausky (Abscissa) via Digitalmars-d-announce
On 02/12/2018 10:49 PM, Jonathan M Davis wrote: Andrei used to complain periodically about how large std.datetime was, thinking that it was way too much code, and then someone actually went to the effort of stripping out all of the comments and unit tests and whatnot to count the actual lines

Re: dxml 0.2.0 released

2018-02-12 Thread Jonathan M Davis via Digitalmars-d-announce
On Monday, February 12, 2018 21:53:21 Nick Sabalausky via Digitalmars-d- announce wrote: > On 02/12/2018 11:15 AM, rikki cattermole wrote: > > dxml 7.5k LOC > > std.xml 3k LOC > > > > dxml would make the situation a lot worse. > > 4.5k LOC == "a lot worse"? > > Uuuuhhh...WAT? There is sometimes

Re: dxml 0.2.0 released

2018-02-12 Thread Nick Sabalausky (Abscissa) via Digitalmars-d-announce
On 02/12/2018 11:15 AM, rikki cattermole wrote: dxml 7.5k LOC std.xml 3k LOC dxml would make the situation a lot worse. 4.5k LOC == "a lot worse"? Uuuuhhh...WAT?

Re: dxml 0.2.0 released

2018-02-12 Thread Nick Sabalausky (Abscissa) via Digitalmars-d-announce
On 02/12/2018 05:02 PM, H. S. Teoh wrote: On Mon, Feb 12, 2018 at 02:54:48PM +, rikki cattermole via Digitalmars-d-announce wrote: [...] Everything you have mentioned is not in Phobos. Just because something is 'good enough' does not make it 'good enough' for Phobos. In the words of Andrei

Re: dxml 0.2.0 released

2018-02-12 Thread rikki cattermole via Digitalmars-d-announce
On 12/02/2018 10:02 PM, H. S. Teoh wrote: On Mon, Feb 12, 2018 at 02:54:48PM +, rikki cattermole via Digitalmars-d-announce wrote: [...] Everything you have mentioned is not in Phobos. Just because something is 'good enough' does not make it 'good enough' for Phobos. In the words of Andrei

Re: dxml 0.2.0 released

2018-02-12 Thread Jonathan M Davis via Digitalmars-d-announce
On Monday, February 12, 2018 21:26:45 Johannes Loher via Digitalmars-d- announce wrote: > On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis > > wrote: > > dxml 0.2.0 has now been released. > > [...] > > Thank you very much for your efforts, I really appreciate it, as > I have been

Re: dxml 0.2.0 released

2018-02-12 Thread Jonathan M Davis via Digitalmars-d-announce
On Monday, February 12, 2018 13:51:56 H. S. Teoh via Digitalmars-d-announce wrote: > For example, entity > support pretty much means plain slices are no longer an option, because > you have to perform substitution of entity definitions, so you'll have > to either wrap it in some kind of lazy

Re: dxml 0.2.0 released

2018-02-12 Thread H. S. Teoh via Digitalmars-d-announce
On Mon, Feb 12, 2018 at 02:54:48PM +, rikki cattermole via Digitalmars-d-announce wrote: [...] > Everything you have mentioned is not in Phobos. Just because something > is 'good enough' does not make it 'good enough' for Phobos. In the > words of Andrei "Good enough is not good enough", we

Re: dxml 0.2.0 released

2018-02-12 Thread H. S. Teoh via Digitalmars-d-announce
On Mon, Feb 12, 2018 at 09:50:16AM -0700, Jonathan M Davis via Digitalmars-d-announce wrote: [...] > The core problem is that entity references get replaced with more XML > that needs to be parsed. So, they can't simply be passed on for > post-processing. As I understand it, they have to be

Re: dxml 0.2.0 released

2018-02-12 Thread Johannes Loher via Digitalmars-d-announce
On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. [...] Thank you very much for your efforts, I really appreciate it, as I have been looking for a decent xml library for quite some time. Whethr or not this is a candidate for inclusion

Re: dxml 0.2.0 released

2018-02-12 Thread Chris via Digitalmars-d-announce
On Monday, 12 February 2018 at 19:47:09 UTC, Jacob Carlborg wrote: On 2018-02-12 17:49, Chris wrote: How could it possibly make the situation any worse than it is now? Atm, nobody will ever use std.xml, because it is sub-standard and has no future. I'm using std.xml in a new project right

Re: dxml 0.2.0 released

2018-02-12 Thread Jacob Carlborg via Digitalmars-d-announce
On 2018-02-12 17:49, Chris wrote: How could it possibly make the situation any worse than it is now? Atm, nobody will ever use std.xml, because it is sub-standard and has no future. I'm using std.xml in a new project right now. It's a really small private project that just need to extracts

Re: dxml 0.2.0 released

2018-02-12 Thread Jonathan M Davis via Digitalmars-d-announce
On Monday, February 12, 2018 07:59:24 H. S. Teoh via Digitalmars-d-announce wrote: > On Mon, Feb 12, 2018 at 07:04:38AM -0700, Jonathan M Davis via > Digitalmars-d-announce wrote: [...] > > > However, if folks as a whole think that Phobos' xml parser needs to > > support the DTD section to be

Re: dxml 0.2.0 released

2018-02-12 Thread Chris via Digitalmars-d-announce
On Monday, 12 February 2018 at 16:15:54 UTC, rikki cattermole wrote: dxml 7.5k LOC std.xml 3k LOC dxml would make the situation a lot worse. How could it possibly make the situation any worse than it is now? Atm, nobody will ever use std.xml, because it is sub-standard and has no future.

Re: dxml 0.2.0 released

2018-02-12 Thread rikki cattermole via Digitalmars-d-announce
On 12/02/2018 3:59 PM, H. S. Teoh wrote: If std.xml currently does not support DTDs, then I say dxml is definitely a Phobos candidate. At the very least, it does not make the current situation worse. Rejecting dxml because it doesn't support DTDs is basically letting the perfect be the enemy

Re: dxml 0.2.0 released

2018-02-12 Thread rikki cattermole via Digitalmars-d-announce
On 12/02/2018 3:50 PM, Jonathan M Davis wrote: In any case, I'm going to finish implementing dxml without any kind of DTD support and then see how things go as far as the Phobos review process goes. If dxml gets rejected, because the majority of folks think that we're better off with std.xml (or

Re: dxml 0.2.0 released

2018-02-12 Thread H. S. Teoh via Digitalmars-d-announce
On Mon, Feb 12, 2018 at 07:04:38AM -0700, Jonathan M Davis via Digitalmars-d-announce wrote: [...] > However, if folks as a whole think that Phobos' xml parser needs to > support the DTD section to be acceptable, then dxml won't replace > std.xml, because dxml is not going to implement DTD

Re: dxml 0.2.0 released

2018-02-12 Thread Jonathan M Davis via Digitalmars-d-announce
On Monday, February 12, 2018 15:45:50 bachmeier via Digitalmars-d-announce wrote: > On Monday, 12 February 2018 at 15:43:59 UTC, bachmeier wrote: > > On Monday, 12 February 2018 at 14:04:38 UTC, Jonathan M Davis > > > > wrote: > >> However, if folks as a whole think that Phobos' xml parser > >>

Re: dxml 0.2.0 released

2018-02-12 Thread Jonathan M Davis via Digitalmars-d-announce
On Monday, February 12, 2018 15:26:24 rikki cattermole via Digitalmars-d- announce wrote: > All J.M.D. has to do to change this, is make the API match the spec (as > close as possible, without writing another parser) and separate out the > implementation into a different and very clear module

Re: dxml 0.2.0 released

2018-02-12 Thread bachmeier via Digitalmars-d-announce
On Monday, 12 February 2018 at 15:43:59 UTC, bachmeier wrote: On Monday, 12 February 2018 at 14:04:38 UTC, Jonathan M Davis wrote: However, if folks as a whole think that Phobos' xml parser needs to support the DTD section to be acceptable, then dxml won't replace std.xml, because dxml is

Re: dxml 0.2.0 released

2018-02-12 Thread bachmeier via Digitalmars-d-announce
On Monday, 12 February 2018 at 14:04:38 UTC, Jonathan M Davis wrote: However, if folks as a whole think that Phobos' xml parser needs to support the DTD section to be acceptable, then dxml won't replace std.xml, because dxml is not going to implement DTD support. DTD support fundamentally

Re: dxml 0.2.0 released

2018-02-12 Thread rikki cattermole via Digitalmars-d-announce
On 12/02/2018 3:08 PM, Adam D. Ruppe wrote: On Monday, 12 February 2018 at 14:54:48 UTC, rikki cattermole wrote: Just because something is 'good enough' does not make it 'good enough' for Phobos. In the words of Andrei "Good enough is not good enough", we need to aim higher to show what we

Re: dxml 0.2.0 released

2018-02-12 Thread Adam D. Ruppe via Digitalmars-d-announce
On Monday, 12 February 2018 at 14:54:48 UTC, rikki cattermole wrote: Just because something is 'good enough' does not make it 'good enough' for Phobos. In the words of Andrei "Good enough is not good enough", we need to aim higher to show what we actually can do. About 5 years ago (I think,

Re: dxml 0.2.0 released

2018-02-12 Thread Adam D. Ruppe via Digitalmars-d-announce
On Monday, 12 February 2018 at 14:04:38 UTC, Jonathan M Davis wrote: XML parsers are one of those things that everyone seems to want and no one seems to want to work on. I wrote one 8 years ago... though mine is more focused on HTML parsing, and the XML aspect is just a side effect!

Re: dxml 0.2.0 released

2018-02-12 Thread rikki cattermole via Digitalmars-d-announce
On 12/02/2018 2:45 PM, Chris wrote: On Monday, 12 February 2018 at 14:04:38 UTC, Jonathan M Davis wrote: On Monday, February 12, 2018 12:38:51 Chris via Digitalmars-d-announce wrote: On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis However, std.xml does not support the DTD

Re: dxml 0.2.0 released

2018-02-12 Thread Chris via Digitalmars-d-announce
On Monday, 12 February 2018 at 14:04:38 UTC, Jonathan M Davis wrote: On Monday, February 12, 2018 12:38:51 Chris via Digitalmars-d-announce wrote: On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis However, std.xml does not support the DTD section, and glancing over it, it

Re: dxml 0.2.0 released

2018-02-12 Thread rikki cattermole via Digitalmars-d-announce
On 12/02/2018 1:51 PM, Chris wrote: On Monday, 12 February 2018 at 12:49:30 UTC, rikki cattermole wrote: On 12/02/2018 12:38 PM, Chris wrote: On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. I really wasn't planning on releasing anything

Re: dxml 0.2.0 released

2018-02-12 Thread Jonathan M Davis via Digitalmars-d-announce
On Monday, February 12, 2018 12:38:51 Chris via Digitalmars-d-announce wrote: > On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis > > wrote: > > dxml 0.2.0 has now been released. > > > > I really wasn't planning on releasing anything this quickly > > after announcing dxml, but when I

Re: dxml 0.2.0 released

2018-02-12 Thread Chris via Digitalmars-d-announce
On Monday, 12 February 2018 at 12:49:30 UTC, rikki cattermole wrote: On 12/02/2018 12:38 PM, Chris wrote: On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. I really wasn't planning on releasing anything this quickly after announcing dxml,

Re: dxml 0.2.0 released

2018-02-12 Thread rikki cattermole via Digitalmars-d-announce
On 12/02/2018 12:38 PM, Chris wrote: On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. I really wasn't planning on releasing anything this quickly after announcing dxml, but when I went to start working on DOM support, it turned out to be

Re: dxml 0.2.0 released

2018-02-12 Thread Chris via Digitalmars-d-announce
On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. I really wasn't planning on releasing anything this quickly after announcing dxml, but when I went to start working on DOM support, it turned out to be surprisingly quick and easy to

Re: dxml 0.2.0 released

2018-02-11 Thread Aravinda VK via Digitalmars-d-announce
On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. I really wasn't planning on releasing anything this quickly after announcing dxml, but when I went to start working on DOM support, it turned out to be surprisingly quick and easy to