Skip to content

Backmerge release/july-2026 into main (typespec-java@0.45.11 hotfix) - #5092

Merged
Weidong Xu (weidongxu-microsoft) merged 17 commits into
mainfrom
backmerge/release/july-2026-2026-07-29
Jul 29, 2026
Merged

Weidong Xu (weidongxu-microsoft) merged 17 commits into
mainfrom
backmerge/release/july-2026-2026-07-29

Conversation

@weidongxu-microsoft

Copy link
Copy Markdown
Member

Backmerge release/july-2026 → main for the typespec-java 0.45.11 hotfix.

Included

Ensures the hotfix and version bump are reflected in main.

Xiaofei Cao (XiaofeiCao) and others added 16 commits July 16, 2026 09:49
## Summary

Draft hotfix release PR for `@azure-tools/typespec-java@0.45.6`,
targeting `release/july-2026`.

## Changes

- **Version:** bump `@azure-tools/typespec-java` to `0.45.6` and add the
corresponding `CHANGELOG.md` entry (notes the `js-yaml`→`yaml` /
`lodash`→builtin change and dependency updates).
- **Sync tooling refactor:** extract the transient `core/` submodule
checkout/restore logic into a shared `CoreCommit.ps1` helper
(`Enter-CoreCommit` / `Restore-CoreCommit`), used by both
`Copy-Sources.ps1` and `emitter-tests/SyncTests.ps1`.
- **`SyncTests.ps1`** now also:
- reads the pinned core commit from `core-commit.json` (like
`Copy-Sources.ps1`), transiently checking it out to sync from and always
restoring the submodule;
- syncs the versions of shared `dependencies`/`overrides` entries from
core's `http-client-generator-test/package.json` via JSON manipulation
(preserving repo-specific entries, key order, and formatting);
- pins the local `@azure-tools/typespec-java` `.tgz` dependency to this
repo's `package.json` version (outside the core checkout, since it is
local-only).
- **Pin:** add `core-commit.json` pinned to
`4751383fd59eb64f1d443376c5db7948cfe974eb`, and commit the synced
`emitter-tests/package.json` + `tsp/` results.

## Notes

- Hotfix PR targets the `release/*` branch per the repo's release
conventions.
- Opened as **draft**.

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…4916)

## Summary

- Update packages/typespec-java/core-commit.json to point at the head
commit of microsoft/typespec#11286 (per-client ServiceVersion regression
fix).
- Sync emitter test specs from core via SyncTests.ps1 (adds
emitter-tests/tsp/multiple-clients-same-version.tsp).
- Remove @azure-tools/typespec-liftr-base and
@azure-tools/openai-typespec from both peerDependencies and
devDependencies of @azure-tools/typespec-java. The version will not be
managed here in `catalog`, but rather, in SDK repo.
- sync emitter looks good:
Azure/azure-sdk-for-java#49860
Hotfix (patch) release for `@azure-tools/typespec-java` **0.45.6 ->
0.45.7** from the `release/july-2026` branch.

## Changes included

- Fix per-client `ServiceVersion` regression after migrating from
js-yaml and lodash.
- Remove `@azure-tools/typespec-liftr-base` and
`@azure-tools/openai-typespec` from peer and dev dependencies.
- Support `clientApiVersions`.

## Notes

- Version bump generated via `pnpm chronus version --ignore-policies`.
- The `clientApiVersions` changeset was authored as `feature` but is
released here under a **patch** bump (consistent with prior hotfix
precedent, e.g. #4670); all entries appear under **Bug Fixes** in the
changelog.
- `core` submodule pointer unchanged.
- Only `@azure-tools/typespec-java` is bumped; unrelated pending
changesets are untouched.

Targets `release/july-2026` (not `main`). Backmerge to `main` to follow
after merge.
Version bump for `release/july-2026` hotfix targeting
`@azure-tools/typespec-autorest`. Bump `0.70.0` → `0.70.1` (patch).

### Changes
- `packages/typespec-autorest/package.json`: `0.70.0` → `0.70.1`
- `packages/typespec-autorest/CHANGELOG.md`: added `0.70.1` entry for
[#4974](#4974)
- Removed
`.chronus/changes/service-yaml-preserve-legacy-versions-2026-07-20-14-30-00.md`

> ⚠️ Targets `release/july-2026` — squash-merge only. After merge,
rebase-merge the auto-generated `backmerge/release/july-2026-*` PR into
`main`.

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: timotheeguerin <1031227+timotheeguerin@users.noreply.github.com>
## Summary

- Update `packages/typespec-java/core-commit.json` to microsoft/typespec
[d012e83](microsoft/typespec@d012e83)
(Support XML serialization in http-client-java generator,
microsoft/typespec#11305).
- Sync emitter test `src`/`tsp` from core via `SyncTests.ps1` (adds
`emitter-tests/src/test/java/payload/xml` XmlTests).
- `emitter-tests/Generate.ps1`: stop removing `payload/xml` specs now
that the emitter supports XML models.
- Add chronus changelog entry (fix) mirroring the upstream XML
serialization change.

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Hotfix (patch) release of `@azure-tools/typespec-java` **0.45.7 ->
0.45.8** from `release/july-2026`.

Includes the XML serialization sync fix (#4987).

Version bump via `pnpm chronus version --ignore-policies`:
- `packages/typespec-java/package.json` -> 0.45.8
- `packages/typespec-java/CHANGELOG.md` (Bug Fixes)
- removed the consumed `.chronus/changes` entry
- `packages/typespec-java/emitter-tests/package.json` -> 0.45.8 (version
+ `@azure-tools/typespec-java` .tgz dependency)

Core submodule unchanged. Backmerge to `main` to follow after publish.

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
#5012)

Part A (fix) of the next typespec-java hotfix.

Advances `packages/typespec-java/core-commit.json` to microsoft/typespec
[43ff0041](microsoft/typespec@43ff004)
(#11329):
- Gate XML serialization to `azure-v1` data-plane clients.
- Skip the XML `ObjectSerializer` for raw `byte[]`/`BinaryData` payloads
that aren't structured XML models, fixing a build break from a reference
to the non-generated `XmlSerializerProviders` helper.

Follow-up fix on top of 0.45.8's XML serialization support. Adds a `fix`
changelog entry. Version bump + publish (Part B) follows in a separate
`publish/hotfix/*` PR after this merges.

Targets `release/july-2026` (NOT main).

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Hotfix version bump for `@azure-tools/typespec-java` 0.45.8 -> 0.45.9.

Publishes the fix from #5012 (XML serializer gated to azure-v1
data-plane + skip raw byte[]/BinaryData payloads).

- Consumes the `fix` change file (patch bump)
- `packages/typespec-java/package.json`: 0.45.8 -> 0.45.9
- `packages/typespec-java/emitter-tests/package.json`: version + .tgz
dep bumped to 0.45.9
- `core` submodule unchanged

Squash merge to trigger the NPM publish pipeline.
Cherry-pick of the fix validated on the backmerge PR #5014.

## Problem
+ 'CoreCommit.ps1' + gated advancing to the pinned + 'core-commit.json'
+ SHA on + 'git merge-base --is-ancestor <submodule> <pin>' + . In CI
the + 'core' + submodule is a shallow clone, so the connecting history
between the checkout and the pin is absent and the ancestry check fails.
The script then silently fell back to the submodule checkout and built
the Java emitter from the wrong core sources (e.g. pre-XML-fix code
referencing a non-generated + 'XmlSerializerProviders' + ).

## Fix
- The pin in + 'core-commit.json' + is now authoritative: always build
from exactly that commit via + 'git archive' + , regardless of ancestry.
- Hardened the fetch with a post-fetch existence check that errors
clearly instead of silently falling back.
- Updated the header doc.

Verified locally: with the submodule at + ' eafcd0e' + and pin +
'43ff0041' + (the exact CI failure scenario), it now archives +
'43ff0041' + with the generator subtree present.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…typespec#11380) (#5043)

Bumps the pinned core commit to include
[microsoft/typespec#11380](microsoft/typespec#11380),
which exposes the + ' equired-fields-as-ctor-args' + emitter option to +
' spconfig.yaml' + for data-plane (default remains + ' rue' + ).

## Changes
- + 'core-commit.json' + pin: + '43ff0041' + -> + '�c09e28b' + (HEAD of
core + 'main' + , the #11380 merge commit).
- Ran + 'SyncTests.ps1' + against the new pin: no test-suite (src/tsp)
changes between the previous pin and this commit — #11380 only touches
emitter/generator source, which is copied at build time.
- Added chronus  + 'ix' +  change (next version: 0.45.10).

+ 'Generate.ps1' + / + 'Copy-Sources.ps1' + need no changes: #11380 is a
purely additive emitter option with no spec-generation impact.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7
Version bump for the typespec-java hotfix **0.45.10**, following the
sync in #5043.

## Included changes (consumed from  + '.chronus/changes' + )
- **fix**: Expose the + ' equired-fields-as-ctor-args' + emitter option
in + ' spconfig.yaml' + (microsoft/typespec#11380). Default remains + '
rue' + .
- **internal**: Make the + 'core-commit.json' + pin authoritative in +
'CoreCommit.ps1' + (#5016).

## Files
-  + 'packages/typespec-java/package.json' +  -> 0.45.10
-  + 'packages/typespec-java/CHANGELOG.md' + 
- + 'packages/typespec-java/emitter-tests/package.json' + -> 0.45.10
(version + + '.tgz' + dep)
- Deleted the two consumed typespec-java change files

Only + '@azure-tools/typespec-java' + is bumped. Non-java pending change
files (tcgc, benchmark, playground, website) were intentionally left
untouched. The + 'core' + submodule is unchanged.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7
…#11420) (#5090)

Sync `@azure-tools/typespec-java` core to microsoft/typespec `d320a53b`
(HEAD of `main`).

## Changes
- Bump `core-commit.json` `ec09e28b` → `d320a53b`.
- Brings core
[#11420](microsoft/typespec#11420): **return
response headers as a model from the convenience method**, plus its
`response-headers` test (`ResponseHeadersTests.java` +
`response-headers.tsp`) into the emitter-tests suite.

## Notes
- #11420 only touches emitter internals (`code-model-builder.ts`,
`operation.ts`, `lib.ts`) — no emitter-option / `Copy-Sources.ps1` /
`Generate.ps1` changes required.
- Changelog added as `fix` (patch).

Targets `release/july-2026` for a follow-up 0.45.11 hotfix.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7
Version bump for the typespec-java hotfix following the core sync in
#5090.

## Changes
- `@azure-tools/typespec-java`: **0.45.10 → 0.45.11** (patch).
- Consumes the `fix` change from #5090 (response headers as a model,
core #11420) into `CHANGELOG.md`.
- Bumps the `emitter-tests` project version + `.tgz` dependency to
`0.45.11`.
- Trims the shared `fix-release-july-2026-formatting` change file to
`@azure-tools/typespec-autorest` only (its typespec-java portion is now
released).

Targets `release/july-2026`. The publish pipeline will release `0.45.11`
to npm on merge.

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Xiaofei Cao <92354331+XiaofeiCao@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7
@microsoft-github-policy-service microsoft-github-policy-service Bot added the lib:tcgc Issues for @azure-tools/typespec-client-generator-core library label Jul 29, 2026
@github-actions

github-actions Bot commented Jul 29, 2026 •

Copy link
Copy Markdown
Contributor

❌ There is undocummented changes. Run chronus add to add a changeset or click here.

The following packages have changes but are not documented.

  • ❌@azure-tools/typespec-java
Show changes

@pkg-pr-new

pkg-pr-new Bot commented Jul 29, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

npm i https://pkg.pr.new/@azure-tools/typespec-java@5092

commit: 782cb9b

@azure-sdk-automation

Copy link
Copy Markdown
Contributor

You can try these changes here

🛝 Playground 🌐 Website

…y-2026-2026-07-29

Backmerge typespec-java 0.45.11 hotfix (#5090 core sync to #11420
response-headers-as-model, #5091 version bump) into main.

Resolved conflicts against main's #5019 (unify emitter + emitter-tests
into one npm project) refactor:
- core-commit.json -> ours (d320a53b, #11420 pin)
- package.json -> version 0.45.11 (ours), keeping main's #5019 deps
- CHANGELOG.md -> ours (0.45.11 entry)
- Copy-Sources.ps1, Generate.ps1 -> main (refactored comments/location)
- CODEOWNERS -> main (org ownership updates)
- emitter-tests/SyncTests.ps1, emitter-tests/package.json -> accept
  main's deletion (unified into package root by #5019)
- core submodule gitlink -> main's bc1c4cd6 (no regression)
- pnpm-lock.yaml -> main (unified structure)

Response-headers test lands under the retained emitter-tests/src + tsp.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: cd6f2e08-d6d3-42ae-affd-bc71e98086f7
@weidongxu-microsoft
Weidong Xu (weidongxu-microsoft) force-pushed the backmerge/release/july-2026-2026-07-29 branch from 6291a1c to 782cb9b Compare July 29, 2026 06:10
Merged via the queue into main with commit 314b7b0 Jul 29, 2026
33 of 34 checks passed
@weidongxu-microsoft
Weidong Xu (weidongxu-microsoft) deleted the backmerge/release/july-2026-2026-07-29 branch July 29, 2026 07:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

emitter:autorest Issues for @azure-tools/typespec-autorest emitter emitter:java Issues for @azure-tools/typespec-java emitter eng lib:tcgc Issues for @azure-tools/typespec-client-generator-core library

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants