Skip to content

Disable scope delegation in act #3679

@dwijnand

Description

@dwijnand

Expectation

In sbt shell, if the user provides configuration scoping or task scoping, and the direct setting or task does not exist, it should fail rather than delegate to another scoping.

Must fail

> Compile / update

Must continue to work

Un-scoped keys, should continue to delegate. For example, the following should work:

> test

Original message

I ran into the sbt.cli.nodelegation system property that was add in 5f7a327.

As the commit message says:

With this set to true, the following is no longer allowed for example:

> compile:update

Another good example is test:clean, as discussed in #3678 (comment), that currently (sbt 1.0.3) delegates to clean.

I experimented with another important case: test. test in Global isn't defined, only test in Test is defined, and that works because test delegates to test:test. When running with -Dsbt.cli.nodelegation=true it's still true, so that case isn't broken.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions