Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

INI Support #451

Open
tisonkun opened this issue Jan 4, 2024 · 4 comments
Open

INI Support #451

tisonkun opened this issue Jan 4, 2024 · 4 comments

Comments

@tisonkun
Copy link

tisonkun commented Jan 4, 2024

Hi @cowtowncoder!

I can see https://github.com/FasterXML/jackson-dataformat-ini archived and there is no INI support yet.

I meet a requirement to add such support and would like to take a look if I can make something as a starting point.

Do you have more information what you have already done that I can refer to?

@cowtowncoder
Copy link
Member

Hi @tisonkun! It would be great to get support for .ini files.

Unfortunately I never started implementation, so the archived project skeleton is all there is. So unfortunately there isn't much. As far as formats go, TOML might be closest of supported ones but I suspect implementation here might not work as a starting point either.
You might find some ideas from properties format backend here; and/or possibly CSV.

@tisonkun
Copy link
Author

tisonkun commented Jan 4, 2024

@cowtowncoder Thanks for your information :D

My original motivation is to support parsing Git config files. I spent some time on it, and noticed that INI doesn't have a spec but many tribal rules .. I implement tisonkun/git-scm#5 for most of what Git config file works.

May or may not I'll try to implement a basic version for Jackson in this repo, but it's not a blocker to me now >_<

@cowtowncoder
Copy link
Member

@tisonkun Ok, that makes sense. Too bad wrt lack of specs; although TBH that is quite similar for CSV too, for example.

I would like to see a Jackson backend, of course, but it is not trivial undertaking so I understand why you might not want to start such a project :)

@cowtowncoder
Copy link
Member

Also forgot to mention one possible challenge: mapping between INI files logical structure, and Jackson's token stream (basically set of tokens that can represent JSON logical structure, although there are some ways to extend it).
This was resolved for TOML so it's probably not insurmountable, but can be tricky or cumbersome; and at very least requires some thought.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants