Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Submit feedback
    • Contribute to GitLab
  • Sign in
haskell-gargantext
haskell-gargantext
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 159
    • Issues 159
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 7
    • Merge Requests 7
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • gargantext
  • haskell-gargantexthaskell-gargantext
  • Issues
  • #304

Closed
Open
Opened Feb 06, 2024 by Alfredo Di Napoli@AlfredoDiNapoli
  • Report abuse
  • New issue
Report abuse New issue

Switch from .ini to TOML?

Following !244 (merged) , we will now have two file formats that we use in Gargantext to manage configuration files, one is via the standard .ini and one via TOML.

I have decided to introduce TOML because has better supports for more data types (like lists, for example) and there is a richer ecosystem on the Haskell side, with libraries like tomland (which we are now using) and even dhall-toml to effortlessly switch between Dhall and Toml.

Even our old .ini file could be rewritten. Toml has support for maps, so sections like the [nlp] could be rewritten in a neater way:

[nlp]
languages = { en = "..", fr = "...", all = "..." }

The advantage of this being a map means that we can iterate over all its values, and we don't forget to handle new configuration values if we were to add a new language in the future, and this is just one practical example.

@anoe @cgenie thoughts about this?

Assignee
Assign to
Epic 0.0.7
Milestone
Epic 0.0.7
Assign milestone
Time tracking
None
Due date
None
0
Labels
None
Assign labels
  • View project labels
Reference: gargantext/haskell-gargantext#304