Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions _data/catlist.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ regional:
small:
- AfterNET
- BSDNet
- DesktopMasters
- EsperNet
- FEFnet
- IRCNow
Expand All @@ -51,5 +52,3 @@ small:
- irc-nerds
- starlink-irc
- tilde.chat
- xworld
- DesktopMasters
143 changes: 27 additions & 116 deletions _data/netlist.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# vim:set ts=2 sw=2 et:
# vim: set ts=2 sw=2 et:
%YAML 1.2
---
property:
lastchange: May 2025
groups:
Expand All @@ -17,8 +19,9 @@ emptynet:
support_channels:
information: >
nix
nix
servers:
- server
- server
webserverlist:
webstatistic:
category:
Expand Down Expand Up @@ -163,6 +166,14 @@ Undernet:
commonplace on other networks. Channel service requires certain conditions
before registering a channel. Policy and application form available from
their web site. Support for its services is extensive.
servers:
- irc.undernet.org
- chicago.il.us.undernet.org
- bucharest.ro.eu.undernet.org
- budapest.hu.eu.undernet.org
- dallas.tx.us.undernet.org
- losangeles.ca.us.undernet.org
- miami.fl.us.undernet.org
webserverlist: 'https://www.undernet.org/servers.php'
category:
- popular
Expand Down Expand Up @@ -244,6 +255,15 @@ QuakeNet:
not. Anyway, here's a network full of (mainly European) addicts. It has
grown from a subject-specific network into the largest IRC network in the
world!
servers:
- adrift.sg.quakenet.org
- atw.hu.quakenet.org
- cymru.us.quakenet.org
- euroserv.fr.quakenet.org
- hostsailor.ro.quakenet.org
- stockholm.se.quakenet.org
- tngnet.nl.quakenet.org
- underworld2.no.quakenet.org
webserverlist: 'https://www.quakenet.org/servers'
webstatistic: 'https://www.quakenet.org/statistics#tab-users-day'
category:
Expand Down Expand Up @@ -418,6 +438,8 @@ StonerNET:
Started November 1997
servers:
- irc.stonernet.org
category:
- small
status: down
ColdFront:
comment:
Expand All @@ -438,98 +460,6 @@ ColdFront:
category:
- game
status: down
SciFi:
comment: "2020-08-15 server ?"
image:
homepage: "http://www.scifi.com/chat/"
webchat:
slocation:
services:
support_channels:
information: >
The SciFi TV channel caters to science fiction and fantasy, this chat server hosts chats with stars from the shows.
servers:
- server
webserverlist:
webstatistic:
category:
- scifi
status: down
EqNET:
comment:
- "2020-08-15 server ?"
- "https://web.archive.org/web/20170912041432/https://www.equestrianpages.com/category/chat/"
image:
homepage: "http://www.equestrianpages.com"
webchat:
slocation:
services:
support_channels:
information: >
All things equestrian (about horses, that is). Regular and special events. Main channel is #equestrian.
servers:
- server
webserverlist:
webstatistic:
category:
- misc
status: down
'I.I.G.S. IRC':
comment:
- "2020-08-15 server ?"
- "https://web.archive.org/web/20060819153931/http://www.iigs.org/irc/index.htm"
image:
homepage: "http://www.iigs.org/irc/index.htm"
webchat:
slocation:
services:
support_channels:
information: >
Genealogists worldwide unite!
servers:
- server
webserverlist:
webstatistic:
category:
- misc
status: down
BDSMnet:
comment:
- "2020-08-15 irc?"
image:
homepage: "http://www.bondage.com/irc/servers.asp"
webchat:
slocation:
services:
support_channels:
information: >
Network for adults who are interested in discussions and play in all forms of sexuality. (No, it's not a porn trading post.)
servers:
- server
webserverlist:
webstatistic:
category:
- misc
status: down
StonerNET:
comment:
- "2020-08-15 server ?"
- "https://web.archive.org/web/20180902150525/http://stonernet.org/"
image:
homepage: "http://stonernet.org/"
webchat:
slocation:
services:
support_channels:
information: >
"Our goal is to unite the stoners around the world in order to bring an end to the prohibition of cannabis."
servers:
- server
webserverlist:
webstatistic:
category:
- misc
status: down
'Kidlink IRC':
comment:
- "2020-08-15 server ?"
Expand All @@ -541,7 +471,8 @@ StonerNET:
services:
support_channels:
information: >
For kids up to age 15 and educators with 'classrooms' in various languages. Requires registration prior to using, chat is monitored.
For kids up to age 15 and educators with 'classrooms' in various languages.
Requires registration prior to using, chat is monitored.
servers:
- server
webserverlist:
Expand Down Expand Up @@ -729,7 +660,7 @@ SurNet:
slocation: Argentina
services: Channel (X), Nick (Nickserv)
support_channels:
information: >
information:
servers:
- server
webserverlist:
Expand Down Expand Up @@ -2268,26 +2199,6 @@ AmigaNet:
status: down
check:
server:
Kidlink IRC:
image:
homepage: "http://www.kidlink.org/IRC/"
irchelp:
webchat:
slocation:
services:
support_channels:
information: >
Network for kids up to age 15 and educators with 'classrooms' in
various languages. Requires registration prior to using it.
servers:
- server
webserverlist:
webstatistic:
category:
- mytest
status: down
check:
server:
Stomped.com:
image:
homepage: "http://www.stomped.com/"
Expand Down
144 changes: 144 additions & 0 deletions _scripts/t/netlist.t
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
#!/usr/bin/env perl
#
# check netlist.yaml and catlist.yaml
#
use strict;
use Test;
use CPAN::Meta::YAML;

require "./_scripts/t/global.inc";

BEGIN { plan tests=>8, todo=>[] }

# netlist read
my $fn="./_data/netlist.yaml";
my ( $ynet, $snet);
do {
local *STDERR;
open STDERR, '>>', \$snet;
eval {
open my $fh, "<:utf8", $fn;
my $yt = do { local $/; <$fh> };
$ynet=CPAN::Meta::YAML->read_string($yt);
close $fh;
};
print STDERR $@;
};
my $r = "\n# ".join("\n# ",split(/\n/, $snet))."\n";
print STDERR $r if ($snet ne '');
ok($ynet); # netlist yaml error
ok($snet eq ''); # netlist yaml warnings

my $err='';
my @onlyp = qw/
image
homepage
irchelp
webchat
slocation
services
support_channels
information
servers
webserverlist
webstatistic
category
status
check
comment
/;

my %onlyp;
foreach my $p ( @onlyp ) {
$onlyp{$p}=0;
}
foreach my $net ( keys %{$ynet->[0]} ) {
next if ($net eq 'property');
foreach my $k ( keys %{$ynet->[0]->{$net}} ) {
if ( !exists( $onlyp{$k} )) {
$err .= "# unknown property $k in $net\n";
}
}
}
print STDERR "\n$err" if ($err ne '');
ok($err eq ''); # netlist only property

my $err='';
my @minp = qw/
information
servers
category
status
/;

foreach my $net ( keys %{$ynet->[0]} ) {
next if ($net eq 'property');
foreach my $k ( @minp ) {
if ( !exists( $ynet->[0]->{$net}->{$k} )) {
$err .= "# missing $k in $net\n";
}
}
}
print STDERR "\n$err" if ($err ne '');
ok($err eq ''); # netlist min property

# catlist read
my $fn="./_data/catlist.yaml";
my ($ycat, $scat);
do {
local *STDERR;
open STDERR, '>>', \$scat;
eval {
open my $fh, "<:utf8", $fn;
my $yt = do { local $/; <$fh> };
$ycat=CPAN::Meta::YAML->read_string($yt);
close $fh;
};
print STDERR $@;
};
my $r = "\n# ".join("\n# ",split(/\n/, $scat))."\n";
print STDERR $r if ($scat ne '');
ok($ycat); # catlist yaml error
ok($scat eq ''); # catlist yaml warnings

my %cat;
my %ccat;
foreach my $net ( keys %{$ynet->[0]} ) {
next if ($net eq 'property');
next if ($ynet->[0]->{$net}->{status} ne 'active');
foreach my $ca ( @{$ynet->[0]->{$net}->{category}} ) {
$cat{$net}->{$ca}=0;
$ccat{$ca}->{$net}=0;
}
}

my $err='';
foreach my $ca ( keys %{$ycat->[0]} ) {
foreach my $net ( @{$ycat->[0]->{$ca}} ) {
if( !exists( $cat{$net}->{$ca} ) ) {
$err .= "# catlist too much $net in $ca\n";
}
}
}
print STDERR $err if ($err ne '');
ok($err eq ''); # catlist too much

my $err='';
foreach my $ca ( keys %ccat ) {
if ( !exists $ycat->[0]->{$ca} ) {
$err .= "# catlist missing category $ca\n";
next;
}
my %n=();
foreach my $net ( @{$ycat->[0]->{$ca}} ) {
$n{$net}=0;
}
foreach my $net ( keys %{$ccat{$ca}} ) {
if (!exists $n{$net}) {
$err .= "# catlist missing $net in $ca\n";
}
}
}
print STDERR $err if ($err ne '');
ok($err eq ''); # catlist missing