Après 0.11 (mais avant 0.12 ), je prévois de réorganiser le référentiel en un monorepo en utilisant des espaces de travail Yarn et de réimplémenter le module pegjs en modules indépendants qui vivent principalement dans @pegjs (avec les grammaires officielles dans @peg ).
Vous trouverez ci-dessous une liste de modules que je prévois actuellement d'implémenter, mais cela pourrait changer avant la sortie de la version 0.12.
0.12.x
)Cela signifie-t-il que les utilisateurs en aval doivent passer au fil ?
S'il vous plaît, ne déplacez pas l'un des principaux outils d'Internet dans une stratégie de construction expérimentale de niche sur une infrastructure de construction différente gérée par une entreprise à laquelle beaucoup d'entre nous ne font pas confiance
Le fil se meurt et les espaces de travail sont mal conçus
La plupart des utilisateurs de nœuds ne passeront pas au fil pour vous
https://stackoverflow.com/questions/46947557/do-yarn-workspaces-work-with-npm-too
Je serais heureux de vous aider à construire une structure de construction moderne normale qui n'oblige pas tout le monde à basculer les outils vers les trucs de Facebook, si vous voulez cette aide
Vous pouvez utiliser rollup et babel (ou n'importe quel nombre d'autres configurations) pour créer un ES5 simple à partir de cela sans frais généraux. Ne nécessite pas une nouvelle infrastructure complète.
Dans le processus, je pourrais ajouter d'autres éléments très importants, comme la prise en charge de typescript et flowtype, la prise en charge du module es6 et d'autres éléments.
@StoneCypher Tenez le compagnon de votre cheval 😆 Le fil n'est qu'une alternative à NPM, de sorte que les utilisateurs en aval peuvent avoir NPM, Yarn ou les nombreux autres qui apparaissent, sans se soucier des espaces de travail car il s'agit d'une fonctionnalité qui ne sera utilisée que par le root package.json ( "private": true
) dans ce référentiel, tous les sous-modules mentionnés ci-dessus seront des modules indépendants publiés sur NPM qui séparent différentes parties du code et facilitent simplement la vie pour moi ou pour toute personne développant et/ou piratage sur le compilateur PEG.js.
De plus, Rollup et Babel s'attaquent à des problèmes différents l'un de l'autre et de Yarn :
tant que cela ne me force pas à faire du fil
Alors, tu m'as forcé à faire de la laine. Plusieurs des PR d'autres personnes que vous avez refusé de fusionner ont essayé de le retirer, car yarn
est en train de mourir et un outil de mauvaise qualité qui ne fonctionne pas bien sous Windows.
yarn
n'offre aucune valeur.
yarn
offre un obstacle important - de nombreuses personnes n'installeront pas un nouveau gestionnaire de packages pour vous aider (j'ai refusé plusieurs fois avant de tomber en panne) et de nombreuses autres personnes n'y sont pas autorisées en raison de la politique de travail.
Le comportement de npm
a changé. yarn
n'a pas suivi. Le comportement yarn
diffère désormais considérablement des attentes de la communauté.
Le monorepo ne fournit pas non plus de valeur, crée une étape de construction supplémentaire complexe, défie les normes et confond les contributeurs potentiels.
Tout cela représentait beaucoup plus de travail que le travail sur les fonctionnalités que vous ne faites pas.
Je pense que vous avez peut-être été confus quant à la nature de mon objection.
C'est un travail inutile qui rend plus difficile l'adhésion des gens (ce n'est pas grave, puisque depuis le mois dernier, vous avez rendu littéralement impossible pour quiconque de contribuer à ce que vous appelez maintenant "votre projet de passe-temps", et attendez-vous à le remplacer en gros.)
Cela ralentit la construction et perd le nouvel outil que npm
possède et que yarn
n'a pas.
Le fil était en train de mourir en 2018. Nous sommes en 2020. Le fil est pratiquement mort maintenant.
Je ne l'ai installé sur aucun de mes ordinateurs depuis des années. J'ai dû le réinstaller pour vous.
Veuillez laisser ce projet être à nouveau un projet normal avec des modèles de développement sains normaux, au lieu de votre base de code privée utilisant des outils marginaux qui dure trois ans sans publication malgré des correctifs de base de code extrêmement importants dans le référentiel.
Oui, je vous vois essayer d'expliquer ce que fait yarn
, mais tout le monde sait ce que fait yarn
.
Vous avez créé exactement la nouvelle infrastructure que je vous ai demandé de ne pas créer il y a deux ans, et vous la jetez actuellement exactement pour les raisons pour lesquelles j'ai dit que cela ne fonctionnerait pas.
Commentaire le plus utile
@StoneCypher Tenez le compagnon de votre cheval 😆 Le fil n'est qu'une alternative à NPM, de sorte que les utilisateurs en aval peuvent avoir NPM, Yarn ou les nombreux autres qui apparaissent, sans se soucier des espaces de travail car il s'agit d'une fonctionnalité qui ne sera utilisée que par le root package.json (
"private": true
) dans ce référentiel, tous les sous-modules mentionnés ci-dessus seront des modules indépendants publiés sur NPM qui séparent différentes parties du code et facilitent simplement la vie pour moi ou pour toute personne développant et/ou piratage sur le compilateur PEG.js.De plus, Rollup et Babel s'attaquent à des problèmes différents l'un de l'autre et de Yarn :