]> git.r.bdr.sh - rbdr/mobius/commit
Extensive refactor, quality of life enhancements
authorJeff Halter <redacted>
Wed, 17 Jul 2024 22:41:20 +0000 (15:41 -0700)
committerJeff Halter <redacted>
Wed, 17 Jul 2024 22:42:37 +0000 (15:42 -0700)
commitfd740bc499ebc6d3a381479316f74cdc736d02de
treee77563ce0997e51debaec75c9f7a053759ca3a0a
parent80aed6b19ff0b0927670e459ce5cc7a16ef047ec
Extensive refactor, quality of life enhancements

* Added ability to reload config, agreement, news, and user accounts without restarting the server by sending SIGHUP to the running process
* Added ability to use modern unix or windows line breaks in Agreement.txt and MessageBoard.txt instead of classic MacOS `\r` breaks.
* Extensive refactor towards swappable backends for the active server state
* Extensive refactored towards making the hotline package generic and re-usable for alternate server implemenations
* Fix bug where users whose accounts have been deleted would not be disconnected
69 files changed:
cmd/mobius-hotline-server/main.go
cmd/mobius-hotline-server/mobius/config/MessageBoard.txt
go.mod
go.sum
hotline/access.go
hotline/access_test.go
hotline/account.go
hotline/account_manager.go
hotline/ban.go
hotline/chat.go
hotline/client.go
hotline/client_conn.go
hotline/config.go
hotline/doc.go [new file with mode: 0644]
hotline/field.go
hotline/field_test.go
hotline/file_header.go [deleted file]
hotline/file_header_test.go [deleted file]
hotline/file_name_with_info.go
hotline/file_name_with_info_test.go
hotline/file_path.go
hotline/file_path_test.go
hotline/file_transfer.go
hotline/file_transfer_test.go
hotline/file_wrapper.go
hotline/files.go
hotline/flattened_file_object.go
hotline/handshake.go
hotline/handshake_test.go
hotline/message_board.go
hotline/news.go
hotline/news_test.go
hotline/server.go
hotline/server_blackbox_test.go
hotline/server_test.go
hotline/test/config/config.yaml
hotline/time.go
hotline/transaction.go
hotline/transaction_handlers.go
hotline/transaction_handlers_test.go [deleted file]
hotline/transaction_test.go
hotline/transfer_test.go
hotline/user.go
hotline/user_test.go
internal/mobius/account_manager.go [new file with mode: 0644]
internal/mobius/agreement.go [new file with mode: 0644]
internal/mobius/ban.go
internal/mobius/ban_test.go [new file with mode: 0644]
internal/mobius/config.go
internal/mobius/news.go
internal/mobius/test/config/Agreement.txt [new file with mode: 0644]
internal/mobius/test/config/Banlist.yaml [new file with mode: 0644]
internal/mobius/test/config/Files/getFileNameListTestDir/testfile-1k [new file with mode: 0644]
internal/mobius/test/config/Files/test/testfile-1k [new file with mode: 0644]
internal/mobius/test/config/Files/test/testfile-5k [new file with mode: 0644]
internal/mobius/test/config/Files/testdir/some-nested-file.txt [new file with mode: 0644]
internal/mobius/test/config/Files/testfile-1k [new file with mode: 0644]
internal/mobius/test/config/Files/testfile-8b [new file with mode: 0644]
internal/mobius/test/config/Files/testfile.sit [new file with mode: 0644]
internal/mobius/test/config/Files/testfile.txt [new file with mode: 0644]
internal/mobius/test/config/MessageBoard.txt [new file with mode: 0644]
internal/mobius/test/config/ThreadedNews.yaml [new file with mode: 0644]
internal/mobius/test/config/Users/admin.yaml [new file with mode: 0644]
internal/mobius/test/config/Users/guest.yaml [new file with mode: 0644]
internal/mobius/test/config/config.yaml [new file with mode: 0644]
internal/mobius/threaded_news.go
internal/mobius/threaded_news_test.go [new file with mode: 0644]
internal/mobius/transaction_handlers.go [new file with mode: 0644]
internal/mobius/transaction_handlers_test.go [new file with mode: 0644]