Skip to content

🚀 Release v0.29.0#4155

Open
github-actions[bot] wants to merge 334 commits intomainfrom
canary
Open

🚀 Release v0.29.0#4155
github-actions[bot] wants to merge 334 commits intomainfrom
canary

Conversation

@github-actions
Copy link
Copy Markdown

@github-actions github-actions bot commented Apr 5, 2026

This PR promotes changes from canary to main for version v0.29.0.

🔍 Changes Include:

  • Version bump to v0.29.0
  • All changes from canary branch

✅ Pre-merge Checklist:

  • All tests passing
  • Documentation updated
  • Docker images built and tested

🤖 This PR was automatically generated by GitHub Actions

imran-vz and others added 30 commits March 2, 2026 02:23
This is only in one provider but can be extened to other providers
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Enable file upload deployments via the public API, unlocking CI/CD workflows
similar to `railway up`. Users can now programmatically deploy by uploading
zip archives.

Depends on: Dokploy/trpc-openapi multipart/form-data support
Switch from z.instanceof(FormData) to uploadFileSchema (zod-form-data)
so the OpenAPI generator produces a proper multipart/form-data spec
with typed fields (zip as binary, applicationId, dropBuildPath).

Regenerate openapi.json with the drop-deployment endpoint included.
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
This fixes the issue where the installation instructions are instructing to have the user run the install script under the wrong shell.
- Added health check functionality for PostgreSQL, Redis, and Traefik services before updating the web server.
- Introduced a modal state management system to guide users through the verification and update process.
- Updated UI components to display service health status and relevant messages during the update workflow.
- Refactored the update server button to reflect the latest version and availability of updates.
…validate-dokploy-services

feat: enhance web server update process with health checks
- Bumped the version of @dokploy/trpc-openapi in both package.json and pnpm-lock.yaml.
- Removed unnecessary metadata from the dropDeployment procedure in application.ts.
feat: expose drop deployment endpoint in public API
- Changed input class from "focus:ring-0" to "focus-visible:ring-0" for improved accessibility and visual feedback on focus.
feat(ui): Add Vercel-style breadcrumb navigation with project and service switchers
…led-rejection

fix: prevent unhandled rejection in trustedOrigins on DB failure
@dosubot dosubot bot added the size:XL This PR changes 500-999 lines, ignoring generated files. label Apr 5, 2026
Siumauricio and others added 29 commits April 4, 2026 23:27
fix: Replace tooltip trigger button for help icon (provider compose ui)
…ation

- Introduced `accessedServers` field in user permissions schema and member table.
- Implemented server access validation across various API routers to ensure users can only access permitted servers.
- Added a new query to fetch accessible server IDs based on user roles and licenses.
- Updated UI components to support server selection in user permissions.
…for-enterprise

feat: add accessedServers permission handling and server access valid…
- Introduced `isEnterpriseCloud` boolean field in the user schema to differentiate enterprise users.
- Updated billing UI to display specific information for enterprise cloud users, including a dedicated section for managing subscriptions.
- Modified API webhook logic to handle subscription updates and server management based on the `isEnterpriseCloud` status.
- Added `isEnterpriseCloud` field to the user schema to enhance user differentiation for enterprise cloud services.
- This change supports the ongoing updates to billing and subscription management for enterprise users.
…enterprise-users

feat: add isEnterpriseCloud field and update billing logic
…-disk-space-monitoring-graph

feat: show only used disk space in server monitoring chart
feat: add RHEL flavors to server setup script
- Updated the authentication process to check if the email of the user matches the email associated with the invitation token.
- Improved error handling for cases where the user is not found or the email does not match the invitation.
Also checks that the invitation is not expired and has not already been
used before allowing account creation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…r handling

- Normalize emails with toLowerCase().trim() before comparing
- Wrap getUserByToken in try/catch since it throws TRPCError on miss,
  rethrow as APIError for consistent error responses
fix: validate invitation email matches signup email
The naive split(":").pop() approach treated the port number in
registry URLs (e.g. registry:5000/image) as the image tag.
Now uses lastIndexOf(":") and checks if the suffix matches a port
followed by a path (digits + slash), consistent with extractImageName.

Closes #4082
fix: extractImageTag misidentifies registry port as tag
writeDomainsToCompose reads the compose file in Node.js before the
shell script runs, so patches applied as shell commands were being
overwritten by the stale pre-patch content.

Split patch execution into a separate step that runs before
getBuildComposeCommand, so the file is already patched when Node.js
reads it for domain injection.

Also added missing patch support to rebuildCompose which was skipping
patches entirely on redeploys.

Closes #4113
fix: compose patches overwritten by domain injection
The actions array in Slack attachments requires Interactive Components
to be configured on the Slack app, which causes notifications to fail.
Replaces with a Details field using mrkdwn hyperlink syntax and adds
mrkdwn_in to ensure the link renders as clickable.

Closes #4053
…ions-content

fix: actions in slack notification
fix: replace deprecated Slack actions with mrkdwn link field
- Change compose.loadServices permission from service:create to service:read
  since loading services from a compose file is a read-only operation
- Add saveEnvironment endpoint to compose router with envVars:write permission
- Update show-environment.tsx to use saveEnvironment mutations instead of
  generic update mutations for all service types (compose, databases)

Closes #4052
…oad-services

fix: correct permission checks for compose loadServices and env editing
The catch block was swallowing the real error from the ntfy server,
making it impossible to diagnose connection failures (e.g. SSL, DNS,
auth issues). Now the underlying error message is included in the
tRPC error response.

Closes #4047
fix: surface actual error message in ntfy test connection
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automated pr release size:XL This PR changes 500-999 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.