Skip to content

Releases: 9001/r0c

r0c for workgroups

27 Apr 23:27
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.13 (at least)

new features

screenshot of windows 3.11 connecting to r0c

  • windows 3.11 (and other clients with buggy naws) are now able to connect 073b9da
  • ctrl-U and ctrl-D are now mapped to PgUp / PgDn d83d39c

bugfixes

  • scroll-size specified with /ss didn't apply to the /up and /down commands f36ed61
  • better errormessage if you try to run both telnet and netcat on the same port d9c584f
  • clients which tried to send a message immediately after connecting (before sending their terminal size) would get kicked as their thread died in an unhandled exception f13f578

⭐️ you probably want r0c.py below;
the zip and tar.gz files are source code
(python packages are available at PyPI)

if you run into issues with r0c.py, please try bigr0c.py instead
(and create an issue to let us know what happened 🙏)

irc bridge

05 Apr 01:06
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.13 (at least)

new features

screenshot of r0c and irssi in the same channel

  • irc bridge 🤝 r0c can connect to irc networks 845573c 732254d 2ea0112
    • messages are forwarded bidirectionally, except for /me
    • answers to ping and ctcp:version, sane rate-limits, does colors
    • irc joins/parts are shown in r0c (but not vice versa)
    • multiple networks and channels can be bridged to one r0c channel
  • the status-channel has a list of hilights / nickname-mentions across all channels 8daadf0
  • add option --motd which appends the given file to the end of the welcome-text f6d4c51
  • add option --proxy to disable remembering terminal config for a list of proxy IPs f8780fe
  • the delete key now deletes f8780fe
  • 30% performance increase on python 3.12, 3.13 7c82c31
  • another 20% performance increase in general 213d9a4
  • add asciimation player bot... video dba3430
  • smaller sfx thanks to @CensoredUsername doing cursed stuff as usual 👉😎👉🗜 e264ca8

bugfixes

  • the /help description for /ss was wrong, and /ey + /en was entirely missing 08295df 30b4e3c

⭐️ you probably want r0c.py below;
the zip and tar.gz files are source code
(python packages are available at PyPI)

if you run into issues with r0c.py, please try bigr0c.py instead
(and create an issue to let us know what happened 🙏)

r0c the web

10 Oct 03:45
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.12 (at least)

new features

screenshot of chrome connecting to r0c through ttyd

  • connect to r0c from web browsers; see webtty
    • all web-browsers become admin unless r0c is started with --ara (default-enabled in webr0c)

⭐️ you probably want r0c.py below;
the zip and tar.gz files are source code
(python packages are available at PyPI)

hello @everyone

20 Sep 08:33
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.12 (at least)

new features

  • @all / @everyone hilights everyone in the channel
    • users can opt-out with command /en or reenable with /ey
    • or default-disable with commandline arg --no-all
  • /help ui displays help-ui.md explaining the statusbar

bugfixes

  • partial crash on ^E after rapidly joining/parting a channel
  • wizard got stuck while confirming previous config if only one port enabled

r0c running on windows 2000

⭐️ you probably want r0c.py below;
the zip and tar.gz files are source code
(python packages are available at PyPI)

just the message

18 Sep 23:16
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.12 (at least)

new features

  • command /v and hotkey ctrl-n hides nicknames, shows message text fullscreen
    • wordwraps made obvious by making the first character on each line bright-white
    • good for copypasting a configfile that somebody pasted into the channel
  • commands /by and /bn replaced with /b1 and /b0 (plus some new ones)
    • /b3 beeps on every single message in any channel
    • /b2 beep every time someone mentions your name in any channel
    • /b1 beep on mention, but not in the active channel (default)
    • /b0 disables all audible alerts
  • admin-command /bc broadcasts a message to all clients
  • powershell client can connect over TLS
    • but no certificate validation because MS made that way too difficult
    • also handles ctrl-c correctly, and sets window title
  • 9be828b performance improvements
    • comfortably 750 messages per second with 600 connected users, or 350/s with 1000u, gets jank after that
  • pressing ctrl-c in the config wizard now means disconnect
    • replaces the server shutdown shortcut which was a bit too dangerous

bugfixes

  • a31bf29 noticeable latency (0.4 sec) before messages appeared on other clients
    • bug is technically still there (cheap basic scheduling) but now it's just 0.1 sec
  • fix buggy seen-message tracking
    • timestamps would double-render on join (bandwidth waste, especially on modems)
    • switching between channels using commands would clear unseen-message indicators
    • the fix unfortunately disables the enter-key as a quick way to clear the markers intentionally; use backspace instead
  • disable reuseaddr on windows because you can accidentally launch multiple instances

⭐️ you probably want r0c.py below;
the zip and tar.gz files are source code
(python packages are available at PyPI)

py312 ready

19 May 23:39
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.12 (at least)

new features

  • sfx: support python 3.12
    • new encoding since python files can no longer contain nullbytes
  • sfx: support running on distros where hashlib.md5 is unavailable
  • example service scripts for alpine and others + some installation notes

bugfixes

  • sfx: more resistant to systemd-tmpfiles.d and friends

⭐️ you probably want r0c.py below;
the zip and tar.gz files are source code
(python packages are available at PyPI)

modem friendly

12 Oct 22:34
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.11 (at least)

new features

  • modem optimizations! even 300 bps is a somewhat okay experience
    • detects modem speed on connect and makes appropriate adjustments
      • disables autoresize
      • conservative textinput rendering
      • reduces the clock and statusbar update frequency
  • /cls temporarily deletes / hides the scrollback of the current channel
    • keeps the on-disk copy; gets restored on server restart (or if everyone parts and rejoins)

bugfixes

  • newline calibration could fail if a multibyte return symbol got split across frames
    • so the wizard now asks for 2x Enter
  • pressing ctrl-b for bold/bright text was never actually implemented
    • ...even though it was the first piece of advice you saw when connecting

⭐️ you probably want r0c.py below;
the zip and tar.gz files are source code
(python packages are available at PyPI)

going big with telnet.exe

01 Sep 22:39
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.11 (at least)

new features

  • show channel nicks in the statusbar, most-recently-active first
  • linemode improvements (scroll batching + try to conceal DSR output)

bugfixes

  • telnet.exe sending incorrect dimensions when terminal width/height above 256
    • they accidentally went uint8 instead of uint16 somewhere so just rely on DSR instead
  • push hilight notifications to the statusbar immediately

other changes

  • when switching channels: jump to bottom of history instead of oldest unread message
    • and improve hilighting of unread messages so you can scroll back up if you'd like
  • no longer possible to upgrade directly from v1.0 (the very first version)
    • upgrading from any other version from the past 4 years is fine
    • all previous versions will fix/upgrade the directory structure on startup

add ^L

03 Jul 23:45
Compare
Choose a tag to compare

still supports python 2.6, 2.7, and 3.3 through 3.11 (at least)

new features

  • map CTRL-L to /redraw
    • way more common than CTRL-R, used in readline etc
    • still have to hit Enter afterwards if you're linebuffered
    • the original CTRL-R mapping still works

TLS

03 Apr 06:32
Compare
Choose a tag to compare
TLS

still supports python 2.6, 2.7, and 3.3 through 3.10 (at least)

new features

  • accept TLS connections on separate ports
    • -tpt 2424 -tpn 1515 enables TLS telnet on port 2424, netcat on 1515
    • still listens for plaintext telnet/netcat on default ports unless disabled with -pt 0 -pn 0
    • not supported on python 2.6