My project [crd-to-sample-yaml](https://github.com/Skarlso/crd-to-sample-yaml) just got a neat new feature. It's validation of schemas between versions for a CRD. What the heck do I mean here?
TL;DR: Things like modifying required fields, removing existing fields, increasing minimum etc, all cause breaking changes between versions. That's what this can detect and show.
Longer:
So the project already had a testing feature like helm, but it wasn't this direct. And this command now can more easily be integrated as a CLI checker for between specific versions. Something like this:
``` cty validate schema -c path/to/crd.yaml --from v1alpha1 --to v1beta1 --fail-on-breaking ```
And it, of course, works with all the providers that it supports ( github, url, oci, files, folders... ).
The output is something like this:
``` Schema Validation Report =======================
CRD: TestResource From Version: v1alpha1 To Version: v1beta1
Summary: Total Changes: 5 Breaking Changes: 2 Additions: 2 Removals: 0
Changes: [breaking] spec.required: Field 'version' is now required + [addition] spec.properties.version: Property 'version' added [breaking] spec.properties.count.minimum: Minimum increased Old: 1 New: 5 ```
Or JSON, or YAML for further processing or putting the output into a Release Note.
I hope this is useful, it was very interesting to write it at least. :)
Enjoy it here [v1.2.0 release page](https://github.com/Skarlso/crd-to-sample-yaml/releases/tag/v...) and there is more documentation in [Schema validation doc](https://github.com/Skarlso/crd-to-sample-yaml/blob/main/SCHE...).
Thanks!
The school LLM thing is absolutely real. And it's not even a cheap school. It's a school in Denmark. I was very disappointed to know this and was not expecting it at all. And it's sadly, not an assignment to learn llms either. I'd wish it was something like that.
To the ones saying we've seen this before with google search, ides, etc. Not on this scale. And even then, you didn't _completely_ outsource you ability to think. I _think_ that is super dangerous. Especially for young people who get into the habit a lot faster. And suddenly, we have people unable to think without asking an LLM for advice. Other disruptive technologies didn't affect thinking on this massive scale.
I'm not saying stop AI booo, that's obviously not going to happen. And I don't want to, maybe the singularity is just an AI away. Who knows? However, I'm asking that we absolutely put that thing behind some kind of oversight especially in schools for young people before they develop critical thinking skills. After all you started to count on paper before you start using a calculator for a reason.
Again, thank you for this discussion. I'm really grateful for the engagement.
The original article didn't talk about any of these things....
> My son is in school. And the teacher literally said they need to use an LLM otherwise they won’t score high enough because the other pupils are using LLMs and the teacher is using an LLM to grade/check it. This is ridiculous.
Ah. The article's author heard a bad take on LLMs and accidentally attributed it to Ptacek's article.
Indeed it didn't. That's why I did. :)
>Ah. The article's author heard a bad take on LLMs and accidentally attributed it to Ptacek's article.
Not at all. And if that's everything you took from this article, then I'm sorry for the loss of your time.
We are proud to announce that [external-secrets-operator](https://external-secrets.io) is now officially GA! We just released version [v1.0.0](https://github.com/external-secrets/external-secrets/release...).
This version is full of fixes and a couple of new features, however, the point is to go stable. Now, with v1.0.0 we can follow the semver guidelines in breaking changes and patch and minor releases. Hopefully, this provides users and organizations the confidence to invest into ESO and to invest into keeping it up and running. Does this mean the project is on maintenance? No! We are working today to improve ESO in a lot of ways.
One that has been highly requested for a while now and much anticipated. Generic target types for ExternalSecrets (ES) objects. ES objects are now able to create whatever object you want, not just Secrets. ConfigMaps, Deployments, Applications, etc. Anything goes as long as you configure the right RBAC settings. Please read the usage page carefully and note that this feature is in heavy _alpha_. Link to the documentation can be found [here](https://external-secrets.io/latest/guides/targeting-custom-r...).
We are also working hard on [Out-Of-Process](https://github.com/external-secrets/external-secrets/pull/55...) providers. One of the changes involved in that effort is introducing go modules for all providers. This means that eventually, people will be able to build their own ESO binary with _only_ selected provider(s). This will prevent other providers bleeding in their vulnerabilities into your provider. If you would like to have an ESO that only supports AWS you could build it with `go build -tag provider-aws` or something similar. We wanted to make sure these changes are understood by the community as the future of ESO - thus, nothing will change for the current APIs (SecretStores; ExternalSecrets). Expect this to be the v2 version of it ;)
Does this mean all `1.x` versions will be supported? While ESO is on 1.0 - our support policy did not change. We only support the latest minor version (1.x) currently released. Today, that will be 1.0.
How can I upgrade? The upgrade is instant from 0.20.x. There are no expected breaking changes as a part of this update .
Now to organizational things. We also changed our community meeting hours. We will have alternating times where once the meeting is at the same current time it is right now, but the other will be at UTC 21:00. Making sure that people from different continents might be also able to join our community meetings.
Thank you so much for everyone involved in this release and for all our supporters. Without you, this would not have been possible.
Gergely(Skarlso)