Skip to content

feat(abg)!: provide untyped fields always and typed ones if type available - #1603

Merged
krzema12 merged 1 commit into
mainfrom
vampire/untyped-bindings
Aug 22, 2024
Merged

feat(abg)!: provide untyped fields always and typed ones if type available#1603
krzema12 merged 1 commit into
mainfrom
vampire/untyped-bindings

Conversation

@Vampire

@VampireVampire commented Aug 19, 2024

Copy link
Copy Markdown
Collaborator

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

@VampireGraphite App

Vampire commented Aug 19, 2024

Copy link
Copy Markdown
CollaboratorAuthor

@Vampire
Vampireforce-pushed the vampire/custom-types branch from 77c3c5f to 038cf30CompareAugust 19, 2024 10:21
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from 6ff7eaa to edb501aCompareAugust 19, 2024 10:21
@Vampire
Vampireforce-pushed the vampire/custom-types branch from 038cf30 to c318448CompareAugust 19, 2024 10:50
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from edb501a to 27ac4e9CompareAugust 19, 2024 10:50
@Vampire
Vampireforce-pushed the vampire/custom-types branch from c318448 to 2d36b76CompareAugust 19, 2024 10:59
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from 27ac4e9 to 6245b49CompareAugust 19, 2024 10:59
@Vampire
Vampireforce-pushed the vampire/custom-types branch from 2d36b76 to 2b90ea5CompareAugust 19, 2024 11:48
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch 2 times, most recently from 50b61d2 to aec4604CompareAugust 19, 2024 12:40
@Vampire
Vampire changed the base branch from vampire/custom-types to vampire/fix-compile-error-in-generated-bindingAugust 19, 2024 12:40
@Vampire
Vampireforce-pushed the vampire/fix-compile-error-in-generated-binding branch from 3d2d1e4 to 15ec5e5CompareAugust 19, 2024 13:15
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch 2 times, most recently from 4396d5f to c0f0047CompareAugust 19, 2024 13:31
@Vampire
Vampireforce-pushed the vampire/fix-compile-error-in-generated-binding branch from 15ec5e5 to 4df2422CompareAugust 19, 2024 18:09
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from c0f0047 to 8598958CompareAugust 19, 2024 18:16
@Vampire
Vampireforce-pushed the vampire/fix-compile-error-in-generated-binding branch from 4df2422 to 5d905c7CompareAugust 20, 2024 10:45
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from 8598958 to 1c2deeeCompareAugust 20, 2024 10:45
@Vampire
Vampireforce-pushed the vampire/fix-compile-error-in-generated-binding branch from 5d905c7 to 4baa120CompareAugust 20, 2024 11:25
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from 1c2deee to 750cae1CompareAugust 20, 2024 11:25
@Vampire
Vampire changed the base branch from vampire/fix-compile-error-in-generated-binding to graphite-base/1603August 20, 2024 11:53
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from 750cae1 to 544b41dCompareAugust 20, 2024 11:53
@Vampire
Vampire changed the base branch from graphite-base/1603 to mainAugust 20, 2024 11:53
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from 544b41d to dd67688CompareAugust 20, 2024 11:53

@krzema12krzema12 left a comment

Copy link
Copy Markdown
Member

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.

@krzema12krzema12 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 availableAug 21, 2024
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from dd67688 to abfd5e0CompareAugust 21, 2024 23:59
@Vampire
Vampire changed the base branch from main to vampire/make-pair-building-pretty-againAugust 21, 2024 23:59
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from abfd5e0 to d513b9bCompareAugust 22, 2024 00:26
@Vampire
Vampire requested a review from krzema12August 22, 2024 00:26
@Vampire
Vampireforce-pushed the vampire/untyped-bindings branch from d513b9b to bc71f66CompareAugust 22, 2024 00:35
@VampireGraphite App

Copy link
Copy Markdown
CollaboratorAuthor

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/1603August 22, 2024 15:03
@krzema12
krzema12force-pushed the vampire/untyped-bindings branch from bc71f66 to daa99c0CompareAugust 22, 2024 15:03
@krzema12
krzema12 changed the base branch from graphite-base/1603 to mainAugust 22, 2024 15:04
@krzema12

krzema12 commented Aug 22, 2024

Copy link
Copy Markdown
Member

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 mainAug 22, 2024
@krzema12
krzema12 deleted the vampire/untyped-bindings branch August 22, 2024 19:50
Sign up for freeto 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

@Vampire@krzema12