4 ms·
But this appears to work in any terminal, not just the developer's. Or did I miss something?
by tux1968 5y ago
But this appears to work in any terminal, not just the developer's. Or did I miss something?
- throwanem 5y agoI grant the claim is that it works perfectly in any terminal. I see no evidence of that, and my experience with the complexities of terminals leads me to find the claim quite difficult to credit.
- mwt 5y agoWhy waste time making up a weird claim and then arguing against it? The author told you, personally and directly, > It will run just on just about any terminal on any OS. It's not hard to imagine it being rigorously tested on several platforms with modern CI tools. It's borderline disrespectful for you to immediately assume that the author has only ever tested it the specific terminal(s) he happens to develop in.
- paisawalla 5y ago"It will run just on just about any terminal on any OS" is an extremely tall claim and requires more than stating what's easy to imagine, in order to back it up. Xterm is not some kind of universal standard, it's a constructive definition. I have a difficult time imagining what a test suite looks like that can exercise all the relevant test cases in, and correctly evaluate the output of, terminal emulators across all OSes. So to me, this statement probably means "we tried a few sample scripts in VMware at some point."
- throwanem 5y agoI'd probably try to do it with some kind of dummy framebuffer I could capture to an image file, and then inspect that image for variance against a known good snapshot. It's an approach I've seen work well with mobile app e2e testing; I grant it's heavyweight and can be somewhat imprecise, but I can't think offhand what could be much lighter and still work as well. To be clear, I realize I'm asking a good deal here, but I'm being asked a good deal here too. If I'm to consider building a production application on this or any platform, I need considerable confidence that that platform isn't flawed in ways that may prove to mean I'll have wasted what might be a great deal of work. And if I'm going to have to design against the assumption I may need to have the application still work even when the platform doesn't, why use that platform at all?
- throwanem 5y agoI assumed my mild hyperbole would need no explanation, but perhaps that was optimistic. Conceding the author's claim as he made it and you quote it, I think there's still a discussion to be had here. > It's not hard to imagine it being rigorously tested on several platforms with modern CI tools. It's not hard to imagine a lot of things! But when I looked at the repository earlier [1], I saw a very thin unit test suite that hasn't been touched in eight months, and very little evidence of CI in use at all - and, of course, what checks there are can only exercise the apparently small subset of logic that the unit tests cover. Certainly, if there's anything examining actual behavior in any terminal environment, I saw no sign of it. Perhaps you'll be able to point me to what I missed. Assuming I didn't, though - for a UI framework that seems designed to have me build my entire application on top of it, this doesn't really inspire a great deal of confidence. As I mentioned above, the risk is that if it turns out to support many fewer terminals than claimed, I'm forced to choose between at minimum significant and potentially near-total rework, or telling those of my users who have terminal-related trouble that I can't spare the time to support them. If this were a pure open source project, I wouldn't raise this issue in this way. (I'd more likely spend some time looking at how I might build the basis of a CI setup like the one I describe - that might be a fun project, assuming I could find the focus time to spend!) But Textualize appears to be a company which is currently hiring, and which I assume intends at some point to sell some product or service. I think that makes it fair to apply a similar standard here to the sort I use when vetting any vendor. What would you have me do instead? Use kid gloves, and implicitly insult the team behind this project with the assumption that they can't fairly be expected to live up to a standard like that? I grant they're an early-stage startup, maybe still a one-man band at this point, and likely haven't had time to get to the kind of detailed testing I'm asking about. That's fair, but that also leads one to suggest that the claims being made at this stage are somewhat ahead of what can reasonably be supported. I'd be a little hesitant about that personally, but then again it's not my company, my product, or my project. [1] https://github.com/Textualize/textual/tree/main/tests https://github.com/Textualize/textual/tree/main/tests
- Epiphany21 5y agoAll of that is moot unless you've tested the software yourself and found it to be broken in certain terminal emulators. I agree with your point that it's easy to write CLI software that relies on features not all terminals have, but it's almost equally easy to write simple and portable software and test it in the most used terminals.