Releases: RomainL972/turing-chat
Releases · RomainL972/turing-chat
File Sharing and Better Parsing
Added
- File uploading and saving
- Log messages for file uploading and saving
- Translations for file uploading and saving
- File encryption tests
Changed
- Better command parsing using pyparsing
Fixed
- The program no longer use 100% of one CPU thanks to select in connexion
- File encryption key is now RSA encrypted
- Add cryptography to requirements.txt
- Handle error when file received without key
Class Names Standard
Added
- Can connect to last host with settings
- Beginning file encryption support
Changed
- Changed many class and file names so they match each other
- Separate Backend and RSAKey classes in different files
- Connexion sleeps 1 second in main loop to reduce CPU use
Fixed
- Now support multiple messages in one packet
- Don't try to stop server when already stopped
- TuringChat now handles username changes instead of CLI/GUI
- More client connect exception handled
- GUI screen getting empty when full fixed
Trust, Translations and Persistent settings
Added
- Trust functionnality
- Translation of all messages in French
- Translation of all messages in English
- Persistent settings for username and language
- Translation language can be changed during execution
Fixed
- Messages received when connexion not trusted are buffered instead of diplayed
- Handle UPnP port mapping removal exception
- Don't print starting server when immediatly closing it
Usernames and 2.0
Added
- Username functionnality
Changed
- Instead of importing everything, go back to
from tkinter import *
- The callback to print messages is now by default in logging mode
Fixed
- Make msg_list readonly in gui
- The program won't crash when an unknown message is received anymore
Exit Fixes
Added
- sendQuit callback in API, called when "/quit" entered
Fixed
- add threading in GUI so it doesn't hang and prints messages
API changes
Added
- Indication when message comes from other person in the GUI
Changed
- API now always has a client and a server, not always connected, no change in functions
- Client can be restarted
- Server doesn't automatically listen for connections
- Change minimum resolution in GUI
Fixed
- Connexion makes itself inaccessible in API before closing
- Better formatting in gui.py
- Replace Turinchat by TuringChat
- Fixed test.decrypt in test_rsa
First Release Version
Added
- Argument for /connect in the API
- First Release Version
Unit Tests
Added
- Unit tests for backend.py file using pytest
- Switch to decide if backend should get private key on init
Fixed
- Delete connexion in API when client or server closed
- Handle exception when adding port mapping in upnp
Changelog and fixes
Added
- example code using the API (sample.py)
- this CHANGELOG.md
Fixed
- Update README to reflect changes in program
- Make UPnP module conditional so it works on Windows
- Removed all print() calls outside cli.py
- Handle server already listening on server start
Public API
Added
- api.py, interface between cli/gui and everything else
Changed
- Moved most code of cli.py to api.py in Interface class
Removed
- noPrint arg in printMessage function