Existe un conflicto entre el paquete y otro paquete con el mismo nombre

Firma de aplicación conflictiva

El espacio de nombres del paquete (como se registra en el archivo NAMESPACE) es una de las partes más confusas de la construcción de un paquete. Es un tema bastante avanzado, y en general, no es tan importante si sólo estás desarrollando paquetes para ti mismo. Sin embargo, entender los espacios de nombres es vital si planeas enviar tu paquete a CRAN. Esto se debe a que CRAN requiere que su paquete juegue bien con otros paquetes.

Cuando empieces a utilizar los espacios de nombres, te parecerá mucho trabajo para poco beneficio. Sin embargo, tener un espacio de nombres de alta calidad ayuda a encapsular tu paquete y lo hace autocontenido. Esto asegura que otros paquetes no interfieran con tu código, que tu código no interfiera con otros paquetes y que tu paquete funcione independientemente del entorno en el que se ejecute.

Sin saberlo, probablemente ya hayas utilizado espacios de nombres. Por ejemplo, ¿has utilizado alguna vez el operador ::? Desambigua funciones con el mismo nombre. Por ejemplo, tanto plyr como Hmisc proporcionan una función summarize(). Si cargas plyr y luego Hmisc, summarize() se referirá a la versión de Hmisc. Pero si carga los paquetes en el orden inverso, summarize() se referirá a la versión de plyr. Esto puede ser confuso. En su lugar, puede referirse explícitamente a funciones específicas: Hmisc::summarize() y plyr::summarize(). Entonces no importará el orden en que se carguen los paquetes.

El dispositivo ya tiene una aplicación con el mismo paquete pero con una firma diferente.

Mi paquete AUR fue eliminado recientemente porque los repos comunitarios contienen ahora otro paquete con el mismo nombre. Ambos paquetes son diferentes y sólo comparten el nombre común.Añadí mi paquete mucho antes de que se hiciera el paquete de la comunidad. Había ganado 2 votos (aunque uno era mío). Me dieron la razón de que mi paquete «no era lo suficientemente útil». Estoy de acuerdo en que no era un paquete tan útil, pero eso no debería dar prioridad al otro paquete que vino después sobre mi paquete, ¿verdad? Sólo quiero discutir la ética de esta acción y cómo se decide la prioridad de un paquete… P.D. No quiero ofender/subestimar a los TU(s) por esto.

Me desagrada systemd intensamente, pero no estoy satisfecho con las alternativas, así que me concentro en domar systemd.¿Usaste el instalador guiado? Si es así, no puedo ayudarte.(A funciona en el momento B) && (tiempo C > tiempo B ) ≠ (A funciona en el momento C)

Ah, se me olvidó incluir eso en el encabezado.Tenía ** algún otro ** paquete llamado «xyz». Por algún otro, me refiero a un paquete completamente diferente al paquete en los repos de la comunidad.Publiqué mi paquete «xyz» antes de que este nuevo paquete «xyz «saliera.

Cómo resolver los conflictos de paquetes con un paquete existente con el mismo nombre

Mi paquete AUR fue eliminado recientemente porque los repos comunitarios contienen ahora otro paquete con el mismo nombre. Ambos paquetes son diferentes y sólo comparten el nombre común.Añadí mi paquete mucho antes de que se hiciera el paquete de la comunidad. Había ganado 2 votos (aunque uno era mío). Me dieron la razón de que mi paquete «no era lo suficientemente útil». Estoy de acuerdo en que no era un paquete tan útil, pero eso no debería dar prioridad al otro paquete que vino después sobre mi paquete, ¿verdad? Sólo quiero discutir la ética de esta acción y cómo se decide la prioridad de un paquete… P.D. No quiero ofender/subestimar a los TU(s) por esto.

Me desagrada systemd intensamente, pero no estoy satisfecho con las alternativas, así que me concentro en domar systemd.¿Usaste el instalador guiado? Si es así, no puedo ayudarte.(A funciona en el momento B) && (tiempo C > tiempo B ) ≠ (A funciona en el momento C)

Ah, se me olvidó incluir eso en el encabezado.Tenía ** algún otro ** paquete llamado «xyz». Por algún otro, me refiero a un paquete completamente diferente al paquete en los repos de la comunidad.Publiqué mi paquete «xyz» antes de que este nuevo paquete «xyz «saliera.

El paquete está intentando definir un permiso que ya está definido por otro paquete instalado

Cuando se cargan paquetes con nombres conflictivos, se obtiene la versión del último paquete cargado. Para evitar confusiones, yo sugeriría usar siempre importaciones calificadas, por ejemplo, dplyr::select. De esta manera no necesitas preocuparte/recordar qué paquete se carga cuando.

Otra forma es utilizar un paquete conflictivo (https://github.com/r-lib/conflicted#conflicted). Allí, o bien se dice explícitamente qué funciones deben usarse cuando o se obtiene un error cuando se encuentra una función ambigua.

Es extraño que nuestros resultados sean tan diferentes. No sé qué está pasando en el entorno. Podrías intentar limpiar tu entorno, cargar sólo un par de paquetes como dplyr y tidyr, y luego volver a ejecutar el código del listado de conflictos. Mira si eso hace que tus resultados se acerquen más a lo que yo veo.

Por admin

Esta web utiliza cookies propias para su correcto funcionamiento. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad