Closed bottle2 closed 3 weeks ago
Regarding "undocumented breaking changes":
noentry
option of write data
statement, while it is clearly documented in section 5.8.1 of Ragel 6.10 User GuideI was about to sprea fakenews defaming Ragel 7, when I noticed I misunderstood noend
option for write exec
statement. I got everything working now! I'll reopen this issue if I face actual problems again.
Why do we even have a ragel package? The only package that depends on it got moved to disabled-packages 2+ years ago.
Is Ragel actually used as anything other than a build time DSL?
Why do we even have a ragel package? The only package that depends on it got moved to disabled-packages 2+ years ago.
* [hiptext: Move to disabled packages #8655](https://github.com/termux/termux-packages/pull/8655)
Is Ragel actually used as anything other than a build time DSL?
Yes, it is exclusively a build dependency, used to generate source files. It is not equivalent to runtime libraries such as PCRE, but it serves the same purpose of flex and re2c. In particular, its misuse led to the Cloudbleed vulnerability in 2017. Apparently Ruby users are particularly interested about it. I would love if it is kept around, as I'm learning it and parsing things like pet DSLs, command-line arguments and HTTP with zero dynamic memory overhead. However, aside from my personal enthusiasm, I did not find much online presence nor known high-profile users of Ragel other than CloudFlare.
Why is it worth to add this package?
Ragel 6.10 is the stable release and the one with readily available documentation. Although it is important to use and test software under development, such as Ragel version 7, I really don't have the spare time to deal with undocumented breaking changes and unstable behavior, because I have to finish this college assignment, which I'm developing both on my smartphone and sometimes on my Windows laptop, where Ragel 6.10 is available through MSYS2.
Home page URL
https://www.colm.net/open-source/ragel/
Source code URL
https://github.com/adrian-thurston/ragel/tree/ragel-6.10
Packaging policy acknowledgement
[X] The project is actively developed.
[X] The project has existing packages and is "well known".
[X] Licensed under an open source license.
[X] Not available through a language package manager: pip, npm, cpan, cargo, etc.
[X] Not taking up too much disk space (< 100MiB per architecture, exceptions can be made)
[ ] Not duplicating the functionality of existing packages.
[X] Not serving hacking, malware, phishing, spamming, spying, ddos functionality.
[X] I certify that I have read Termux Packaging Policy and understand that my request will be denied if it is found lacking.
Additional information
Currently available Ragel used to be 6.10.