Skip to content

Update release process#3

Merged
joaovjo merged 4 commits into
nino-ts:mainfrom
joaovjo:main
May 13, 2026
Merged

Update release process#3
joaovjo merged 4 commits into
nino-ts:mainfrom
joaovjo:main

Conversation

@joaovjo

@joaovjo joaovjo commented May 13, 2026

Copy link
Copy Markdown
Member

This pull request introduces the 0.4.0 release of the framework, bringing a large number of new features, improvements, and bug fixes across multiple packages. Key highlights include the introduction of new core packages (such as ORM, authentication, session, and logging), major enhancements to configuration and TypeScript support, and a significant refactor of session management to use Bun-native APIs. Additionally, the release-please workflow has been updated for improved automation.

Major new features and improvements:

  • Core framework packages for ORM, authentication, session, JWT, social authentication, validation, and support utilities were implemented, significantly expanding the framework's capabilities.
  • A new logging package was introduced, featuring contextual logging and structured JSON output via AsyncLocalStorage and a JSON stdout driver.
  • TypeScript configurations were added or improved for individual packages, with updates to the root tsconfig for better path aliasing and type safety.
  • The session management system was refactored to remove dependencies on node:path and node:fs/promises, migrating the FileSessionDriver to use 100% Bun-native APIs.
  • The release automation workflow was updated to use release-please-action@v5 and now sets the GITHUB_TOKEN environment variable for improved security and compatibility. (.github/workflows/release-please.yml)

Bug fixes and maintenance:

  • Numerous bug fixes were applied across authentication, ORM, encryption, and workflow scripts, addressing issues such as type errors, test failures, security, and package configuration.
  • Obsolete scripts and conflict markers were removed from the codebase and workflows.

Code refactoring:

  • The session package's FileSessionDriver was fully migrated to Bun-native APIs, eliminating legacy Node.js dependencies.

These changes collectively modernize the framework, improve developer experience, and lay the groundwork for future extensibility and stability.

Summary by CodeRabbit

  • Bug Fixes
    • Resolved issues related to linting, markers, scripts, type checking, and workflows.
    • Updated release documentation with v0.4.0 updates.

Review Change Stack

@joaovjo joaovjo requested a review from vgeruso May 13, 2026 17:17
@joaovjo joaovjo self-assigned this May 13, 2026
Copilot AI review requested due to automatic review settings May 13, 2026 17:17
@coderabbitai

coderabbitai Bot commented May 13, 2026

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

This PR updates the release automation and documentation for v0.4.0. The Release Please GitHub Action is upgraded from v4.4.1 to v5, with GITHUB_TOKEN now passed explicitly through the step environment and the workflow-level FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 variable removed. The v0.4.0 changelog is updated with a corrected release date (2026-05-13) and expanded bug fixes entries covering lint, markers, scripts, types, and workflows improvements, while retaining the existing features and refactoring sections.

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 inconclusive)

Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'Update release process' is vague and generic, using non-descriptive terminology that doesn't clearly convey the main changes in the changeset. Revise the title to be more specific about the primary change, such as 'Release v0.4.0 with core packages and Bun-native session driver' or 'Upgrade release-please action to v5 and publish v0.4.0 release'.
Description check ❓ Inconclusive The description is comprehensive and covers major changes, features, bug fixes, and refactoring; however, it does not follow the repository's PR description template structure. Reorganize the description to match the template format, including the Changes Made checklist, Framework Compliance Checklist, Testing section, and Related Issues section.
✅ Passed checks (3 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@gemini-code-assist gemini-code-assist 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.

Code Review

This pull request updates the CHANGELOG.md to document the extensive changes for version 0.4.0, including new features for the ORM, authentication, and session modules, along with various bug fixes and breaking changes. Feedback suggests removing a duplicate version header, translating Portuguese entries into English for consistency, and fixing formatting issues such as unparsed HTML entities and literal newline characters in the changelog text.

Comment thread CHANGELOG.md
@@ -1,5 +1,140 @@
# Changelog

## [0.4.0](https://github.com/joaovjo/ninots-framework/compare/v0.3.0...v0.4.0) (2026-05-13)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

There is a duplicate header for version 0.4.0 at line 138. This typically occurs when a release pull request is updated without removing the previous placeholder. Please remove the redundant entry at the end of the file to maintain a clean changelog.

Comment thread CHANGELOG.md
* add TypeScript configuration for the ORM package. ([9624741](https://github.com/joaovjo/ninots-framework/commit/9624741a69dc6c4b029a3c5b03f306d443f52bd0))
* Add TypeScript configurations for individual packages and update the root framework tsconfig. ([6d1b7ca](https://github.com/joaovjo/ninots-framework/commit/6d1b7ca2f8fa46ed8e2cbb1ab38e6ef5adda6847))
* add visibility and MIME type methods to local adapter, enhance filesystem interface ([dc546a4](https://github.com/joaovjo/ninots-framework/commit/dc546a453283950a21d1dcbd609e942b8a3ca430))
* adicionar arquivo de teste AGENTS.md ([569ca39](https://github.com/joaovjo/ninots-framework/commit/569ca39604db01869d8b2d56996960cb4b62ee04))

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The changelog contains several entries in Portuguese (e.g., lines 21-30, 37-38, etc.), while the rest of the framework's documentation and PR description are in English. For consistency and to support international contributors, these entries should be translated to English.

Suggested change
* adicionar arquivo de teste AGENTS.md ([569ca39](https://github.com/joaovjo/ninots-framework/commit/569ca39604db01869d8b2d56996960cb4b62ee04))
* add AGENTS.md test file ([569ca39](https://github.com/joaovjo/ninots-framework/commit/569ca39604db01869d8b2d56996960cb4b62ee04))

Comment thread CHANGELOG.md
* **orm:** implement update in save() and fix remaining test failures ([ce72548](https://github.com/joaovjo/ninots-framework/commit/ce72548263e4dc149443f81436f5f0c83b34ca45))
* **orm:** use Bun SQL native begin() for PostgreSQL transactions ([2deb8cb](https://github.com/joaovjo/ninots-framework/commit/2deb8cb5047c19849e677bb564f400dceeddeb36))
* **repairs:** remove obsolete merge conflict markers and related documentation ([253ce9e](https://github.com/joaovjo/ninots-framework/commit/253ce9edac0d8afad7ac0e67ba531ceac04ff64f))
* **repairs:** resolve merge conflict markers preferring HEAD (security + CLI)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> ([e4bcc33](https://github.com/joaovjo/ninots-framework/commit/e4bcc332bd1e2c7f90331d5e7471556c045245c5))

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

This changelog entry contains literal newline characters (\n\n) and unparsed HTML entities (<, >). This indicates a formatting issue in the commit message or the changelog generation process. It should be cleaned up for better readability.

Suggested change
* **repairs:** resolve merge conflict markers preferring HEAD (security + CLI)\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> ([e4bcc33](https://github.com/joaovjo/ninots-framework/commit/e4bcc332bd1e2c7f90331d5e7471556c045245c5))
* **repairs:** resolve merge conflict markers preferring HEAD (security + CLI). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> ([e4bcc33](https://github.com/joaovjo/ninots-framework/commit/e4bcc332bd1e2c7f90331d5e7471556c045245c5))

@coderabbitai coderabbitai 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/release-please.yml:
- Line 22: The workflow now uses googleapis/release-please-action@v5 which
requires Node 24; update the workflow job to ensure a Node 24 runtime before
invoking the action — e.g., add actions/setup-node@v4 with node-version: '24'
(or switch the runner to an image that ships Node 24) in the same job prior to
the uses: googleapis/release-please-action@v5 step so the release-please-action
runs on Node 24.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: fa60e57a-4929-44c5-acfc-662145aefb5d

📥 Commits

Reviewing files that changed from the base of the PR and between eb89de5 and d7ed393.

📒 Files selected for processing (2)
  • .github/workflows/release-please.yml
  • CHANGELOG.md

- name: Run Release Please
id: release
uses: googleapis/release-please-action@v4.4.1
uses: googleapis/release-please-action@v5

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🌐 Web query:

What are the breaking changes in googleapis/release-please-action v5 compared to v4?

💡 Result:

Breaking changes in googleapis/release-please-action v5 compared to v4 are: 1) Node runtime upgrade (v4 → v5) - v5.0.0 includes a breaking change: “upgrade to node24”. [1] - Therefore, if you were relying on the action running on the earlier Node version from v4, you’ll need to ensure your GitHub Actions environment/workflow is compatible with Node 24 (the action itself now targets Node 24). [1] What’s not shown as a “breaking change” for v5 itself (based on the published v5.0.0 release notes) - The v5.0.0 release notes list only the Node 24 upgrade under “⚠ BREAKING CHANGES”. [1] Context: the main breaking changes introduced when moving to v4 (not directly “v5 vs v4”, but helps explain the prior baseline) - v4.0.0 breaking changes included: removing most configuration options in favor of manifest configuration, rewriting in TypeScript, removing the command option in favor of setting release-type and skip-github-release/skip-github-pull-request, and running on Node 20. [2][3] So, the delta from v4 to v5 that is explicitly called out as breaking in the v5 release is the Node 24 upgrade. [1]

Citations:


Ensure Node 24 compatibility for release-please-action v5.

The upgrade from v4.4.1 to v5 introduces a breaking change: v5 requires Node 24 (upgraded from Node 20 in v4). Verify that your GitHub Actions environment and runners support Node 24.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/release-please.yml at line 22, The workflow now uses
googleapis/release-please-action@v5 which requires Node 24; update the workflow
job to ensure a Node 24 runtime before invoking the action — e.g., add
actions/setup-node@v4 with node-version: '24' (or switch the runner to an image
that ships Node 24) in the same job prior to the uses:
googleapis/release-please-action@v5 step so the release-please-action runs on
Node 24.

Copilot AI 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.

Pull request overview

This PR updates the release process metadata for the 0.4.0 framework release, including generated changelog content and the release-please workflow configuration.

Changes:

  • Adds a new 0.4.0 changelog entry dated 2026-05-13.
  • Updates release-please workflow to use googleapis/release-please-action@v5.
  • Moves GITHUB_TOKEN configuration to the release-please step environment.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
CHANGELOG.md Adds release notes for version 0.4.0.
.github/workflows/release-please.yml Updates release-please action version and token environment configuration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread CHANGELOG.md
Comment on lines +3 to +28
## [0.4.0](https://github.com/joaovjo/ninots-framework/compare/v0.3.0...v0.4.0) (2026-05-13)


### ⚠ BREAKING CHANGES

* **session:** Removed node:path and node:fs/promises dependencies

### Features

* **@ninots/support:** implement Arr, Collection, and Exception classes (155 tests passing) ([5428e52](https://github.com/joaovjo/ninots-framework/commit/5428e5260d66c853a7d4741e62d39532058cf090))
* **@ninots/support:** implement Str class Phase 1 methods (20/20) ([a9c1abf](https://github.com/joaovjo/ninots-framework/commit/a9c1abf95d36faf7255f4e908200e6b031040fe2))
* add HTTP request/response helper utilities. ([4bc7635](https://github.com/joaovjo/ninots-framework/commit/4bc76353787ba7af09f9572f4f2e3850821b2819))
* add knowledge graph for unified authentication packages ([dd90c09](https://github.com/joaovjo/ninots-framework/commit/dd90c09b534faede4cef4bba4ddcd9778e3293f1))
* Add new encryption package utilizing the Web Crypto API for symmetric encryption. ([eff366c](https://github.com/joaovjo/ninots-framework/commit/eff366c7267386349c4b5f811ef11971317ed5c7))
* Add package-specific TypeScript configurations and new unit tests for various framework components. ([0aa84ba](https://github.com/joaovjo/ninots-framework/commit/0aa84ba2934c13fe492b1d0a62df54862eb97a7f))
* add TypeScript configuration for the ORM package. ([9624741](https://github.com/joaovjo/ninots-framework/commit/9624741a69dc6c4b029a3c5b03f306d443f52bd0))
* Add TypeScript configurations for individual packages and update the root framework tsconfig. ([6d1b7ca](https://github.com/joaovjo/ninots-framework/commit/6d1b7ca2f8fa46ed8e2cbb1ab38e6ef5adda6847))
* add visibility and MIME type methods to local adapter, enhance filesystem interface ([dc546a4](https://github.com/joaovjo/ninots-framework/commit/dc546a453283950a21d1dcbd609e942b8a3ca430))
* adicionar arquivo de teste AGENTS.md ([569ca39](https://github.com/joaovjo/ninots-framework/commit/569ca39604db01869d8b2d56996960cb4b62ee04))
* adicionar configuração de testes para o pacote @ninots/websocket e atualizar dependências no package.json ([3205bc9](https://github.com/joaovjo/ninots-framework/commit/3205bc96751b5bb90f35f2818b8dcfa5b6129a89))
* adicionar configuração inicial do arquivo .coderabbit.yaml ([bc27b68](https://github.com/joaovjo/ninots-framework/commit/bc27b680800e9735c770dd2d0f631024fe360361))
* adicionar escopo no setup-node para publicação no registro npm ([db29453](https://github.com/joaovjo/ninots-framework/commit/db2945339095e77d2078204dfa5c5ac6d1f163f4))
* adicionar novo arquivo bun.lock com configuração de pacotes e dependências ([b9f9c63](https://github.com/joaovjo/ninots-framework/commit/b9f9c635e5481af3f7699c9a9b7cfe8e430bd494))
* adicionar permissões de pacotes e id-token nos workflows de publicação ([7a5b1fc](https://github.com/joaovjo/ninots-framework/commit/7a5b1fcdebaf942a328dcd0c9f3ab7e902bdd0a8))
* adicionar schema ao arquivo de configuração jsr.json ([08742c7](https://github.com/joaovjo/ninots-framework/commit/08742c7ab731dce1b00c82b55374e0e8514e276d))
* adicionar tipos para RequestHelpers e ResponseHelpers, e criar arquivo jsr.json com configurações do pacote ([6fc9a23](https://github.com/joaovjo/ninots-framework/commit/6fc9a234d92f6fb963dc01123b2f6232df580962))

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d7ed3932cf

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread CHANGELOG.md
@@ -1,5 +1,140 @@
# Changelog

## [0.4.0](https://github.com/joaovjo/ninots-framework/compare/v0.3.0...v0.4.0) (2026-05-13)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Remove duplicate 0.4.0 release entry

This change prepends a second 0.4.0 section instead of updating the existing one, so CHANGELOG.md now has two entries for the same version with different dates. That makes the release history inaccurate for users and can confuse tooling that reads the changelog top-down to determine the latest notes for a version, because it cannot unambiguously map 0.4.0 to a single canonical entry.

Useful? React with 👍 / 👎.

vgeruso pushed a commit to vgeruso/ninots-framework that referenced this pull request May 13, 2026
…3844510781627212470

⚡ Optimize sequential relation loading in Collection
@joaovjo joaovjo merged commit 421e73c into nino-ts:main May 13, 2026
6 checks passed
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.

3 participants