Benchkram Bob Versions Save

Bob is a high-level build tool for multi-language projects.

0.8.2-nix-shell-3

3 months ago

0.8.2-nix-shell-2

3 months ago

This release add an shell directive to the bob.yaml. In case a of an existing shell directive it takes precedence over any given dependencies.

This enables to use pkgs.mkShell inside a nix file... like:

{ pkgs ? import <nixpkgs> {} }:

pkgs.mkShell {
  buildInputs = [
   pkgs.go_1_20
];
}

Example bob.yaml

build:
  build:
    cmd: go build .

shell: shell.nix

0.8.2-nix-shell

3 months ago

This release add an shell directive to the bob.yaml. In case a of an existing shell directive it takes precedence over any given dependencies.

This enables to use pkgs.mkShell inside a nix file... like:

{ pkgs ? import <nixpkgs> {} }:

pkgs.mkShell {
  buildInputs = [
   pkgs.go_1_20
];
}

Example bob.yaml

build:
  build:
    cmd: go build .

shell: shell.nix

0.8.2

1 year ago

Fixes a bug which left a target in an invalid state after restoring from cache.

What's Changed

Full Changelog: https://github.com/benchkram/bob/compare/0.8.1...0.8.2

0.8.1

1 year ago

This bugfix release allows to execute bob without the docker daemon being required (if no docker image is set as target). It also fixes a bug which created an unexpected cache miss.

What's Changed

Full Changelog: https://github.com/benchkram/bob/compare/0.8.0...0.8.1

0.8.0

1 year ago

This release introduces "file diffing" for targets. It keeps a directory like node_modules intact on a "cache hit". Therefore running hot-reloading instances for react, vuejs or svelte will not break.

What's Changed

Full Changelog: https://github.com/benchkram/bob/compare/0.7.2...0.8.0

0.8.0-rc2

1 year ago

Changelog

  • c170e2f Merge branch 'main' into hotrealoading
  • 9ffcf03 Merge branch 'main' into hotrealoading
  • 01901b4 Merge branch 'main' into hotrealoading
  • 57320fe add cmd to list files
  • 3fbc230 add file hash to artifact metadata
  • d9d9ffc add inspect buildinfo cmd; add content file hash to buildinfo file
  • de0f9c6 assure input hash comparison is similar to input hash during build
  • 464b8c0 check file by file when extracting the artifact or invalidating targets
  • 13908b5 cleanup
  • 3791569 debug
  • c229b0d debug buildinfoFiles
  • 6749119 dont check filehash on verifyShallow
  • a92a4b5 extra debug
  • 38ca8c8 fix bob clean targets cmd
  • 000502f fix last failing test
  • 8b342e4 fix lint
  • efda6ff fix path for invalid file cleanup
  • 686e946 fix symlink when it has changed file pointer after build
  • 0fc028f fix typo
  • b388102 if child task has changed check the target of the task
  • 00c64f2 ignore node_modules/.cache
  • a9abaf8 improve verify shallow performance
  • be8ddb2 no need for pointers
  • 667167c prevent missuse of cleanup
  • 20c5319 readd usage of takID and secure deleetion
  • c5d03ad remove bob clean
  • 7a421fe remove debug; fix build issue on missing buildinfo
  • 62feee5 remove file hash content on artifact meta
  • a419571 remove target
  • 6c42abd remove typo
  • 83e8de9 test bob clean
  • 6050334 verify of hash of file contents upon target verification

0.8.0-rc1

1 year ago

Changelog

  • dd6a2bd Add Bazel comparison
  • 6919029 Bump github.com/stretchr/testify from 1.8.0 to 1.8.2 (#312)
  • 80f1b1e bob clean: add all cmd
  • 8ec09da bob inspect: add buildinfo diff (#317)

0.7.2

1 year ago

This brings performance improvements based on internal optimization.

  • Internally the build-graph was walked extensively due to parallel execution this was reduced significantly.
  • The env created by nix is reused which reduces the load on garbage collection on big repos.

What's Changed

Full Changelog: https://github.com/benchkram/bob/compare/0.7.1...0.7.2

0.7.2-rc

1 year ago

Changelog

  • 9c872c5 Merge branch 'main' into performance-play
  • 5676e8d Perfomance verify duplicate targets (#286)
  • 00d98c4 TODO create cache obj for env
  • 7957a21 adapt tests
  • aad0d12 add benchmark
  • b60e6a3 add debug flag to print more build related metrics
  • 11f1b22 add more benchmarks
  • 0f7992c adjust input tests to be relative
  • 702b310 adjust to golang 19
  • 93921eb append unique
  • bfb891e avoid appen unique
  • ce64f16 avoid docker regsitry client generation for each task
  • 86356b6 avoid toLower
  • c8c41e6 bugfix: prevent send on close channel (#282)
  • 871ef14 cleanup
  • bfd31de cleanup
  • 70c1678 cleanup and fix execution time
  • e94249b debug zfs docker
  • 7e19a52 debug zfs docker imageSaveToPath
  • 21dd861 debug zfs docker remove all except imageSaveToPath
  • f1f037d detetct the docker registry storage driver
  • 697a4ac distinc clients
  • 8c1d161 exchange unique with appendUnique
  • 67b445f filter files in parallel
  • 1de11ba fine grained metrics
  • 3110ecd fix envutil tests
  • 69f2fd9 fix input + target tests
  • 3ec70a9 fix lint
  • f7f5a63 fix lint
  • 00c0d5f fix mempry leak & input tests
  • 2b83060 ignore invalid symlinks already in ListRecursive
  • df649ba no docker logs but filesystem
  • 3f32176 nonblocking worker queue
  • 407b583 optimize glopping
  • e147119 optimized tasks
  • dee75b3 parallel filter inputs [tests failing]
  • 0eb3a29 performance: nix dependencies (#287)
  • e0f8eed pin latest protoc version
  • 6180d0e readd summary
  • 393b094 refactor nix-builder (#298)
  • 52d41e2 remove debug summary
  • 5542979 remove filterInput from worker
  • ba5341c remove playbook lock
  • 1c40c13 revert docker moby mutexes
  • acd12ff speedup compute input hash (#289)
  • 3ca908e undo
  • c002ce5 update flake
  • c8d79ff use a in memory env cache
  • 49f9683 use docker lock less exaustive
  • 2e62046 use optimized tasks
  • b2f1725 use unique instead of appendUnique
  • 49b795b use warning for symbolic link