Commit Graph

423 Commits (b36350e0894f198069f06d9226fe1f5946bd626e)

Author SHA1 Message Date
hikariatama 16fcecd0bd 1.6.2
- Completely remove security groups `sudo` and `support`
2023-03-06 11:25:13 +00:00
hikariatama cd9a52724a 1.6.2
- Update Termux installation design
- Whitelist internal requests in APILimiter
- Start web when using `.weburl` and `--no-web` is used
- Add inline commands targeted security rules control
2023-03-05 16:13:45 +00:00
hikariatama 7d2c833635 Whitelist GetChannelDifferenceRequest from api protection 2023-03-04 12:00:58 +00:00
hikariatama 70d57b7cdf correct emojis in api_protection 2023-03-04 11:35:03 +00:00
hikariatama 7252f3ba2e Add some proper error handling 2023-03-04 11:30:50 +00:00
hikariatama e917222ff6 1.6.2
- Add QR login using ASCII for noweb
- Fix `.tsecrm`
2023-03-02 13:03:34 +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 5545d86c07 Formatting 2023-02-04 23:12:18 +00:00
hikariatama fac8b47db6 1.6.1
Add French translation pack
2023-02-04 22:45:28 +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 fd918af4f4 - Root automatic reactions out
- Add randomized delays (1-3 seconds) between heavy userbot actions
- Add randomized delays (<1 second) to each API request if .api_fw_protection is enabled
- Update README with scary disclaimer
- Update web finisher banner with delay warning
2023-01-03 21:03:40 +00:00
hikariatama cbc00985c8 Deepsource fixes 2023-01-01 22:39:42 +00:00
hikariatama 028d678f5c Patch regarding lavHost 2023-01-01 20:54:31 +00:00
hikariatama c3c8eefe38 1.6.0 2022-12-26 13:24:30 +00:00
hikariatama ae6a3627b9 1.6.0 2022-11-24 11:10:25 +00:00
hikariatama faec12364b 1.6.0
- Add local storage fallback in case remote end is not available
- Add `self.invoke` method for modules
2022-11-24 10:29:41 +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 5ee7eaf755 1.6.0
- Minor fixes
2022-11-09 21:21:26 +00:00
hikariatama 20edeff8aa 1.6.0
- More fixes related to topics
- Fix Kazakh validators
2022-11-09 18:35:09 +00:00
hikariatama e6503e95a6 1.6.0
- Minor translation fixes
- Fix `utils.get_topic`
- Add local and proxied url to command `.debugpin`
- Rename command `.debugpin` -> `.debugger`
2022-11-08 22:35:02 +00:00
hikariatama c1c7cd637a 1.6.0
- Fix overall userbot runtime
- Add Kazakh translation pack
- Update emojis
- Minor translation fixes
2022-11-08 21:23:18 +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 66e5b6c63d 1.6.0
Styling
2022-11-05 17:19:31 +00:00
hikariatama 97a219b5fc 1.6.0 2022-11-05 15:38:59 +00:00
hikariatama 7f49424edb Update translation packs 2022-10-24 13:12:13 +00:00
hikariatama 89d9940bb1 Completely drop Okteto support 2022-10-23 14:24:56 +00:00
hikariatama e422522f3d Fix translation flaws 2022-10-23 12:19:00 +00:00
hikariatama 15c2e3465f 1.6.0
🌘🌘🌘 1.6.0 beta released

- Bring support for Dragon Userbot modules
- Make `db` attribute of `Modules` public
- Mess up with some translations
- Fix `.helphide` command
- Fix visual bug with phone input field in web
- Drop Okteto support
- Show Hikka platform and version in Telegram sessions list
- New type `DragonModule`
- New argument of `get_prefix` - `userbot`. Pass in `"dragon"` to get its prefix
- New attribute of `Modules` - `dragon_modules`
- New attribute of `CustomTelegramClient` - `pyro_proxy`. Use pyrogram methods natively
- New appearence of `help` command
- New module loading animation
- New README.md with installation steps and new web recording
2022-10-23 11:38:06 +00:00
hikariatama 792840aa20 Deepsource fixes 2022-10-17 16:09:00 +00:00
hikariatama 91f95e412b Deepsource fixes 2022-10-17 15:50:52 +00:00
hikariatama c018c4641b Patch for rtl languages 2022-10-17 13:48:33 +00:00
hikariatama fd9268e06d Add support for rtl platform emojis
Fix translations
Add language->countrycode translation for Saudi Arabia
2022-10-17 13:23:24 +00:00
hikariatama cc62daf498 Update translations 2022-10-17 07:06:40 +00:00
hikariatama b296385106 Replace command docs 2022-10-16 11:57:09 +00:00
hikariatama b074b3f634 Replace japanese country code with japanese language code Fix multilevel validators for cases, where the desired translation is not available 2022-10-16 11:53:06 +00:00
hikariatama 5dd29bca0c Add Japanese, Korean, Spanish and Arabic translate packs 2022-10-16 10:13:19 +00:00
hikariatama fb330cc08b Translate validators, inline, update existing translations, add new 2022-10-15 21:22:14 +00:00
hikariatama 6e6f79aa67 Update translations 2022-10-15 17:08:48 +00:00
hikariatama b1d4ddbeeb Update translations 2022-10-15 16:39:01 +00:00
hikariatama 79a337b809 Fix dynamic reload for modules without @loader.tds 2022-10-15 16:06:03 +00:00
hikariatama 50847c075e Force quickstart message 2022-10-15 15:58:12 +00:00
hikariatama bdf4cd1f1e 1.5.3
- Add Uzbek, Turkish, German and Hindi translation packs
- Fix module and command docs not being translated on-the-flight
2022-10-15 15:56:28 +00:00
hikariatama e90367c6ef 1.5.1
- Fix `--no-web` arg
- Fix `tglog_level` config option of module `Tester`
- Add `--proxy-pass` arg
- Add `utils.invite_inline_bot` method
- Add `invite_bot` method to `utils.asset_channel`
- Add support for `String` validator's `min_len` and `max_len` parameters
2022-10-06 10:48:25 +00:00
hikariatama 9d913b86ee Deepsource + sourcery fixes 2022-09-26 12:31:37 +00:00
hikariatama 54c568a56b 1.5.0
- Remove junk collector from tl cacher to keep old records so devs can access them w\o making new requests
- Remove FTG License in fully changed files
- Add official GoormIDE support
2022-09-25 16:50:35 +00:00
hikariatama c1fdf9b0b4 1.5.0
- Add ability to create custom IDMs
- Add fields `flags` and `description` to `RegExp` validator
- Add fields `min_len` and `max_len` to `String` validator
- Add `Emoji` validator
- Add `EntityLike` validator
2022-09-23 11:13:59 +00:00
hikariatama 3f2cff2a0f 1.5.0
- Add full trace locals length limit
- Rework full trace locals to hashable converter
2022-09-22 11:04:10 +00:00
hikariatama c5e9b4ce5f 1.5.0
- Add new code input design
- Add new 2fa password input design
- Allow user to send code only once to prevent FloodWaits
2022-09-22 10:46:48 +00:00
hikariatama 3186fe154f 1.5.0
- Completely drop Heroku support due to legacy code, limits and removing of free tier
2022-09-20 16:55:12 +00:00
hikariatama 039acb33db Add new animated banner 2022-09-20 06:33:49 +00:00
hikariatama 18a83a748d 1.5.0
- Add ability to set custom emojis in `.info` using command `.setinfo`. In order to use it, remove buttons using config
- Patch internal help module with bugfixes
2022-09-19 13:18:35 +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 30876ab5cf Deepsource fixes 2022-09-03 21:06:11 +00:00
hikariatama c3553deed8 Part of 1.4.1 update 2022-09-03 20:32:56 +00:00
hikariatama e035a9d11d Fix `Ignore` in update notifier 2022-08-27 17:11:26 +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 9373478391 Add Railway support 2022-08-23 19:40:25 +00:00
hikariatama 8f4ba2c170 Deepsource fixes 2022-08-22 18:33:38 +00:00
hikariatama ea24b1afc9 New 1 commit to hikariatama/Hikka: Fix typo 2022-08-22 13:33:58 +00:00
hikariatama c07c1e9f78 Fix presets 2022-08-22 13:32:36 +00:00
hikariatama dc2e86e782 1.4.0
- Add `Presets` core module
- Add handler for `/start` command in inlinebot with userbot info
- Remove custom :obj:`BotInlineMessage` hook for :method:`answer`
2022-08-22 13:28:11 +00:00
hikariatama c815a3eda0 1.4.0
- Fix tsec
- Rework security
- Fix fullstack error
2022-08-21 22:57:02 +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 ab8130ed60 1.4.0
- Add platform-specific Hikka emojis to premium users
- Add codepaces to `utils.get_named_platform`
2022-08-21 18:36:33 +00:00
hikariatama 8534c0cafd 1.4.0
- Add `-f` param to `.restart` and `.update`
2022-08-21 16:57:09 +00:00
hikariatama 33c3d3b72b Fix `.eval` 2022-08-21 15:05:46 +00:00
hikariatama aeddd7a870 1.4.0
- Publish hikka telethon fork and migrate to it in requirements, thereby fixing the deployment error on Heroku
- Add custom emojis filter to `utils.remove_html`
- Fix `client.get_perms_cached`
- Fix translation flaw in `HikkaSecurity`
- Fix `.uninstall_hikka` being accessible by sudo
- Fix `utils.find_caller` for :method:`hikka.inline.utils.Utils._find_caller_sec_map`
- Add more animated emojis to modules
- Add targeted security for users and chats (`.tsec`)
- Add support for `tg_level` in `.config Tester`
2022-08-21 14:55:51 +00:00
hikariatama ac6655edcc 1.3.2
Replace error type
2022-08-15 17:37:19 +00:00
hikariatama bdad473eb8 1.3.2
- Add `on_change` param to `loader.ConfigValue`
- Rework commands\inline handlers\callback handlers\watchers registration and unload process
- Rework tags processing
- Add junk collector aka reloader to `Modules`
2022-08-15 16:43:34 +00:00
hikariatama 1c161417cd - Fix `.info` for some users
- Fix inline lists for `.help` and other commands, which include animated emojis
2022-08-14 22:03:55 +00:00
hikariatama 8b04707353 Fix tags error in aiogram 2022-08-14 21:38:42 +00:00
hikariatama 99f834e4dd Fix strings 2022-08-14 21:34:50 +00:00
hikariatama a71b1ca4c9 1.3.1
- Add toggle for custom emojis
2022-08-14 20:35:45 +00:00
hikariatama 8f3debaadb 1.3.1
- Bring more animated emojis to core modules
2022-08-14 20:15:15 +00:00
hikariatama 84942232da 1.3.1
- Add text validation to info (automatically remove broken tags)
- Add `utils.validate_html` to remove broken tags from text
- Remake all core modules to decorators
- Force custom hikka telethon installation with 144 layer support
- Add animated emojis to core modules strings
2022-08-14 18:49:20 +00:00
hikariatama edfe1fdd15 1.3.1
check changelog for more info
2022-08-09 20:38:36 +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
hikariatama a4b6125618 `Black` refactored 2022-08-03 18:50:28 +00:00
Sourcery AI 59fab0a092 'Refactored by Sourcery' 2022-08-03 18:03:12 +00:00
hikariatama 21d0b5fc45 Deepsource fixes 2022-08-03 17:57:59 +00:00
hikariatama 7b0cd6e32d 1.3.0
- Fix typo in hikka_config
2022-08-03 17:43:08 +00:00
hikariatama 1af726b4b5 1.3.0
- Update quickstart
- Fix minor bugs
2022-08-03 16:20:25 +00:00
hikariatama bd5aaa1082 Increase reaction delay in order to prevent floodwaits 2022-08-03 14:46:39 +00:00
hikariatama b4d1ef7db1 1.3.0
- Automatically react to module post in developer's channel if possible
2022-08-03 14:41:19 +00:00
hikariatama 62a4cc5541 1.2.13
- Add support for :obj:`aiogram.types.Message` in `utils.get_chat_id`
- Add human-readable error message when trying to unload core module
2022-08-03 13:31:32 +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 eb33b70939 1.2.13
- Add support for `# requires` metatag in libraries
- Add support for `# scope: hikka_min` metatag in libraries
- Send stats of libraries, if enabled in `.settings`
- Replace library existence check from source url to classname
- Add `self.inline` to libraries
2022-08-02 23:17:47 +00:00
hikariatama bef9968a74 1.2.13
- Remove stupid db lock in `.e`
- Allow `.security` and `.inlinesec` only to owner by default
2022-08-02 22:29:33 +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
hikariatama 0cd4d619c3 Fix inner entities in HikkaInfo for default config 2022-07-27 18:33:52 +00:00
hikariatama e70086f67b Fix `{upd}` tag in HikkaInfo (do not wrap it into entities) 2022-07-27 18:31:47 +00:00
hikariatama 1413def49e 1.2.12
- Automatically patch reply markup in inline form in the way, that edit stays available anyway
- Do not unload inline form automatically, keep it for 10 minutes instead
- Use `telethon.utils.resolve_inline_message_id` to remove inline unit
- Add `self.request_join`
- Allow developers to declare `client_ready` without arguments
2022-07-27 16:54:58 +00:00
hikariatama f46b81ddce Add `await` to folder adder in Updater 2022-07-19 20:37:26 +00:00
hikariatama e477a07147 Black formatting after sourcery fixes 2022-07-19 20:32:22 +00:00
Sourcery AI c7bea2a5e0 'Refactored by Sourcery' 2022-07-19 20:29:32 +00:00
hikariatama 9d88819cb5 Deepsource fixes 2022-07-19 20:22:43 +00:00
hikariatama 8b632fdbd2 Part of v1.2.11 update 2022-07-19 16:37:12 +00:00
hikariatama 1f6c44e903 Part of v1.2.11 update
Check changelogs for more info
2022-07-16 21:56:43 +00:00
hikariatama 6637977f0c Part of v1.2.11 update
- Remove Database and TelegramClient from local variables in stack
- Remove redundant parameters in `send_ready_one` and similar
2022-07-16 10:24:15 +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
Sourcery AI 90163f8cfc 'Refactored by Sourcery' 2022-07-13 20:29:27 +00:00
hikariatama 5dd942992e Fix multiple spaces in `.help -f` for modules without commands 2022-07-13 20:26:10 +00:00
hikariatama 3b18c068fb Show actual module name in <core>, <file> and <string> origins 2022-07-13 20:16:35 +00:00
hikariatama 1af82d85b2 1.2.10
- Completely drop fast_uploader support
- Add :method:`utils.import_lib`
- Add protection for :obj:`CheckChatInviteRequest` in forbid_joins
- Add ability to search modules by classname in :method:`self.lookup`
- Add anonymous stats of modules loading (YOU CAN DISABLE THEM IN `.settings`)
- Add telethon objects formatting in `.e`
- Add :obj:`loader.SelfSuspend` to disable module commands and watcher loading, e.g. if library is unavailable
- Add migration native modules db storage from `strings["name"]` to classname. ⚠️ Might break some stuff in the beginning in rare cases
- Fix heroku-specific config error
2022-07-13 18:39:19 +00:00
hikariatama 66426025e0 Patch with minor fixes
- Refactorment
- Deepsource suggestions
- License update
2022-07-07 20:24:20 +00:00
hikariatama 5c4fba228a Patch for Updater 2022-07-06 19:25:50 +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 879aefa1ed 1.2.6
- Fix processing of `# scope: hikka_min`
- Add `forbid_joins.py` (to use it, download module from official repo with the same name)
2022-06-12 18:45:02 +00:00
hikariatama fd749d3189 Minor fixes 2022-06-12 17:14:22 +00:00
hikariatama 212a1a3f59 Suppress any exceptions on web stop 2022-06-12 15:25:10 +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 19ebbe85a0 Fix false hidden config 2022-06-12 10:25:55 +00:00
hikariatama 966ea0979a Fix inline, migrate to new close handlers 2022-06-12 10:20:45 +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 491a3b3f37 [minor] Replace imgur link with github 2022-06-09 22:08:27 +00:00
hikariatama 07970bbcdf Patch for loader 2022-06-07 16:51:52 +00:00
hikariatama ac8e7371e9 1.2.4
- Show current options in module config
- Add new validators: `loader.validators.Union`, `loader.validators.NoneType`
2022-06-06 16:54:31 +00:00
hikariatama 3725d6ed25 Patch
- Add additional Heroku deps
- Fix `load_module` reattempt
2022-06-05 17:24:18 +00:00
hikariatama 1374ddb09a Make `redis` optional for non-heroku users 2022-06-05 16:44:53 +00:00
hikariatama 534fb32c2a Heroku Patch
- New Heroku dependencies list in Pipfile
- External Redis database support
- Mask more options in logs and .e output
- Remove psycopg2 from requirements.txt
2022-06-05 16:30:16 +00:00
hikariatama 30542381a8 Revert "[DO NOT INSTALL] - Testing Heroku-redis migration"
This reverts commit 18a0dac15d.
2022-06-05 13:34:14 +00:00
hikariatama 18a0dac15d [DO NOT INSTALL] - Testing Heroku-redis migration 2022-06-05 13:17:12 +00:00
hikariatama dc7434e036 Patch
- New installation banner
- Add automatic blob->raw convertion in loader
2022-06-05 12:58:08 +00:00
hikariatama a37263a5d8 Addition to latest commit 2022-06-02 22:31:07 +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 30e26fe117 Add ts to logs, refactor logging unit 2022-06-01 23:45:45 +00:00
hikariatama f622bf93c8 Add heroku specific update 2022-06-01 22:27:40 +00:00
hikariatama 071f88db5e 1.2.1
- Add termux specific requirements
- Ignore `heroku3` import error on non-heroku platforms
- Refactor `heroku.py` app searching algorithm
- Refactor postgresql database saving process
- Fix heroku restart message not being edited
- Add heroku waker
- Make `hikka-` app naming optional
2022-06-01 22:14:55 +00:00
hikariatama 9873cc50c9 Update installation script. Hide session and postgresql in eval 2022-05-31 12:36:32 +00:00
hikariatama d0dae477c6 Update README, deepsource fixes 2022-05-31 11:07:13 +00:00
hikariatama e529165c37 Patch for help and heroku
- Show modules without commands in `.help -f`
- Update `app.json`
2022-05-31 10:27:41 +00:00
Sourcery AI b85bdc3b26 'Refactored by Sourcery' 2022-05-30 21:35:09 +00:00
hikariatama 0db5607e49 Fix Heroku restart 2022-05-30 21:25:06 +00:00
hikariatama 1e7c0201d9 Heroku multiple accounts database, fixes 2022-05-30 20:58:20 +00:00
hikariatama 867f2c542d Fix heroku session saving flow 2022-05-30 19:59:13 +00:00
hikariatama 1288220c3f Rework session reading mechanism 2022-05-30 17:17:49 +00:00
hikariatama 6cde31579f Testing Heroku deployment 2022-05-28 07:26:31 +00:00
hikariatama a837428cea Remove `HikkaDL` as redundant 2022-05-26 18:07:13 +00:00
hikariatama 46fe403fae Replace huge mess of memory dicts with a single `_units` one, fix `TelegramID` validator 2022-05-26 16:59:39 +00:00
hikariatama 89b3295454 Patch, fixing HikkaConfig
- Allow adding and removing multiple items in config
- Add `ast.literal_eval` to config
- Add explicit typecheck for `mod.config`
2022-05-26 08:54:50 +00:00
hikariatama 3fc77b5529 1.1.28
- Fix non-working param `share_link` in loader
- Assure logging bot is a member of logchat
- Do not store partial phone number in session, only ID
- Rework fast uploader so more types can be passed. For more information check code docstrings and typehints
- Rework installer so it properly displays which action is currently happening
- Fix `Series` not accepting one item
- Show upcoming commit in update and warn if update is not required
- Add reset to default button to config
- Merge `hikka_logger.py` with `test.py`
- Localization
- Allow opening options of specific mod via arguments in `.config`
- Add `add` and `remove` buttons to `Series` params
- Do not unload form immediately, if `ttl` param was passed explicitly
2022-05-25 16:32:39 +00:00
hikariatama a0aacf459e Hotfix for broken `hikka_info.py`
Bug occured of you tried to open config after loading module from file
2022-05-21 18:49:25 +00:00
hikariatama ec647fe34e 1.1.27
- Reorder the steps of parsing in `loader.validators.Series`
- Fix aliases (yet another time)
- Fix minor bug in `loader.validators.Series`, which allowed to put empty string in it
- Fix some translation issues and type conversion ones
- Fix incorrect modules loading if multiple links end with specified name
- Fix type conversion bug in `loader.validators.String`
- Fix typehints flaws
- Add additional fields to `inline.form`: `gif`, `file`, `mime\_type`, `video`, `location`, `audio`
- Add reset-to-default action, if config is invalid while loading the userbot to prevent fall
- Add verification emoji to `input` to let user know, that new value was processed
- Add badge showing how much the last restart took
- Add `min_len`, `max_len`, `fixed_len` params to `loader.validators.Series`
- Add option to show downloaded module link in result message of `.dlmod`
- Add explicit database save after applying new config
- Add hint to web
- Add code of conduct
- Add changelog
- Remove redundant code in `database.py` as it literally does nothing
2022-05-21 18:34:45 +00:00
hikariatama 34bbb44a3a 1.1.26
- Hopefully finally fix aliases being reset after restart
- Remove redundant internal hook `_client_ready2`
- Show user evaluated version of config value instead of pre-comp one
- Add validator for each item to `Series`, remove `separator`
- Add new validator: `TelegramID`
2022-05-20 19:02:27 +00:00
hikariatama eae0c413f0 1.1.25
- Add separate messages on `restart` and `full_restart`. Second one is shown, when all modules are loaded
- Replace `.uninstall_hikka` with full uninstallation (remove bot, asset chats and folder)
- Clean code
- Suggest update if it is required by module
- New validator: `Float`
- Buttons in `.config` of option is a boolean value
- Drop support of argument `positive` in `loader.validators.Integer` as it can be easily replaced with `minimum=0`
- Update semantic generator in validators
- Yet another protection from monkey-patching
2022-05-20 13:42:39 +00:00
hikariatama 059d531d39 1.1.24
- Add `String` and `Link` validators
- Fix `Series` validator
- Reformat core modules to use validators
2022-05-19 19:26:03 +00:00
hikariatama 6caa7a0e4e 1.1.23
- Add config validators (`loader.validators`, `Boolean`, `Integer`, `Choice`, `Series`)
- Change info layout
- Add `.uninstall_hikka`
- Add `.clearlogs`
- Refactor code
- Fix minor bugs
- Fix aliases being reset after restart (aliases will now be available only when userbot is fully loaded)
2022-05-19 18:55:37 +00:00
hikariatama 90b5ab0b4d Minor updates
- Update dockerfiles
- Update readme
- Suppress some logging shit
- Hopefully fix dl buttons
- New banner in info
2022-05-18 18:37:43 +00:00
hikariatama 96afa2fb33 Minor fixes
- Add additional config options to `HikkaInfo`
- Delete all update messages in update notifier
2022-05-16 15:41:15 +00:00
hikariatama 8f5e879dc4 Minor bugfixes
- Make uvloop optional
- Fix `utils.escape_html`
- Add nickname check when creating bot (less than 64)
- Add banner in `.info`
2022-05-16 05:37:58 +00:00
Sourcery AI 9a0a5a5543 'Refactored by Sourcery' 2022-05-14 20:44:57 +00:00
hikariatama a6d01c6cdb 1.1.22
- Fix bugs related to web, more specifically: Session save timing, adding more than 1 account and proper restart
- Rework Dockerfiles so they work properly
- Add `uvloop` so the asyncio runs faster
- Add `Docker` badge to info
- Improve Okteto performance by adjusting settings in `okteto-stack.yml`
- New ascii_faces in utils
- Typehints update
- Fix Okteto pinger messages removal
2022-05-14 17:46:52 +00:00
hikariatama 5aad62610c Update Dockerfiles, prepare core modules to work with Docker properly 2022-05-13 16:09:21 +00:00
hikariatama 9cd320e91e 1.1.21
- Fix translation typos
- Add nonick suggestion when adding user to group
- Add entity caching
2022-05-12 18:42:53 +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 0893947d2c 1.1.19
- Fix infinite loops
- Add client-specific check of fs modules
- Use classname of module, if it is possible to parse it with ast
- Rework infinite loops stopping and modules instance placement
2022-05-11 11:28:10 +00:00
hikariatama 3d9d243d1b 1.1.18
- Add notification about not exact match in help
- Add automatic progress bar generation to `self.fast_upload` and `self.fast_download`
- Make `Mod` ending in modules class name not mandatory
2022-05-09 18:14:58 +00:00
hikariatama 3599d260cd Fix updater 2022-05-08 20:03:12 +00:00
hikariatama 14b15b65e8 Add ignorance of modules links case 2022-05-08 19:52:53 +00:00
hikariatama 94822ef54a Add error handlers to core modules 2022-05-08 19:40:43 +00:00
hikariatama 9a070479de Minor fixes 2022-05-07 21:59:30 +00:00
hikariatama 15075282d6 Add message processor 2022-05-07 19:41:26 +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 2b1799492a Revert "Add lavHost-specific restart and update processors"
This reverts commit 3735d668bd.
2022-05-06 17:26:00 +00:00
hikariatama 3735d668bd Add lavHost-specific restart and update processors 2022-05-06 17:23:21 +00:00
hikariatama 334643178c 1.1.15
- Add automatic database autofix and rollback if database was broken by module
- Fix translation issues
- Warn user, if he tries to view .help when userbot is not yet fully loaded
- Create alias for `_generate_markup` (`generate_markup`)
- Fix modules which are deleting from helphide
- Automatically save db if it was edited via classic dictionary methods
2022-05-06 12:13:01 +00:00
hikariatama b33d823056 Add self.lookup; Fix config message parsing; Fix hikka-backups pfp 2022-05-05 18:06:40 +00:00
hikariatama 526df8532f Create hikka folder only once 2022-05-05 17:51:18 +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 05a92a9be7 Remove link prefix on primary repo modules 2022-05-04 17:44:29 +00:00
hikariatama d7428880e1 Fix commands parsing 2022-05-04 17:32:07 +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 b7a69b4a72 Bulk localization 2022-05-03 13:54:47 +00:00
hikariatama 440092e690 Fix LoadError handling 2022-05-02 15:55:58 +00:00
hikariatama 5ef3647643 Make API Protection optional 2022-05-01 06:38:44 +00:00
hikariatama 855379bd75 Add restart lock on protection, add protection from protections' flood in bot 2022-05-01 06:32:36 +00:00
hikariatama 70719ac6eb Increase threshold 2022-04-30 21:51:49 +00:00
hikariatama a5b7dcb8dc Add API protection 2022-04-30 21:41:44 +00:00
hikariatama 02fd9ad602 Fix some stuff for deepsource 2022-04-29 17:57:56 +00:00
hikariatama df3a2befd3 1.1.10: Add ability to download modules from additional repos (e.g. .dlmod weather) 2022-04-29 07:07:54 +00:00
hikariatama db9edf8d75 Fix HikkaDL as mentioned in https://github.com/hikariatama/Hikka/issues/13 2022-04-28 11:55:58 +00:00
Hikari 8c02fd5b1d
1.1.9: Fix `_generate_markup` (hooks setup), add `switch_inline_query|current_chat` parsers 2022-04-26 13:40:40 +00:00
Hikari f56a380fc6
1.1.8: Add `on_dlmod` hook, fix translations, fix okteto pinger and some minor stuff
More info in t.me/hikka_ub
2022-04-25 13:10:34 +00:00
Hikari 185457140d Minor fixes 2022-04-23 21:34:48 +00:00
Hikari afaeea5ab7
Add comparsation link to update notifications 2022-04-23 15:15:22 +00:00
Hikari 81f7cfeda6 Fix attr error `_find_data_channel` 2022-04-23 15:08:17 +00:00
Hikari 1b846a6e1b
Return best match if no full-match occurred in `.help` 2022-04-23 12:30:37 +00:00
Hikari d74aaa99fd
Remove weird "-> None" typehints, idk why I left them for so longs 2022-04-23 12:12:52 +00:00
Hikari 791f1d1774
Make core modules loader data accessible via inspect 2022-04-23 12:09:12 +00:00
Hikari 4bd1d302fa
1.0.7: Add `self.animate` function to all modules, which allows you to easily create fancy animations 2022-04-23 11:26:14 +00:00
Hikari f4f7e8e0b9
1.1.4: `utils.get_git_hash()`, fix stuff, add debugging mode for modules. For more info check t.me/hikka_ub 2022-04-22 12:51:17 +00:00
Hikari c4501a5a4a
1.0.3: Finally (hopefully) fix config 2022-04-18 13:20:12 +00:00