Makes project to be packaging-ready and executable, includes some list of refactoring and improvements#7
Makes project to be packaging-ready and executable, includes some list of refactoring and improvements#7o-murphy wants to merge 3 commits into
Conversation
04e4199 to
d2b039d
Compare
33eb64a to
7ea6e29
Compare
203b617 to
11e535d
Compare
|
@kaganisildak Bro, I'm disappointed, you made the project open and available to the public, but you ignore it. You give no reply to PR and issues. You added changes to original code with no fixes of existing issues and discovered problems and with no merges of other contributors fixes. Also I see you directly copied part of my Readme.md with no even functionality realised. I am waiting for a response. |
|
@o-murphy First off, you’re totally right and I’m really sorry. I haven’t been as responsive as the project deserves. I’ve been dealing with some health issues and, with the little time I had, I focused almost exclusively on getting Noise protocol support in place. That ended up pushing everything else to the back burner—PRs, issues, and even merging fixes from contributors like you. Noise support just landed, so if you could update your PRs to match the new structure, I’d really appreciate it. Once those updates are in, I’ll go through each PR, test, and get them merged as quickly as I can. |
|
@kaganisildak Okay i'll update it |
* sources refactored to `src-based` layout * fixed bare `except` linter warnings * updated `README.md` * added .gitignore * build system configured * added app entry-point * added dev deps * added CI workflows for `mypy` and `ruff check` * sources formatted with `ruff format` * ChatMode dataclass refactored to Chat dataclass with mode: ChatMode(Enum) field and appropriate factory methods, Codebase cleanup * Logging and CLI args parsing * uses built-in python `logging` * uses argparse for CLI args parsing to setup debug mode, logging, get help and usage * Improved nickname management * added `-n/--name` CLI argument * if name is not provided it would be randomized * added `/h` alias to `/help` * add setuptools-csm for version extraction from git * prevent empty input handling * add /q alias for /exit * revert ver number * Use zlib for compression by default * lz4 should be optional, install via `.[full]` dependency group * improved messages formatting (adjusted to original app format stype) * BitchatMessage.from_bytes and BitchatPacket.from_bytes factory classmethods * replaced `==` equalisation to `is` for enums checking
|
@kaganisildak The conflicts resolving done! But there the new issue after "noise encryption" changes: DM chats are completely not working between python and android app v0.7..v0.7.3 Idk why but message never received from python and from android client. It happen even without adding changes from #7 |
|
@o-murphy did android version got noise support? I didnt check yet but im testing python version with ios app |
Not yet!, but anyway you can merge my test and then merge changes from #7, It is not mutate existing functionality for now and just extends it and makes development/usage environment reproducible and friendly |
|
@kaganisildak |
35a4355 to
62c10d0
Compare
|
@kaganisildak I got iOS app, I can now test it |
Changes
src-basedlayoutexceptwarningsREADME.md.gitignoremypyandruff checkruff formatChatModerefactored to much more pythonic approach and type annotatedloggingargparsefor CLI args to setup debug mode, logging, get cli and usage help-n/--nameCLI argumentstate.jsonit would be randomized/halias to/helpzlibbuilt-in by default (lz4is optional now)pytestadded as --dev dependency, tests_refactoredaioconsole.ainput()> Pytest CI runs (link)
Known issues
python-bitchatandandroidAlso I can