1# Development Report for June 26, 2017
2
3
4### BuildKit
5
6[Repo](https://github.com/moby/buildkit)
7[Proposal](https://github.com/moby/moby/issues/32925)
8
9New development repo is open at https://github.com/moby/buildkit
10
11The readme file provides examples how to get started. You can see an example of building BuildKit with BuildKit.
12
13There are lots of new issues opened as well to track the missing functionality. You are welcomed to help on any of them or discuss the design there.
14
15Last week most of the work was done on improving the `llb` client library for more complicated use cases and providing traces and interactive progress of executed build jobs.
16
17The `llb` client package is a go library that helps you to generate the build definition graph. It uses chained methods to make it easy to describe what steps need to be running. Mounts can be added to the execution steps for defining multiple inputs or outputs. To prepare the graph, you just have to call `Marshal()` on a leaf node that will generate the protobuf definition for everything required to build that node.
18
19### Typed Dockerfile parsing
20
21[PR](https://github.com/moby/moby/pull/33492)
22
23This PR that enables parsing Dockerfiles into typed structures so they can be preprocessed to eliminate unnecessary build stages and reused with different kinds of dispatchers(eg. BuildKit).
24
25The PR had some review and updates in last week. Should be ready to code review soon.
26
27### Merged: Long running session & incremental file sending
28
29[PR](https://github.com/moby/moby/pull/32677)
30
31Incremental context sending PR was merged and is expected to land in `v17.07`.
32
33This feature experimental feature lets you skip sending the build context to the daemon on repeated builder invocations during development. Currently, this feature requires a CLI flag `--stream=true`. If this flag is used, one first builder invocation full build context is sent to the daemon. On a second attempt, only the changed files are transferred.
34
35Previous build context is saved in the build cache, and you can see how much space it takes form `docker system df`. Build cache will be automatically garbage collected and can also be manually cleared with `docker prune`.
36
37### Quality: Dependency interface switch
38
39[Move file copying from the daemon to the builder](https://github.com/moby/moby/pull/33454) PR was merged.
40
41
42### Proposals for new Dockerfile features that need design feedback:
43
44[Add IMPORT/EXPORT commands to Dockerfile](https://github.com/moby/moby/issues/32100)
45
46[Add `DOCKEROS/DOCKERARCH` default ARG to Dockerfile](https://github.com/moby/moby/issues/32487)
47
48[Add support for `RUN --mount`](https://github.com/moby/moby/issues/32507)
49
50[DAG image builder](https://github.com/moby/moby/issues/32550)
51
52[Option to export the hash of the build context](https://github.com/moby/moby/issues/32963) (new)
53
54[Allow --cache-from=*](https://github.com/moby/moby/issues/33002#issuecomment-299041162) (new)
55
56[Provide advanced .dockeringore use-cases](https://github.com/moby/moby/issues/12886) [2](https://github.com/moby/moby/issues/12886#issuecomment-306247989)
57
58If you are interested in implementing any of them, leave a comment on the specific issues.
59
60### Other builder PRs merged last week
61
62[Warn/deprecate continuing on empty lines in `Dockerfile`](https://github.com/moby/moby/pull/29161)
63
64[Fix behavior of absolute paths in .dockerignore](https://github.com/moby/moby/pull/32088)
65
66[fix copy —from conflict with force pull](https://github.com/moby/moby/pull/33735)
67
68### Builder features currently in code-review:
69
70[Fix handling of remote "git@" notation](https://github.com/moby/moby/pull/33696)
71
72[builder: Emit a BuildResult after squashing.](https://github.com/moby/moby/pull/33824)
73
74[Fix shallow git clone in docker-build](https://github.com/moby/moby/pull/33704)
75
76### Backlog
77
78[Build secrets](https://github.com/moby/moby/issues/33343) has not got much traction. If you want this feature to become a reality, please make yourself heard.