-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Release 4.x plan #2007
Comments
I'm generally fully in favour of this approach. I would like to see more comprehensive detail on the actual changes that would be visible to developers using the library to ensure we can start thinking / working on any changes needed to make this solution compatible. |
@davidjdixon In the future we may want to remove some of the backward compatibility changes I put into this new release. This is mainly ensuring the legacy troposphere object naming was kept rather than the AWS naming and accepting the same types). There was separating some resources into their own files (OpsWorksCM and Route53Resolver) along with other minor changes. I anticipate only minor and straightforward changes will be needed for existing scripts. |
BTW, here's part of the reason to make the code auto-generated. For this week the release history shows a single change to WAFv2 for 2022-02-17. However, if you look at the this commit (bfa31c4) based on the resource spec file 57.0.0 (changes from the last week), you will see 5 other changes that were not listed in the release history. |
@markpeek I have a watch in librairies.io on this (as a dependency to ecs_composex and other projects). Hey @davidjdixon - long time no see since TVX :) Hope you're well |
Release 4.0.0-beta.0 is now available |
This one change is particularly painful 🤔 (considering they are identical) |
Agreed, it was due to the AuthenticateOidcConfig properties being different that had a ripple effect for one of the Action properties to change to handle the rename. |
@JohnPreston besides your above comment about ElasticLoadBalancingV2, how easy/hard was the 3.x to 4.x conversion? |
So far, everything else is working without change. PS @markpeek I only meant "annnoying" as very sneaky considering the identical side of the properties. |
@markpeek is the plan then to consistently have the classes of resources and properties generated and the validators separately ? what will the guideline be on implementing |
@JohnPreston glad the updated worked well for you. It took longer to maintain backward compatibility but sets things up well for adoption and future improvements. Yes, the resources/properties will be autogenerated into For general resource specification changes, the flow is:
This has worked out well for the last 5 versions of the spec file. The 54.0.0 change did need a json patch to remove an override needed due to a bug in one of the earlier resource specs. |
Thanks @markpeek . I have implemented so validation on the compose-x side which I think are low-level enough (troposphere level) for these to be backported into troposphere. I did see the validators folder, I was just unsure how the imports for specific types would work. |
I've just ported our core infrastructure repository to v4. I didn't have to change anything apart from |
@michael-k thank you for that feedback. Great to hear it was that compatible with your code base. |
@markpeek |
@JohnPreston yes, I will be preparing a 4.0.0-beta.1 later this week which will include:
If all looks good after a week or two I hope to release 4.0.0. |
Amazing @markpeek |
Released 4.0.0-beta.1 |
Happy to report that for all the resources that I use in compose-x, everything is working totally fine. |
To better keep up with changes coming from the AWS CloudFormation team, there was a need to support auto-generation. The main branch has a set of changes which:
Given early work on troposphere was all hand crafter, there have been some changes that are not backward compatible. Also, there are changes that bring things up-to-date with the current resource specification.
Here's the plan:
Hoping to release 4.0.0b1 in a matter of days but wanted to get input.
Thoughts?
The text was updated successfully, but these errors were encountered: