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

feat: move to pkl instead of yaml #101

Open
3 tasks
axtloss opened this issue Sep 3, 2024 · 5 comments
Open
3 tasks

feat: move to pkl instead of yaml #101

axtloss opened this issue Sep 3, 2024 · 5 comments

Comments

@axtloss
Copy link
Member

axtloss commented Sep 3, 2024

Using Apple's PKL format for our recipes would be a nice upgrade from using yaml, since it supports things like types and pulling modules from the web directly (which we currently have implemented ourselves)
Moving to pkl would go in two steps

  • Add linting support by using pkl as the definition but keeping the recipes yml (view feat: add recipe validation #70) taken by @lambdaclan
  • Add support for pkl recipes, keeping yml as a possibility too
  • (optional, not decided yet) deprecate and remove support for yaml recipes, making pkl the only supported recipe language
@lambdaclan
Copy link
Contributor

Hello, I would like to work on this task as a continuation of my previous proposal from #70.

Feel free to assign this ticket to me.

Thank you!

@axtloss
Copy link
Member Author

axtloss commented Sep 3, 2024

Hello, I would like to work on this task as a continuation of my previous proposal from #70.

Feel free to assign this ticket to me.

Thank you!

i assume the linting support thing?
id prefer to do the recipe support myself, as i have it planned out already

@lambdaclan
Copy link
Contributor

i assume the linting support thing?
id prefer to do the recipe support myself, as i have it planned out already

Yes sure no problem. I will work on the linting command and create a new Pkl schema similarly to what I did with Cue. The lint command should be able to validate both YAML and Pkl inputs since Pkl based recipes will eventually become a thing.

Now that I think about it, in order to add support for Pkl based recipes a Pkl definition (schema) will be needed. Feels like we will end up doing the same work twice. Maybe is better to add a lint command after Pkl recipes are supported?

@axtloss
Copy link
Member Author

axtloss commented Sep 4, 2024

Now that I think about it, in order to add support for Pkl based recipes a Pkl definition (schema) will be needed. Feels like we will end up doing the same work twice. Maybe is better to add a lint command after Pkl recipes are supported?

Yes and no, my pkl recipe format will be different than the current yaml one, so we'd need two different definitions either way. Since I plan on deprecating the yml recipe at some point, adjusting it to the new format is in my opinion not worth it

@lambdaclan
Copy link
Contributor

Yes and no, my pkl recipe format will be different than the current yaml one, so we'd need two different definitions either way. Since I plan on deprecating the yml recipe at some point, adjusting it to the new format is in my opinion not worth it

OK got it. I will proceed as planned then, and we can adjust if necessary.

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