bruno icon indicating copy to clipboard operation
bruno copied to clipboard

TOML Support

Open helloanoop opened this issue 1 year ago • 10 comments

Overview

This discussion aims to explore the possibility of using .toml as the preferred format for saving API request data instead of .bru. For the progression of the Domain-Specific Language (DSL), see https://github.com/usebruno/bruno/discussions/360

I've been seriously exploring how we can represent api requests in toml After careful consideration, factoring in various edge cases, toml seems to fulfil our requirements and might offer better long-term benefits.

Why TOML

  • Well established format
  • Utilize syntax highlighting in IDEs
  • Leverage existing tooling for toml file manipulation
  • Git providers (like GitHub, Bitbucket) offer syntax highlighting while reviewing pull requests on the web

Tasks

  • [ ] Experimental support for working with TOML in GUI
  • [ ] Experimental support for working with TOML in CLI
  • [ ] Gather Community feedback during our community call on Wed Jan 3rd 2024

More Tasks TBD based on how the experiment turns out

Looming Issues

Several features are currently blocked due to limitations in the bru language. Some include:

  1. Describing headers
  2. Managing choices for query parameters
  3. File upload capabilities
  4. Storing multiple payloads within a single request

To address these limitations, I see two potential paths:

  1. Enhance Bru Lang
  2. Utilize TOML

Next Steps

Before choosing a direction, I aim to implement experimental TOML support in our current app within the next 3-4 days (by January 1st, 2024). . BTW I am working on bruno Full Time from Jan 1st :)

Sample GET Request

image

helloanoop avatar Dec 30 '23 15:12 helloanoop

I feel that TOML should be the way forward. Would appreciate more articles on TOML vs bru as you move forward with the next steps.

kishaningithub avatar Jan 09 '24 01:01 kishaningithub

any update on this ? this seems very interseting

nateshmbhat avatar Feb 21 '24 12:02 nateshmbhat

Hey @helloanoop, just wanted to know did you also explore/consider YAML for the language?

hp77-creator avatar Feb 23 '24 11:02 hp77-creator

Hey @helloanoop, just wanted to know did you also explore/consider YAML for the language?

My bad, went through #360 , indentation hell 🤔 interesting, I mean at one point it can become that but then at that point your API design is not good, It will be on the type of API imo.

hp77-creator avatar Feb 23 '24 11:02 hp77-creator

I think TOML is a better format for humans. It's too easy to mess things up in YAML.

jzorn avatar Mar 21 '24 07:03 jzorn