github daytonaio/daytona v0.26.0

latest releases: v0.53.0, v0.52.1, v0.52.0...
5 months ago

What's Changed

Features

  • feat: flag for the project-config delete command to delete all project configurations by @Divanshu-Grover in #949
  • feat: cursor IDE support by @Tpuljak in #960
  • feat: prebuilds by @idagelic in #912 - read more about prebuilds below

Fixes

  • fix: clone project from commit url by @the-johnwick in #873
  • fix: commit clone infinite loop by @idagelic in #964
  • fix: handle api errors that return html by @Tpuljak in #952

Chores and tests

  • chore: mark git directory as safe in devcontainer by @Tpuljak in #951

Prebuilds

This release introduces prebuilds - a way to speed up development by setting a project configuration to listen to changes in the underlying repository and run a build whenever it is necessary to ensure that once the user wants to create a project and start working, the creation process is much quicker.
Using daytona prebuilds add opens a view that lets asks the user to select a project configuration and the Git branch they plan to work on. The user can then decide on a commit interval after which a build should be triggered as well as any specific trigger files whose changes should immediately start the build process.

image

image

Consequent daytona create calls will automatically detect the most recent existing build and use it to create the project much faster.

image

daytona build list and daytona build logs allow the user to view the builds and their information or debug the process. daytona build rm --all lets the user delete the builds to clear up space.
daytona build logs [BUILD_ID] -f lets the user view the build progress

image

image

The prebuilds work by registering a listener to webhook event from the Git provider by sending a public API endpoint that the Git provider will send requests to. Currently only GitHub is supported, but more options are coming soon.

image

Breaking changes

  • Due to changes in interfaces, existing project configs will need to be re-added.
  • Providers will need to be updated with daytona provider update
  • GetGitContext is now a POST request that takes a GetRepositoryContext object instead of GET request that takes a repository URL
  • To resolve database migration issues:

a) If you don't mind losing existing workspaces and configuration, you can simply delete the Daytona config directory

On Mac - rm -rf ~/Library/Application\ Support/daytona
On Linux - rm -rf ~/.config/daytona
On Windows - rmdir C:\Users\YOUR_USERNAME\AppData\Roaming\daytona

b) To keep the current configuration, it is necessary to run this SQL command: DROP TABLE IF EXISTS build_dtos; after stopping the Daytona server and before starting it up again. To do this you need to first install the SQLite CLI by following the steps available on SQLite.org and then run the following commands:

sqlite3 [DAYTONA_CONFIG_DIR]/db
DROP TABLE IF EXISTS build_dtos;

If using Windows make sure to call the correct executable file - sqlite3.exe instead of sqlite3

New Contributors

  • @Divanshu-Grover made their first contribution in #949

Full Changelog: v0.25.2...v0.26.0

Don't miss a new daytona release

NewReleases is sending notifications on new releases.