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(abg)!: provide untyped fields always and typed ones if type available #1603

Merged
merged 1 commit into from
Aug 22, 2024

Conversation

Vampire
Copy link
Collaborator

@Vampire Vampire commented Aug 19, 2024

Fixes #1585

I have to confess, that I did not check every change in the unit test workflow files,
so they should probably be looked again closely. But I think it should have done the right thing.
Or at least how I envisioned it.

no typing =>

  • only _Untyped class with _Untyped properties
  • nullability according to required status

full typing =>

  • same _Untyped class as above
  • but marked as @Deprecated with a replace hint for the typed class (works in the IDE),
  • additionally a typed class with each property as typed and untyped version
  • all properties nullable, with runtime checks that
    • not the typed and untyped is set both for one property
    • one of the two is set for required properties

partly typing =>

  • same _Untyped and typed class as above
  • for inputs that have no type declared only the _Untyped property is added
  • the properties that are only untyped have the nullability according to required status, also in the typed class

@Vampire Vampire force-pushed the vampire/custom-types branch from 77c3c5f to 038cf30 Compare August 19, 2024 10:21
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from 6ff7eaa to edb501a Compare August 19, 2024 10:21
@Vampire Vampire force-pushed the vampire/custom-types branch from 038cf30 to c318448 Compare August 19, 2024 10:50
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from edb501a to 27ac4e9 Compare August 19, 2024 10:50
@Vampire Vampire force-pushed the vampire/custom-types branch from c318448 to 2d36b76 Compare August 19, 2024 10:59
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from 27ac4e9 to 6245b49 Compare August 19, 2024 10:59
@Vampire Vampire force-pushed the vampire/custom-types branch from 2d36b76 to 2b90ea5 Compare August 19, 2024 11:48
@Vampire Vampire force-pushed the vampire/untyped-bindings branch 2 times, most recently from 50b61d2 to aec4604 Compare August 19, 2024 12:40
@Vampire Vampire changed the base branch from vampire/custom-types to vampire/fix-compile-error-in-generated-binding August 19, 2024 12:40
@Vampire Vampire force-pushed the vampire/fix-compile-error-in-generated-binding branch from 3d2d1e4 to 15ec5e5 Compare August 19, 2024 13:15
@Vampire Vampire force-pushed the vampire/untyped-bindings branch 2 times, most recently from 4396d5f to c0f0047 Compare August 19, 2024 13:31
@Vampire Vampire force-pushed the vampire/fix-compile-error-in-generated-binding branch from 15ec5e5 to 4df2422 Compare August 19, 2024 18:09
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from c0f0047 to 8598958 Compare August 19, 2024 18:16
@Vampire Vampire force-pushed the vampire/fix-compile-error-in-generated-binding branch from 4df2422 to 5d905c7 Compare August 20, 2024 10:45
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from 8598958 to 1c2deee Compare August 20, 2024 10:45
@Vampire Vampire force-pushed the vampire/fix-compile-error-in-generated-binding branch from 5d905c7 to 4baa120 Compare August 20, 2024 11:25
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from 1c2deee to 750cae1 Compare August 20, 2024 11:25
@Vampire Vampire changed the base branch from vampire/fix-compile-error-in-generated-binding to graphite-base/1603 August 20, 2024 11:53
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from 750cae1 to 544b41d Compare August 20, 2024 11:53
@Vampire Vampire force-pushed the graphite-base/1603 branch from 4baa120 to 0e91c56 Compare August 20, 2024 11:53
@Vampire Vampire changed the base branch from graphite-base/1603 to main August 20, 2024 11:53
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from 544b41d to dd67688 Compare August 20, 2024 11:53
Copy link
Member

@krzema12 krzema12 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Impressive, thanks! Just several minor things to discuss/fix.

@krzema12 krzema12 changed the title feat(abg)!: provide untyped fields always and typed ones if type available (#1585) feat(abg)!: provide untyped fields always and typed ones if type available Aug 21, 2024
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from dd67688 to abfd5e0 Compare August 21, 2024 23:59
@Vampire Vampire changed the base branch from main to vampire/make-pair-building-pretty-again August 21, 2024 23:59
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from abfd5e0 to d513b9b Compare August 22, 2024 00:26
@Vampire Vampire requested a review from krzema12 August 22, 2024 00:26
@Vampire Vampire force-pushed the vampire/untyped-bindings branch from d513b9b to bc71f66 Compare August 22, 2024 00:35
Copy link
Collaborator Author

Vampire commented Aug 22, 2024

Additionally to the requested changes I also added a required tag to the KDoc for the cases where nullability does not reflect required status, i.e. in the typed class for typed properties.

@krzema12 krzema12 changed the base branch from vampire/make-pair-building-pretty-again to graphite-base/1603 August 22, 2024 15:03
@krzema12 krzema12 force-pushed the vampire/untyped-bindings branch from bc71f66 to daa99c0 Compare August 22, 2024 15:03
@krzema12 krzema12 changed the base branch from graphite-base/1603 to main August 22, 2024 15:04
@krzema12
Copy link
Member

krzema12 commented Aug 22, 2024

I approved, but it looks like CI didn't run. Any idea why?

Retriggered by creating a copy of this PR.

@krzema12 krzema12 merged commit 483a705 into main Aug 22, 2024
18 checks passed
@krzema12 krzema12 deleted the vampire/untyped-bindings branch August 22, 2024 19:50
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

Successfully merging this pull request may close these issues.

Denote lack of typing in class and field names
2 participants