GithubHelp home page GithubHelp logo

Comments (2)

earonesty avatar earonesty commented on August 15, 2024 1

UCL:

  • The "automatic array creation" of UCL/nginx sounds like a recipe for an unexpected attack vector at worst... and an unexpected crash at best.
  • The benchmarking is a bit disengenous... since JSON is a subset of UCL, it's simply not possible for it to be faster in a fair test. "nearly the same", i'll buy. It makes me trust the rest of the site less.
  • Macros can result in the billion-lol attack, and includes, also are unsafe, so it's important to note that UCL is for "trusted sources only"
  • UCL's macros and includes can be good for expressing a series of complex config files... but at that point, you might as well express it with eval().... it's just as secure and probably more powerful

By contrast:

  • TOML is a very decent config file spec.
  • Safer than UCL and is more readable than JSON.
  • For configuration... it follows the INI-file syntax, which is well-known.
  • Some smart things in TOML:
    • bare keys are always strings... unlike YAML where they can magically be anything
    • multiple keys are not allowed (JSON bad)
    • nesting is simple, good support for multiline strings, bools only have 2 values, date support,
    • comments

In my (random person on the internet) opinion.

from arp242.net.

arp242 avatar arp242 commented on August 15, 2024

Thanks for the suggestion @igor84, as well as @earonesty for your thoughts.

I removed the entire Alternatives section for now, as I don't have the time or interest to do a comprehensive and fair review. See #8 (comment) for a more detailed rationale.

from arp242.net.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.