Repository navigation
fix(glue-alpha): correct OutputFormat.AVRO/ORC type and tidy GA-hygiene items - #38593
Conversation
…ne items `OutputFormat.AVRO` and `OutputFormat.ORC` were constructed as `InputFormat` instances — they compiled only because the two classes are structurally identical. They are now `OutputFormat` instances; the emitted Hadoop class-name strings are unchanged, so synthesized output is identical. Also: - `renderColumns` typed as the malformed `Array<Column | Column>` -> `Column[]` in both `S3Table` and `ExternalTable`. - `Database.locationUri` is now `readonly` (it is assigned only at construction). Addresses the OutputFormat, malformed-column-array, and mutable-`locationUri` findings from the aws-glue-alpha pre-GA API review.
|
PRs without a linked issue will receive lower priority for review and merging. Please update the description to follow the PR template and include a line like |
…nces Regression test for the type correction: these members were previously `InputFormat` instances, which compiled in TypeScript (structural typing) but was unusable in jsii's nominal languages where an `OutputFormat` is required. `instanceof` distinguishes the two at runtime, so this fails on the pre-fix code.
✅ Updated pull request passes all PRLinter validations. Dismissing previous PRLinter review.
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
Merge Queue Status
This pull request spent 38 minutes 4 seconds in the queue, including 37 minutes 21 seconds running CI. Required conditions to merge
|
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
|
Comments on closed issues and PRs are hard for our team to see. |
OutputFormat.AVROandOutputFormat.ORCwere constructed asInputFormatinstances — they compiled only because the two classes are structurally identical. They are nowOutputFormatinstances; the emitted Hadoop class-name strings are unchanged, so synthesized output is identical.Also:
renderColumnstyped as the malformedArray<Column | Column>->Column[]in bothS3TableandExternalTable.Database.locationUriis nowreadonly(it is assigned only at construction).BREAKING CHANGE: this is a corrective breaking change. Apps that leaned on the bug, and did things like
InputFormat x = OutputFormat.AVRO;will get a compilation error in other jsii languages. The intended usage, on the other hand, was broken before and works now.By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license