computer: pools part 1 + fetcher: fix url + interface: more ddos protection

This commit is contained in:
nym21
2025-09-05 14:47:11 +02:00
parent f82edb290a
commit 09d974913d
16 changed files with 1794 additions and 83 deletions
+2
View File
@@ -16,6 +16,7 @@ mod fetched;
mod grouped;
mod indexes;
mod market;
mod pools;
mod price;
mod stateful;
mod states;
@@ -24,6 +25,7 @@ mod utils;
use indexes::Indexes;
pub use pools::*;
pub use states::PriceToAmount;
use states::*;
+175
View File
@@ -0,0 +1,175 @@
use num_enum::{FromPrimitive, IntoPrimitive};
use serde::{Deserialize, Serialize};
#[allow(clippy::upper_case_acronyms)]
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, FromPrimitive, IntoPrimitive)]
#[repr(u16)]
pub enum PoolId {
#[default]
Unknown,
BlockFills,
Ultimuspool,
TerraPool,
Luxor,
OneTHash,
BTCCom,
Bitfarms,
HuobiPool,
WayiCn,
CanoePool,
BTCTop,
BitcoinCom,
OneSevenFiveBtc,
GBMiners,
AXbt,
ASICMiner,
BitMinter,
BitcoinRussia,
BTCServ,
SimplecoinUs,
BTCGuild,
Eligius,
OzCoin,
EclipseMC,
MaxBTC,
TripleMining,
CoinLab,
FiftyBTC,
GHashIO,
STMiningCorp,
Bitparking,
MMPool,
Polmine,
KnCMiner,
Bitalo,
F2Pool,
HHTT,
MegaBigPower,
MtRed,
NMCbit,
YourbtcNet,
GiveMeCoins,
BraiinsPool,
AntPool,
MultiCoinCo,
BCPoolIo,
Cointerra,
KanoPool,
SoloCK,
CKPool,
NiceHash,
BitClub,
BitcoinAffiliateNetwork,
BTCC,
BWPool,
EXXAndBW,
Bitsolo,
BitFury,
TwentyOneInc,
DigitalBTC,
EightBaochi,
MyBTCcoinPool,
TBDice,
HASHPOOL,
Nexious,
BravoMining,
HotPool,
OKExPool,
BCMonster,
OneHash,
Bixin,
TATMASPool,
ViaBTC,
ConnectBTC,
BATPOOL,
Waterhole,
DCExploration,
DCEX,
BTPOOL,
FiftyEightCoin,
BitcoinIndiaLowercase,
ShawnP0wers,
PHashIO,
RigPool,
HAOZHUZHU,
SevenPool,
MiningKings,
HashBX,
DPOOL,
Rawpool,
Haominer,
Helix,
BitcoinUkraine,
Poolin,
SecretSuperstar,
TigerpoolNet,
SigmapoolCom,
OkpoolTop,
Hummerpool,
Tangpool,
BytePool,
SpiderPool,
NovaBlock,
MiningCity,
BinancePool,
Minerium,
LubianCom,
OKKONG,
AAOPool,
EMCDPool,
FoundryUSA,
SBICrypto,
ArkPool,
PureBTCCom,
MARAPool,
KuCoinPool,
EntrustCharityPool,
OKMINER,
Titan,
PEGAPool,
BTCNuggets,
CloudHashing,
DigitalXMintsy,
Telco214,
BTCPoolParty,
Multipool,
TransactionCoinMining,
BTCDig,
TrickysBTCPool,
BTCMP,
Eobot,
UNOMP,
Patels,
GoGreenLight,
BitcoinIndiaCamel, // duplicate-ish entry preserved with slight name change
EkanemBTC,
CanoeUppercase,
TigerLowercase,
OneM1X,
Zulupool,
SECPOOL,
OCEAN,
WhitePool,
Wiz,
Mononaut,
Rijndael,
Wk057,
FutureBitApolloSolo,
Emzy,
Knorrium,
CarbonNegative,
PortlandHODL,
Phoenix,
Neopool,
MaxiPool,
DrDetroit,
BitFuFuPool,
LuckyPool,
MiningDutch,
PublicPool,
MiningSquared,
InnopolisTech,
Nymkappa,
BTCLab,
Parasite,
}
+7
View File
@@ -0,0 +1,7 @@
mod id;
mod pool;
mod pools;
pub use id::*;
pub use pool::*;
pub use pools::*;
+12
View File
@@ -0,0 +1,12 @@
use serde::{Deserialize, Serialize};
use crate::pools::PoolId;
#[derive(Debug, Serialize, Deserialize)]
pub struct Pool {
pub id: PoolId,
pub name: &'static str,
pub addresses: Box<[&'static str]>,
pub tags: Box<[&'static str]>,
pub link: &'static str,
}
File diff suppressed because it is too large Load Diff