Releases
v0.0.43
Changelog
b722671 .github: Bump actions/download-artifact from 2 to 3 (#213 )
b505853 .github: Bump actions/upload-artifact from 2 to 3 (#214 )
78fc93c .github: Bump docker/login-action from 1 to 2 (#343 )
6bde28e A more verbose error when domains defs are inconsistent (#598 )
fccb506 Add a prompt for single letter command (showing logs) (#317 )
9c1db0f Add ability to configure incluster k8s client (#534 )
d5b609b Add ability to emit structured deploy output.
152be8b Add comments to some internal files and rephrase some identifiers for consistency.
b4cb87d Add debug command to find config location.
af1ec2c Add hidden flag to skip codegen
03ed086 Add hidden flag to verify compute graph caching
995beba Add minio extension as a localstack alternative for providing S3 buckets (#469 )
abde1fc Add missing Short
strings for commands
a0eb8d3 Add the transcoder to the nodejs testserver (#574 )
fdc6d31 Aggregate codegen errors and emit on flush (#485 )
a838ccf Avoid inserting ANSI reset sequence (ESC[0m) when NoColors style is chosen (piped output).
f9bf7a6 Avoiding node_modules when parsing protos. Closes #377 .
c122872 Bootstrap envoy with a template fed as a configmap (#565 )
50e2eac Bootstrapping new modules: Always add a dependency on foundation repo. (#385 )
1629e98 Buf: adding a forked protobuf-ts to the image. (#631 )
26250a5 CLI: supporting specifying the language in the "protogen" command. Closes #423 (#426 )
8a466c9 Canonicalize images from buildkit. This is required for stable digests.
c35d650 Clean up obsolete deployments in dev environments (#411 )
28292cc Codegen: making "PrepareGrpcBackendDep" return the name of the service without "Client" suffix as the actual class/struct name may be language-specific. (#558 )
65ec545 Continously with custom error handling (#488 )
d46b867 Controller implementing the xDS control plane (#563 )
faf8e81 Dev UI: removing the env selector. Closes #645
ac08317 Dev UI: removing the stack selector and the search box. Closes #644 .
f27327e Direct log output to Stderr instead of Stdout.
88d1b69 Direct lsp log to stderr.
76c9e78 Do not timebox pod resolution. k8s client rate limiter can slow down our requests.
216c7a7 Don't cancel oneshot on container failures. We still want to fetch logs.
649f894 Don't re-announce pods that got already deleted (as "removed") (#449 )
3f9afa0 Enable multiple servers to depend on postgres.
3376e33 Ensure that reflection picks up fn errors
e343025 Envoy gateway works e2e for nodeJS and Go (#595 )
b32a949 Envoy: shared memory conflict prevention (#622 )
143600a Expand fnerrors.New
to also support fmt strings (#516 )
4c88e69 Export IsStandardImportPath for lsp package to use.
1f748d6 Fall back to incluster AWS config if available and none is configured.
5dfebd0 Fill in description and homepage for Homebrew releases.
0e61383 Fix .gitignore.
6fe5d2a Fix codegenerror aggregation (#632 )
494600a Fix console's InputMode eraseing Stdout's output (#410 )
f277489 Fix console's cursor state (#412 )
6515a86 Fix default implementation for Go service.
974d4b6 Fix formatting.
a0e18b0 Fix head.
847adc5 Fix idle line missing (#422 )
ddcfe04 Fix lint.
ad9fbe5 Fix race condition or accessing LogActions flag (#413 )
9670f2c Fixes enable --parallel_work by default #655
d8bed19 Fixing a typo in CONTRIBUTING.md
b8e903c Fixing continuous_test (#626 )
05415f7 Fixing running "yarn" for Web: these nodes are not configured to work with Yarn3 so using Yarn1 for now.
c915c44 Fn tidy.
207a4b8 Formatting "fn-workspace.cue" with "fn tidy".
006947c Formatting devworkflow/web with the workspace settings.
dd899ac Gateway envoy controller: robust SIGTERM/SIGINT handling (#594 )
1635227 Go codegen: using the shared "PrepareGrpcBackendDep" function. (#460 )
c8edd0c Graceful prepare when rancher k3d nodes or the registry are stopped (#512 )
8ee0aa3 Guard CodegenMultiError.Error
45e98f6 Helpful descriptions for kubectl crd/get
(#635 )
03be201 Idle label race condition fix. (#478 )
ba879c4 Ignore context.Caneled errors for log streaming
220f841 Ignore vscode debug binary
e9cd02a Improved fn error formatting (#397 )
b8412a3 Increase the amoount of lines fetched from servers.
3ef273b Initial implementation fn lsp
command - an LSP language server for Fn files.
4f1de14 Install the glooctl
SDK (#521 )
17e6d0d Introduce --disable_command_bundle
for fn lsp
(#633 )
df56e70 Introduce a new core extension which wraps critical scaffolding (#636 )
6b34548 Introduce envoy as an opaque server (#560 )
71c0299 Introduce fnpipelines to interact with GH (#591 )
b4158a9 Introduce k8s controller to clean up stale testing namespaces (#360 )
907f77a Invalidating cached results for proto generation so the old gRPC codegen is not retrieved from the cache. (#589 )
6915742 Kill provisioning tools after 2 minutes
ef9f1e6 Limit the length of the generated role name (#535 )
04c1a9b Make ActionID strongly typed. (#438 )
b7bb37b Make fn.generate
return non-zero status code when it encounters generation errors.
ed1a2e2 Make fragment access nil safe
ff752bd Make minio use secrets as credentials. (#505 )
9e247e0 Make yarnRootStatefulGen.Handle throw an error.
5e96b7c Migrating to Yarn 3.2.1
8c1d677 Move proto serialization from before Publish() into observables. (#369 )
71ed123 Node.js tracing: making sure the fastify plugin is initialized after the main otel.
1b98900 Node.js: adding a package.json dependency on the package where gRPC client is declared.
48f5956 Node.js: adding a root dev dependency on "@types/toposort": needed by runtime.
209f1d1 Node.js: adding a wrapper Server around the grpc server. This will allow to register HTTP handlers with the same "registrar" object. (#427 )
99ac3e4 Node.js: basic version of the async gRPC codegen. Streaming, call cancellation, etc., are not supported yet. (#559 )
7172270 Node.js: changing the protobuf generator to protobuf-ts. (#627 )
0eb6d5d Node.js: codegen formatting cleanups.
b74fd21 Node.js: copy the whole yarn root to the image when building, otherwise yarn install --immutable
may fail.
b714d56 Node.js: creating the HTTP server lazily in the provider instead of on import. (#541 )
89d3ae5 Node.js: disable build scripts when running "yarn install" locally.
6307b5d Node.js: download the Yarn binary to the SDK cache instead of committing it to the user repository. (#384 )
da36c85 Node.js: explicitly listing workspaces in Yarn root. This prevents adding deps from Web packages and also solves the issue with recognizing the node.js runtime package as a workspace in the foundation repository. (#395 )
f51a471 Node.js: exporting "@grpc/grpc-js" from "grpcgen" so the user doesn't… (#593 )
c2f2e1d Node.js: generate tsconfig when building. This allows to selectively build only what needed, including in node_modules, which is important for a case of a yarn.lock shared across servers. This also allows to hide build-only compiling settings from the user. (#390 )
3e3a2f5 Node.js: hide yarn plugin in the fn cache. Closes #433 (#451 )
25d451d Node.js: hiding fn-managed dependencies within the "runtime" node. Updating the versions while I'm at it. Closes #235 . Closes #424 . (#492 )
73757d8 Node.js: integrating the promise-based API for gRPC to Foundation. (#507 )
bc4d38d Node.js: iterating on the gRPC codegen. (#571 )
19a1215 Node.js: make the workspace foundation root a yarn root for all node.js nodes. This simplifies handling dependencies between these nodes. (#391 )
1538729 Node.js: making "wireService" async so the user can "await" for dependencies. (#526 )
3001a39 Node.js: making an fn module correspond to a NPM package, not a node. (#634 )
23ffe53 Node.js: making gRPC client factory name customizable as a preparation for a new gRPC codegen. Cleaning up InputType logic in the templates. (#572 )
0566639 Node.js: making sure all nodes have fn-managed required direct dependencies added to package.json.
a49d9b0 Node.js: making sure all nodes list their direct dependencies explicitly.
8ee452f Node.js: making wireService async optionally.
b4dc190 Node.js: migrating to "tsc" 4.7.3 since 4.6.2 is crashing in some scenarios.
f0dd0c6 Node.js: moving "runtime" under "std". Closes #498
eb97bbd Node.js: moving ImportCollector to a separate package. To be re-used by the gRPC codegen.
6bee9a1 Node.js: moving extensions to "std".
cc159f3 Node.js: moving generating package.json at Yarn roots from fn generate
to fn tidy
. Rationale: the root package.json now contains an explicit list of yarn workspaces, but code generation may be called for a specific server, in which case the root package.json is overwritten with a subset of yarn workspaces.
e01a857 Node.js: moving the grpc server to a separate extension so it can provide hooks for telemetry. (#549 )
d3bccd8 Node.js: moving yarn root to the workspace root. This makes dependencies between nodes within the foundation repository easier to manage.
b9d1587 Node.js: only invoking transitive initializers from direct dependencies in servers.
86e710c Node.js: preparing to switch to the "pnpm" linker. (#616 )
2d938d9 Node.js: providing extensions access to the instantiation path, similar to Go. (#639 )
cbe668c Node.js: providing the http server as a dependency instead of it being hard-coded via "registrar". (#528 )
a6e0915 Node.js: retaining user-defined dev dependencies at the root package.json. Dev dependencies can only be specified at the root, they seem to have no effect in workspace package.json files.
6ad51d1 Node.js: reverting yarn.lock at root as it was breaking tests.
0b94654 Node.js: running fn tidy
after #549 .
38f8fea Node.js: service to service communication. (#376 )
edfb8ce Node.js: support dependencies on other modules via "replace" statements in the workspace. Depending on the "runtime" package via "fn:" protocol. (#489 )
a42301d Node.js: supporting HTTP handlers. Closes #434 (#437 )
0aebaa7 Node.js: supporting Promise<> as a provided type. (#527 )
fd89523 Node.js: supporting async initializers. (#540 )
4d223d6 Node.js: supporting external nodes. (#354 )
472cc3c Node.js: supporting omitting package name from "availableIn" if the file is in the same package as the CUE definition.
3c4769b Node.js: supporting tracing. (#536 )
6e44645 Node.js: switching to the pnpm linker. (#617 )
74e7348 Node.js: taking before/after initializer statements into account. Closes #431 . (#537 )
9235a40 Node.js: temporarily removing a dependency on the input "Backend" proto for the gRPC extension. This proto imports the "options" proto from a parent directory, which is not supported in the node.js build yet. (#487 )
c2ef5d2 Node.js: use user imports for server package.json, not all transitive dependencies.
ee6afe1 Node.js: using "fn:" protocol everywhere instead of referring via workspaces. (#587 )
4e32e4a Node.js: using a temporary file for fn.lock.json. (#615 )
15cfce3 Node.js: using symlinking for "fn:" protocol instead of copying the files. (#585 )
661734b Propagate CUE dep errors. Fixes #338
f59f1e4 Re-order writers to prevent corrupted .age
files
b45059a Refresh console's prompt on (l)ogs keypress
ee4d04f Regression fix: generate exports on Server building. (#373 )
54340ee Release foundation to namespacelabs/repo/fn Homebrew Tap.
e544ba0 Remove obsolete hint. The command does not exist.
ba856bd Remove ubuntu 20 from testing matrix
932f1ef Removing "end-of-file-fixer" from pre-commit config as it mangles .ts files, generated by the proto generator.
583a8c8 Rename genGoProtosAtLoc to genProtosAtLoc as it handles all proto generation, not only Go.
ce1b880 Renaming GO_GRPC to GO. (#608 )
d1b2fc2 Respect max logging levels in json logger (#625 )
235edbf Revert "Install the glooctl
SDK" (#543 )
8e8ccc2 Revert "Revert "fn generate: topological sort (#342 )" (#359 )" (#361 )
e21b917 Revert "fn generate: topological sort (#342 )" (#359 )
c451feb Revert buildkit log annotation It is duplicate now
39d1098 Semver comparison fix (#619 )
0c8ab33 Set follow
when streaming logs to logobserver (#533 )
090cc94 Shorten the prefix of the log messages to make it more human-readable (#452 )
16ef4c1 Skip console stdin reader if we are not in a terminal
bc7ead6 Skip e2e tests (#436 )
5e4dc6c Split CodegenMultiError into a thread-safe error collector and an immutable CodegenMultiError.
a15ff16 Standardizing TS formatting settings.
707a90f Status subresource for the http grpc transcoder (#623 )
d826c58 Support google.api.http annotations (#362 )
c7f4f79 Suppress version error if no minimum API is set.
daa1650 Toggle logs (#372 )
627c8fe Topologically sort the filedescriptor set transcoded by Envoy (#605 )
df43fb7 Tweak Goreleaser Homebrew settings to support private repos.
b31dfa0 UnwrapSink to get consolesink. (#471 )
a18f566 Update api to reflect spec
9f1ed135 Update goreleaser name fn->ns.
49e133f Update help flag for --disable_command_bundle
0e200ad Update the node ID flag and default
83ef436 Updating fninfo prebuilt's sha256
f06fc65 Updating prebuilts.
603445e Use SHA of prebuilts as tag, too, for ECR compatibility.
c4b29ba Use a strongly typed ActionID to record log sources. (#439 )
8a821c0 Use absolute paths for go modules internally in order to not depend on the $CWD.
0224bb2 Use buldkit action's attachment to additionally print logs for errors (#389 )
24f9a6a Use multierr for CUE dep errors.
5987150 Web UI: removing unused code. Making Stack and Ports blocks consistent.
32a368e Web: migrating to Yarn 3.2 for consistency with Node.js
0e1f678 Web: using the base "vite" path. ".bin" alias is not available with the "pnpm" linker. (#618 )
9b390ab Wire up fn command-history upload/download
with the support service (#484 )
b311c0a Wire up the controller scaffolding (#576 )
f264d5b Wrap listener failures as a fnError
75fed61 HttpGrpcTranscoder
CRDs as envoy snapshots (#592 )
73c4f2c HttpGrpcTranscoder
CustomResourceDefinition
wired up with RBAC (#570 )
f731acd fn unprepare
(#640 )
b91ad2c fnerrors.New
and stack traces for all fn errors (#379 )
8ba7c45 add command to inject static devhost into pipelines.
5911602 add flag to allow parallel execution of tests (#370 )
9192749 add flag to emit binary loc to a file.
be7c3a8 add names to executors for error attribution
f45d8fd allow multi-document yaml
a5332a3 artifacts/oci: only try to use gcp credentials for artifact writing on writes.
a3ef36a artifacts/oci: use default keychain when fetching images.
8b12305 buf: embed the base image calculation.
c71f191 build/binary: added ability to build a layer out of files in the repo.
6e22132 build/buildkit: add ability to pass secrets to buildkit via --buildkit_secrets.
dea96c6 build/buildkit: add buildkit plan deserialization to --explain.
2a75aa7 build/buildkit: add more logging context from tools running within buildkit.
abb8bbc build/buildkit: add scope to buildkit actions so we know what we're building.
662120e build/buildkit: clarify when canonicalization is running.
d4f651d build/buildkit: don't set targetName as a cache input, it prevents caching.
ef96c79 build/buildkit: introduce a simpler Canonical() which doesn't reset layer build time.
17a533d build/buildkit: skip empty secret definitions.
e7ffaf3 build/buildkit: wire --buildkit_secrets flag.
31ad367 buildkit: if progressui fails, wrap its error.
dc2111a cleaned up executor-based errors a bit.
6627efb cli/cmd/source: add "yarn" subcommand to node.
30aeffd cli/cmd: added fnservices robot-login.
fbc0777 cli/cmd: added hidden "fnservices" which allow us to invoke Map and Issue.
a5a159e cli/cmd: removed "source buf".
bd1bdeb cli/fncobra: added CmdWithEnv and CmdWithServer command helpers.
8f822d4 cli/fncobra: have pprof listen on a dynamic port.
1e86c84 cli/fncobra: was missing default env.
490d527 cli: properly pass whether colors are used to error reporting.
7f0f294 cmd/attach: rather than blocking forever, wait for cancelation (as Ctrl-C emits a cancelation).
8261fae cmd/attach: refactor hydration args for re-use.
c1ff917 cmd/buildbinary: when building a single image, only output the image url.
61e886d cmd/debug-shell: set terminal in raw mode so input works as expected.
1455f07 cmd/debug: changed printsealed to print computed deploy stack.
b83bd43 cmd/debugshell: add ability to start a debug shell from a foundation-based binary image.
5eaf40d cmd/debugshell: use RunAttached instead of DebugShell().
983784e cmd/deploy: add Environment to serialized plan, and don't require --env on deploy-plan.
64f35bb cmd/deploy: added "deploy-plan" which deploys a previously serialized plan.
b0cb7bc cmd/deploy: added "fn attach" hint.
d57e60e cmd/deploy: added --serialize_to which outputs the plan that would be deployed.
c7dcc8c cmd/dev: automatically allocate sequential ports on multiple fn dev
runs.
c763b9c cmd/dev: cleaned up cli ui header.
5311341 cmd/dev: moved keyboard handling to devworkflow/keyboard.
a6979c5 cmd/dev: web ui was not listening on the listener that was created, and thus defaulted to port 80.
089a35c cmd/eks: added hidden command with eks-related operations. Exposed "compute-irsa".
f014472 cmd/fn -> cmd/ns (#654 )
6f54d0a cmd/fn: add prebuilt version of fn.
8e1e805 cmd/fn: added binary definition.
81ce51f cmd/fncighauth: add prebuilt.
7274cfe cmd/fncighauth: added command which generates access tokens for a gh app.
f06d24c cmd/fndev: moved fnservices to fndev.
20f8291 cmd/fninfo: added binary definition, and prebuilt.
445e560 cmd/fninfo: added tool which parses a workspace and outputs structured ci/cd information.
0b7316c cmd/fnpipelines: merged all individual commands into fnpipelines.
87380ef cmd/images: added "images unpack".
5641e89 cmd/images: added --extract to images unpack
.
94503d7 cmd/images: download image for linux-like host platform.
f136189 cmd/login: added robot login variant.
2939511 cmd/logs: fixed handling a case where the channel is closed.
ef2ce06 cmd/sdk: make zsh work (different prompt, and args).
b5d08b8 cmd/source/create: refactor to include a bit more information about framework types.
6c2911c cmd/test: added --parallel_work which builds all tests, but executes them in sequence.
ee9600f cmd/tidy: re-load the workspace after updating it.
b564598 cmd/tidy: when resolving modules, don't re-resolved modules which are already pinned.
dfa32f1 code cleaning - simple basic renames (#305 )
df357cc console/consolesink: add Scope style (rather than hardcode its use).
7e44b43 console/tui: trim AskSecret's resulting value.
742d4ee console: prefix warnings with "warning" and errors with "error".
7263d86 console: remember recent log sources (#425 )
26328a3 consolidate service protos in single dir. fix codegen to support proto service deps (#473 )
e6e6bea create echo service by default with sample impl
099e0ee dependency: @grpc/grpc-js: bump to 1.5.8.
fb3280f devhost: added selector abstraction which allows matching by different selector types.
450a732 devworkflow/web: moved to yarn3.
f567b4d devworkflow: cleaning up the use of stickies.
c5e3e80 devworkflow: fix regression in new clients not seeing first state.
a1c49d7 devworkflow: fixed a data race when closing the main observer channel.
11560a1 devworkflow: fixed a situation where port forwarding would be stopped on a change to the graph.
f827606 devworkflow: more robust observer handling.
7066e4c devworkflow: re-organized observer distributor to prevent sends on closed channels.
5ae28ba devworkflow: refactor port forwarding to accept stack and focus.
0431b96 devworkflow: remove zerolog instance (unused).
650c2bd devworkflow: removed intermediate stack observer, clarifying sessions state management.
58a5fc3 devworkflow: retain port forwarding state over multiple setWorkspace instances.
ac3f35c do not upgrade existing fn deps.
2ec3b01 engine/ops/defs: made defs.Make generic.
05eafd7 expose buildkit version in fninfo
0f37593 fix a codegenerror bug from PR#510
c2f151f fix default tag computation (pass actual digest)
8734d1d fix error comparisons to support wrapped errors
9d2f8b7 fix fn tidy. Right now it removes foundation deps if no node depends on it.
4bc8980 fix scope printing
13316bf fix tool timeouts
e1dff87 fix typo with observedGeneration
2a00421 fn generate - add to e2e tests (#358 )
e696f50 fn generate: topological sort (#342 )
ab9c897 fnerrors.WithLogs: Additionally print task's logs on error (#383 )
628bfca fninfo: print dependency version only (#584 )
12f6770 fork tailscale/util/multierr, so we keep a Go 1.17-compatible version.
3c09cc2 frontend/cuefrontend: add ability to specify environments in Cue-based workspace.
964c062 frontend/cuefrontend: added ability to specify sidecards as a map (name -> container).
4c614f5 frontend/cuefrontend: also validate module api requirements when loading fn-workspace.cue.
d55739b frontend/invocation: changed injection points to be typed, to support arguments in the future.
1b8569e frontend/invocation: changed injection points to be typed, to support arguments in the future.
ec618e1 full log visibility into envoy snapshot updates
35dddcd gateway controller: disable default debug logging
b3580f3 generate build id in k8stools
638c896 gh tests: use matrix (#476 )
91bbcac github/workflows: removed self-hosted mac (breaks too often).
a4a4bb7 go.mod: bump github.com/aws/aws-sdk-go-v2/config from 1.15.2 to 1.15.5 (#408 )
c554e34 go.mod: bump github.com/aws/aws-sdk-go-v2/credentials (#403 )
f2a88fd go.mod: bump github.com/aws/aws-sdk-go-v2/service/ecr (#407 )
e1e0be5 go.mod: bump github.com/aws/aws-sdk-go-v2/service/s3 (#461 )
5c25be3 go.mod: bump github.com/docker/cli (#406 )
8f50f7a go.mod: bump github.com/jackc/pgconn from 1.11.0 to 1.12.1 (#465 )
9b1263a go.mod: bump github.com/maruel/panicparse/v2 from 2.2.1 to 2.2.2 (#399 )
2f9dd5e go.mod: bump github.com/moby/buildkit from 0.10.2 to 0.10.3 (#402 )
209792b go.mod: bump go.opentelemetry.io/contrib/instrumentation/github.com/aws/aws-sdk-go-v2/otelaws (#419 )
afb0112 go.mod: bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#415 )
62bfb43 go.mod: bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#405 )
34f85bc go.mod: bump tailscale.com from 1.22.2 to 1.24.2 (#400 )
8efba2a implement ability to set namespace for prov tools from devhost (#545 )
153eb26 internak/sdk/yarn: use unpack.Unpack.
8b78965 internal/artifacts/oci: add digest to result of oci.resolve-image.
7624c7b internal/artifacts/oci: fix regression in image write auth.
f62bfcb internal/artifacts/unpack: add unpack to local filesystem, w/ checksum checking.
e0aff71 internal/artifacts/unpack: ensure that single-file fs implements VisitFiles.
6e8bbc9 internal/artifacts/unpack: remove unused WriteLocal (use Unpack instead).
c882340 internal/artifacts/unpack: use a typed Unpacked, instead of a string.
cc0baba internal/cli/cmd/lsp: switch from zerolog to our logger.
a8f8858 internal/cli/cmd: "use psql" now mounts secret as env, rather than reading it.
73abfc1 internal/cli/cmd: added "deployment remove", which removes an environment's deployment resources.
8998e55 internal/cli/cmd: added "deployment remove-all".
12dbc6b internal/cli/cmd: added "use psql" command.
a8edfe0 internal/cli/cmd: added experimental "fn tools octant". (#503 )
e15aee4 internal/cli/cmd: allow passing packages names in deploy, build and attach (w/ --use_package_names).
8d7ef56 internal/cli/cmd: change secrets set to use tui.Ask().
525059e internal/cli/cmd: register all common commands in RegisterCommands.
1d80f56 internal/cli/cmd: removed "shutdown", it was confusing with hard to understand semantics.
bc27033 internal/cli/cmd: update use psql
to show users a list when there are multiple databases.
cfdddad internal/cli/cmd: updated login to tui.Ask.
ba648a2 internal/cli/cmd: use tui.Ask in keys import.
6511aea internal/cli/cmd: use tui.Select() to select which bundle to upload. (#506 )
7cc8ba9 internal/cli/fncobra: bump ulimit -n
(number of files) to 4096 by default.
94a798f internal/cli/fncobra: handle SetupThrottler errors, if any.
8e7935e internal/cli: consolidate pprof registration.
ae98255 internal/console/consolesink: don't do line-matching if running non-interactively.
f38f024 internal/console/consolesink: don't hide/show the cursor in non-interactive mode.
8ee6a4f internal/console/consolesink: simplified non-interactive path a bit.
e83def0 internal/console/consolesink: use a non-interactive version of the console sink in CI.
a093045 internal/console/termios: keep OTERM when setting raw mode, so \n handling is not modified.
5c13772 internal/console/termios: propagate errors from restore (and ignore them for now).
9b92319 internal/console/tui: introduced tui.Ask() and use it deployment remove
.
ff6423b internal/console/tui: resize Ask()'s input based on window size.
813004a internal/filewatcher: update go-filenotify, which fixes polling events not included absolute paths.
aa9a332 internal/fnerrors: exitError does not need a separate Err.
460cf66 internal/fnerrors: remove special handling of cycle errors, as we should have fixed the problem.
331e0fa internal/fnfs: changed VisitFiles to operate on ByteStream instead.
2f01310 internal/frontend/cuefrontend: serialize all FillPath calls.
cd68ef2 internal/frontend: remove ability of specifying mounts in invocations.
2ea227b internal/localexec: added RunInteractive method.
8f09de6 internal/protos: added generic version of proto.Clone.
585827d internal/sdk/buf: ensure that filedescproto merging does not clobber inputs.
964013d internal/sdk/buf: grab an explicit reference to buf's output.
9cbee18 internal/sdk/buf: run buf in buildkit.
6caf42d internal/sdk/buf: use buildkit to invoke buf (as it more naturally operates on files in, and out).
866893e internal/sdk/golang: memoize the sdk at the graph scope.
0cd1bdf internal/sdk/golang: move to use unpack as well.
65abdb9 internal/sdk/k3d: use unpack.Unpack.
9bdcca6 internal/testing: added ability to run tests inside a vcluster (with --vcluster).
515abb4 internal/testing: also handle ErrContainerFailed (in addition to ErrContainerExitStatus).
f20f50a internal/testing: output test logs of failed tests on --parallel.
dca2d46 internal/testing: retain timestamps in collected logs.
7249a18 internal/testing: store the original stack, env, etc in the test results.
0a74d67 internal/wscontents: changed snapshotContents to clarify that we only skip dirs.
580b50d internal/wscontents: move fs event handling to console.Debug.
1840970 kube-state-metrics: added.
00efca9 languages/golang/buildkit: added ability to mount ~/.git-credentials in buildkit.
97bbd7d languages/golang: do not generate go-grpc gateway sources.
9a83f16 languages/golang: pinned 1.18 go build image.
7ad9b00 languages/golang: support service definitions whose protos live outside the service's go package.
c907246 languages: added ability for language implementations to observe computed ingresses.
300a988 make invocation errors distinguishable
cc1f1e4 mark more servers as testonly
968945e minio pinning (#508 )
130dcfb minio under universe/storage/s3 (#495 )
1d189a9 moved a few zerolog calls to use console.Errors().
cc7020a networking/gateway: added readiness check to the gateway.
e2490f6 networking/gateway: annotate server for prometheus scraping.
5261b32 nil support for BuildID.String()
d613732 no longer use karrick/godirwalk.
0b0d20b nochangelock: remove memory leak from controller
98ba51d postgres: Fix the description for kubedef.Delete
c42ab69 providers/aws/eks: allow configuring kubernetes with simply 'provider: "aws/eks"' and cluster name.
f38fabf providers/aws/eks: handle the case that we're not in an eks cluster.
025a561 providers/aws/eks: use aws go client v2 to generate eks bearer tokens.
0d3d999 providers/aws/registry: memoize ecr-get-auth-token.
429b8fb providers/aws: separate the use-cases where AWS is required vs not.
4b75800 providers/gcp/registry: made access token retrieval be do-scoped.
d99fae1 provision/config: Rehydrate now passes image auth, if any is available.
fa11c8e provision/configure: isolate API to only be usable in provisioning tools.
1a74c72 provision/configure: make handling Compilables explicit.
ba0dbd2 provision/configure: move kill-switch to RunServer, which is used by all tools.
d0f6dc5 provision/configure: remove transitive dependencies on workspace/.
3a322ef provision/deploy: added ability for tools to emit IngressFragmentPlans.
0569bb8 provision/deploy: also build a config image for dev
, so fn attach
works in development.
2120f7f provision/deploy: deploy config images to non-ephemeral environments.
9b6679c provision/deploy: ensure that CRD definitions are applied before other invocations.
c48958d provision/deploy: fix a bug that was resetting the server dependency order.
9e9108c provision/deploy: remove duplicate serialized invocation re-ordering.
47ba9b1 provision/deploy: topologically sort the serialized invocations emitted by handlers. (#607 )
28c8fff provision/tool: add ability for provision tools to explicitly request injection of values.
bd3d4dd provision/tool: added ability to compile arguments to SerializedInvocations.
5618285 provision/tool: added enable debug capabilities (--invocation_debug).
642ca55 provision: add staging as a preconfigured environment that is prod-like.
5f8d239 provision: allow servers to declare sidecars and init containers.
186723e provision: allow servers to specify configure.with.
16f8fab provision: introduce "ComputedConfig", and store them in the config image.
408e69d rancher/k3s version bump (#519 )
4a69c85 reduced dependency on zerolog.
06ec0d8 remove all references to zerolog.
d48e1fb remove deadcode.
73403be remove more dead code
1602549 remove some dead code (e.g. inputs.#Service).
77fe97d removed more old-gateway code.
e3f83b8 resource mapping for stateful sets
a6a5123 rip out build ID, we should always infer the image tag from the digest (#653 )
06583f0 runtime/docker: carefully manage the lifecycle of the input and output goroutines.
a764db4 runtime/docker: explicitly return nil when we observe a zero exit code.
4d42ee3 runtime/docker: guard against successful runs where i/o may fail post exit code 0.
e89855c runtime/docker: ignore conflicts when requesting that containers are removed.
c6df445 runtime/docker: invoke containers using the docker API, rather than the CLI. (#522 )
2e2400c runtime/docker: remove the need for the docker client (#524 )
075e83c runtime/endpointfwd: emit warnings when a port forward fails.
0d8b2a0 runtime/ingress: fixed a bug where ingress rules were not being generated for all configured domains.
8dea546 runtime/kubernetes/client: use GroupVersion instead.
edf05c9 runtime/kubernetes/helm: added helm client.
c6d7467 runtime/kubernetes/kubeops: added ability for Create to Update instead.
b29dfda runtime/kubernetes/kubeops: added ability to output kube api urls we call.
8fefe16 runtime/kubernetes/kubeops: allow specifying a complete ResourceClass.
8cf64c4 runtime/kubernetes/kubeops: call update if create fails, rather than getting beforehand.
923081d runtime/kubernetes/kubeops: check if object exists before attempting to update it.
33ccd36 runtime/kubernetes/kubeops: consistently set FieldManager.
25c010e runtime/kubernetes/kubeops: create is a POST issued on the resource path.
8599045 runtime/kubernetes/kubeops: handle core vs other type of GroupVersion.
69ca3c4 runtime/kubernetes/kubeops: use metav1 parameter codec, to support CRD apply/create/etc.
a6d1210 runtime/kubernetes/kubeparser: added Single([]byte).
954159b runtime/kubernetes/vcluster: add support to create vclusters.
71a28f0 runtime/kubernetes: actually, don't need ability to fetch secrets.
9cbbc54 runtime/kubernetes: add ability to parse CRDs, and apply CRDs.
6d8dd75 runtime/kubernetes: added --kubernetes_use_node_platforms_in_production_builds.
6b8a9c9 runtime/kubernetes: added a RBAC blueprint (and use it in std/networking/gateway).
71bcb68 runtime/kubernetes: added ability to fetch eks bearer tokens without aws-iam-authenticator. (#550 )
2115cb4 runtime/kubernetes: allow configuration to set probes.
a1400be runtime/kubernetes: allow extensions to specify a podspec securitycontext.
ff55500 runtime/kubernetes: attempt to delete all namespaces, even if an error occurs with one.
7d18dd8 runtime/kubernetes: cancelation path was missing error forwarding.
b8992ca runtime/kubernetes: disable service links (i.e. service name/adresses injected via environment).
c4a5f4e runtime/kubernetes: fetch systeminfo only when required, and not before.
524db86 runtime/kubernetes: fix "send after close" in terminal size event propagation.
36fca43 runtime/kubernetes: fixed a bug in pod deployment when the event channel was nil.
c063369 runtime/kubernetes: fixed data race in portforward (don't re-use transport).
692b584 runtime/kubernetes: fixed the condition that checks if the namespace didn't exist.
c0a2f0c runtime/kubernetes: if authenticating against AWS, check first we have creds.
09712bc runtime/kubernetes: implemented all create.UpdateIfExisting semantics.
f338505 runtime/kubernetes: moved all definitions to kubeops.
2db0786 runtime/kubernetes: remove old -managed ingress resources that are no longer managed.
284f995 runtime/kubernetes: remove old -managed ingress resources that are no longer managed.
dc19f90 runtime/kubernetes: remove runtime cache, and add client cache instead.
a89e675 runtime/kubernetes: removed kubeops dependency on runtime/kubernetes.
1e859f4 runtime/kubernetes: removed the need to specify name/namespace in kubedef.Apply. (#586 )
630ec45 runtime/kubernetes: split namespace-bound calls from namespace-free.
97a9ae0 runtime/kubernetes: split runtime into more specific files.
f384c63 runtime/kubernetes: use sidecar name (if available), as the actual container name.
924c8b0 runtime/kubernetes: wait for a CRD to be fully installed before attempting to apply resources of its type.
a1fd792 runtime/kubernetes: when observing pods, always pick the most recent one.
5842f28 runtime/rtypes: remove ability from provisioning specifying new mounts.
554f2a6 runtime/tools: AllocateTTY is actually supported in the k8s integration as well.
7ec9dbf runtime/tools: added experimental support to run tools on kubernetes.
cc52da9 runtime/tools: added tools-specific kubernetes configuration.
0115422 runtime/tools: consolidate env type with runtime's.
176ba42 runtime/tools: remove UseHostNetworking, it's unused, and Docker specific.
3621c2e runtime/tools: remove dependency on localexec.
f9228a4 runtime: added --golang_use_internal_grpc_gateway, which adds the ability to disable the builtin gateway (#551 )
c450d22 runtime: added AttachTerminal and RunAttached methods to Runtime interface.
63fbed1 runtime: change ingress path to operate exclusively on serializable fragments.
d5a1618 runtime: consolidate all ingress OpMapAddress calls.
6f039b0 runtime: fix a bug in ingress computation.
548b3bc runtime: fix nil access of ServerNaming (and correctly pass Org on USER_SPECIFIED_TLS_MANAGED).
d5ed3d8 runtime: fixed regression in org-based dns name authentication.
2813226 runtime: include a GrpcHttpTranscoding ServiceMetadata with the required FileDescriptorSet.
deec91b runtime: remove "FillEndpoints" -- no longer necessary.
069d159 runtime: remove Go-specific gRPC gateway support.
46cf1ee runtime: remove StreamLogsTo; FetchLogsTo now serves all purposes.
00c0b50 runtime: support per-grpc method dispatching.
4a99ba0 schema/binary: clarified build plans, and made llb-based builds nested.
f5a966b schema: Definition/DefinitionList --> Serialized{Invocation,Program}.
9f83253 schema: added a few helper methods to handle ServiceMetadata.
24c0fd5 schema: moved generic versions of schema helpers to schemahelper.
30fcbe9 schema: moved testbundle to schema (as its part of the public api).
4d75456 schema: servers marked with "testonly" are not deployed or built on commands without a target.
2c1cb78 sdk/buf/protogen: run multiple codegen within a single invocation.
5b7083f sdk/buf: inline image builds (preparing to use buildkit for execution).
dd77c14 set global git config for buildkit
fef4f08 skip runasuser for invoke tools
3aa31a0 std/go/core: format init duration thresholds as durations, rather than numbers.
5b7f33d std/go/grpc/metrics: add client-side metrics.
0842c35 std/grpc/httptranscoding/test: disable TS side while it's broken.
d37740b std/grpc/httptranscoding/test: re-enable typescript side.
ab6032f std/grpc/httptranscoding: added go and nodejs grpc/http transcoding test.
46a0ab5 std/grpc/httptranscoding: compute domain names, rather than defer them to fn.
a836a89 std/grpc/httptranscoding: compute domain names, rather than defer them to fn.
28c93e8 std/grpc/httptranscoding: configure GrpcHttpTranscoder instances for annotated endpoints.
fa779cd std/grpc/httptranscoding: emit ingress fragments for transcoded services.
def0e44 std/grpc/httptranscoding: instruct the runtime to wait until the CRD is applied.
6190f73 std/grpc/httptranscoding: introduce package which represents the http/grpc transcoding.
a57f5df std/grpc/httptranscoding: lookup grpc-http-transcoder service, to next setup the ingress.
4e866b0 std/monitoring/tracing: emit schema-compatible resources.
434a9a2 std/networking/gateway/server: add the controller sidecar (now that tests support multi-container pods).
7c6e38b std/networking/gateway/server: expose Envoy's admin port.
9d6f9cb std/networking/gateway/server: fixed a bug in template parsing from embedded data.
27d2d15 std/networking/gateway/server: pass the correct CRD name when creating/updating.
9e0d706 std/networking/gateway/server: pin envoy digest.
02f82d2 std/networking/gateway/server: skip adding the CRD if it already exists.
c9f84b8 std/networking/gateway/server: use OpCreate for the CRD.
12f0262 std/networking/gateway: CRDs are installed globally.
0c7da0c std/networking/gateway: add "spec" block to HttpGrpcTranscoder CRD, to more closely follow other CRDs.
88e61f7 std/networking/gateway: can now make use of create.UpdateIfExisting.
a5872ef std/networking/gateway: dynamically configure envoy (placeholder).
f7748ab std/networking/gateway: enable auto mapping of grpc services to http paths.
913dd5e std/networking/gateway: export envoy http port as a service.
6df4ef1 std/secrets/kubernetes: also change to bytestream-version VisitFiles.
78fd53a std/secrets: added ability to mount a secret as an environment variable.
3e049ae std/secrets: correctly handle optional secrets (#500 )
07601f1 std/secrets: include generated kubernetes secret name in map.textpb.
313f44a std/types: introduce DeferredResource, and use it in std/secrets.
3afacef std/web/http: added prepare hook which provides dynamically computed stack.
befc92a testing: added ability for tests to collect logs from all containers in a pod (i.e. sidecars and inits as well).
e9b8aa0 tests/prometheus/canscrape: get scraping url from InternalEndpoint.
2530eb7 the non-console logger now uses the same "log action" rendering as the console sink.
7e342b5 transcoder: better streaming print options
8dd4579 turn on --parallel on fn test.
7e9c896 universe/aws/client: support creating clients when there's no opentelemetry provider.
cedf8cf universe/aws/ecr: added.
9405f07 universe/aws/ecr: attach irsa by default.
55894ee universe/aws/ecr: specify resource=* in the iam policy.
53b27b6 universe/aws/irsa: removed "details" bits, no longer used.
b165497 universe/aws/s3: if bucket already exists, dont error out EnsureBucketExists.
3cdd46e universe/db/postgres: emit computed configurations for incluster database instances.
7afe790 universe/db/postgres: include generated secret name in computed config.
d8f1bde universe/monitoring/honeycomb: temporarily make secrets optional.
7a478b3 universe/storage/minio: disabled minio checking for updates.
eb651c7 universe/storage/s3: emit S3 policy to grant access to used buckets.
eefdb72 universe/storage/s3: verify that we have credentials before creating the s3 client.
c703d97 update grpc client to 1.46.0.
1ac56ef update jaeger exporter to 1.7.0.
22a4e7a update kubernetes client to 0.24.0.
eccf4dc update opentelemetry to 1.7.0.
004bd04 update prebuilts with hosted amd64 build
7b09d5a use consistent cli directory structure
2e4d448 use sha as default tag during image pushing
7351233 vcluster: wait for coredns to be available before deploying.
f35ec11 work in progress
2997bf0 workspace/compute/bytestream --> internal/bytestream.
1519a78 workspace/compute: GetDepValue --> MustGetDepValue for clarity.
9e84cec workspace/compute: accept a computedigest(type) in precomputed.
1b6a9dc workspace/compute: reduced default log level of cache loads.
5856dfd workspace/dirs: added "files to exclude" in addition to dirs to exclude.
ed843aa workspace/tasks: action throttling is now done at the action level, instead of compute level.
a4addfa workspace/tasks: by default, only log done events in the json logger.
a8f7254 workspace/tasks: fix a bug where the throttler didn't apply to tasks.Return.
2769013 workspace/tasks: remove well known map from Wait signature, no longer necessary.
923a363 workspace: add actions for "loading a server" and "evaluating provisioning of a server".
16bda07 workspace: add workspace definition to module sources.
bea8452 workspace: allow node import hooks, and use them to automatically depending on grpc/httptranscoding.
a1e32b5 workspace: check that all dependencies rely on a minimum api version we still support.
6ee2e8d workspace: cleaning up some the list-related code.
445e8b5 workspace: cue-based workspace file definition.
3db2dfd workspace: ensure that the buf base image is always available for codegen.
b573052 workspace: invoke extend node during node parsing, so it's consistently applied.
cea6bc4 workspace: keep track of where we loaded the workspace definition from.
0d9824e workspace: only load foundation/std/grpc/httptranscoding if the foundation version we depend on has it.
You can’t perform that action at this time.