Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Allow schematics to create file with permissions

Offen
#11,781 7 Kommentare 6 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Veraltet
Tech-Stack
angular, typescript
Bereich
cli

Rechercherichtung

Beginne beim @schematics/angular:library-Einstiegspunkt und verfolge, wie Dateien erstellt werden, bevor der NodePackageInstallTask ausgeführt wird. Verwende die ausführbare Taskfile und den generierten package.json-Workaround als Reproduktionsfall. Die Aufgabe ist erledigt, wenn ein Schematic eine Datei mit ausführbaren Berechtigungen erstellen oder ändern kann, ohne auf das sich selbst zerstörende Preinstall-Skript angewiesen zu sein.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

area: @angular-devkit/schematics feature feature: insufficient votes
Bug Report or Feature Request (mark with an x)
- [ ] bug report -> please search issues before submitting
- [x] feature request
Versions

any

Desired functionality

I'm writing schematics to help colleagues scaffold applications and libraries following our internal guidelines. One part of our set-up is the use of a file called Taskfile to contain scripts instead of cramming complicated one-liners in yarn run-scripts. This file should be executable, but a schematic cannot create executable files. The result is a broken package because ./Taskfile: Permission denied.

I've got a simple workaround:

The schematic in question is based on @schematics/angular:library. It runs the NodePackageInstallTask at the end. This allows me to create a selfdestructing preinstall script in the newly scaffolded package.json:

{
  "//": "...",
  "scripts": {
    "preinstall": "chmod +x Taskfile && ex +g/preinstall/d -cwq package.json",
    "prepublish": "./Taskfile build",
    "test": "./Taskfile test"
  }
}

This works, but it feels like a hack to me. It would be cleaner if either

  • file permissions were respected, as the source file for the scaffold has correct permissions; or
  • the schematic could modify permissions
Vorherrschende Sprache
TypeScript
Sterne
27k
Forks
11.8k
Ø Merge
17 Std. 25 Min.
Gemergte PRs (30 T.)
183

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus angular/angular-cli

Alle Issues in angular/angular-cli

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.