Describe el error
Configuré automáticamente en el repositorio https://github.com/react-native-community/hooks . No tenemos un archivo lerna.json
, y cuando ejecuto yarn auto changelog --verbose
, aparece un error como
✔ success Calculated SEMVER bump: patch
ℹ info Calculated next version to be: 2.0.3
ℹ info Old changelog exists, prepending changes.
ℹ info Wrote new changelog to filesystem.
ℹ info Getting commits from 2.0.2 to HEAD
ℹ info Committed new changelog.
✖ error Called from: Error
at Object.execPromise [as default] (/Users/pvinis/Source/react-native-community/hooks/node_modules/@auto-it/core/dist/utils/exec-promise.js:15:22)
at Object.getLernaPackages (/Users/pvinis/Source/react-native-community/hooks/node_modules/@auto-it/core/dist/utils/get-lerna-packages.js:7:34)
at /Users/pvinis/Source/react-native-community/hooks/node_modules/@auto-it/all-contributors/dist/index.js:82:48
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Error: Running command 'npx' with args [lerna, ls, -pl] failed
npx: installed 706 in 55.72s
lerna notice cli v3.20.2
lerna ERR! ENOLERNA `lerna.json` does not exist, have you run `lerna init`?
at ChildProcess.<anonymous> (/Users/pvinis/Source/react-native-community/hooks/node_modules/@auto-it/core/dist/utils/exec-promise.js:49:24)
at ChildProcess.emit (events.js:321:20)
at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Reproducir
Comportamiento esperado
Si el repositorio no tiene lerna configurado, no debería necesitarlo o buscarlo y generar un error, ¿verdad?
Capturas de pantalla
Escritorio (complete la siguiente información):
Contexto adicional
Aquí está la salida https://app.circleci.com/jobs/github/react-native-community/hooks/49
¿Tienes una sucursal? Perdón por esto. Pensé que había solucionado este problema en una versión anterior.
No puedo reproducir con su repositorio actualmente
En el maestro de su repositorio, hice lo siguiente sin ningún error:
yarn add auto
yarn auto changelog --from 2.0.1 -d
Producción:
#### 🚀 Enhancement
- trying out auto [#60](https://github.com/react-native-community/hooks/pull/60) ([@pvinis](https://github.com/pvinis))
#### 🐛 Bug Fix
- Update README.md [#61](https://github.com/react-native-community/hooks/pull/61) ([@pvinis](https://github.com/pvinis))
- Create LICENSE [#57](https://github.com/react-native-community/hooks/pull/57) ([@pvinis](https://github.com/pvinis))
#### ⚠️ Pushed to master
- aha ([@pvinis](https://github.com/pvinis))
- fix(sad): its a sad day when you cant make your tools do what you want. ([@pvinis](https://github.com/pvinis))
- fix(bla) ok ([@pvinis](https://github.com/pvinis))
- rename ([@pvinis](https://github.com/pvinis))
- fix(something): i hate this ([@pvinis](https://github.com/pvinis))
- again ([@pvinis](https://github.com/pvinis))
- bla ([@pvinis](https://github.com/pvinis))
- i give up.. ([@pvinis](https://github.com/pvinis))
- try ([@pvinis](https://github.com/pvinis))
- bump ([@pvinis](https://github.com/pvinis))
- upg ([@pvinis](https://github.com/pvinis))
- test ([@pvinis](https://github.com/pvinis))
- some baaaasic tests ([@pvinis](https://github.com/pvinis))
- rename repo to be canonical with the rest and fix links ([@pvinis](https://github.com/pvinis))
#### Authors: 1
- Pavlos Vinieratos ([@pvinis](https://github.com/pvinis))
😭 Lo limpié hace unos minutos 🤦♂️.
Puedo recrearlo mañana en una sucursal, pero permítanme enumerar aquí lo que descubrí.
Agregué auto y todos los contribuyentes. Luego probé el envío automático e incluso con la ejecución en seco fallaría debido al error de lerna.
Luego eliminé todos los contribuyentes y probé sin él. Tuve dos problemas. Una fue que el ci se quejó de que GitHub.com era una ip no autorizada o algo así. Cambié a https en el repositorio en package.json pero no ayudó. El otro problema era que las versiones y etiquetas de gh no se estaban produciendo. En algún momento, tengo un número de versión en package.json, se intentó crear otro como etiqueta y un tercero fue el lanzamiento de npm. Los tres números eran diferentes, lo que me confundió mucho y me di por vencido.
Recrearé las cosas mañana. Lo siento y gracias.
. Una fue que el ci se quejó de que GitHub.com era una ip no autorizada o algo así.
https://github.com/intuit/auto/blob/master/.circleci/config.yml#L99
Esto también está en los documentos, creo. Tal vez debería volver a abrir y abordar el número 550
¿Funciona sin 'from' y 'd'?
sí, simplemente no produce nada
Puedo intentar conseguir un PR juntos y configurar la configuración automática. Tengo tiempo. siempre y cuando ya tengas tokens configurados, debería poder hacerlo con bastante facilidad
hm extraño. ok, supongo que la única forma es simplemente recuperar mis pruebas. Haré un nuevo registro y lo colocaré en una sucursal mañana si está bien.
el ci tiene tokens configurados. eso sería sorprendente. ¿Quieres hablar en discordia o algo para charlar más directo? son solo las 1.26 de la mañana aquí y ha sido un día largo 😬
¡Ve a dormir! Conseguiré un PR juntos por hooks
y podemos recoger mañana (o cuando sea). Charlar aquí está bien para mí. Me gusta mantener la discusión abierta
Si pudieras agregarme como colaborador en el repositorio, también sería perfecto. Solo necesito agregar algunas etiquetas git (tal vez)
@pvinis con # 969 ¡los usuarios nunca deberían encontrarse con el problema de hosts conocidos! ahora intentará autenticarse en https
url o https + token
que soluciona ese problema en particular.
Te he invitado como colaborador.
Ok, fusioné tus relaciones públicas. Hice un PR sin etiqueta de lanzamiento, solo hizo canary, genial. Hice un PR con la etiqueta de lanzamiento, canary funcionó, fusioné, luego lerna problema https://app.circleci.com/jobs/github/react-native-community/hooks/114 y https://app.circleci.com / jobs / github / react-native-community / hooks / 130.
Además, extrañamente, cuando moví la configuración a un archivo, https://github.com/react-native-community/hooks/commit/aaca764128470a1096f84a0bf493a746a2fe5168 se agregó una etiqueta git con el prefijo 🤔
Arriba e investigando
Definitivamente estamos en diferentes lados del mundo jajaja
😅 de hecho. pero estoy despierto un rato más, puedo ayudarte si necesitas algo. en una hora más o menos tengo tiempo.
Así que creo que necesito un administrador para poder editar / eliminar etiquetas. También:
tener una corrección de errores para corregir el complemento de todos los contribuyentes para paquetes individuales https://github.com/intuit/auto/pull/971
Creo que deberíamos eliminar el uso de noVersionPrefix
.
.npmrc
que contenga tag-version-prefix=""
(haciendo un cambio en los documentos para indicar esto)Creo que el mejor camino a seguir es tener v
en las etiquetas. menos configuración y más estándar
Puedo hacer las etiquetas como quieras. sí, yo también pensé lo mismo sobre la v. No me gusta, pero supongo que es menos fricción.
Ok, eliminé la configuración del prefijo, y ahora tenemos v2.4.2
, así que supongo que después de que se haga la corrección de lerna, podría actualizar y eso debería ser todo 🤞.
Estoy creando las secciones iniciales de todos los contribuyentes para ti. pr llegará con una nueva versión
En autorc es onlyPublishWithReleaseLabel
. En auto.config.js, ¿es onlyPublishWithReleaseLabel
o only-publish-with-release-label
?
Las banderas son estuche de kebab, cuando en un auto rc son camelCase
¡Funcionó! Así que fue lo de lerna, más el prefijo de versión.
¡Maldita sea, muchísimas gracias por la ayuda y por esta herramienta! Amo el código abierto y las personas involucradas.
¡Gracias por usar auto
y ayudarme a mejorarlo para todos! Siempre trato de mejorar la herramienta cuando los nuevos desarrolladores tienen problemas.
cerrado por # 971
No creo que admitamos archivos .js
https://intuit.github.io/auto/pages/autorc.html. parece que solo es json
o yml
. Esto es por razones relacionadas con el bot de GitHub. @zephraph podría explicar más
¡Ah! Creí haber visto en alguna parte que usa cosmicconfig. Muy bien, .autorc
en json es entonces.
Sí, es solo el hecho de que un archivo js no se puede analizar estáticamente de la misma manera que lo es un archivo JSON / yml, por lo que es un desafío construir automatización contra.