#๐ v0.15.0 - 11th December 2024
1 messages ยท Page 1 of 1 (latest)
If all goes as planned, this is probably getting towards one of our last releases of the year (given we probably want to power down our release machine a bit during December due to team PTO)
This release has these changes already: https://github.com/dagger/dagger/compare/v0.14.0...main. Notably:
- Lots of little deadlock resolutions, fixes, perf improvements
- The new+improved TUI introduced in https://github.com/dagger/dagger/pull/8442 from @hoary bay (been using it all this week, no real complaints ๐)
- This also includes the engine-side changes needed to ship various cloud related features
- Expanded telemetry, we now measure memory and network, from @west tendon (https://github.com/dagger/dagger/pull/8880, https://github.com/dagger/dagger/pull/8902)
- Lots of typescript refactoring to enable new features from @muted mauve in https://github.com/dagger/dagger/pull/8824
- More shell fixes and features from @spare ermine
- New
dagger uninstallcommand from @slow sparrow
The milestone looks pretty clear ๐https://github.com/dagger/dagger/milestone/69. So I'm proposing for Tuesday next week, so we got plenty of time to do another in the week if something surprising has accidentally changed.
cc <@&946480760016207902>
I'll also include https://github.com/dagger/dagger/pull/8675 and probably https://github.com/dagger/dagger/pull/8823
I'm on the decoupling right now but I'll continue 8823 once 8675 is merged
i wanna sneak in a fix for https://github.com/dagger/dagger/issues/9012 before then, saying it here to hold myself accountable
Note from prod dev weekly: we'll make this v0.15, and it'll have its own blog post, since it has all the TUI changes - and possibly some breaking changes, if they can't be avoided (OTel dependency woes + exec .Error() no longer including stdout/stderr).
Do we need to push this out further then? If we need a whole blog post?
Sounds good though, we should still do what we can to avoid current modules in daggerverse breaking
If it's v0.15 and we have a blog post, I'd kinda of like to sneak in the new engine config as well
Yeah might as well, I don't think we're in any rush and I'd guess we'd get more out of taking our time, assuming Tuesday was arbitrary
Yeah totally arbitrary ๐
(Thursday is Thanksgiving in the US btw)
Hm maybe let's not go next week then?
Proposed release date: "when the blog post is ready and enough people are around" ๐
Yeah cool ๐
Cc @sleek aspen @vital garnet ๐
โจ v0.15.0 - ??? 2024
Updated the milestone for the old v0.14.1 to be for v0.15.0 instead now ๐
Thank you @atomic dirge and @hoary bay for the ping. Does December 3rd work for the release? Blog post will follow shortly after.
SGTM ๐
I have a couple of PRs on the verge of getting merged (cache volume namespacing, dagger update command and service entrypoint .
Beside that I would really love to get archive the test results from CI runs (https://github.com/dagger/dagger/pull/9011) reviewed/merged as well.
ci + test changes generally aren't milestoned and tied to specific releases, since they can ship separately - since those are just for us
dagger update is still in draft, anything blocking it from being reviewed yet?
I was waiting for the dagger uninstall to get merged, i will get dagger update ready for review (need to rebase and make sure the ci is happy)
just to be clear, I am not in a hurry to release 0.15 unless y'all are, so if we want to push this release out longer to fit in more features or bug fixes then it is fine with me since we just did a 0.14 recently. I guess it is up to @meager orbit @ebon mauve ? cc @vital garnet
Given we literally just covered what's new in v0.14 in this week's community call, my preference would be to stick with the schedule we all discussed, with blogs every 2 months or so, so Mid december at the earliest or early Jan. On the other hand every rule has its exception so if we really want to release this now and there's a bunch of notable things, I'm happy to do back to back releases w/ blogs just as long as we don't start making a habit of this because I have seen that after a while people just start ignoring us if we're too noisy etc.
Agree with the general rule, but at this point we've already merged the big new feature and the next release will have very noticeable DX improvements and a breaking change, so it seems like we should just give it an appropriate amount of visibility/fanfare. If we're worried about saturating peoples' inboxes we could consider doing both the v3 beta Cloud launch and v0.15 release in the same blog post, we just opted not to in the interest of keeping things decoupled. (cc @meager orbit)
in retrospect, do we wish we had waited on v0.14 so we could've included the v3 cloud launch and whatever breaking change?
Personally I'm more a fan of "ship whatever we have, whenever it's ready" - I wouldn't have done things any differently, since it would have meant either delaying the v0.14 release, or rushing and risking more breakage in a very visible release
Yeah I'm fine with how it went. If I remember, @hoary bay you recommended shipping the engine-side tracing improvements first, then dropping cloud v3 without an "asterisk". So the remaining question is - do we ship those engine-side improvements alongside 0.15, or 0.14.x?
If we feel like it's too early to announce 0.15 because we don't have enough new stuff to justify it - I guess that means 0.14.x. But since you guys are not going for that option, I guess there's a breaking change associated with the tracing improvements?
There are 1-2 breaking changes:
- Error strings no longer embed
Stdout: ...\nStderr: ..., which cleans up the UI a lot but specifically breaks things likestrings.Contains(err.Error(), "stdout foo"). They'll still be available as fields on the error value. - https://github.com/dagger/dagger/pull/8991 breaks the Bass SDK again ๐ข - so anyone depending on
vito/daggerverse/apkowill break. Looking into work-arounds, but it's a bit of a tangled dependency knot. This is just an OTel bump and it's not needed by anything, so we can just kick the can down the road if we want.
question - does doing all this new telemetry stuff affect the ability of old clis to talk to new engines and vice-versa?
if there's a chance of it breaking, we should probably bump the min versions here
i think it's actually compatible in both directions once I finish https://github.com/dagger/dagger/pull/9042 - will verify and add the version bump if not
it feels like we're certain we're doing v0.15.0 - we've got breaking changes potentially, new tui, custom configs, etc, so feels exciting ๐
if we are certain, we should bump our next version to https://github.com/dagger/dagger/pull/9073
Next release is going to be v0.15.0, with some exciting changes.
<@&946480760016207902> hallo, if you have a moment today - can you add your in-flight PRs + issues to the milestone if they should be part of the release ๐
we should try and decide now what's going in so we can work on the release blog + docs if neccessary
(help on clearing the review backlog would also be really appreciated!)
in terms of when we do the actual v0.15.0 release - should we aim for wednesday the 4th?
that gives us time if it slips a bit into thursday, and then still has time for us to publish the blog post.
Sorry for the delay since I was OOO last week. All the PRs that are tagged as .15 milestone are added with their summaries.
@tropic jasper @spare ermine @west tendon @atomic dirge @hoary bay When you have a moment tomorrow, can you review the PR summaries in the doc? I tagged you in each section that you need to approve. Once approved, we'll mold the content into a real blog post. cc @vital garnet
@warped obsidian please take a look in the doc to make sure we have documentation issues for each of the PRs.
im almost entirely certain this is a dumb question, but can you disambiguate "the doc" for me?
Hey Miranda, I added severals PRs on TS that were missing from the Milestone, should I update the blogpost to add these changes?
done
@meager orbit if you manage to find the time,we'd love one final ๐ from you on the dagger update and dagger uninstall commands that will go out in v0.15 ๐ . cc @atomic dirge @slow sparrow
https://github.com/dagger/dagger/pull/8745
https://github.com/dagger/dagger/pull/8839#issuecomment-2514960777
all new PRs are added to the doc. @muted mauve, I made yours one section since they are all related.
Created a GTM thread here to talk about timelines. #1313614602856169512 message
Thanks!
Latest update - We are pushing out the release. It will not be happening today. See note here - https://discord.com/channels/707636530424053791/1313614602856169512
<@&946480760016207902> - I'd very much like to aim to do the release this week - it feels like we're in a very good place for it.
How does tomorrow sound? The 10th of December.
โจ v0.15.0 - 10th December 2024
right, we go for tomorrow ๐
outstanding code change prs still open are:
- @spare ermine's https://github.com/dagger/dagger/pull/9097
- @muted mauve's https://github.com/dagger/dagger/pull/9031
Can we also make sure the current batch of shell improvements get in?
just want to clarify their statuses - are these blockers? as in, should these push the release back if they cannot be merged in time?
- the shell is still experimental, so i would rather not block on shell changes - we'll aim to do a v0.15.1 the week after, so this isn't going to be as large a delay as after v0.14.0.
- 9031 feels quite fundamental - i don't know how to judge this
Yeah we shouldn't have to block on shell merges. It's just that those are already good enough to merge as is
specifically https://github.com/dagger/dagger/pull/9097
The shell PR is good to go. The TS one, I'm on final review, testing locally. I don't expect any issue, just double checking.
i've reviewed this - and approved it - nothing is particularly blocking (except https://github.com/dagger/dagger/pull/9097#discussion_r1876462868, so we don't lose context for it)
but shell.go is huge now. it is experimental, but its complexity was one of the trickiest parts of working on autocomplete
Speaking of auto-complete. Any chance we can get that in also?
if we're trying to have multiple people working on the shell at a time, having some tidy ups would be really useful
it'll need a big rebase onto this one
and a review from @spare ermine
but, if i can get a review before tomorrow, i'll timebox a rebase early tomorrow morning
the aim is to start the release at about 13:00 UTC
Yes, also at the very beginning, one of the most pleasant parts of working on the shell, was that it wasn't suffering from the same complexity that slows down contribution to the rest of the CLI. So we should try to preserve that if possible ๐ obviously that gets harder as we add more features
Maybe worth pushing the release 1 day to get the tab completions in. The new shell module changed several things, so the tab-completions needs adjusting.
it's been a month since our last release now
we should not be blocking the release on any experimental features
Yeah if tab-completion isn't ready to merge, it can wait for 15.1
we'll be returning to our regular weekly schedule after this
(it reassures me that we're planning a .15.1 so quickly afterwards)
aside from moving the builtins into .stdlib, anything else you forsee as being a big issue? i think the rest should just be normal rebase shenanigans
I did the double check, added a comment ๐
There's a new lookup logic. So when you type something it could be a function, a dependency, a stdlib command, another module...
yeah okay, i shall not attempt to get it into this release
(or will try less hard)
although it might not be too bad
since the auto-complete doesn't actually use any of the shell state
(as we discussed, since you wanted to keep autocomplete as separate logic)
btw I can't wait to see how auto-complete handles github.com/dagger/da<TAB> ๐
yeah I don't mean this iteration. But eventually people will ask for it, just want to prepare you emotionally for this
i'm also milestoning https://github.com/dagger/dagger/pull/9134 - i think the implementation needs resolving before we release
(have to head out now, will pick this thread up tomorrow)
Yaaay https://github.com/dagger/dagger/pull/9031 is merged @atomic dirge ๐
@solomon Draft ready for your review (draft 3, top of doc)
There are a few docs PRs waiting for review related to this release (see milestone)
Does 0.15 make anything else faster, besides filesync and telemetry upload?
Not yet, more is coming but won't make it until next release
Will review these tomorrow morning! Am I good to merge them if they're good?
Yes
@warped obsidian going through docs prs now
@spare ermine is https://github.com/dagger/dagger/pull/9097 good to merge?
likewise with https://github.com/dagger/dagger/pull/9127
Yeah, both are good to go.
awesome will hit merge ๐
if anyone's around to stamp https://github.com/dagger/dagger/pull/9157, as a followup to this ๐
integrated all feedback, waiting for CI
I see some CI failures but on checking they seem to be flakes related to telemetry timeout? Ignore and merge, or re-run?
hmmm, the daggerverse pr was never opened (investigating)
links?
re-run ๐
hm, it's triggering in https://github.com/dagger/dagger/actions/runs/12258098382/job/34197094761?pr=9159
i suspect that what's happening is that this is only triggered on pr open - but because we add to the pr in stages, then this actually never gets correctly triggered
cc @balmy vector ^
working on updating the logic to try and skip creating the pr if it already exists
@balmy vector need a hand here - trying to get it to trigger in https://github.com/dagger/dagger/pull/9161
noticed the pr was failing the first time https://github.com/dagger/dagger/actions/runs/12258098382/job/34197094761?pr=9161
so been doing some updates to correct this
but i'm still getting "401 Bad credentials" even though this is in the upstream repo (and not in a fork)
DAGGER_CI_GITHUB_TOKEN still doesn't seem set
hm, is there maybe something about secret access in protected branches
Still failing
okay i'll investigate it in a bit - it's probably some weird flake, i'll take a look
@balmy vector @woven vessel @lunar bloom @sharp rivet looks like the deploy preview is consistently failing ๐ค https://github.com/dagger/dagger.io/actions/runs/12260027976/job/34203875830?pr=4105
CI has passed on this one https://github.com/dagger/dagger/pull/9104 - needs an approval to merge
I will be afk now, dinner time here - @ me if you need something, and I will check back here after some time as well
merged that one now, thanks for the quick approval Justin! - 2 left to go green!
The preview environment is working correctly, it seems that Previes.ensureHealthy is not building the URL the right way. It has a /, it should have replcated it with a -. It seems ensure-healthy is not using the right function to rebuild the url respecting the branch slug
I'll send over a PR with the fix
ah
i have just thrown together a fix actually
pushed it into https://github.com/dagger/dagger.io/pull/4105
will open a separate pr once it passes?
Looks good. I'm actually trying to understand why we added that step. THe step before, Verify & Comment already validates if the deployment was successful or not. If it was it posts a comment
So I'm not sure why ensure-healthy is necessary given we already did the work before that
cc @balmy vector
I think we are okay to remove it from .github/workflows/daggerverse-checks.yml
@woven vessel ^
i also need ๐ on https://github.com/dagger/dagger/pull/9161 from someone if they're around - that should be the last piece to kick off the release
Looks good. I'll follow up with Gerhard later to see if get rid of that step
merged, and retriggered the daggerverse-preview job in https://github.com/dagger/dagger/pull/9161 to make sure it uses it
hm, it is starting to get kind of late here, which means things are starting to feel rushed - i was hoping to be done by now.
i think instead of rushing, i'm going to vote to hold off the release into tomorrow
that gives us a bit more breathing room - because it's been a month since exercising the release machine, i'd rather not rush it, end up with a bunch of stuff to fix, and end up staying up really late to get it all done
fyi <@&946480760016207902>
have merged the last thing we need, so all that needs doing is tagging v0.15.0 now
@atomic dirge, I added https://github.com/dagger/dagger/pull/9163 to the milestone. It's ready to go if you can include in v0.15.0. It'll help with demos.
looking now!
@spare ermine any chance you could look at https://github.com/dagger/dagger/pull/9166 ? release date in changelogs needs updating 
๐ค what
nvm, it's a bug in the "new merge experience" in github ๐
merged it now
okay, we look good to go - tagging in a few minutes
finished merging all the docs prs @warped obsidian ๐
bleh, daggerverse bump failed, helm deploy failed - tackling helm deploy first
i'm gonna run the publish step manually locally I think
helm chart made manually https://github.com/dagger/dagger/releases/tag/helm%2Fchart%2Fv0.15.0
see the trace: https://dagger.cloud/jedevc/traces/ad03264837525ae84a882569ea9f5d85
going to do the same with the bump daggerverse pr
Need an extra pair of eyes?
i think i'm good right now! i'm really a fan of the experience of being able to run chunks of the pipeline locally
daggerverse pr should be created - link to run: https://dagger.cloud/jedevc/traces/814853f63a03c20959431d6d5e2003c3
Indeed! This is what I have for the Daggerverse bump PR:
jd -n dgvs-bump 0.14.0 0.15.0
#!/usr/bin/env bash
export GITHUB_PAT="$(op read op://Private/GITHUB_X22_PAT/credential --account my.1password.com --cache)"
set -eux
dagger -m modules/daggerverse call --github-token=env:GITHUB_PAT bump-dagger-version --from=0.14.0 --to=0.15.0
i notice it hasn't updated all the workflows? cloud previews, and magicache tests - but it looks like everything else is pretty good ๐
This is just Daggerverse, for sure. We should add new functions for the other updates.
could you look through https://github.com/dagger/dagger.io/pull/4110 ? since "i" made the pr, i can't approve it
Looking now
Seems like a legitimate failure: https://github.com/dagger/dagger.io/pull/4110#issuecomment-2535887118
Taking a closer look now.
published new docs - includes the new config pages!
dagger-for-github pr here: https://github.com/dagger/dagger-for-github/pull/165
๐ v0.15.0 - 11th December 2024
working through release improvements - got a little checklist to go through
but i think the main part of the release is done ๐
going to go out and grab a spot of lunch, but will be back in about half an hour to an hour
I am seeing a different behaviour in Daggerverse after the upgrade to 0.15.0. Still trying to understand what is happening. The tests are hanging.
I think the AsService point is correct, have updated the relevant places
okay, well we get past the tests now ๐
building also succeeds
not sure how long the deploy step is meant to take to become healthy
We both pushed the fixes at the same time. Going to force push mine since they have a few extra changes.
OK, all my changes are now pushed. Watching this go through.
Happy to jump into team chat @atomic dirge so that we don't step on each other toes again.
Are you @atomic dirge working on https://github.com/dagger/dagger/blob/main/modules/daggerverse/main.go by any chance? I have a bunch of changes to push & don't want to clash again.
ah i'll just stop working on daggerverse things for now
i have some changes in https://github.com/dagger/dagger/pull/9167
we can merge that pr fyi, i can do all the other bits as a follow-up
Will check it out!
it looks like some of the changes in daggerverse/dag got lost ๐ค
It is possible that I addressed the fix in a different way. Want to solve this sync?
Everything is working as expected though: https://dgvs-bump-dagger-from-0-14-0-to-0-15-0-with-dagger.preview.daggerverse.dev/
yeah i'm not actually sure what daggerverse/dag does, so, if it works ๐คท
Taking a closer look at that now.
Those fixes were actually legit. I don't think that part of the codebase is used, but the changes are important. Putting them back now.
Nice catch!
Question for @sharp rivet @woven vessel https://github.com/dagger/dagger.io/pull/4110/files#r1880428078
checking now
this pr is ready to review and merge now - i think the remaining todos can easily be done as follow-ups: ideally everyone should start using and testing v0.15.0 as soon as possible, so would be good to merge this asap
Looking at this now with the intent to approve shortly.
Good to merge!
Can we get an extra pair of eyes on https://github.com/dagger/dagger.io/pull/4110 @lunar bloom @half apex @woven vessel ?
It all looks good to me, I just want to give us all an opportunity to take a moment and celebrate this first auto upgrade ๐
Thank you @half apex & @woven vessel for the last review ๐ค
I am stopping for the day. Can you please keep an eye on this flowing into production as expected? https://dagger.cloud/dagger/traces/21203549d4457630efb9425bf7b71602
i think we might have a regression in the (disk io) metrics from v0.14.0 to v0.15.0, still trying to verify
on a dev-built-from-tagged version a curl based demo i built does not output the disk util you'd expect
seems plausibly related to orbstack specifically, verifying now
Yeah on v0.15.0 I only get metrics from services (was running dagger call test specific in our repo)... I wonder if the telemetry changes broke something since the TUI displays metrics by associating them with a CallID
seems plausible, i have only seen service metrics and metrics from terminal() calls
Hm - I have also recently sometimes seen metrics appear not in high verbosity modes? Is that intentional?
@tropic jasper digging through my reflog, found some evidence this existed prior to netns metrics getting added, and also that the bug repro'd back then, only shows metrics for services, and can be repro'd through dagql/idtui/ tests (eg not integration tests, which maybe rules out some parts of the code?)
not intentional
When would you want to be able to release a fix? I want to do a .1 next week, does that timeline work?
If not, we can do sooner
Once we figure out what's wrong and have the fix merged we can decide, but I'm happy to do one anytime. Seems like the release process is easier than ever thanks to everything that's gone into it, so not a ton of overhead
Yup! Getting a lot of use out of the release machine is probably a good way to iron out all the last bits and bugs in it as well
i wanna do one with these improvements, too ๐
i demand shit to shovel and water to carry lol
Oh you're so welcome to it bestie ๐
also fun hindsight-is-20-20 realization i think i might've hit this bug last week, while playing with @tropic jasper 's hackathon --dot-output, and to quote the dm "i do not have an explanation for this" (i was only getting io metrics on services in my graphviz output)
I think this fixes it: https://github.com/dagger/dagger/pull/9171 but worth a double check on your end @connor when you have a min
We need to improve the tests too, didn't include that there though
stamped, testing on my end now
โ โ .withExec(args: ["bash", "-c", "for i in {1..20}; do curl -s https://w.wallhaven.cc/full/jx/wallhaven-jxzzmp.jpg -o \"cat$i.jpg\" && sync && sleep 0.1; done"]): Container! 7.6s | Disk Read: 0 B | Disk Write: 76 MB | IO Pressure: 6.649ms | CPU Pressure (some): 8.953ms | CPU Pressure (full): 8.953ms | Memory Bytes (current): 79 MB | Memory Bytes (peak): 82 MB | Network Rx: 605 kB | Network Tx: 100 MB
working on colima at least, orbstack weirdness is likely unavoidable
@balmy vector i've done a couple more daggerverse changes in https://github.com/dagger/dagger/pull/9175/commits (going through my post-release checklist)
i'm now done making changes to the daggerverse module, no further changes to make there