PSA: please DO NOT remove the
This will greatly slow down your source on each startup, and it has already caused me some issues due to excessive composer install reports.
Please, remove all unlink('madeline.phar'); unlink('madeline.phar.version'); codes from your sources.
madeline.phar.version and madeline.phar files in your sources.This will greatly slow down your source on each startup, and it has already caused me some issues due to excessive composer install reports.
Please, remove all unlink('madeline.phar'); unlink('madeline.phar.version'); codes from your sources.
While we all wait for MadelineProto 6, here are a few really neat fully async plugin sources for MadelineProto:
realGuys/MadelineProtoPluginSystem - A simple to use yet powerful async plugin MadelineProto source base
MohsenJS/MadelineProtoPluginSystem - A MadelineProto plugin system with support for patterns and conversations
Feel free to ping me in the groups if you have developed anything else based on MadelineProto, I will publish it on this channel!
realGuys/MadelineProtoPluginSystem - A simple to use yet powerful async plugin MadelineProto source base
MohsenJS/MadelineProtoPluginSystem - A MadelineProto plugin system with support for patterns and conversations
Feel free to ping me in the groups if you have developed anything else based on MadelineProto, I will publish it on this channel!
GitHub
GitHub - realGuys/MadelineProtoPluginSystem: A fully async plugin-friendly MadelineProto source base
A fully async plugin-friendly MadelineProto source base - realGuys/MadelineProtoPluginSystem
All main MadelineProto 6 features are ready, release coming as soon as I finish the phabel transpiler ;)
The pony behind MadelineProto officially wishes everyone a very happy 2021, with lots of interesting new APIs, languages and juicy CS theory.
As a new year's present, I've actually finished the composer integration in phabel, and stabilized the transpiler API to fully integrate it in the next release of MadelineProto.
As a new year's present, I've actually finished the composer integration in phabel, and stabilized the transpiler API to fully integrate it in the next release of MadelineProto.
GitHub
GitHub - phabelio/phabel: PHP transpiler - Write and deploy modern PHP 8 code, today.
PHP transpiler - Write and deploy modern PHP 8 code, today. - phabelio/phabel
Seriously though, all the best ponies ❤️❤️❤️
MadelineProto was updated!
MadelineProto 6 introduces ultra-fast startup with a built-in IPC server, PHP transpilation using phabel.io, MySQL/Postgres/redis database support to reduce RAM usage, and new, IDE-friendly settings.
The main event:
- MadelineProto is now transpiled using phabel.io!
Phabel.io is a PHP transpiler that allows native usage of PHP 8+ features in projects and libraries, while allowing maintainers to publish a version targeting lower versions of php.
Async await syntax is also supported!
Usage:
After git tagging a new release, just run:
💡 All your dependencies will also be transpiled to the correct PHP version. 💡
Supported PHP versions:
Syntax/feature support:
- ✅ 8.0+
- async/await syntax
Target:
- ✅ 7.1+
- 🐘 5.6, 7.0 in final testing stage.
- 💡 5.4, 5.5 support coming soon!
- Now MadelineProto has a built-in IPC server, this means:
Very fast startup for small scripts: ~0.02 seconds, before was 1-5 seconds
To use this IPC server, just use MadelineProto normally:
- New IDE-friendly settings API!
- Async MySQL/Postgres/redis integration:
Use a database to reduce memory usage to 1-5 MB even for thousands of groups!
See here for examples and documentation.
Native database integration in the event handler is also now supported!
Other brand-new features in MadelineProto 6:
- New PHP API documentation
- Updated Telegram API to layer 131
- Updated tg-file-decoder library
- New localization keys for all UI elements
- New settings for custom HTML, Javascript and CSS in login page templates
- New PSR logger API
- New session conversion API
Coming up soon:
Internal improvements:
- Many, many bugfixes, stability fixes and performance improvements
- RPC requests are containerized by default, when possible
- Complete refactoring of MTProto message subsystem
- Added a periodic garbage collector
- Implemented native PHP prime factorization (C++ factorization is still recommended using prime.madelineproto.xyz)
MadelineProto 6 introduces ultra-fast startup with a built-in IPC server, PHP transpilation using phabel.io, MySQL/Postgres/redis database support to reduce RAM usage, and new, IDE-friendly settings.
The main event:
- MadelineProto is now transpiled using phabel.io!
Phabel.io is a PHP transpiler that allows native usage of PHP 8+ features in projects and libraries, while allowing maintainers to publish a version targeting lower versions of php.
Async await syntax is also supported!
Usage:
composer require --dev phabel/phabelYou can now publish your packagist package, and it will be automatically transpiled to any PHP version supported by phabel.
After git tagging a new release, just run:
vendor/bin/phabel publish💡 Your PHP 7 users can now install your PHP 8 library 💡
💡 All your dependencies will also be transpiled to the correct PHP version. 💡
Supported PHP versions:
Syntax/feature support:
- ✅ 8.0+
- async/await syntax
Target:
- ✅ 7.1+
- 🐘 5.6, 7.0 in final testing stage.
- 💡 5.4, 5.5 support coming soon!
- Now MadelineProto has a built-in IPC server, this means:
Very fast startup for small scripts: ~0.02 seconds, before was 1-5 seconds
To use this IPC server, just use MadelineProto normally:
$API = new \danog\MadelineProto\API('session.madeline');
$API->start();This is useful for small sendMessage.php scripts, to be called from outside; for maximum performance in bots use an async event handler.
$API->messages->sendMessage(['peer' => $_POST['peer'], 'message' => $_POST['message']]);
- New IDE-friendly settings API!
- Async MySQL/Postgres/redis integration:
Use a database to reduce memory usage to 1-5 MB even for thousands of groups!
See here for examples and documentation.
Native database integration in the event handler is also now supported!
Other brand-new features in MadelineProto 6:
- New PHP API documentation
- Updated Telegram API to layer 131
- Updated tg-file-decoder library
- New localization keys for all UI elements
- New settings for custom HTML, Javascript and CSS in login page templates
- New PSR logger API
- New session conversion API
Coming up soon:
**** **IP implementation ;)Internal improvements:
- Many, many bugfixes, stability fixes and performance improvements
- RPC requests are containerized by default, when possible
- Complete refactoring of MTProto message subsystem
- Added a periodic garbage collector
- Implemented native PHP prime factorization (C++ factorization is still recommended using prime.madelineproto.xyz)
MadelineProto | Official Channel pinned «MadelineProto was updated! MadelineProto 6 introduces ultra-fast startup with a built-in IPC server, PHP transpilation using phabel.io, MySQL/Postgres/redis database support to reduce RAM usage, and new, IDE-friendly settings. The main event: - MadelineProto…»
MadelineProto | Official Channel
MadelineProto was updated! MadelineProto 6 introduces ultra-fast startup with a built-in IPC server, PHP transpilation using phabel.io, MySQL/Postgres/redis database support to reduce RAM usage, and new, IDE-friendly settings. The main event: - MadelineProto…
The Phabel commands can be used if you have a bot/library, and you want to use PHP 8 features or await in your code.
MadelineProto is already transpiled using Phabel, you don't need to run those commands to use it :)
MadelineProto is already transpiled using Phabel, you don't need to run those commands to use it :)
GitHub
GitHub - phabelio/phabel: PHP transpiler - Write and deploy modern PHP 8 code, today.
PHP transpiler - Write and deploy modern PHP 8 code, today. - phabelio/phabel
MadelineProto | Official Channel
MadelineProto was updated! MadelineProto 6 introduces ultra-fast startup with a built-in IPC server, PHP transpilation using phabel.io, MySQL/Postgres/redis database support to reduce RAM usage, and new, IDE-friendly settings. The main event: - MadelineProto…
Fixed a bug in the madeline.php build, that prevented the IPC server from starting.
Also improved the integration tests to prevent this from happening again.
Now MadelineProto really has a built-in IPC server, this means:
Very fast startup for small scripts: ~0.02 seconds, before was 1-5 seconds :D
Also improved the integration tests to prevent this from happening again.
Now MadelineProto really has a built-in IPC server, this means:
Very fast startup for small scripts: ~0.02 seconds, before was 1-5 seconds :D
Introducing MadelineProto 7!
This update is mandatory for all MadelineProto users.
Due to 64-bit user IDs and Telegram's new API TOS, starting from January 1, 2022, old MadelineProto instances will stop working completely: even now, legacy instances can't login due to
If you're using MadelineProto 1 through 6, visit the releases page to view changelogs and upgrade tips.
You can also open an issue or visit the support group if you encounter issues while upgrading.
For most usecases, no changes are needed: however, graphical clients based on MadelineProto must implement sponsored messages.
Features:
- MadelineProto 7 provides a simple cached API to work with sponsored messages:
=> getSponsoredMessages
Get sponsored messages for channel, returns a list of sponsored message objects.
=> viewSponsoredMessage
Mark sponsored message as read.
Clients must then handle fetched sponsored messages as described in the API documentation.
- Layer 135! See the API documentation for a list of changed methods and constructors in layer 131-133.
Changes in layer 133-135:
Added methods:
- account.setAuthorizationTTL
- account.changeAuthorizationSettings
- messages.getSearchResultsCalendar
- messages.getSearchResultsPositions
- messages.hideChatJoinRequest
- messages.hideAllChatJoinRequests
- messages.toggleNoForwards
- messages.saveDefaultSendAs
- channels.getSendAs
Changed methods:
- Renamed channels.deleteUserHistory to channels.deleteParticipantHistory; the old method still works.
- Added base_theme param to account.installTheme
- Added min_date, max_date params to messages.deleteHistory
- Added send_as param to messages.sendMessage, messages.sendMedia, messages.sendMultiMedia, messages.forwardMessages, messages.sendInlineBotResult
- Added request_needed, title params to messages.exportChatInvite, messages.editExportedChatInvite
- Added requested, q params to messages.getChatInviteImporters
- Renamed user_id=>participant in channels.reportSpam
Changed Constructors
- Added requests_pending param to chatFull
- Added recent_requesters param to chatFull
- Added requests_pending param to channelFull
- Added recent_requesters param to channelFull
- Added default_send_as param to channelFull
- Added request_chat_broadcast param to peerSettings
- Added request_chat_title param to peerSettings
- Added request_chat_date param to peerSettings
- Added private_forward_name param to userFull
- Added authorization_ttl_days param to account.authorizations
- Added request_needed param to chatInviteExported
- Added requested param to chatInviteExported
- Added title param to chatInviteExported
- Added request_needed param to chatInvite
- Added about param to chatInvite
- Added via_request param to channelParticipantSelf
New Constructors
- messageActionChatJoinedByRequest
- updatePendingJoinRequests
- updateBotChatInviteRequester
- inputKeyboardButtonUserProfile
- keyboardButtonUserProfile
- channelAdminLogEventActionParticipantJoinByRequest
- channelAdminLogEventActionToggleNoForwards
- channelAdminLogEventActionSendMessage
- New simplified EventHandler::startAndLoop API!
- Added support for t.me/+ invite links!
- New sponsored message API!
- Improved DB ORM API, used for example in the event handler!
- New FFI-based prime.madelineproto.xyz factorization module!
- An all new thread-safe madeline.php autoupdater!
- PHP 8.1 support!
- Zend hashmaps are now periodically reallocated to clean up RAM!
Deprecations:
- Dropped 32-bit support.
Android users can install 64-bit builds of php using Termux.
Raspberry pi users can use a 64-bit distro like archlinuxarm.org.
- madeline.php supports only php 7.1+
- composer supports only php 8+ (7.1+ support coming back soon)
Fixes:
- Fixed a side-channel reported by Theo von Arx and Kenneth G. Paterson @ ETH Zürich.
Internal improvements:
- Many, many internal bugfixes and performance improvements!
- Switched to the new RSA-OAEP-based authkey flow.
- Native openssl integration for faster crypto!
- Removed loads of legacy 32-bit hacks, greatly improving performance!
This update is mandatory for all MadelineProto users.
Due to 64-bit user IDs and Telegram's new API TOS, starting from January 1, 2022, old MadelineProto instances will stop working completely: even now, legacy instances can't login due to
UPDATE_APP_TO_LOGIN errors.If you're using MadelineProto 1 through 6, visit the releases page to view changelogs and upgrade tips.
You can also open an issue or visit the support group if you encounter issues while upgrading.
For most usecases, no changes are needed: however, graphical clients based on MadelineProto must implement sponsored messages.
Features:
- MadelineProto 7 provides a simple cached API to work with sponsored messages:
=> getSponsoredMessages
Get sponsored messages for channel, returns a list of sponsored message objects.
=> viewSponsoredMessage
Mark sponsored message as read.
Clients must then handle fetched sponsored messages as described in the API documentation.
- Layer 135! See the API documentation for a list of changed methods and constructors in layer 131-133.
Changes in layer 133-135:
Added methods:
- account.setAuthorizationTTL
- account.changeAuthorizationSettings
- messages.getSearchResultsCalendar
- messages.getSearchResultsPositions
- messages.hideChatJoinRequest
- messages.hideAllChatJoinRequests
- messages.toggleNoForwards
- messages.saveDefaultSendAs
- channels.getSendAs
Changed methods:
- Renamed channels.deleteUserHistory to channels.deleteParticipantHistory; the old method still works.
- Added base_theme param to account.installTheme
- Added min_date, max_date params to messages.deleteHistory
- Added send_as param to messages.sendMessage, messages.sendMedia, messages.sendMultiMedia, messages.forwardMessages, messages.sendInlineBotResult
- Added request_needed, title params to messages.exportChatInvite, messages.editExportedChatInvite
- Added requested, q params to messages.getChatInviteImporters
- Renamed user_id=>participant in channels.reportSpam
Changed Constructors
- Added requests_pending param to chatFull
- Added recent_requesters param to chatFull
- Added requests_pending param to channelFull
- Added recent_requesters param to channelFull
- Added default_send_as param to channelFull
- Added request_chat_broadcast param to peerSettings
- Added request_chat_title param to peerSettings
- Added request_chat_date param to peerSettings
- Added private_forward_name param to userFull
- Added authorization_ttl_days param to account.authorizations
- Added request_needed param to chatInviteExported
- Added requested param to chatInviteExported
- Added title param to chatInviteExported
- Added request_needed param to chatInvite
- Added about param to chatInvite
- Added via_request param to channelParticipantSelf
New Constructors
- messageActionChatJoinedByRequest
- updatePendingJoinRequests
- updateBotChatInviteRequester
- inputKeyboardButtonUserProfile
- keyboardButtonUserProfile
- channelAdminLogEventActionParticipantJoinByRequest
- channelAdminLogEventActionToggleNoForwards
- channelAdminLogEventActionSendMessage
- New simplified EventHandler::startAndLoop API!
- Added support for t.me/+ invite links!
- New sponsored message API!
- Improved DB ORM API, used for example in the event handler!
- New FFI-based prime.madelineproto.xyz factorization module!
- An all new thread-safe madeline.php autoupdater!
- PHP 8.1 support!
- Zend hashmaps are now periodically reallocated to clean up RAM!
Deprecations:
- Dropped 32-bit support.
Android users can install 64-bit builds of php using Termux.
Raspberry pi users can use a 64-bit distro like archlinuxarm.org.
- madeline.php supports only php 7.1+
- composer supports only php 8+ (7.1+ support coming back soon)
Fixes:
- Fixed a side-channel reported by Theo von Arx and Kenneth G. Paterson @ ETH Zürich.
Internal improvements:
- Many, many internal bugfixes and performance improvements!
- Switched to the new RSA-OAEP-based authkey flow.
- Native openssl integration for faster crypto!
- Removed loads of legacy 32-bit hacks, greatly improving performance!
core.telegram.org
Telegram API Terms of Service
We welcome all developers to use our API and source code to create Telegram-like messaging applications on our platform…
MadelineProto | Official Channel pinned «Introducing MadelineProto 7! This update is mandatory for all MadelineProto users. Due to 64-bit user IDs and Telegram's new API TOS, starting from January 1, 2022, old MadelineProto instances will stop working completely: even now, legacy instances can't…»
MadelineProto | Official Channel
Introducing MadelineProto 7! This update is mandatory for all MadelineProto users. Due to 64-bit user IDs and Telegram's new API TOS, starting from January 1, 2022, old MadelineProto instances will stop working completely: even now, legacy instances can't…
As usual, bot.php on github always contains a constantly-updated example source for the latest version of MadelineProto :)
GitHub
MadelineProto/examples/bot.php at v8 · danog/MadelineProto
Async PHP client API for the telegram MTProto protocol - danog/MadelineProto
MadelineProto | Official Channel
Introducing MadelineProto 7! This update is mandatory for all MadelineProto users. Due to 64-bit user IDs and Telegram's new API TOS, starting from January 1, 2022, old MadelineProto instances will stop working completely: even now, legacy instances can't…
Note: it seems like some versions of the
eio extension may cause a corruption of the phar file, make sure to disable it to avoid issues.
MadelineProto | Official Channel
Note: it seems like some versions of the eio extension may cause a corruption of the phar file, make sure to disable it to avoid issues.
Re-added php 7.1+ support for composer releases; madeline.php always supported php 7.1+.
As usual, legacy PHP versions are supported but php 8.1 is recommended for huge performance improvements with JIT and now amphp fibers :D
Also note that madeline.php phar builds will not behave properly with opcache, so use composer builds to make use of opcache and JIT on PHP 8+.
As usual, legacy PHP versions are supported but php 8.1 is recommended for huge performance improvements with JIT and now amphp fibers :D
Also note that madeline.php phar builds will not behave properly with opcache, so use composer builds to make use of opcache and JIT on PHP 8+.
Fixed Permission Denied errors on Windows caused by flock platform quirks.
This fixes madeline.php and downloads to files as well.
This fixes madeline.php and downloads to files as well.
Forwarded from Daniil Gentili's news channel (Daniil Gentili)
Happy New Year everyone!
As a small present for any Blender user subscribed to this channel, I just created an AUR package for BlendNet: an open source plugin that allows distributing CPU and GPU renders across multiple machines.
BlendNet natively integrates with major cloud providers like AWS, Azure or GCP, and also supports self-hosting your own render farm.
My blendnet AUR package provides systemd units and configuration to quickly deploy your own self-hosted CUDA GPU-accelerated Blendnet render farm.
Feel free to check out the new arch BlendNet wiki page for more info: https://wiki.archlinux.org/title/Blender#BlendNet
Have fun Blendering in the new year!
As a small present for any Blender user subscribed to this channel, I just created an AUR package for BlendNet: an open source plugin that allows distributing CPU and GPU renders across multiple machines.
BlendNet natively integrates with major cloud providers like AWS, Azure or GCP, and also supports self-hosting your own render farm.
My blendnet AUR package provides systemd units and configuration to quickly deploy your own self-hosted CUDA GPU-accelerated Blendnet render farm.
Feel free to check out the new arch BlendNet wiki page for more info: https://wiki.archlinux.org/title/Blender#BlendNet
Have fun Blendering in the new year!
Forwarded from NEXTA Live
Россия, 2022 год