Skip to content

chore: republish format-temporal - #75

Merged
macalinao merged 3 commits into
masterfrom
orpc-temporal-support
Jul 28, 2026
Merged

chore: republish format-temporal#75
macalinao merged 3 commits into
masterfrom
orpc-temporal-support

Conversation

@macalinao

@macalinao macalinao commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Adds a patch changeset to cut a new format-temporal release. The current release has a publishing issue, so a new version needs to go out even though the package's code is unchanged.

Package Bump Result
format-temporal patch 0.5.30.5.4

Verified with changeset status: one patch bump, nothing else.

Note the package is named format-temporal, not @macalinao/format-temporal — every package in this repo uses a bare, unscoped name.

Scope change

This branch previously carried a new orpc-temporal package providing oRPC custom JSON serializers that revived Temporal instances from tagged payloads. That approach was dropped in favour of the direction in #70: Temporal values stay plain ISO strings on the wire, with temporal-zod validators reviving them on parse. The package was reverted in 07759da, so the net diff here is the single changeset file above.

Note on bun.lock

bun install on this branch produces an unrelated bun.lock diff, which I deliberately left out. Master's committed lockfile is stale relative to master's own package.json — it records @changesets/cli@^2.31.0, turbo@^2.10.0, and typedoc@^0.28.19 while package.json asks for ^2.31.1, ^2.10.5, and ^0.28.20 (bun 1.3.13 also adds a configVersion field). This reproduces on a clean master checkout and is worth a separate lockfile-refresh PR.

Summary by Sourcery

Publish a new patch version of the format-temporal package to republish the existing code without functional changes.

Bug Fixes:

  • Address a previous publishing issue for format-temporal by republishing the package as a patch release.

Build:

  • Add a changeset entry to trigger a patch release of format-temporal.

Summary by CodeRabbit

  • Chores
    • Republished the format-temporal package to address an issue with the previous release.
    • No functional changes were introduced.

oRPC has no built-in Temporal support. A Temporal value is stringified by
its toJSON() during JSON encoding and nothing rebuilds it on the receiving
end, so it arrives as a plain string while TypeScript still reports it as a
Temporal type. Nothing throws at the boundary, so the mismatch surfaces
later as a confusing runtime failure.

Add an orpc-temporal package exporting temporalRPCSerializers, covering all
eight Temporal types: Instant, ZonedDateTime, PlainDate, PlainTime,
PlainDateTime, PlainYearMonth, PlainMonthDay, and Duration. Values round
trip through toJSON()/from(), preserving time zones, non-ISO calendar
annotations, nanosecond precision, and negative durations.

Serializer type IDs occupy 1000-1007, clear of oRPC's reserved 0-7 range,
and createTemporalRPCSerializers({ baseType }) relocates them if they
collide with a consumer's own serializers.
@coderabbitai

coderabbitai Bot commented Jul 28, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 63e2ab0e-15df-4c7a-aa9a-72df2f2abc95

📥 Commits

Reviewing files that changed from the base of the PR and between 17ec189 and 07759da.

📒 Files selected for processing (1)
  • .changeset/tidy-pumas-repeat.md

Walkthrough

A Changesets entry was added for format-temporal, declaring a patch release to republish the package and address a previous release issue without functional changes.

Changes

Package Republish

Layer / File(s) Summary
Patch release metadata
.changeset/tidy-pumas-repeat.md
Adds a patch changeset for format-temporal with a republish note and no functional changes.

Estimated code review effort: 1 (Trivial) | ~2 minutes

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch orpc-temporal-support

Comment @coderabbitai help to get the list of available commands.

@sourcery-ai

sourcery-ai Bot commented Jul 28, 2026

Copy link
Copy Markdown
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Adds a new Changesets entry to republish the existing format-temporal package as a patch release (0.5.3 → 0.5.4) with no code changes, solely to fix a prior publishing issue.

File-Level Changes

Change Details Files
Add a Changesets patch entry to republish the existing format-temporal package without code changes.
  • Introduce a new changeset file declaring a patch bump for the format-temporal package.
  • Document in the changeset that the release is a republish to fix a previous publishing issue with no functional modifications.
.changeset/tidy-pumas-repeat.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

The current format-temporal release has a publishing issue, so it needs a
new version cut even though its code is unchanged.
…poral types"

This reverts commit 307aa97.

Dropping the custom RPC serializer approach in favour of the direction taken
in #70: Temporal values stay plain ISO strings on the wire, with temporal-zod
validators reviving them on parse.

Only the format-temporal republish changeset remains on this branch.
@macalinao macalinao changed the title feat(orpc-temporal): add oRPC custom JSON serializers for Temporal types chore: republish format-temporal Jul 28, 2026
@macalinao
macalinao marked this pull request as ready for review July 28, 2026 11:45
@macalinao
macalinao merged commit fc62855 into master Jul 28, 2026
11 of 12 checks passed
@macalinao
macalinao deleted the orpc-temporal-support branch July 28, 2026 11:45

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

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.

1 participant