Skip to content

build fails due to missing -PetaSendMetrics #40

Description

@joshsh

I have created a gradle-eta build for my Haskell-based project so users don't have to install the Haskell Tool Stack; ideally, they just type ./gradlew run and a JVM build commences. However, new users are running into the following build failure:

Would you like to help us make Eta the fastest growing programming language,
and help pure functional programming become mainstream? (y/n)

Please re-run this command with:
 * `-PetaSendMetrics=true` for yes
 * `-PetaSendMetrics=false` for no.

This only needs to be done once.
        at com.typelead.gradle.eta.tasks.EtaSetupEnvironment.ensureTelemetryPreferencesAndUpdate(EtaSetupEnvironment.java:259)
        at com.typelead.gradle.eta.tasks.EtaSetupEnvironment.setupEnvironment(EtaSetupEnvironment.java:125)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute(StandardTaskAction.java:46)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:794)
        at org.gradle.api.internal.AbstractTask$TaskActionWrapper.execute(AbstractTask.java:761)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:124)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:317)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:309)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:185)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:97)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:113)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:95)
        ... 29 more

I realize that users just need to run ./gradlew run -PetaSendMetrics=true or ./gradlew run -PetaSendMetrics=false once to get around the issue, but this is not immediately obvious. The best I can do is hard-code -PetaSendMetrics=false into a script.

Is it possible to default to not sending metrics, but include an info message that invites users to use -PetaSendMetrics=true on a subsequent run?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions