Skip to content

Specifying --profile and --release when running cargo rustc doesn't work anymore #7488

Closed

Description

@koute

Problem
This used to work:

cargo rustc --lib --profile test --release

Now it doesn't:

$ cargo rustc --lib --profile test --release
error: Conflicting usage of --profile and --release

How am I supposed to compile unit tests in release mode through cargo rustc now? I can use --tests, but that will also compile integration tests (which I don't want), and --test $crate_name doesn't work.

Steps

  1. cargo new --lib foobar
  2. cd foobar
  3. cargo rustc --lib --profile test --release

Notes

Version which worked: cargo 1.39.0-nightly (3596cb86b 2019-09-19) (and all of the previous versions)
Version which doesn't work: cargo 1.40.0-nightly (8b0561d68 2019-09-30)

This is a regression from stable to nightly.

Activity

  1. koute commented on Oct 7, 2019

    @koute
    Author
  2. added a commit that references this issue on Oct 7, 2019
    1e57d7a
  3. da-x commented on Oct 7, 2019

    @da-x
    Member

    @koute - sorry for the regression. Queued up a fix.

  4. koute commented on Oct 7, 2019

    @koute
    Author

    Thanks!

    It's nice to see that cargo's handling of profiles is getting cleaned up. However, this definitely needs a deprecation warning so that whoever depends on the current behavior could migrate, and it'd also be great if we made sure that there is no loss of functionality (e.g. the case where I want to compile only the unit tests in release mode, which as far as I can see after your changes becomes impossible?).

  5. da-x commented on Oct 7, 2019

    @da-x
    Member

    @koute. Yes, this was discussed when implementing the PR for the RFC. We may need to gather up these use cases and have special flags for them, or do something else.

  6. added a commit that references this issue on Oct 8, 2019
  7. added a commit that references this issue on Oct 8, 2019
    9005002
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: bug

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions