This commit is contained in:
pezcurrel 2022-12-18 11:46:16 +01:00
parent 820bc3180d
commit bf98e62402

View file

@ -21,34 +21,40 @@
--- Tech ---
- dupes: 771; controllare che non crescano
- iniziato 2022-12-11 11:32:58
* dupes: 771; controllare che non crescano - no era quel baco là probabilmente
* index.php: if browser language is, eg, "pt" (portuguese), until "pt" will be available (if ever), use pt_BR
- "New" based on "InsertTS"
- getinstinfo.php, instances.php: write global or last 365 days response percentage into a new column, show it in instances.php
- important notifications: write them into a file and send its content by mail
* crawler.php: make it faster
- peerscrawl.php: make it faster (if possible)
- getinstinfo.php, instances.php: retrieve and show "server rules"
- getinstinfo.php, instances.php: check whether server thumb exists, if not set it to null and modify instances.php to not render its div when it's null
~ (id 7613), per es., è nel db, ma non ha alcun record in instchecks: perché? dovrebbe essere risolto ora, testare
- crawler.php: fare che fetchuser oltre a noindex onora #nobot(s) ma se c'è #globdir non onora né noindex né #nobot
* getinstinfo.php: fare che fetchuser oltre a noindex onora #nobot(s) ma se c'è #okindex e altre simili, compresa una tag specifica per masthelp, non onora né noindex né #nobot
! instances.php: dire in chiaro che i campi numerici si disabilitano lasciandoli vuoti (ora che c'è possibilità di disabilitarli da tasto forse sarebbe meno utile)
* instances.php: possibilità di linkare una singola istanza (id=x)
* instances.php: possibilità di linkare una singola istanza per id=x
- dates-times, at least in instances.php, should be shown in local format according to the browser or chosen locale; and in utc, always
- software check in crawler.php could be based on Platforms table (records which have Consider=1; should make a section to manage it in mustard)
- software check in getinstinfo.php could be based on Platforms table (records which have Consider=1; should make a section to manage it in mustard)
* instances.php: show software name, with version
? unify language list definition somewhere
? in instances.php, report the date when an instance has been marked as noxious - anche no
? retrieve and show "server rules"
- crawler.php: dichiarare "morta" un'istanza solo quando in "tot tempo" sono stati fatti "tot checks" (~= "tot tempo" espresso in giorni)
? in instances.php, report the date when an instance has been marked as noxious - for now it writes when it is updated
- getinstinfo.php: dichiarare "morta" un'istanza solo quando in "tot tempo" sono stati fatti "tot checks" (~= "tot tempo" espresso in giorni)
* eliminare la tabella Noxious, aggiungere colonne "NoxTS" e "NoxReason" in Instances, modificare il codice di conseguenza
* "setold" (settare "New=0" per istanze che hanno avuto "New=1" per un mese o più) va fatto in crawler.php e tolto da mustool.php
* "setold" (settare "New=0" per istanze che hanno avuto "New=1" per un mese o più) va fatto in getinstinfo.php e tolto da mustool.php
- remove all the "guest" stuff from admin?
- remove "Good" ("papabile") column from Instances table and modify code accordingly
* upgradare LanguageDetection?
* crawler.php: il check di nodeinfo dovrebbe essere più accurato (vedi getNodeInfo in fedicrawl.php)
- tutto il "condimento" (script di backup e di update) metterlo in una sottodir di clitools
? instances.php: se il thumb del server non c'è (su check), magari evitare la div relativa?
- remove "Good" ("suitable") column from Instances table and modify code accordingly
* upgrade LanguageDetection?
* getinstinfo.php: nodeinfo check should be more accurate
* backup and update scripts: put them in a subdir of clitools
* mustool.php: aggiungere possibilità di cancellare record InstActivity, InstChecks, Notifications più vecchi di tot tempo (ZHits viene già pulita da "updstats")
* fare qualcosa perché il backup venga mandato da qualche parte: per e-mail ora non va più perché l'allegato è troppo grosso
* un tasto sulla ricerca istanze per togliere tutti i limiti
* l'ordine casuale fa casino con il paginamento...
- aggiungere alle keyword per seo "fediverso", e altro?
- aggiungere alle keyword per seo "fediverse", e altro?
* "consigliata": migliorare la leggibilità
- possibilità di cercare per nome-uri istanza
* possibilità di cercare per nome-uri istanza
- instances.php: give the possibility to choose (by checkboxes) where to search for the given text
? possibilità di cercare per lingua non principale
? possibilità di cercare per "famiglie di lingue" (tipo "it*")
? possibilità di cercare negli hashtags?
@ -62,17 +68,17 @@
* pagina info è ancora giustificata su cell, invece che allineata a sx
* accorciare "hashtag più usati dell'ultima settimana" -> "hastag più usati (ult. settimana)"
- crawler.php, peerscrawl.php: timestamp nei log
- crawler.php, peerscrawl.php: "-r" (ripristino sessione precedente) dovrebbe cercare i file di sessione, ma non bloccare l'esecuzione se non li trova
- getinstinfo.php, peerscrawl.php: timestamp nei log
* getinstinfo.php, peerscrawl.php: "-r" (ripristino sessione precedente) dovrebbe cercare i file di sessione, ma non bloccare l'esecuzione se non li trova
? transazioni, dove appropriato (crawler compreso)
* vedere un po' se è possibile determinare quanta ram sugge il crawler, in modo da poter dare indicazioni più precise in INSTALL --- usare memory_get_peak_usage(true) --- fatto per ora con altro metodo
* crawler.php: possibilità di passargli le opzioni da riga di comando
* vedere un po' se è possibile determinare quanta ram sugge il crawler, in modo da poter dare indicazioni più precise in INSTALL
* getinstinfo.php: possibilità di passargli le opzioni da riga di comando
? peerscrawl.php: rendere opzionale il check su google.com, spiegare però bene a cosa serve
* peerscrawl.php: possibilità di settare timeout
! crawler.php: deve controllare se nella tabella Instances GuestID è definito; se è definito e la mail del corrispettivo account "guest" è cambiata, deve aggiornare l'account "guest" corrispettivo in Admins con la mail e il nome utente attuali e creare nuova password; se i dati dell'istanza sono già stati editati, mandare mail di "aggiornamento"; se non lo sono, mandare invito --- alla fine lasciam perdere, si organizzano gli admin se vogliono.
! getinstinfo.php: deve controllare se nella tabella Instances GuestID è definito; se è definito e la mail del corrispettivo account "guest" è cambiata, deve aggiornare l'account "guest" corrispettivo in Admins con la mail e il nome utente attuali e creare nuova password; se i dati dell'istanza sono già stati editati, mandare mail di "aggiornamento"; se non lo sono, mandare invito --- alla fine lasciam perdere, si organizzano gli admin se vogliono.
- tutto: scomparsa-comparsa div di debug
- tutto: se opzione "debug" in ini è false, niente output debug
- anche nel sito usare il menu.php nuovo di mustard
* anche nel sito usare il menu.php nuovo di mustard
* 404: loggare da qualche parte le richieste che ci finiscono
* about: mettere solo il nick, linkato alla pagina mastodon
@ -99,9 +105,9 @@
- i pad su cisti con il materiale ancora da tradurre per le varie lingue sono morti, sarebbero da resuscitare su soluzione alternativa non effimera
- crawl.bash: su errore, mandare mail
- crawler.php: per il rilevamento della lingua, se la timeline non è disponibile si possono usare le descrizioni
- getinstinfo.php: per il rilevamento della lingua, se la timeline non è disponibile si possono usare le descrizioni
- negli script web (non cli), gmdate dappertutto invece di strftime; magari un menu a tendina da cui scegliere timezone?
? crawler.php: rendere opzionale il check su Dead
? getinstinfo.php: rendere opzionale il check su Dead
? edinst.php: possibilità di settare Instances.Dead
* spostare tutta la roba sensibile in una dir "contenitore", tipo fare che la root dir è "/srv/http/mastodon.help/site", e in "/srv/http/mastodon.help" fare dir per logs, per accounts, per ini files, ecc.
- rimuovere Instances.Chosen e Instances.Visible dappertutto
@ -119,7 +125,7 @@
* mustard: pagina gestione proprio account
! mustard: pagina gestione nocive (no: le nocive vengono gestite singolarmente da edinst
- mustard: pagina reset password
- mustard: una pagina che dia la possibilità di vedere le istanze che non rispondono da un tot di tempo impostabile, e di marcarle in modo che non vengano più controllate, fino a quando non sono "smarcate" (crawler.php dev'essere modificato all'uopo)
- mustard: una pagina che dia la possibilità di vedere le istanze che non rispondono da un tot di tempo impostabile, e di marcarle in modo che non vengano più controllate, fino a quando non sono "smarcate" (getinstinfo.php dev'essere modificato all'uopo)
? mustard: help online
- mustard: una pagina che rilevi eventuali inconsistenze nel db, tra le quali: mail account guest diversa da mail di contatto istanza (mail contatto d'istanza può cambiare nel tempo)
* mustard: implementare la faccenda dell'invio di mail preformattate agli admin con invito a editare i propri dati (quindi implementare "livelli di admin" e relative restrizioni: admin invitat* può vedere solo la pagina relativa alla propria istanza, solo aggiungere valori (non in tutti i casi), editare ed eliminare solo valori che ha aggiunto e solo se non sono già stati linkati da altr*)
@ -137,10 +143,10 @@
* mustard: instances.php: possibilità di vedere solo le istanze che non hanno risposto all'ultimo check
- mustard: instances.php: ckf: controllare che non venga eseguito ordinamento su una stessa colonna più volte (non rompe query ma è ridondante)
--- Fatti ---
--- Fatti e scartati ---
* spostare i flag di esclusione sotto il resto
* se InstOurLangs è null cercare e riportare InstLangs - fatto, impostando InstOurLangs come InstLangs in crawler.php se InstOurLangs è NULL e InstLangs no
* se InstOurLangs è null cercare e riportare InstLangs - fatto, impostando InstOurLangs come InstLangs in getinstinfo.php se InstOurLangs è NULL e InstLangs no
* mettere tra le nocive byoblu
* possibilità di escludere quelle con registrazione soggetta ad approvazione
* possibilità di escludere quelle che non han risposto all'ultimo check, vedi sotto
@ -150,17 +156,17 @@
* trimdom ecc. ... forse che scarta già a monte quelle che sarebbero trimmate? altrimenti sarebbe da fare, e cassare trimdom del tutto
* info di debug a scomparsa
! possibilità di includere nella ricerca per lingua anche le istanze senza lingua specificata
! un ultimo tentativo prima di dichiararla morta in crawler.php (no perché viene già fatto a monte)
! un ultimo tentativo prima di dichiararla morta in getinstinfo.php (no perché viene già fatto a monte)
* crawler.php, peerscrawl.php: verificare perché stderr viene indirizzato a stdout, fare in modo che lo sia sempre a livello di script - dipende da "display_errors" in php.ini, per default li manda a stdout, bona lè* crawler.php: aggiornamento stato "New" e "Noxious" in uno script a parte - fatto, in mustool.php
* crawler.php e peerscrawl.php: devono creare un lockfile all'esecuzione e cancellarlo quando escono (sia per errore, sia per uscita normale); se esiste, uscire con errore; più un'opzione per forzare l'esecuzione anche già in presenza di lockfile.
* crawler.php: quando instances.job e currinst.job esistono, oltre a --restore serve anche unopzione che forzi l'esecuzione.
* crawler.php: NON ripristinare sessione interrotta se non viene esplicitato con opzione (da aggiungere)
* crawler.php: togliere "lecho", aggiungere time ed etr, aggiungere controllo memoria
* crawler.php: massimo utilizzo di memoria alla fine - o no? tanto già lo dice nell'ultima riga di check - va be' fatto
* crawler.php: se non viene rilevata nessuna lingua, e se c'è lingua di default, usare quella anche per le nostre
* getinstinfo.php, peerscrawl.php: verificare perché stderr viene indirizzato a stdout, fare in modo che lo sia sempre a livello di script - dipende da "display_errors" in php.ini, per default li manda a stdout, bona lè* getinstinfo.php: aggiornamento stato "New" e "Noxious" in uno script a parte - fatto, in mustool.php
* getinstinfo.php e peerscrawl.php: devono creare un lockfile all'esecuzione e cancellarlo quando escono (sia per errore, sia per uscita normale); se esiste, uscire con errore; più un'opzione per forzare l'esecuzione anche già in presenza di lockfile.
* getinstinfo.php: quando instances.job e currinst.job esistono, oltre a --restore serve anche unopzione che forzi l'esecuzione.
* getinstinfo.php: NON ripristinare sessione interrotta se non viene esplicitato con opzione (da aggiungere)
* getinstinfo.php: togliere "lecho", aggiungere time ed etr, aggiungere controllo memoria
* getinstinfo.php: massimo utilizzo di memoria alla fine - o no? tanto già lo dice nell'ultima riga di check - va be' fatto
* getinstinfo.php: se non viene rilevata nessuna lingua, e se c'è lingua di default, usare quella anche per le nostre
* edinst.php: possibilità di settare Priority
! crawler.php: mi sa che se non trova activity, non checka neanche trends, ma è sbagliato, sono indipendenti. Verificare. -- No, è ok.
! getinstinfo.php: mi sa che se non trova activity, non checka neanche trends, ma è sbagliato, sono indipendenti. Verificare. -- No, è ok.
* Menu principale: "header" con "INSTRUCTIONS / CHOOSE AN INSTANCE / LANGUAGE / ABOUT US"
* la div a (s)comparsa coi capitoletti spostarla sotto il menu di cui sopra, ingrandirne l'icona
@ -183,9 +189,9 @@
* via "Resources"
* mustard: rinominare tutto da "Mastodon Startpage Admin" a "Mustard"
* crawler.php: ricorsivizzarlo? - fatto, in questo modo: peerscrawl.php crea una lista di "tutte le istanze note" a partire da una certa instanza, crawler.php usa questa lista, insieme a quella delle istanze già note pescata dal db, per importare nel db i dati delle istanze che rispondono
* crawler.php: le notifiche, invece di edinst.php, devono linkare un viewinst.php che mostri l'istanza
* crawler.php: sarebbe tanto bello fare a meno di tutta la faccenda "tronconi" ecc.
* getinstinfo.php: ricorsivizzarlo? - fatto, in questo modo: peerscrawl.php crea una lista di "tutte le istanze note" a partire da una certa instanza, getinstinfo.php usa questa lista, insieme a quella delle istanze già note pescata dal db, per importare nel db i dati delle istanze che rispondono
* getinstinfo.php: le notifiche, invece di edinst.php, devono linkare un viewinst.php che mostri l'istanza
* getinstinfo.php: sarebbe tanto bello fare a meno di tutta la faccenda "tronconi" ecc.
* mustard: instances.php: possibilità di filtraggio per GuestID, LastGuestEdit, OurLangsLock
* mustard: edinst.php: su languages se account "Level" è "guest", "lock this list" dev'essere checkato per default *se "guest" non ha ancora mai modificato i dati dell'istanza*
* mustard: sanificazione input: edinsth.php: su edit e add controllare sempre che il valore "nuovo" non ci sia già