awesome-selfhosted / awesome-selfhosted

A list of Free Software network services and web applications which can be hosted on your own servers

Home Page:https://awesome-selfhosted.net/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Remove unmaintained projects, dead links

nodiscc opened this issue · comments

Moved to #3558

How do you do link checking? Is there a automated way?

@mwolfaardt
Link checking is done via a travis-ci run. This is the last one: https://travis-ci.org/github/awesome-selfhosted/awesome-selfhosted/builds/750289451
The result looks like it run into a github rate limit.
Take a look here:

# check dead links

Or here:
https://github.com/dkhamsing/awesome_bot

@worldworm is correct

There is also a manual checks make check_github_commit_dates (

check_github_commit_dates:
) that queries the Github API and check for obsolete/unmaintained projects (I run it from time to time - any project that doesn't exist anymore will also trigger an error, so in time it could replace awesome_bot checks on github.com URLs)

All these checks spam requests on github.com which triggers (rather fair) rate limiting from their side - hence HTTP code 429 errors. Using the API is less sensitive to this. awesome_bot doesn't handle rate limits well but sites with rate limits should reply with a Retry-After: xxx header along with the 429 - we could leverage this in custom scripts to retry after an appropriate time.

It is also planned to extend these checks to gitlab.com ( tools )

Also related to #1038 which is about using a machine and human readable format to store and contribute data, and render several formats (README.md, static site with tags/language based filters...). This will allow extending syntax/URL/project metadata checks.

We also need to change our CI provider (travis CI) who will soon start enforcing severe job time limits for free projects (let's move that topic to #1852). Similar problem mentioned at shaarli/Shaarli#1649 in which we evaluated other CI systems (Gitlab CI, Drone, GH actions...). Not an excuse for not optimizing our checks runtime/bandwidth consumption :)

A quick-and-easy link checker can be done with the following (just knocked it together minutes ago)

python3 -m venv env
. env/bin/activate
pip install markdown-link-extractor
python -m markdown_link_extractor README.md | grep ^http | xargs -i -n1 -P5 curl -sw "%{http_code} %{url_effective}\n" "{}" -o /dev/null

This produces output that looks like:

200 http://adarkroom.doublespeakgames.com/
301 http://aerokube.com/selenoid/latest/
301 http://2600hz.org/
200 http://allegro.tech/tipboard/
301 http://1pxsolidblack.pl/jarr-en.html
200 http://ampache.org/
...

I could make this a simple Python script that can run in CI, but this was a quick POC. Yes, there's awesome_bot, but that requires a lot more infrastructure to set up and maintain. KISS works here.

760: FireShare's license 'Nodejs' is not on the License list.

1005: Olaris's license 'GPL' is not on the License list.

#2415

> Dupes 

  1. [L583] https://www.opensourcepos.org/

  2. [L583] https://github.com/opensourcepos/opensourcepos

I fixed the duplicate opensourcepos entry and triggered Travis checks manually (https://travis-ci.org/github/awesome-selfhosted/awesome-selfhosted/builds). But since the full test suite only runs when the build is triggered by the monthly Travis cron task ( - 'if [[ "$TRAVIS_BRANCH" == "master" && "$TRAVIS_EVENT_TYPE" == "cron" ]]; then make check_all; fi'), we now have a false status. I don't want to disturb the cron job settings so let's just wait for the next cron run, in about a month.

Projects without any activity since >12 months:

$ make check_github_commit_dates 
...
2015-01-24 15:58:43 https://github.com/mil/markdown-tree
2015-12-01 13:26:12 https://github.com/georgeOsdDev/markdown-edit
2016-05-10 00:22:57 https://github.com/lgg/tasks.php
2016-09-17 20:49:43 https://github.com/nhoening/gritttt-rss
2016-10-23 11:47:29 https://github.com/benschwarz/gallery-css
2017-04-04 18:47:13 https://github.com/haldean/docstore
2017-05-21 21:38:17 https://github.com/martijnboland/moped
2017-11-12 06:50:59 https://github.com/readerself/readerself
2018-01-19 11:26:10 https://github.com/Mechazawa/nnmm
2018-01-28 17:57:25 https://github.com/kucrut/ttrss-reader
2018-02-16 20:04:24 https://github.com/chmllr/NoteHub
2018-05-25 18:23:38 https://github.com/compactd/compactd
2018-05-30 13:09:24 https://github.com/cubny/lite-reader
2018-10-01 19:42:47 https://github.com/ncarlier/nunux-keeper
2018-11-07 11:11:25 https://github.com/broncowdd/BoZoN
2019-01-06 08:56:32 https://github.com/liamdemafelix/cadmus
2019-01-20 18:57:22 https://github.com/dyu/comments
2019-02-03 21:04:15 https://github.com/Hellowlol/HTPC-Manager
2019-02-17 22:50:57 https://github.com/gaynetdinov/ex_money
2019-02-27 01:16:50 https://github.com/jsoendermann/hapttic
2019-03-22 08:19:05 https://github.com/ryancramerdesign/ProcessWire
2019-03-25 13:45:00 https://github.com/mauricesvay/moonmoon
2019-05-02 18:46:50 https://github.com/plumi/plumi.app
2019-05-07 18:29:54 https://github.com/huytd/agar.io-clone
2019-05-13 17:52:07 https://github.com/VeeSecurity/SOCKS5Engine
2019-06-03 22:00:30 https://github.com/huboard/huboard
2019-09-11 16:26:35 https://github.com/anderspitman/fibridge-proxy-rs
2019-09-29 14:02:21 https://github.com/alberthier/git-webui
2019-10-24 19:20:09 https://github.com/Edraens/EdPaste
2019-10-25 12:16:49 https://github.com/jbreindel/battlecraft
2019-10-27 00:30:53 https://github.com/LINKIWI/orion-web
2019-11-08 07:19:27 https://github.com/afterlogic/webmail-lite
2019-11-13 17:27:05 https://github.com/formspree/formspree
2019-11-15 12:30:08 https://github.com/michelson/dante-stories
2019-11-24 16:15:48 https://github.com/claudehohl/Stikked
2019-12-22 08:51:01 https://github.com/abienvenu/Kyela
2020-01-01 20:19:12 https://github.com/mboinet/ttrss-mobile
2020-01-07 18:09:07 https://github.com/dimonomid/geekmarks
2020-02-04 11:19:59 https://github.com/kogmbh/WebODF
2020-02-07 02:46:50 https://github.com/ivandiazwm/phpback
2020-02-10 13:19:37 https://github.com/CherryKitten/CharjaBox
2020-02-12 17:54:53 https://github.com/apple/ccs-calendarserver
2020-02-16 14:25:26 https://github.com/askmike/gekko
2020-02-19 14:00:42 https://github.com/marekrei/encode-explorer
2020-03-01 11:00:59 https://github.com/Finesse/web-fonts-repository
2020-03-23 00:19:49 https://github.com/IgorAntun/node-chat
2020-03-31 03:51:34 https://github.com/intelliants/subrion
2020-03-31 09:15:42 https://github.com/Edraens/EdPaper
2020-04-10 16:48:47 https://github.com/ipfspics/server
2020-04-16 12:03:30 https://github.com/appMini/todoMini
2020-04-17 19:58:38 https://github.com/eltrino/diamantedesk-application
2020-04-26 20:37:29 https://github.com/irungentoo/toxcore
2020-05-08 18:24:19 https://github.com/Alkarex/EasyRSS
2020-05-16 23:39:26 https://github.com/horde/horde

CI is currently broken because of #1852 (comment). Will fix as soon as possible

Awesome

All these checks spam requests on github.com which triggers (rather fair) rate limiting from their side - hence HTTP code 429 errors. Using the API is less sensitive to this. awesome_bot doesn't handle rate limits well but sites with rate limits should reply with a Retry-After: xxx header along with the 429 - we could leverage this in custom scripts to retry after an appropriate time.

If this is still a problem find a link checker that uses the Github API but also allows you to put a Github token in the headers (massively reducing the rate limit). Lychee does, whether as a CLI tool or a Github action and so does my own Github action #3256

https://github.com/awesome-selfhosted/awesome-selfhosted-data CI pipeline already uses a github API token to check last commit dates. HTTP return code checks are not yet implemented but planned in nodiscc/hecat#22 and should use the token when possible.

Ran a manual check today, a few issues remaining

$ make awesome_bot
...
Issues :-(
> Links 
  01. [L0542]  https://libredd.it/ SSL_connect returned=1 errno=0 state=error: tlsv1 alert internal error 
  02. [L0737] 403 https://demo.paperless-ngx.com/  
  03. [L0804]  https://www.opensourcepos.org/ Failed to open TCP connection to www.opensourcepos.org:443 (Connection timed out - connect(2) for "www.opensourcepos.org" port 443) 
  04. [L0809]  https://reactioncommerce.com/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (unspecified certificate verification error) 
  05. [L0811]  https://demo.getsaleor.com/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (certificate has expired) 
  06. [L0882]  https://pydio.com/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate) 
  07. [L0882]  https://pydio.com/en/demo SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate) 
  08. [L1189]  https://demo.koozic.net/public Failed to open TCP connection to demo.koozic.net:443 (Connection timed out - connect(2) for "demo.koozic.net" port 443) 
  09. [L1241] 403 https://cytu.be  
  10. [L1401] 403 https://notes.orga.cat/  
  11. [L1512]  https://demo.baby-buddy.net/login/?next=/ SSL_connect returned=1 errno=0 state=error: tlsv1 unrecognized name 
  12. [L1514] 502 https://dash.mauz.io  
  13. [L1631]  https://mealie-demo.hay-kot.dev/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (self signed certificate) 
  14. [L1913] 404 https://crates.io/crates/vigil-server  
  15. [L1966]  https://pach.no/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (certificate has expired) 
> Dupes 
  1. [L276] https://en.wikipedia.org/wiki/CalDAV
  2. [L276] https://en.wikipedia.org/wiki/CardDAV
  3. [L596] https://en.wikipedia.org/wiki/XMPP
  4. [L871] https://en.wikipedia.org/wiki/File_sharing
make: *** [Makefile:26: awesome_bot] Error 1

Ran a manual check today, a few issues remaining

$ make awesome_bot
...
Issues :-(
> Links 
  01. [L0542]  https://libredd.it/ SSL_connect returned=1 errno=0 state=error: tlsv1 alert internal error 
  02. [L0737] 403 https://demo.paperless-ngx.com/  
  03. [L0804]  https://www.opensourcepos.org/ Failed to open TCP connection to www.opensourcepos.org:443 (Connection timed out - connect(2) for "www.opensourcepos.org" port 443) 
  04. [L0809]  https://reactioncommerce.com/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (unspecified certificate verification error) 
  05. [L0811]  https://demo.getsaleor.com/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (certificate has expired) 
  06. [L0882]  https://pydio.com/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate) 
  07. [L0882]  https://pydio.com/en/demo SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate) 
  08. [L1189]  https://demo.koozic.net/public Failed to open TCP connection to demo.koozic.net:443 (Connection timed out - connect(2) for "demo.koozic.net" port 443) 
  09. [L1241] 403 https://cytu.be  
  10. [L1401] 403 https://notes.orga.cat/  
  11. [L1512]  https://demo.baby-buddy.net/login/?next=/ SSL_connect returned=1 errno=0 state=error: tlsv1 unrecognized name 
  12. [L1514] 502 https://dash.mauz.io  
  13. [L1631]  https://mealie-demo.hay-kot.dev/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (self signed certificate) 
  14. [L1913] 404 https://crates.io/crates/vigil-server  
  15. [L1966]  https://pach.no/ SSL_connect returned=1 errno=0 state=error: certificate verify failed (certificate has expired) 
> Dupes 
  1. [L276] https://en.wikipedia.org/wiki/CalDAV
  2. [L276] https://en.wikipedia.org/wiki/CardDAV
  3. [L596] https://en.wikipedia.org/wiki/XMPP
  4. [L871] https://en.wikipedia.org/wiki/File_sharing
make: *** [Makefile:26: awesome_bot] Error 1

A couple of the links above still work although they show warnings, Ill run through them and make a PR tomorrow 👍🏻

Projects without commits for > 365 days:

0bin: last updated -661 days, 7:25:25.101132 ago, older than 365 days
411: last updated -1321 days, 7:25:25.100900 ago, older than 365 days
Abilian SBE: last updated -527 days, 7:25:25.100817 ago, older than 365 days
Babelfish: last updated -426 days, 7:25:25.100424 ago, older than 365 days
Beehive: last updated -401 days, 7:25:25.100300 ago, older than 365 days
cartulary: last updated -979 days, 7:25:25.099910 ago, older than 365 days
Cowyo: last updated -979 days, 7:25:25.099764 ago, older than 365 days
Croodle: last updated -721 days, 7:25:25.099682 ago, older than 365 days
Cubiks-2048: last updated -3147 days, 7:25:25.099616 ago, older than 365 days
Digital-Currency: last updated -658 days, 7:25:25.099326 ago, older than 365 days
Dispatch: last updated -369 days, 7:25:25.099245 ago, older than 365 days
dogbin: last updated -978 days, 7:25:25.099143 ago, older than 365 days
dyu comments: last updated -1459 days, 7:25:25.099071 ago, older than 365 days
EasyQuickImport: last updated -619 days, 7:25:25.099002 ago, older than 365 days
Enigma Reloaded: last updated -499 days, 7:25:25.098863 ago, older than 365 days
Episodes: last updated -1235 days, 7:25:25.098815 ago, older than 365 days
EpochTalk: last updated -617 days, 7:25:25.098767 ago, older than 365 days
fiche: last updated -1490 days, 7:25:25.098473 ago, older than 365 days
Flox: last updated -964 days, 7:25:25.098251 ago, older than 365 days
FriendsRadio: last updated -1927 days, 7:25:25.098161 ago, older than 365 days
Glosa: last updated -695 days, 7:25:25.097952 ago, older than 365 days
goBrowser: last updated -1820 days, 7:25:25.097881 ago, older than 365 days
graph-vl: last updated -693 days, 7:25:25.097674 ago, older than 365 days
Groove Basin: last updated -684 days, 7:25:25.097599 ago, older than 365 days
Hapttic: last updated -1421 days, 7:25:25.097500 ago, older than 365 days
Hauk: last updated -659 days, 7:25:25.097407 ago, older than 365 days
homebank-converter: last updated -804 days, 7:25:25.097219 ago, older than 365 days
Homepage by tomershvueli: last updated -619 days, 7:25:25.097116 ago, older than 365 days
IronFunctions: last updated -1612 days, 7:25:25.096756 ago, older than 365 days
Jmz HomeProxy: last updated -590 days, 7:25:25.096667 ago, older than 365 days
Leselys: last updated -777 days, 7:25:25.096362 ago, older than 365 days
MailForm: last updated -571 days, 7:25:25.096112 ago, older than 365 days
MapBBCodeShare: last updated -804 days, 7:25:25.095991 ago, older than 365 days
Microgit: last updated -897 days, 7:25:25.095738 ago, older than 365 days
microproxy: last updated -382 days, 7:25:25.095689 ago, older than 365 days
Mindmaps: last updated -624 days, 7:25:25.095638 ago, older than 365 days
mkaczanowski pastebin: last updated -532 days, 7:25:25.095477 ago, older than 365 days
ML Workspace: last updated -422 days, 7:25:25.095427 ago, older than 365 days
Mopidy MusicBox: last updated -939 days, 7:25:25.095354 ago, older than 365 days
myDrive: last updated -623 days, 7:25:25.095283 ago, older than 365 days
Notes'n'Todos: last updated -586 days, 7:25:25.095082 ago, older than 365 days
oTranscribe: last updated -1352 days, 7:25:25.094786 ago, older than 365 days
pb: last updated -1030 days, 7:25:25.094470 ago, older than 365 days
Posio: last updated -461 days, 7:25:25.094243 ago, older than 365 days
Re:Backlogs: last updated -925 days, 7:25:25.093849 ago, older than 365 days
Redbird: last updated -838 days, 7:25:25.093745 ago, older than 365 days
RSS Fulltext Proxy: last updated -1260 days, 7:25:25.093472 ago, older than 365 days
s3server: last updated -853 days, 7:25:25.093198 ago, older than 365 days
Shaark: last updated -749 days, 7:25:25.092540 ago, older than 365 days
SharpPaste: last updated -1356 days, 7:25:25.092379 ago, older than 365 days
Simple-URL-Shortener: last updated -743 days, 7:25:25.092204 ago, older than 365 days
Snapcast: last updated -392 days, 7:25:25.092093 ago, older than 365 days
Snippet Box: last updated -461 days, 7:25:25.092038 ago, older than 365 days
snipt: last updated -628 days, 7:25:25.091985 ago, older than 365 days
socks5-proxy-server: last updated -592 days, 7:25:25.091932 ago, older than 365 days
SOCKS5Engine: last updated -1346 days, 7:25:25.091860 ago, older than 365 days
sovereign: last updated -664 days, 7:25:25.091748 ago, older than 365 days
Stikked: last updated -1151 days, 7:25:25.091657 ago, older than 365 days
Tabby: last updated -368 days, 7:25:25.091485 ago, older than 365 days
tasks.php: last updated -2444 days, 7:25:25.091388 ago, older than 365 days
Tasks: last updated -1331 days, 7:25:25.091337 ago, older than 365 days
untrusted: last updated -369 days, 7:25:25.091046 ago, older than 365 days
updog: last updated -1064 days, 7:25:25.090982 ago, older than 365 days
WebUI-aria2: last updated -504 days, 7:25:25.090664 ago, older than 365 days
ytdl-webserver: last updated -1194 days, 7:25:25.090334 ago, older than 365 days

Dead links:

https://www.3cx.com/pbx/ - HTTP 403
URL https://www.alltubedownload.net : HTTPSConnectionPool(host='www.alltubedownload.net', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a6a4cfcd0>: Failed to establish a new connection: [Errno -2] Name or service not known'))
URL https://www.anuko.com/time-tracker/index.htm : HTTPSConnectionPool(host='www.anuko.com', port=443): Max retries exceeded with url: /time-tracker/index.htm (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f6a6a4cf070>, 'Connection to www.anuko.com timed out. (connect timeout=10)'))
URL https://timetracker.anuko.com/ : HTTPSConnectionPool(host='timetracker.anuko.com', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f6a6a433250>, 'Connection to timetracker.anuko.com timed out. (connect timeout=10)'))
https://bbpress.trac.wordpress.org/browser/trunk - HTTP 403
https://demo.bloben.com/api/app/v1/auth/login-demo?username=demo&password=Bg8v16a4q7gvC&redirect=https://demo.bloben.com/calendar?demo=true - HTTP 404
https://coralproject.net/ - HTTP 403
https://github.com/cyrusimap/cyrus-imapd  - HTTP 404
https://cytu.be - HTTP 403
https://dlg.im - HTTP 502
https://dlg.im/en/download/ - HTTP 502
https://tonken.glitch.me/ - HTTP 403
https://demo.django-wiki.org/ - HTTP 500
https://demo.dotledger.com/ - HTTP 503
https://git.dotclear.org/dev/dotclear - HTTP 403
https://www.economizzer.org/ - HTTP 406
https://feedka.herokuapp.com - HTTP 503
https://firefly-iii.org/ - HTTP 403
https://demo.firefly-iii.org/ - HTTP 403
URL https://fluxbb.org/ : HTTPSConnectionPool(host='fluxbb.org', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a6a4494f0>: Failed to establish a new connection: [Errno -2] Name or service not known'))
URL https://www.flyspray.org/ : HTTPSConnectionPool(host='www.flyspray.org', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a6a449dc0>: Failed to establish a new connection: [Errno -2] Name or service not known'))
https://friends-radio.herokuapp.com/ - HTTP 404
URL https://www.fusionpbx.com/ : HTTPSConnectionPool(host='www.fusionpbx.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1123)')))
https://gitblit.github.io/gitblit/ - HTTP 404
https://google-webfonts-helper.herokuapp.com/ - HTTP 503
https://getgrist.com/ - HTTP 403
https://posativ.org/isso/ - HTTP 404
https://jitsi.org/Projects/JitsiMeet - HTTP 403
https://jitsi.org/Projects/JitsiVideobridge - HTTP 403
URL http://demo.kcal.cooking/login : HTTPConnectionPool(host='demo.kcal.cooking', port=80): Max retries exceeded with url: /login (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f6a6a449370>: Failed to establish a new connection: [Errno -2] Name or service not known'))
https://konghq.com/kong/ - HTTP 403
https://stash.kopano.io/repos?visibility=public - HTTP 403
URL https://tontof.net/kriss/feed/ : HTTPSConnectionPool(host='tontof.net', port=443): Max retries exceeded with url: /kriss/feed/ (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a6a4cffa0>: Failed to establish a new connection: [Errno -2] Name or service not known'))
URL https://tontof.net/feed/ : HTTPSConnectionPool(host='tontof.net', port=443): Max retries exceeded with url: /feed/ (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a6a4cf520>: Failed to establish a new connection: [Errno -2] Name or service not known'))
http://leanote.org/ - HTTP 403
https://leantime.io - HTTP 403
https://wiki.goffi.org/wiki/Libervia/en - HTTP 500
https://libredd.it/ - HTTP 500
URL https://demo.linkding.link/bookmarks : HTTPSConnectionPool(host='demo.linkding.link', port=443): Max retries exceeded with url: /bookmarks (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a6a4490a0>: Failed to establish a new connection: [Errno -5] No address associated with hostname'))
https://linuxgsm.com/ - HTTP 403
URL https://magento.com/ : HTTPSConnectionPool(host='business.adobe.com', port=443): Read timed out. (read timeout=10)
URL https://magento.com/schedule-a-demo : HTTPSConnectionPool(host='business.adobe.com', port=443): Read timed out. (read timeout=10)
https://mattermost.org/ - HTTP 403
URL https://mealie-demo.hay-kot.dev/ : HTTPSConnectionPool(host='mealie-demo.hay-kot.dev', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self signed certificate (_ssl.c:1123)')))
https://notes.orga.cat/ - HTTP 403
https://www.erlang-solutions.com/products/mongooseim.html - HTTP 403
https://mydrive-demo.herokuapp.com/ - HTTP 404
URL https://www.opensourcepos.org/ : HTTPSConnectionPool(host='www.opensourcepos.org', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f6a6a52b7c0>, 'Connection to www.opensourcepos.org timed out. (connect timeout=10)'))
https://demo.osem.io/ - HTTP 503
https://demo.paperless-ngx.com/ - HTTP 403
https://www.plex.tv/ - HTTP 403
URL https://www.apsis.ch/pound.html : HTTPSConnectionPool(host='www.apsis.ch', port=443): Max retries exceeded with url: /pound.html (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f6a6a4bdc70>: Failed to establish a new connection: [Errno -2] Name or service not known'))
https://propertywebbuilder.herokuapp.com - HTTP 503
URL https://pydio.com/ : HTTPSConnectionPool(host='pydio.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1123)')))
URL https://pydio.com/en/demo : HTTPSConnectionPool(host='pydio.com', port=443): Max retries exceeded with url: /en/demo (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1123)')))
https://hexxa-quickshare.herokuapp.com/ - HTTP 503
https://radium-demo.herokuapp.com - HTTP 503
URL https://reactioncommerce.com/ : HTTPSConnectionPool(host='reactioncommerce.com', port=443): Max retries exceeded with url: / (Caused by SSLError(CertificateError("hostname 'reactioncommerce.com' doesn't match either of '*.netlify.app', 'netlify.app'")))
URL https://rustpad.io/ : ('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
URL https://demo.getsaleor.com/ : HTTPSConnectionPool(host='demo.getsaleor.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1123)')))
URL https://sipxcom.org/ : HTTPSConnectionPool(host='sipxcom.org', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f6a6a433490>, 'Connection to sipxcom.org timed out. (connect timeout=10)'))
URL https://snapdrop.net/ : HTTPSConnectionPool(host='snapdrop.net', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f6a6a4cfbb0>, 'Connection to snapdrop.net timed out. (connect timeout=10)'))
https://snibox-demo.herokuapp.com/ - HTTP 503
https://sorry-cypress-demo.herokuapp.com - HTTP 503
https://synctube-example.herokuapp.com/ - HTTP 503
https://taiga.io/ - HTTP 403
URL https://www.todomini.app/ : HTTPSConnectionPool(host='www.todomini.app', port=443): Read timed out. (read timeout=10)
https://tyk.io - HTTP 403
https://www.unraid.net - HTTP 403
https://www.uvdesk.com/ - HTTP 503
https://demo.uvdesk.com/ - HTTP 503
https://vanillaforums.org/ - HTTP 403
https://crates.io/crates/vigil-server - HTTP 404
https://www.redcort.com/timeclock - HTTP 403
https://www.redcort.com/timeclock/free-timeclock-software-trial - HTTP 403
https://weblate.org - HTTP 502
https://demo.weblate.org - HTTP 502
URL https://word-mastermind.glitch.me/ : HTTPSConnectionPool(host='word-mastermind.glitch.me', port=443): Read timed out. (read timeout=10)
https://stash.kopano.io/projects/ZHUB/repos/z-push/browse - HTTP 403
https://www.zenko.io/cloudserver - HTTP 403
URL https://demo.zentao.pm/user-login.html : HTTPSConnectionPool(host='demo.zentao.pm', port=443): Max retries exceeded with url: /user-login.html (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1123)')))

@ksamuel is https://github.com/Tygs/0bin still actively maintained?

-> #3570

WARNING:awesome_lint.py: Croodle: last updated -731 days, 1:27:15.139038 ago, older than 365 days

@jelhan is https://github.com/jelhan/croodle still maintained and working?

-> #3566

WARNING:awesome_lint.py: Episodes: last updated -1245 days, 1:27:15.138144 ago, older than 365 days

@guptachetan1997 is https://github.com/guptachetan1997/Episodes still maintained and working?

-> #3567

WARNING:awesome_lint.py: Jmz HomeProxy: last updated -600 days, 1:27:15.136129 ago, older than 365 days

@JmzTaylor is https://github.com/jmztaylor/homelab_proxy still maintained and working?

WARNING:awesome_lint.py: oTranscribe: last updated -1362 days, 9:53:39.977646 ago, older than 365 days

@freedmand is https://github.com/oTranscribe/oTranscribe still maintained and working?

-> #3569

WARNING:awesome_lint.py: Croodle: last updated -731 days, 1:27:15.139038 ago, older than 365 days

@jelhan is https://github.com/jelhan/croodle still maintained and working?

I wouldn't consider it dead. Still planning to do a major revamp. But haven't found the time doing so in last years. And not sure if I will find this year to be honest.

WARNING:awesome_lint.py: Flox: last updated -974 days, 9:53:39.981119 ago, older than 365 days

@devfake is https://github.com/devfake/flox still maintained and working?

-> #3559

WARNING:awesome_lint.py: mkaczanowski pastebin: last updated -542 days, 9:53:39.978367 ago, older than 365 days

@mkaczanowski is https://github.com/mkaczanowski/pastebin still maintained and working?

-> #3571

WARNING:awesome_lint.py: MyPaas: last updated -366 days, 9:53:39.978092 ago, older than 365 days

@almarklein is https://github.com/almarklein/mypaas still maintained and working?

-> #3560

WARNING:awesome_lint.py: SharpPaste: last updated -1366 days, 9:53:39.975735 ago, older than 365 days

@phonicmouse is https://github.com/phonicmouse/SharpPaste still maintained and working?

-> #3561

WARNING:awesome_lint.py: Re:Backlogs: last updated -935 days, 9:53:39.976670 ago, older than 365 days

@kaishuu0123 is https://github.com/kaishuu0123/rebacklogs still maintained and working?

-> #3565

No commit on 0bin doesn't mean the project is dead. We still run it at 0bin.net and works with the Python 3.10.

@almarklein is https://github.com/almarklein/mypaas still maintained and working?

Yep! Still using it to run my servers. Simply does not need a lot of maintenance because I don't add features much.

Remove OpenSupports from ticketing systems, seems very abandoned with Issues unanswered and no pulls for ~6 months.

Also regrettably still PHP 7, RIP.

WARNING:awesome_lint.py: ML Workspace: last updated -432 days, 9:53:39.978304 ago, older than 365 days

@LukasMasuch is https://github.com/ml-tooling/ml-workspace still maintained and working?

-> #3562

WARNING:awesome_lint.py: Hapttic: last updated -1431 days, 9:53:39.980304 ago, older than 365 days

@jsoendermann is https://github.com/jsoendermann/hapttic still maintained and working?

-> #3563

WARNING:awesome_lint.py: pb: last updated -1040 days, 9:53:39.977329 ago, older than 365 days

@buhman is https://github.com/ptpb/pb still maintained and working?

-> #3564

@nodiscc Would it be possible to have separate issues for each project? This causes many email notification from GitHub for everyone you mentioned once. At least if using default notification settings. Unsubscribing this issue now manually. Please ping me if you have any questions regarding Croodle.

Yes I thought about this... I was not the brightest idea to notify everyone from this thread. Practical for me, but a bit spammy for everyone else. Sorry about that. I will open a new issue and proceed differently (open removal PRs, notify each maintainer from there). Thanks @jelhan and everyone for your replies.