Skip to content

Releases: thought-machine/please

Please v10.1.0

25 Nov 13:57
Compare
Choose a tag to compare

This is Please v10.1.0

  • Dynamic support for Python wheel naming schemes, either via name_scheme on the
    rule or by setting it in the config.
  • diff_graphs added to plz tool.

Please v10.0.0

25 Nov 13:57
Compare
Choose a tag to compare

This is Please v10.0.0

  • please_pex rewritten to be more efficient. This is a breaking change for anyone
    who assumed they could import pkg_resources or pex as a global which will no longer
    be available (although these are easy to add using pip_library or python_wheel rules
    if still needed).
  • cgo_library takes a subdir argument that is needed if sources are in a subdirectory
    from the BUILD file (this isn't breaking since it never worked without).
  • Support for assembly (using go tool asm) in go_library and go_binary rules.
  • Removed a number of deprecated config properties.
  • Removed a number of deprecated arguments to builtin build rules (most have been
    deprecated and often nonfunctional for a long time now).

Please v9.5.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v9.5.0

  • New config property, parse.preloadbuilddefs which specifies files to be loaded
    into the global rule context.
  • Moved a bunch of config properties (buildfilename, blacklistdirs, lang, parserengine,
    nonce, experimentaldir and linttool) out of the [please] section since that had
    turned into a bit of a grab-bag of unstructured properties.
    Old ones are still honoured for now but will be removed in v10.0.
  • please_sandbox now mounts a tmpfs on /tmp
  • plz query print prints a comment & build label on stdout rather then the bare label
    on stderr.

Please v9.4.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v9.4.0

  • Added a c_object rule which lets you compile a C or C++ object file from a single
    input. It's lower-level than c_library so rarely needed, but allows a bit more control.
  • Added protoc_binary which can download a protoc release to use as the protoc_tool.
    Unfortunately there is no equivalent available for gRPC C++ / Python plugins.
  • Pre- and post- build functions are now better optimised about recalculating
    changes after they run. Can significantly speed up building packages with
    many c_library rules in them.
  • Jarcat can now align files to specific size boundaries in a similar way to
    Android's zipalign command.
  • Setting PDEATHSIG on child commands which may help ensure that subprocesses
    (especially workers) terminate correctly.
  • Runtime data of tests is exposed in a $DATA env var.
  • Cleaning of the directory cache is now done in-process rather than in a
    forked subprocess. This allows it to be better synchronised with the main build
    about what it's deleting.

Please v9.3.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v9.3.0

  • Downloaded versions are now verified against a detached GPG signature.
  • Support for following the progress of a remote build using plz follow.
    Requires it to open a port, which is configured in the [events] section
    of .plzconfig.
  • Support for arbitrary env vars in .plzconfig which are available to all build rules.
    Note that these cause rebuilds of all targets on change, because we can't know what
    effects they'll have.
  • Go 1.9 is now required to compile Please.

Please v9.2.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v9.2.0

  • Added check_config builtin which helps with asserting that things are
    set in .plzconfig, and ConfigError which is a little more specific than
    ParseError.
  • Support for passing multiple values for Maven repos (in config and to
    rules directly). They're searched in sequence and the rule succeeds as
    long as any one contains the requested artifact.
  • The name / location of the command invoked for go is now configurable.

Please v9.1.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v9.1.0

  • The 'manual' label can now be applied per-architecture, e.g. manual:linux_amd64.

Please v9.0.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v9.0.0

  • Better support for multiple Python versions; should now support python 2.7, 3.4, 3.5
    and 3.6 for bootstrap, and binary artifacts for all of those are written for coverage
    in generated test pexes.
  • Removed a number of esoteric builtin rules: github_file, git_repo, fpm_package and
    fpm_deb. Removed long-deprecated go_yacc rule and link argument to filegroup.
    Removed rules are available at github.com/thought-machine/pleasings as build_defs
    files; they will still work equivalently but it's unnecessary to have those built
    into the core.

Please v8.7.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v8.7.0

  • The protoc_flags argument to proto_library now applies transitively to any
    further protoc_library rules that depend on it, in a similar fashion to C++ rules.
    Since protos always need all transitive dependencies to compile they typically
    require transitive compiler flags as well.
  • Added a decompose function to the build builtins which breaks a build label into
    its package and name parts.

Please v8.6.0

25 Nov 13:55
Compare
Choose a tag to compare

This is Please v8.6.0

  • Optional support for per-test metrics.