Commit Graph

63 Commits (5272347374ee70ffe04a3244d347c392d625dd13)

Author SHA1 Message Date
hikariatama 5272347374 Actually add tsec nonick... 2023-05-21 17:55:23 +00:00
hikariatama 429ee48118 1.6.3
- Cosmetical changes
2023-05-21 17:35:46 +00:00
hikariatama b8c59fbc92 1.6.3
- Add custom security groups
- Add automatic NoNick for tsec methods
2023-05-15 13:54:25 +00:00
hikariatama 206f70d1a8 Patch with minor problems fixes 2023-03-29 18:18:16 +00:00
hikariatama 77cbb013f8 Deepsource fixes 2023-03-23 21:33:50 +00:00
hikariatama 10934072bd 1.6.2
- New watcher tags: `no_pm`, `no_channels`, `no_groups`, `no_inline`, `no_stickers`, `no_docs`, `no_audios`, `no_videos`, `no_photos`, `no_forwards`, `no_reply`, `no_mention`, `mention`, `only_reply`, `only_forwards`
2023-03-16 20:30:31 +00:00
hikariatama 16fcecd0bd 1.6.2
- Completely remove security groups `sudo` and `support`
2023-03-06 11:25:13 +00:00
hikariatama fb1e1c5058 1.6.2
- Minify static assets in web
- Replace snowfall with sakura flowers
- Update Termux installation design
2023-03-04 10:32:28 +00:00
hikariatama e70cc35e45 1.6.2
- Add guidelines to `--no-web` login
- Fix session not being saved after logging in using QR without 2fa
2023-03-03 20:25:46 +00:00
hikariatama 9a0e4b1b38 1.6.2
- Fix security issue with edited channel messages
- Add interface to interact with raw pointer data (`.data` attribute)
- Translation fixes
- Randomize `device_model` to bypass fraud detection
- Pass proper device information to Telegram
- Update `hikka-tl` in accordance to upstream telethon v1
- Update `hikka-pyro` in accordance to upstream pyrogram
- Rename packages so that they don't conflict with originals
- Partially migrate to `pathlib`
- Code cleanup
2023-03-01 15:36:02 +00:00
hikariatama eb0786e690 1.6.1
- Remove miyahost from official hosts
- Fix memory leak when using 1.6.0 inside Docker
- Fix userbot dying after restart on Docker
- Root out stats mechanism
2023-02-01 16:36:48 +00:00
hikariatama 27aff587f6 1.6.0
- Add credits to developers and translators
- Add support for multiple usernames
- Add topic guesser in `send_message`, `send_file` in order for old modules to work properly
2022-11-19 16:40:07 +00:00
hikariatama 8e59bc056f 1.6.0
- Fix `EntityLike` validator
- Fix stringifying error in logging
- Fix command escaping when using layout translated prefix
- New `utils.answer_file` method
- New `utils.get_cpu_usage` method
- New `utils.get_ram_usage` method
- New QR login flow
- New license banners
- New error-specific messages for RPCErrors, FloodWaitErrors, NetworkErrors
- Send `start` hook to `InfiniteLoop` instances with `autostart` flag only after `client_ready`
- Replace `__getattr__` in `Module` object with properties for commands and handlers
- Move from monkey-patching concept of filling modules' attributes to native one
- Partial Tatar translation pack
- Logging tweaks
- Add `caller` field to inline units
- Add ability to get module help by command alias
2022-11-19 07:52:53 +00:00
hikariatama 20edeff8aa 1.6.0
- More fixes related to topics
- Fix Kazakh validators
2022-11-09 18:35:09 +00:00
hikariatama 42ea601a59 1.6.0
- New `utils.atexit` method
- New restart process, which correctly kills all child processes and threads
- Update to Hikka-TL==1.2.12 and Hikka-Pyro==2.0.60
2022-11-08 01:11:02 +00:00
hikariatama 97a219b5fc 1.6.0 2022-11-05 15:38:59 +00:00
hikariatama 1911fdba67 1.5.1
- Fix `--no-web` arg
- Fix `tglog_level` config option of module `Tester`
- Fix duplicated monkey on login page
- Fix shit modules with uppercase commands
- Add physical `Enter` button to login page on mobile devices
- Add `--proxy-pass` arg
- Add `utils.invite_inline_bot` method
- Add `utils.iter_attrs` method
- Add `@loader.raw_handler` decorator
- Add `invite_bot` parameter to `utils.asset_channel`
- Add support for `String` validator's `min_len` and `max_len` parameters
2022-10-10 13:45:33 +00:00
hikariatama 9d913b86ee Deepsource + sourcery fixes 2022-09-26 12:31:37 +00:00
hikariatama 066f7a46a2 1.5.0
- Fix `on_change` param processing in config
- Fix `hikka.types.CoreOverwriteError`
- Fix incorrect commit in info for users with multiple origins
- Fix error with module configs not being updated to values which were set by user
- Fix core unload and core overwrite errors not being raised correctly
- Fix config descriptions in `APIRatelimiter`
- Fix `CoreOverwriteError` handling
- Fix `TelegramID` validator to work with values between 2^32 and 2^64 - 1
- Fix web authorization messages being sent twice
- Fix duplicated animations in web
- Fix installation banner being shown after auth in web
- Fix form placeholder button being shown when not necessary
- Add `@loader.tag(thumb_url="")` decorator
- Add new inline help format
- Add internal method for debug calls (`.invoke`)
- Add Internal Debug Method (IDM) to inspect cache (`inspect_cache`)
- Add IDM `inspect_modules`
- Add IDM `clear_cache`, `clear_entity_cache`, `clear_fulluser_cache`, `clear_fullchannel_cache`, `clear_perms_cache`
- Add IDM `reload_core` to automatically reload core modules from disk
- Add `hikka.validators.MultiChoice`
- Add `utils.get_args_html` to get arguments of command with HTML
- Add switch to mute @BotFather only once in hikka inline
- Add ability to forbid certain tl methods using `.config APIRatelimiter`
- Add new web interface design
- Clean type-hint mess, document utils and other methods, which were undocumented
- Remove redundant non-working code from configurator
- Remove redundant useless params `--hosting`, `--no-nickname`, `--token`, `--web-only`, `--docker-deps-internal`
- Migrate to lazy string interpolation in logging
- Reformat the whole code to match the desired code style
- Rename `APIRatelimiter` -> `APILimiter`
- Enable `joinChannel` and `importChatInvite` calls-by-external-modules blockage for all users by default
- Change inline query placeholder to `user@hikka:~$` + legacy migration
2022-09-18 15:47:09 +00:00
hikariatama e90b91ba9d 1.4.1
- Create new type :obj:`hikka.tl_cache.CustomTelegramClient` to avoid monkeypatching
- Add `ttl` param for :method:`hikka.utils.asset_channel`
- Add support for custom branches (e.g. for beta testers and users, who rolled back)
- Fix automatic modules reactions
- Fix :method:`hikka.inline.utils.Utils._find_caller_sec_map`
- Refactor validators to be classes, not functions
- Refactor typehints
2022-08-27 16:55:15 +00:00
hikariatama 89040b6e2f 1.4.0
- Fix grep for messages bigger than 4096 UTF-8 characters
- Rename `func` tag to `filter` due to internal python conflict with dynamically generated methods
- Partially rework security unit
- Internal refactoring and typehints
2022-08-21 21:48:19 +00:00
hikariatama 44080cabf6 1.3.2
- Fix tags from false-positive ignores
2022-08-15 14:30:21 +00:00
hikariatama 06917f188f 1.3.1
- Add caching to `utils.asset_channel`
- Add `channel` param to `utils.asset_channel` to actually create a channel, not supergroup
- Add watcher tags: `startswith`, `endswith`, `contains`, `regex`, `func`, `from_id`, `chat_id`
- Add buttons to `Choice` validator in `.config`
- Add new types: `PointerInt`, `PointerList`, `PointerTuple`, `PointerDict`, `PointerStr`, `PointerBool`
- Add `db.pointer`
- Add support for multiaccounting on Heroku
- Add ability to edit only reply markup or only media of message, w/o touching the actual text
- Add support for `@loader.command`-like commands in inline caller finder
- Add `utils.find_caller`
- Add possible cause of error in logs (module and method)
- Add `client.get_perms_cached` to cache native `client.get_permissions`
- Change errors format in web to more human-readable
- Change visible line of traceback in logs to be the last one
- Fix bug with custom_bot option on installation page
- Fix `RecursionError` in entity cacher
- Fix command execution with space between prefix and command
- Fix `utils.answer` for forwarded messages
- Remove `heroku3` from classic requirements, along with heroku installation code snippet
- Remove `termux_requirements.txt`
2022-08-08 20:32:54 +00:00
Sourcery AI 59fab0a092 'Refactored by Sourcery' 2022-08-03 18:03:12 +00:00
hikariatama 183ef61bd7 1.3.0
- Remove unnecessary prefix in command fail message
2022-08-03 17:35:50 +00:00
hikariatama 0840efa969 1.2.13
- Add `@loader.command`, `@loader.watcher`, `@loader.inline_handler`, `@loader.callback_handler`
- Add support for multiple watchers
- Add support for command translate directly in decorator (`@loader.command(ru_doc="Привет")`)
2022-08-03 13:12:46 +00:00
hikariatama 51fbb0968c 1.2.13
- Add watcher tags: `no_commands`, `only_commands`, `out`, `in`, `only_messages`, `editable`, `no_media`, `only_media`, `only_photos`, `only_videos`, `only_audios`, `only_docs`, `only_stickers`, `only_inline`, `only_channels`, `only_groups`, `only_pm`. See docs for detailed info
- Add `utils.mime_type` to get mime_type of file in message
2022-08-03 12:05:17 +00:00
hikariatama f7eb19b3f0 1.2.13
- Add `@loader.tag("only_commands")` for watchers. Captures only userbot commands
- Add `@loader.tag("editable")` for watchers. Captures only messages, which can be edited
- Replace token obtainment mechanism with callback instead of inline
2022-08-03 10:47:48 +00:00
hikariatama cc09c8bdde 1.2.13
- Add `@loader.tag("out")` for watchers. Captures only outgoing events
- Add `@loader.tag("in")` for watchers. Captures only incoming events
- Add `@loader.tag("only_messages")` for watchers. Captures only messages (not service events)
- Attempt to fix cached entities mixing up
- Do not update modules in db when secure boot is active
- Refactor members getterr
- Add uptime to `.info`
- Refactor `.help`, add version to single mod help message
- Fix TypeError in `.e` when returning tl class instead of object
2022-08-02 22:24:21 +00:00
hikariatama a460f94a8f 1.2.13
- Patch stats so they correctly recognize links
- Fix bug when `...` is being replaced with `..` (unnecessary prefix escape)
- Add `@loader.tag`
- Add `@loader.tag("no_commands")` for watchers. Ignores commands
- Do not cut off prefix in `message.message`, `message.text` and `message.raw_text`
- Partially rework events processing and dispatching
2022-08-02 16:34:59 +00:00
hikariatama 5a5a5c55b5 Revert "1.2.13"
This reverts commit d00f6960db.
2022-08-02 16:21:37 +00:00
hikariatama d00f6960db 1.2.13
- Patch stats so they correctly recognize links
- Fix bug when `...` is being replaced with `..` (unnecessary prefix escape)
- Add `@loader.tag`
- Add `@loader.tag("no_commands")` for watchers. Ignores commands
- Do not cut off prefix in `message.message`, `message.text` and `message.raw_text`
- Partially rework events processing and dispatching
2022-08-02 16:20:38 +00:00
Sourcery AI c7bea2a5e0 'Refactored by Sourcery' 2022-07-19 20:29:32 +00:00
hikariatama 63c6d354ce Part of v1.2.11 update
See changelogs for more info
2022-07-16 09:59:19 +00:00
hikariatama 9ddfef305f Part of v1.2.11 update
See changelogs for more info
2022-07-15 22:04:09 +00:00
hikariatama 66426025e0 Patch with minor fixes
- Refactorment
- Deepsource suggestions
- License update
2022-07-07 20:24:20 +00:00
hikariatama f40a4eba09 1.2.8
- Add automatic webpage bot unblock in heroku waker
- Add secure boot feature
- Update native heroku postgre database saving method
- Add easter egg to `.ping`
- Add platform-specific errors while installing requirements
- Change postgresql column `id` datatype from int32 to int64 + legacy migration
- Change proxypass tunnel behavior - now it only opens on setup and via command `.weburl`
- Lavhost-specific web url
- Meaningful errors in web
- ⚠️ Drop `fast_uploader` support. It will be completely removed in next major update
- Deepsource fixes
- Multiple languages with priority
2022-07-02 22:04:27 +00:00
hikariatama 91db334a89 1.2.7
- Add automatic proxy pass
- Fix --no-web argument parsing
- Fix localization error in updater
- Print out only INFO statements to stdout
- Add rotating file handler (logfile with max 10MB size)
- Show web endpoint on startup if available
- Fix gallery `inline_message_id` error
- Add support for `custom_buttons` in `inline.list`
- Add support for `custom_buttons` in `inline.gallery`
- Smart fast_uploader (Do not use hard download on files smaller than 1 MB)
- Attempt to parse `unit_id` from passed `InlineCall` object in `inline._delete_unit_message`
- Reformatting
- Change typehints
- Show list-like values in formatted way in config
- Properly escape html in config
- Split config to pages and categories (core \ non-core)
- Properly edit dictionary config (iter)
- Properly remove items from series options through built-in configurator
- Remove warning from web by replacing coroutine generation with `functools.partial`
2022-06-17 22:22:30 +00:00
hikariatama 7e5b9ad58d Patch
- Fix non-working inline in `.logs`
- Fix unit deletion via "action" attr
- Fix module load error, if invalid entity was specified in #meta developer
- Hopefully fix config
- Remove notification about setattr error in dispatcher
2022-06-12 15:23:48 +00:00
hikariatama e382cbc7a5 1.2.5
- Add additional exit on restart to avoid port block
- Add unloaded module name on `.unloadmod`
- Add `banner_url` config var to `HikkaInfo`
- Add `loader.validators.Hidden`
- Add `websockets` dependency, so users can load hikarichat on Heroku
- Add `reply_markup` kwarg to `utils.answer`. This will automatically add buttons to plain message or edit buttons of inline unit
- Add suggestion to join developer's channel on module load if available
- Add `client.force_get_entity` to bypass Hikka Cacher
- Add clickable link to loaded module message if specified meta developer is channel
- Add support of `action` attributes for buttons ("action": "close", "action": "unload", "action": "answer")
- Add log splitter between different clients of instance (if possible)
- Fix inline events `IndexError`
- Fix text in inline input
- Fix translation issue in HikkaConfig
- Fix `.dump`
- Fix modules list reset if you perform `.dlmod` when userbot is not yet fully loaded
- Update links in README
- Remove nalinor from official repos until new modules appear
2022-06-12 09:46:48 +00:00
hikariatama c410f97089 1.2.3
- Add field `action` to inline buttons. You can pass there `close` to close inline form, `unload` to unload it from memory, `answer` & `text` | `show_alert` to answer callback query with message
- Update docstrings in inline to match unified format
- Add surrogate error ignorance in dispatcher
- Fix :obj:`EntityCache` caching username `@None`
- Return :obj:`InlineMessage` in `hikka.inline.gallery.Gallery.gallery`
- Fix typo in docstring
2022-06-03 12:11:49 +00:00
hikariatama 07c3cb15e6 1.2.2
- Update gitignore so git doesn't count shit on heroku
- Visual heroku fixes in updater
- Deepsource fixes
- Add `utils.get_entity_url`, `utils.get_message_link`, `utils.remove_html`, `utils.get_kwargs`
- Disable modules debugging on heroku
- Add `.nonickusers`, `.nonickcmds`, `.nonickchats`
- Update blacklist command docs
- Fix grep removing everything in <...>
- Add `loader.validators.RegExp`
- Automatically convert `None` to empty string \ zero integer etc., if validator is specified
- More meaningful errors in `inline_handler`s
- More meaningful errors in `self.inline.form`, `self.inline.gallery`, `self.inline.list` on user-side
- Allow editing\adding media to form via `call.edit`. Currently supported: `photo`, `file`, `video`, `audio`, `gif`
2022-06-02 16:15:08 +00:00
hikariatama 0a17cefbab Patch for users with non-translatable prefix (e.g. "+", "-" etc) 2022-05-12 12:39:08 +00:00
hikariatama e713035099 1.1.20
- Add legacy fs modules migration
- Add `ready` asyncio Event to help track userbot loading process from outside
- Replace logging in loader with module-dependent one
- Fix some bugs and bug-rist issues
- Refactor code
- Send big logs as file, rather than an infinite series of messages
- HTML-escape `# meta developer:`
- Make `self.animate` available for core modules and modules, loaded from file
2022-05-11 17:46:36 +00:00
hikariatama 9a070479de Minor fixes 2022-05-07 21:59:30 +00:00
hikariatama b282bee88d 1.1.17
- Fix some weird looking code
- Fix some emojies and translation issues
- Add native lavHost support (.restart, .update) via internal API
- Add utils.get_lang_flag()
2022-05-07 19:38:52 +00:00
hikariatama ed686343bb 1.1.16
- Fix config docstrings and html escaping
- Fix typehints
- Fix some security staff
- Add additional bot username check
- Add additional foolchecks
- Migrate to walrus operator where necessary
- Remove redundant code block
- Add default aiogram parse mode
- Rename some core stuff which was not supposed to be used by external developers
2022-05-07 16:40:29 +00:00
hikariatama c7dfb35270 1.1.14
- Fix utils.asset_channel()'s archive param
- Fix defect, which forced installation from additional trusted repo, rather than from primary one if the file names are matched
- Add avatar to utils.asset_channel() which automatically sets chat pic on creation (be careful, bc it leads to floodwaits, if you do it often)
- Add automatic hikka folder processing
- Add avatars to all official repo modules, which require asset chats (and add them to hikka folder)
- Rework database assets chat processing
- Replace some minor stuff like texts and emojies
- Force many core modules to use self.get\self.set rather than digging the db
- Add .fconfig command to forcefully set known config value if it doesn't fit in Telegram query
- Add dataclasses for module config (read the docs for more info), bc old way is blasphemy
- Automatically save config value if it was set to module self.config[option] = value
- Add utils.is_serializable(), utils.set_avatar()
- Send very large (over 4096*10 symbols) output in a file rather than in an inline list
2022-05-05 17:39:09 +00:00
hikariatama 1b96f8f8cc 1.1.13: Fix bugs, clean code, replace redundant methods. More info in t.me/hikka_ub 2022-05-04 17:18:45 +00:00
hikariatama 02fd9ad602 Fix some stuff for deepsource 2022-04-29 17:57:56 +00:00