Página 1 de 1

enxugando json

Enviado: 05 Fev 2025 14:09
por JoséQuintas
Tenho meu build, e ele vai criando um histórico das compilações em json.

Código: Selecionar todos

{
  "LastPath": "d:\\fontes\\haroldo\\",
  "LastBuildDate": "20250205",
  "Total": 10384,
  "Year": 1456,
  "Month": 175,
  "Day": 26,
  "2024": 8928,
  "202409": 1307,
  "20240912": 52,
  "20240913": 50,
  "20240914": 3,
  "20240915": 15,
  "20240916": 62,
  "20240917": 13,
  "20240918": 6,
  "20240919": 72,
  "20240920": 32,
  "20240921": 18,
  "20240922": 32,
  "20240923": 48,
  "20240924": 9,
  "20240925": 38,
  "20240926": 30,
  "20240927": 57,
  "20240929": 53,
  "20240930": 230,
  "202410": 1249,
  "20241001": 11,
  "20241002": 21,
  "20241003": 37,
  "20241004": 49,
  "20241005": 15,
  "20241007": 4,
  "20241008": 105,
  "20241009": 36,
  "20241010": 42,
  "20241011": 68,
  "20241012": 30,
  "20241014": 95,
  "20241015": 73,
  "20241016": 22,
  "20241017": 24,
  "20241018": 111,
  "20241019": 18,
  "20241020": 3,
  "20241021": 101,
  "20241022": 61,
  "20241023": 27,
  "20241024": 29,
  "20241025": 29,
  "20241026": 4,
  "20241027": 21,
  "20241028": 56,
  "20241029": 95,
  "20241030": 1,
  "20241031": 61,
  "202411": 1257,
  "20241101": 71,
  "20241102": 85,
  "20241103": 70,
  "20241104": 12,
  "20241105": 74,
  "20241106": 43,
  "20241107": 20,
  "20241108": 53,
  "20241109": 11,
  "20241110": 17,
  "20241111": 57,
  "20241112": 83,
  "20241113": 63,
  "20241114": 85,
  "20241115": 9,
  "20241116": 1,
  "20241117": 7,
  "20241118": 27,
  "20241119": 22,
  "20241120": 14,
  "20241121": 12,
  "20241122": 59,
  "20241123": 24,
  "20241125": 40,
  "20241126": 141,
  "20241127": 68,
  "20241128": 6,
  "20241129": 63,
  "20241130": 20,
  "202412": 824,
  "20241202": 37,
  "20241203": 26,
  "20241204": 106,
  "20241205": 26,
  "20241206": 15,
  "20241208": 60,
  "20241209": 91,
  "20241210": 32,
  "20241211": 12,
  "20241212": 36,
  "20241213": 25,
  "20241215": 5,
  "20241216": 29,
  "20241217": 55,
  "20241218": 70,
  "20241219": 24,
  "20241220": 2,
  "20241221": 21,
  "20241222": 26,
  "20241223": 34,
  "20241224": 15,
  "20241226": 17,
  "20241227": 9,
  "20241228": 24,
  "20241230": 27,
  "2025": 1456,
  "202501": 1281,
  "20250101": 68,
  "20250103": 84,
  "20250104": 49,
  "20250106": 59,
  "20250107": 21,
  "20250108": 98,
  "20250109": 127,
  "20250110": 55,
  "20250113": 60,
  "20250114": 33,
  "20250115": 27,
  "20250116": 19,
  "20250117": 37,
  "20250119": 10,
  "20250120": 187,
  "20250121": 33,
  "20250122": 134,
  "20250123": 42,
  "20250124": 15,
  "20250126": 2,
  "20250127": 47,
  "20250128": 11,
  "20250129": 23,
  "20250130": 18,
  "20250131": 22,
  "202502": 175,
  "20250201": 17,
  "20250203": 97,
  "20250204": 35,
  "20250205": 26
}
Tava pensando em enxugar isso pra coisas antigas, talvez deixar a média diária de cada mes.
Ou muito antigas, a média diária/mensal do ano.

A criação/atualização é fácil, mas por enquanto sem idéia pra acumular, que funções poderiam ser usadas pra isso.

É interessante saber que eventualmente chega a quase 200 compilações num único dia.
Talvez além da média, salvar mínimo e máximo.

enxugando json

Enviado: 05 Fev 2025 15:18
por JoséQuintas
Um teste parcial.

Código: Selecionar todos

FUNCTION Reorganize( hSetup )

   LOCAL dDatIni, dDatFim, dItem, nMin := 99999, nMax := -1, nMedia, nTot := 0, nQtd := 0, nValue

   dDatFim := Stod( "20241231" )
   dDatIni := Stod( "20241201" )
   FOR dItem = dDatIni TO dDatFim
      IF hb_HHasKey( hSetup, Dtos( dItem ) ) .AND. ! Empty( hSetup[ Dtos( dItem ) ] )
         nValue := hSetup[ Dtos( dItem ) ]
         nQtd += 1
         nTot += nValue
         nMax := Max( nMax, nValue )
         nMin := Min( nMin, nValue )
      ENDIF
   NEXT
   IF nQtd != 0
      nMedia := nTot / nQtd
      ShowNormal( hb_Dtoc( dDatIni ) + " " + hb_Dtoc( dDatFim ) + " " + ;
         Str( nMin, 4 ) + " " + Str( nMax, 4 ) + " " + Str( nMedia, 4 ) + ;
         " " + Str( nTot, 4 ) )
      Inkey(10)
   ENDIF

   RETURN Nil
Adicionar já faço, não será problema.
Ainda falta ver como excluir, e não sei se vai precisar indexar.

enxugando json

Enviado: 06 Fev 2025 08:59
por JoséQuintas
Deixei manual mesmo.
Crio o que precisa daqui pra frente e pronto.
Também não dá pra fazer o resumo anual, se estarei removendo meses do arquivo.
Deixei apenas o Max como resumo, Min e Avg não importam.

Código: Selecionar todos

{
  "LastPath": "d:\\fontes\\util\\build\\",
  "LastBuildDate": "20250206",
  "Day": 11,
  "Year": 1568,
  "Month": 287,
  "Total": 10496,
  "2024": 8928,
  "202409": 1307,
  "202409 Max": 230,
  "202410": 1249,
  "202410 Max": 111,
  "202411": 1257,
  "202411 Max": 141,
  "202412": 824,
  "202412 Max": 106,
  "2025": 1568,
  "2025 Max": 0,
  "202501": 1281,
  "202501 Max": 187,
  "202502": 287,
  "202502 Max": 127,
  "20250201": 17,
  "20250203": 97,
  "20250204": 35,
  "20250205": 127,
  "20250206": 11
}
O recorde foi em setembro: 230 compilações num único dia, o início de uso do FIVEWIN.
Neste ano, em janeiro 187 compilações num único dia.
E no mês atual, 127 compilações ontem, principalmente pra ajuste deste arquivo.

Não entram aí por exemplo as compilações do build.exe com erro. Ele com erro, o C<ENTER> não funciona.
É pra isso que serve BAT, pra não digitar milhares de vezes a mesma coisa.
Não é pra esquecer como se faz.

Mais de 10.000 compilações... supondo 10 letras em cada uma, economizei digitar 90.000 letras. substituindo por C<ENTER>

E nem precisei de Inteligência artificial pra isso, bastou a minha mesmo.
O povo está tão empolgado com IA, que esquece que IA é só mais um tipo de ferramenta de ajuda.

enxugando json

Enviado: 07 Fev 2025 12:08
por JoséQuintas
Curiosidade:
230 compilações num único dia...

Se considerar 10 horas, dá 23 por hora, 1 a cada 3 minutos ou menos.
Minha máquina é um I5 velho, talvez com mais de 10 anos.
Com certeza, não foi só compilação o dia inteiro.

Dizem que mingw é lento.... sei lá porque...

enxugando json

Enviado: 09 Fev 2025 00:36
por developer
Não é que é lento, na realidade é muito rápido, mas alguns comentam isso porque o compilador Borland é mais rápido, isso eu mesmo averiguei, é um fato inegável.

O seu é um i5? Está bom demais... o meu é um Pentium G2020 2.9GHz, é lennnntoooo, mas até dá para o gasto mas ultimamente quando abro navegador e dependendo do que faço o processador fica quase que o tempo todo entre 80 e 100%, noto isso mais com os navegadores... alguém tem alguma dica de como melhorar isso ou somente trocando o computador?

enxugando json

Enviado: 09 Fev 2025 10:34
por JoséQuintas
Dual core por si só é lento, é como criar uma coisa pra não ser usada, porque um core reduz velocidade do outro.

Até comentei por aqui: as exigências do W11 pode ter a ver com isso.
Começaram a inventar cada vez com mais núcleos, e depois tudo núcleos dual core.
A partir do W11, mudaram pra primeiros núcleos não dual core, a exigência do W11 pra processadores mais novos.
Não foi divulgado, afinal, admitir o erro seria obrigar a trocar todos os processadores já distribuídos.

Curiosamente isso mudou de novo, começou a ficar tudo dual core.
Talvez no W12 volte outra exigência.
Sei lá... tudo é possível.... aí fica parecendo que o Windows é mais rápido, quando na prática é a máquina.

enxugando json

Enviado: 10 Fev 2025 14:46
por developer
aí fica parecendo que o Windows é mais rápido, quando na prática é a máquina.
Isso é interesante, é o que eu penso sobre equipamentos com OS/X, parece ser mais estável, mais rápido, mas também, não é possível instalar (sem gambiarra) em um PC, só roda no MAC (que é uma máquina bem mais elaborada e CARA), daí vai parecer ser melhor, evidentemente.

Nada contra MAC, gosto muito, mas é muito caro!
Eu tenho um amigo que tem um, sempre tem problemas para conectar duas coisas: Wifi e impressora... parece até engraçado, ele já me acusou de colocar algo no roteador para impedir ele de conectar kkkkkkkk

Sem falar que para conectar qualquer coisa precisa comprar um adaptador (caro também).