« first day (1910 days earlier)      last day (1198 days later) » 

11:27 AM
@abulafia ¿¿ En python2.7 no hay diferencia entre str y bytes ??
Que tengo un puñetero problema de codificación aquí
 
@Trauma noooo
XD
 
Asco de python :'-(
que insiste en intentar decodificar cosas que no hay que descodificar
 
tu maneja bytes nada mas hombre
 
Eso estamos intentando
el base64.standard_b64_decode( ) hace un mojon
 
@Trauma hmm..pero eso no tiene que ver con strings, es una decodificacion de base 64 no?
 
11:37 AM
pero por algún motivo me recodifica algunos caracteres
y me devuelve un churro
 
@Trauma le estas pasando una cadena..o bytes? XD
estoy seguro de que espera una cadena, un string
si le pasas otra cosa..se liará logicamente
 
sus muertos :-((
si es que no se porque carajo intenta interpretarlos
son bytes, carajo. Quiero que trabaje agnostico con los datos
 
no creo que intente interpretar nada. Pero si espera un string y le pasas otra cosa..logicamente perta
 
peta porque hace lo que le sale de los cajones
 
@Trauma bytes? caracteres? Python 2.7?
 
11:40 AM
2.7
 
qué te pasa ahora :-)
 
a mi nada ... yo soy muy feliz SIN PYTHON
 
python 2.7 no hace esa distinción, no. Por eso deberías ser más feliz que con python3
 
desde C++, subo un chorizo de bytes a Redis
 
ya te dije que tratar char como bytes no es el camino a la felicidad
 
11:41 AM
no los interpreto: un puntero y un tamaño, y a volar
 
veo que hay un metodo base64.decodebytes en python
 
@Pikoh ese es para 3.1
 
ya, pero qué problema tienes con 2.7?
 
ah ok..y por que usas una versión de python obsoleta?
XDDDD
 
pero el python, al pasar de base64 a bytes, pues hace lo que le sale de los cajones
y si encuentra bytes raros (según el), me los cambia
 
11:43 AM
no lo creo
prove me wrong
 
pues aquí'estamos 3 pegándonos cabezazos
 
cogiendo palomitas
 
es que estoy en llamada y no me puedo explayar mucho
yo cojo un dato que me da python como un puntero y un tamaño
 
basta que pegues un ejemplo de bytes decodificados "mal" según tu
 
lo paso a base64
lo comprimo con zlib
y lo subo a Redis
no carajo, del reves
 
11:45 AM
Eso te iba a decir
 
y desde python
se baja de Redis
se descomprime
y se descodifica
y el resultado no coincide con el dato original
 
yo estoy con @abulafia. Necesito pruebas
 
es que estoy compartiendo pantalla y no puedo abrir el otro navegador en el equipo de trabajo
 
a ver si lo entendí... data -> python2.7 -> dato1 (bytes) -> C++ -> zlib.compress -> b64encode -> redis -> python2.7 -> b64decode -> zlib.decompress -> dato2
y dices que dato2 != data? o que dato2 != dato1?
 
@abulafia data != data2
 
11:56 AM
qué contiene data? (o sea, cómo fue generado?)
ya sé que para tí solo son bytes, pero qué significan? Son códigos ascii?
 
datos binarios, 100% no cadenas de texto
 
de dónde salen? Es posible que la transformación errónea haya ocurrido ya al leerlos/generarlos?
 
son un protocol buffer volcado en memoria
nope
osea, no por la parte de C++
 
puedes verificar que dato1==data?
 
pues creo que no
osea, si podría
pero no puedo depurar el python así
a ver ...
 
11:58 AM
es para descartar el resto de la cadena de transformaciones
porque creo que en el resto no puede haber error
 
Tratando de ver donde se corrompen los datos eh, interesante.
 
python2 -> dato -> c++ -> zlib -> base64 -> Redis -> python2 -> dato2 -> dbase64 -> dcompress -> C++
 
ah, que aún había otro C++ al final, de modo que supongo que podemos hablar de un dato3
 
de python -> C++, mediante puntero + tamaño
es un chorizo curioso, la verdad
 
Vamos a ser más explicitos.
dato1 en python -> python2 -> dato2 -> c++ -> zlib -> base64 -> Redis -> python2 -> dato3 -> dbase64 -> dcompress -> C++ -> dato4
qué parejas dato* puedes comparar?
supongo que has visto que dato2!=dato4 ?
(es decir, ambos en el lado C++)
 
12:02 PM
sip
a ver ...
Redis == dato2 comprobado
 
Ok, importante
la sospecha entonces es que redis!=dato3
 
Redis != dato4
 
no, perdón, dato3 sería la cadena base64
 
Redis == dato3
hemos puesto algunos print( )
y puedo usar base64 -d | zcat
 
dato1 en python -> python2 -> dato2 -> c++ -> zlib -> base64 -> Redis -> python2 -> dato3 -> dbase64 -> dcompress -> dato_sospechoso -> C++ -> dato4
puedes imprimir dato_sospechoso?
 
12:04 PM
sip
incorrecto
 
(lado python)
 
un momento, que me cambio de navegador
 
ok, puedes mostrar un diff o algo así, en qué byte se diferencian?
a ver si es algo del puñetero encoding
 
uffff ... a ver que puedo hacer
Orquestator:\x0e\n\x02\x08^\x12\x08SPLITTER:\x0f\n\x02\x08\x01\x12\tAGGREGATE:\x12\n\x03\x08\xac\x0b\x12\x0b
vale, no puedo sacar mas cosas
pero todos esos \x están sobrando
 
Pues no puede ser un poroblema de encoding, poqe todos esos bytes (0e, 02, 08) son ascii, como prueba el que comiencen por 0
un momento... sobra el \x0e o sobra sólo \x?
 
12:08 PM
sobra el byte entero, \x0e
 
eso es un retorno de carro
 
se suponen que son espacios o tabuladores
 
no?
 
y de dónde ha salido eso?
 
espera espera espera
que al final vais a llevar razón
y el problema es inventado
¡¡¡ MECAGONTO !!!
 
12:10 PM
no decías que era directamente un volcado binario de un protocol buffer? Normal entonces que lleve por medio todo tipo de bytes raros,no?
 
@abulafia no no
esos bytes raros son un stacktrace directo desde python
no existe tal problema
el problema está en como lo muestra el print( ) de python2
para verlo en C++, lo hago desde el depurador
para verlo en python, tiro de print
el print de python muestra así los caracteres de control que el stacktrace pone para que se vea bonito
 
eso si puede ser
 
me juego el pescuezo
 
me temía que por ahi iban los tiros... si quieres imprimir una secuencia de bytes o te montas tu función de "volcado hex" o un simple print() hará lo que pueda, y te mostrará como caracteres lo que sea ascii, como \n, \t lo que sean códigos de control "conocidos" y como \xHH todo lo demás
 
toca llamada
asco de python, de verdad :-((
 
12:13 PM
pero \x02 por ejemplo es un código de control bien raro
 
no se lo que es
 
no es un retorno de carro o tabulador o nada que se use normalmente en una terminal
 
eso no es culpa de python. Es otra funcion que espera ascci, no caracteres codificados como /x
 
es un "start of text" (un comando para modems)
 
ahora esta comiendo y no me coge el teléfono
 
12:13 PM
es un stx
 
a ver como puedo comprobarlo / descartarlo de una puñetera vez
 
en cualquier caso, todo eso que sale estaba ya (comprimido y b64codifidado) en redis
 
@abulafia no solo se usa en modems. Yo lo he visto en varios tipos de protocolos para marcar el inicio de una cadena/mensaje
 
asi que sigo sin entender que hayas resuelto el problema
 
@abulafia porque NO HAY PROBLEMA
 
12:14 PM
@Pikoh Pues por eso más me parece que es parte del protocol buffer
 
no no
 
y no de un volcado de stacktrace que dice @trauma
aunque tampoco sé a qué se refiere
 
@abulafia claro, seguro que viene de ahi
 
cuando hay una excepción no controlada en python
te muestra un stracktrace con indentaciones
y el sibarita agarra la salida de ese volcado tal cual
y la mete en una cadena
 
ya, pero esas indentaciones puede tener sentido que sean los \t, \n etc... pero nunca los \x0e, \x02, etc
creo que no estás en la buena pista
 
12:16 PM
¿ seguro ?
 
esos no son caracteres de control para formatear nada
más parecen bytes parte del protocolo
 
no pueden ser bytes en el sitio en el que están
osea, no forman parte del protocolbuffer
un mensaje se compone de varios payloads
y un payload tiene un dato (bytes) y un filtro (bytes)
 
esa cadena que has mostrado antes, empieza directamente así o es un trozo por el medio?
 
yo vuelco la salida de python en un payload completo
es un trozo del medio
no puedo mostrarlo todo, sorry
son calculos para especular con divisas
no es que me apasione mi puesto ... pero tampoco es plan de perderlo :-)
 
Puedes mostrar también el byte raro que sale justo delante de "Orquestator:"?
espera, espera, no lo muestres aun
voy a hacer una predicción
 
12:20 PM
-bjtw6 \n*\x0bOrquestator:\x0e\n\x02\x08^
los primeros 7 creo que son correctos
 
\x0b
hey! Bingo!
 
Si fuera Vd tan amable de ilustrarme O_O
 
Vale, creo que todo eso es parte del protocolo. Según mi hipótesis, delante de cada cadena aparece un byte que indica la longitud de esa cadena -1
coincide con lo que has suministrado
 
puede ser, me parece lógico
 
0x0b es 11, la cadena "Orquestator:" tiene 12 caracteres
0x08 aparece delante de la cadena "SPLITTER:" que tiene 9 caracteres
 
12:22 PM
@abulafia eso es muy tipico si. Tambien es muy tipico añadir al principio o al final un crc, normalmente un xor de la cadena
 
pero eso implicaria mensajes mezclados en el payload
osea, varios payload en 1
 
eso implica que el payload contiene texto
 
correcto
el mensaje de error de python
 
eso no tiene pinta de mensaje de error de python
en todo caso el mensaje de error sería una cadena mucho más larga, nunca "trocitos" de 9 letras, 10 letras etc
 
pues lo es ... bueno, de la aplicación python
 
12:24 PM
ah, bueno. Que son mensajes custom
crei que hablabas de un stacktrace estándar
 
ejem ... sibaritas ...
 
entonces a partir de aqui ya ni idea de qué estais haciendo :-)
 
creo que no lo saben ni ellos :-)
voy a lanzar otro y empezar el problema desde 0
 
pero vamos, que toda esa cadena binaria tiene buena pinta, no parece tener problemas de encodings, y los bytes raros que salen, ya estaban ahi y son parte del protocolo
asi que sospecho que el error está en las comparaciones que te han llevado a pensar que no son iguales
 
entonces no hay tal problema, el problema está en como se está comprobando
 
12:26 PM
eso
 
@abulafia correcto
 
pero eso si que es raro...no me creo que nadie capture las excepciones y genere un mensaje personalizado añadiendo cosas como STX o la longitud del mensaje
 
1 min ago, by Trauma
ejem ... sibaritas ...
 
@Pikoh No,posiblemente cree una estructura de datos (a saber cual) con los errores y codigos, y luego la serialice con protocol buffers
 
ok ok :)
@abulafia ah,eso si puede ser
 
12:26 PM
y por eso los bytes salpicados
 
a ver, que lanzo otro desde 0
todo en limpio
 
yo me tengo que ir, pero me puede la intriga
 
@abulafia Ok, luego te cuento :-)
a ver si aclaro yo esto
 
ok, suerte!
 
Asssiaaassss :-)
 
 
1 hour later…
1:37 PM
hola alguien tiene idea sobre api de notificacion en javascript?
0
Q: Como ejecutar correctamente una notificacion en javascript

WinterIsBackHola estoy realizando un proyecto de forma local, he colocado lo siguiente: function notificar() { let n = new Notification(" Notificacion!! ", { body: " Nuevo contenido!!", }); n.addEventListener("click", (ev) => { window.open("https://unapaginaweb.com"); }); } function pinta...

 
2:11 PM
@WinterIsBack seguro que si. Tenemos expertos en js :)
Buenas tardes
 
2:23 PM
@WinterIsBack me parece que tu problema es de asincronía. En cuanto pueda le doy una mirada más profunda a tu código. Saludos
 
Pufffff ... que asquito de día llevo hoy ...
... y lo que le queda ...
undefined reference to messages::message::message_impl::pyobj_from_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, mtoLoader::PROTOCOL)`
 
@MauricioContreras Gracias!!!
 
2:46 PM
@Trauma por lo menos no fue aburrido
 
No, eso no
Pues casi que estoy echando de menos el aburrirme O_o
 
otra duda esto seria correcto ?? let nom = document.getElementById("Nombre");

document.addEventListener("keyup", (event) => {
if (event.keycode == 13) {
console.log("hola");
let result = document.getElementById("resultado").value;
console.log(result);}
}); no me funciona al introducir un texto y pulsar enter no sale nada por consola
en teoria introduzco en un input un texto y al clickar el boton enter del teclado en teoria el keycode 13 deberia funcionar y enviar a la consola el console.log
 
@WinterIsBack no estas agregando el listener a todo el documento?
sirve asi en una pagina web?
no deberias agregarlo a nom?
 
@gbianchi Creo que funciona: keycode.info
 
ud es el experto yo toco de oido...
pero no seria mejor agregarlo a nom?
por lo menos en el escritorio si alguien tiene el foco, no pasa para abajo...
por eso pregunto...
 
2:54 PM
@gbianchi depende. Puedes hacer que pase primero al formulario
 
@WinterIsBack prueba a sustituir "keycode" por "keyCode"
de todos modos está "deprecated"
event.code === "Enter" debería funcionar
 
listo gracias!!!! ya funciona el boton!! :) pero por alguna extraña razon no me coge el valor del input
el resultado
<form>
<label for="nombre">Nombre: </label>
<input type="text" id="resultado"/>
</form>
 
monta una pregunta, aquí es complicado entender el escenario
 
vale jaja voy
0
Q: no me coge el resultado del input correctamente

WinterIsBackEstoy realizando un proyecto en el que al introducir un dato en el input deberia aparecer al menos en el console.log() para despuƩs poder trabajar con el. En mi caso introduzco un texto en un input y al pulsar enter deberia mostrarse en el console.log() el valor de mi input pero no sucede. que pu...

 
@WinterIsBack sigo tocando de oido.. esto no deberia estar dentro de la funcion?
const valor = document.getElementById("valor").value;
si no, no va a agarrar solo el primer valor que es vacio?
 
3:07 PM
tambien lo he puesto dentro
pero no me funcionaba
voy a probar de nuevo a ver si con el arreglod e enter me he mareado
no nada sale vacio
 
document.addEventListener("keyup", (event) => {
    if (event.keyCode === 13) {
        const valor = document.getElementById("valor").value;
        event.preventDefault();
        console.log(valor);
    }
});
ahi sale lo que escribo...
 
extraño
sale vacio
 
se ve.. y luego se borra todo.. eso no se porque pasa...
 
:S no entiendo yo tampoco xD
si alguien supiera jajaja
 
sera porque el enter es como un send?
 
3:10 PM
mmm si podria ser
 
no.. me pasa lo mismo si pongo el evento sobre el input
bue.. pone todas estas cosas que probamos.. alguien lo va a saber solucionar
pero yo por lo menos con lo que te pase veo en la consola lo que escribi
 
vale jajajaja yo la verdad que desconozco porque reacciona asi
 
pero espera.. si lo metes dentro la consola ya no sale vacia...
ahi capaz tenes un problema de cache?
 
consola como ?
en el navegador normal ?
podría ser?
he reinciado el cache
lo he borrado entero me ha sacado hasta de mis cuentas logueadas
y sigue igual
 
Hola
 
3:24 PM
Buenas gente !!!
 
@WinterIsBack Por que keyup?
porque no usas un boton para hacer submit?
 
@Trauma Como va eso
 
@abulafia Maldiciendo a los sibaritas
Ah, eso
Se lo hemos encasquetao a los pythonistas :-D
Que se rompan ellos los cuernos, carajo, que es su especialidad
 
Lo estarán disfrutando con delectación
 
Franca y sinceramente, e intentando no ofender a nadie ... me importa un güebo
Necesito un experto en C++ y sus historias de enlazado ¿ alguno presente en la sala ?
 
3:29 PM
Hm.. tú?
 
XD
 
@Trauma Desde que Paper dejó de pasarse por aquí, eres EL experto de C++
 
@PabloLozano Yo??? Si le haces otro -- quizás
experto en C++--
 
me equivoqué al responder xD
seleccioné el comentario que no era
 
ah, ya decía yo. El experto es Trauma
 
3:32 PM
porque creo que eferion no ha sido nunca de pasarse por aquí
que es la otra opción
 
y tú también le das al C++, no?
 
eferion poco si
 
@PedroMiguelPimientaMorales Todo bien, y uste?
Saludos gente :^)
@PaulVargas Que hizo?
 
@abulafia eres experto en C?
 
@NicolasOƱate Bueno, podría decirse que estoy a un nivel similar en C y Python
 
3:43 PM
@PabloLozano Pues MUY MAL :-((
 
Es como el chiste ese del que va al psicólogo con depresión y éste le recomienda ir al circo que ha llegado a la ciudad porque hay un payaso muy bueno. Y resulta que el paciente era el payaso
 
@WinterIsBack enia razon tomaba el enter como un send :)
no estaba tan lejos...
 
@gbianchi que mal jajajajaja menos mal ya funciona!!!!
muchas gracias por la ayuda!! :)
 
@WinterIsBack que va yo solo tire ideas...
 
@gbianchi o/
 
3:45 PM
@NaCl hola corazon.. como va?
 
@gbianchi Es festivo hoy, :'(
 
@WinterIsBack ayer teniamos otra dama preguntando si habia mas damas por aca...
 
@gbianchi Estoy trabajando šŸ˜¢
 
@NaCl aca no.. aca es veranoooooooo
 
@gbianchi Aca hace alto sol
@gbianchi Que me recomiendas para empezar un proyecto en wpf?
 
3:47 PM
@NaCl un tuto?
 
@gbianchi No, alguna libreria de controles o no se que cosa
 
@NaCl ahh.. para darle mas vida??? hay dos...
 
@gbianchi A ver
 
Interesante, la otra?
 
@gbianchi El nombre me ha llamao la atencion
 
yo hice apps con las dos.. y hasta mezclandolas...
y se llevan genial...
y son super simples en su mayoria.. .algunas cosas, son bastante complejas...
 
Creo que tomare la segunda
 
pero hasta tuve un error que reporte y supieron arreglarme...
las podes combinar sin drama...
la primera tiene todo un esquema de colores hermoso.. que podes poner en practica casi sin hacer nada...
 
Ambas se ven interesantes
Vamos a ver que me sale :P
@gbianchi Esta tiene una variedad de controles gigante
 
3:53 PM
el ultimo que hice.. fue para mi esposa.. y es rosa...
 
@gbianchi Lo único que no me termina de gustar de material design, es que sus esquemas de color son... bastante fijos
 
@gbianchi Mi color favorito šŸ¤
 
Pero lo mejor es que da igual el formato y el lenguaje, casi siempre hay una librería de MD disponible
Y al final todo te sale tan...igualito
 
@Benito-B es que estan hechos por gente que sabe de colores...
yo no se.. asi que mejor que me digan cuales combinan con cuales...
si el esquema me dice que es gris.. yo dejo el gris...
hay gente que estudio eso.. yo no...
 
@gbianchi Es una gran ayuda si no tenes idea sobre como mezclar colores
 
3:58 PM
@NaCl no tengo idea, y soy muy malo haciendo eso...
 
@gbianchi Yo si no tengo idea
 
@gbianchi guardados en favoritos
 
para los dos.. bajate la carpeta del git... compilalo en tu pc... y los dos tienen una app con todos los ejemplos.. y cuando queres replicar algo te fijas como lo hicieron en el codigo de la app de ejemplo...
 

« first day (1910 days earlier)      last day (1198 days later) »