Auto: Bei der Etikettenerstellung werden unerwünschte Standardetiketten hinzugefügt

Erstellt am 22. Apr. 2021  ·  15Kommentare  ·  Quelle: intuit/auto

Beschreibe den Fehler
Wenn ich npx auto create-labels ausführe und eine bestimmte Labelkonfiguration in meiner package.json definiert habe, würde ich erwarten, dass nur diese Labels erstellt werden, NICHT die zusätzlichen Standardlabels, die von auto definiert werden. Dies war früher der Fall, aber irgendwann funktionierte dies nicht mehr richtig.

Fortpflanzen

Mit der folgenden Konfiguration:

"auto": {
    "baseBranch": "master",
    "prereleaseBranches": [
      "next"
    ],
    "plugins": [
      [
        "npm",
        {
          "legacyAuth": true,
          "setRcToken": false
        }
      ],
      "released",
      "microsoft-teams"
    ],
    "shipit": {
      "noChangelog": true
    },
    "labels": [
      {
        "name": "breaking",
        "changelogTitle": "🚨  Breaking Changes",
        "description": "Backwards incompatible enhancement or feature.",
        "releaseType": "major",
        "color": "#c5000b"
      },
      {
        "name": "feature",
        "changelogTitle": "🚀  Features",
        "description": "A new feature.",
        "releaseType": "minor",
        "color": "#00ff00"
      },
      {
        "name": "build",
        "changelogTitle": "📦  Build Process",
        "description": "Changes to the build process.",
        "releaseType": "patch",
        "color": "#4a4a4a"
      },
      {
        "name": "chore",
        "changelogTitle": "🏗  Miscellaneous",
        "description": "Additional, uncategorized changes.",
        "releaseType": "patch",
        "color": "#ff00ff",
        "default": true
      },
      {
        "name": "ci",
        "changelogTitle": "🔖  Continuous Integration",
        "description": "Changes to CI configuration files and scripts.",
        "releaseType": "patch",
        "color": "#f1a60e"
      },
      {
        "name": "docs",
        "changelogTitle": "📖  Documentation",
        "description": "Documentation updates and changes.",
        "releaseType": "patch",
        "color": "#870048"
      },
      {
        "name": "fix",
        "changelogTitle": "🐛  Bug Fixes",
        "description": "A bug fix.",
        "releaseType": "patch",
        "color": "#6000ff"
      },
      {
        "name": "perf",
        "changelogTitle": "⚡️  Performance",
        "description": "A code change that improves performance.",
        "releaseType": "patch",
        "color": "#00e4ff"
      },
      {
        "name": "refactor",
        "changelogTitle": "♻️  Refactoring",
        "description": "A code change that neither fixes a bug nor adds a feature.",
        "releaseType": "patch",
        "color": "#00b58d"
      },
      {
        "name": "revert",
        "changelogTitle": "🚧  Reverting",
        "description": "Reverts a previous commit.",
        "releaseType": "patch",
        "color": "#ff9000"
      },
      {
        "name": "style",
        "changelogTitle": "🎨  Style",
        "description": "Code style (white-space, formatting, missing semi-colons, etc).",
        "releaseType": "patch",
        "color": "#0051d8"
      },
      {
        "name": "test",
        "changelogTitle": "✅  Testing",
        "description": "Adding missing tests or correcting existing tests.",
        "releaseType": "patch",
        "color": "#127f00"
      },
      {
        "name": "upgrade",
        "changelogTitle": "⚙️  Dependencies",
        "description": "Dependency upgrades.",
        "releaseType": "minor",
        "color": "#00787f"
      }
    ]
  }

Dies ist die Ausgabe:

Created labels: breaking, feature, build, chore, ci, docs, fix, perf, refactor, revert, style, test, upgrade, major, minor, patch, skip-release, internal, documentation, tests, dependencies, performance, released, prerelease

Erwartetes Verhalten

Es werden nur die in der obigen Konfiguration umrissenen Labels erstellt. Alles nach dem Label upgrade in der obigen Ausgabeliste ist unerwünscht und sollte nicht erstellt werden.

Screenshots

Umweltinformationen:

Environment Information:

"auto" version: v10.25.1
"git"  version: v2.29.2
"node" version: v12.13.0

✔ Labels configured on GitHub project

Zusätzlicher Kontext

bug released

Hilfreichster Kommentar

@retroducing Ich mag diese Option sehr! Standardmäßig können nur angegebene Labels erstellt werden. Neues Flag, um die anderen einzuschließen und die Überschreiblogik zu verwenden. Dies wäre jedoch eine bahnbrechende Verhaltensänderung. Was ist mit dem Gegenteil --no-include-defaults ?

Alle 15 Kommentare

Ich wollte gerade das gleiche Problem melden. In der Dokumentation ist unklar, ob Standardlabels überschrieben werden. Gibt es eine Möglichkeit zu sagen, dass ich nur die in der Konfiguration definierten Labels und keine Standard-Labels haben möchte?

Es gibt eine Option overwrite in der Etikettenkonfiguration, die das entsprechende Standardetikett überschreibt. IDK, ob es für die Zon-Semver-Labels funktioniert. könntest du das mal ausprobieren? Wenn die Dokumente nicht klar genug sind, akzeptieren Sie eine PR

@hipstersmoothie Wenn ich https://intuit.github.io/auto/docs/generated/create-labels anschaue, sehe ich nichts

@hipstersmoothie Wenn ich mir diese Dokumente major , minor und patch mit meinen überschreiben würde, aber würde but die anderen, die zusätzlich zu diesen erstellt werden, nicht löschen. Ich denke , eine schöne Ergänzung wäre eine Option , um die hinzuzufügen create labels Befehl, sagt include-defaults (standardmäßig der Fall , wenn Sie die Rückwärtskompatibilität halten wollen) und auf wahr / falsch. Gedanken?

Ich stimme @retroducing zu. Ich kannte die Option overwrite , aber es geht nur darum, Standardbeschriftungen anzupassen, wenn ich sie richtig verstehe. Wir möchten eine Option, um _nur_ die von uns konfigurierten Labels zu erstellen.

@retroducing Ich mag diese Option sehr! Standardmäßig können nur angegebene Labels erstellt werden. Neues Flag, um die anderen einzuschließen und die Überschreiblogik zu verwenden. Dies wäre jedoch eine bahnbrechende Verhaltensänderung. Was ist mit dem Gegenteil --no-include-defaults ?

@hipstersmoothie ja, sorry, meine Erklärung war nicht klar, ich habe das Gleiche vorgeschlagen, aber umgekehrt, und es wäre standardmäßig wahr, lol, um eine bahnbrechende Änderung zu vermeiden. Ihre ist tatsächlich sauberer und passt besser zu allen anderen Optionen. Ich bin total dafür!

Dazu muss ich wohl erst am Wochenende kommen. Wenn Sie eine PR einreichen, werde ich die Eingabeaufforderungen überprüfen und zusammenführen

Ich habe versucht, es zu beheben: https://github.com/intuit/auto/pull/1966 , aber auf eine etwas andere Weise. Siehe dort die Erklärung.


:rocket: Ausgabe wurde in v10.26.0 :rocket:

@laughedelic @hipstersmoothie @adierkens Ich habe gerade das Upgrade darauf ausprobiert und sehe das folgende Problem in CI, bei dem wir automatisch Kanarienvögel in einer neuen PR erstellen:

Screen Shot 2021-04-29 at 2 32 48 PM

Es ist erwähnenswert, dass sich die eigentliche Konfiguration in einer Datei package/auto/config.json befindet und im Stammverzeichnis unseres

"auto": {
    "extends": "./packages/auto/config.json"
  },

Dies hat jedoch vor dem Update auf die neueste Version einwandfrei funktioniert.

Hier ist die vollständige Datei config.json:

{
  "baseBranch": "master",
  "noDefaultLabels": true,
  "prereleaseBranches": ["next"],
  "plugins": [
    [
      "npm",
      {
        "legacyAuth": true,
        "setRcToken": false
      }
    ],
    "released",
    "microsoft-teams"
  ],
  "shipit": {
    "noChangelog": true
  },
  "labels": [
    {
      "name": "breaking",
      "changelogTitle": "🚨  Breaking Changes",
      "description": "Backwards incompatible enhancement or feature.",
      "releaseType": "major",
      "color": "#c5000b"
    },
    {
      "name": "feature",
      "changelogTitle": "🚀  Features",
      "description": "A new feature.",
      "releaseType": "minor",
      "color": "#00ff00"
    },
    {
      "name": "build",
      "changelogTitle": "📦  Build Process",
      "description": "Changes to the build process.",
      "releaseType": "patch",
      "color": "#4a4a4a"
    },
    {
      "name": "chore",
      "changelogTitle": "🏗  Miscellaneous",
      "description": "Additional, uncategorized changes.",
      "releaseType": "patch",
      "color": "#ff00ff",
      "default": true
    },
    {
      "name": "ci",
      "changelogTitle": "🔖  Continuous Integration",
      "description": "Changes to CI configuration files and scripts.",
      "releaseType": "patch",
      "color": "#f1a60e"
    },
    {
      "name": "docs",
      "changelogTitle": "📖  Documentation",
      "description": "Documentation updates and changes.",
      "releaseType": "patch",
      "color": "#870048"
    },
    {
      "name": "fix",
      "changelogTitle": "🐛  Bug Fixes",
      "description": "A bug fix.",
      "releaseType": "patch",
      "color": "#6000ff"
    },
    {
      "name": "perf",
      "changelogTitle": "⚡️  Performance",
      "description": "A code change that improves performance.",
      "releaseType": "patch",
      "color": "#00e4ff"
    },
    {
      "name": "refactor",
      "changelogTitle": "♻️  Refactoring",
      "description": "A code change that neither fixes a bug nor adds a feature.",
      "releaseType": "patch",
      "color": "#00b58d"
    },
    {
      "name": "revert",
      "changelogTitle": "🚧  Reverting",
      "description": "Reverts a previous commit.",
      "releaseType": "patch",
      "color": "#ff9000"
    },
    {
      "name": "style",
      "changelogTitle": "🎨  Style",
      "description": "Code style (white-space, formatting, missing semi-colons, etc).",
      "releaseType": "patch",
      "color": "#0051d8"
    },
    {
      "name": "test",
      "changelogTitle": "✅  Testing",
      "description": "Adding missing tests or correcting existing tests.",
      "releaseType": "patch",
      "color": "#127f00"
    },
    {
      "name": "upgrade",
      "changelogTitle": "⚙️  Dependencies",
      "description": "Dependency upgrades.",
      "releaseType": "minor",
      "color": "#00787f"
    }
  ]
}

Ist es möglich, dass die neue Option zum Validator hinzugefügt werden muss und so einfach ist das? https://github.com/intuit/auto/blob/main/packages/core/src/types.ts#L54

Ist es möglich, dass die neue Option zum Validator hinzugefügt werden muss und so einfach ist das? https://github.com/intuit/auto/blob/main/packages/core/src/types.ts#L54

Das macht Sinn! Ich wusste es nicht.

@retroducing Ich habe es hier hinzugefügt: https://github.com/intuit/auto/pull/1971. Aber ich weiß nicht, ob es woanders hinzugefügt werden sollte.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen