Official MadelineProto channel. Italian Channel: @MadelineProtoIta Group: @pwrtelegramgroup
MadelineProto was updated (8.4.16)!
This release fixes the root cause of call hangs/timeouts, fixes request cancellation & a few other minor details.
MadelineProto was updated (8.4.10)!
This release features a major internal refactoring of the message system and the auth state machine, bringing major stability and performance improvements by removing legacy code and switching to a new reactive model.
This reactive model avoids some previously problematic state transitions, for example during network issues, by handling the connection state machine using a reactive actor model.
I've created a new reactive programming library based on the actor model, and it will be published as a separate library once it is mature enough.
Additionally, the docker image is now based on Debian, and features a patched version of PHP with jemalloc for improved performance.
Fixes:
- Fix handling of certain network and auth issues
- Fix some QR code login issues
- Reduce CPU usage by switching to linked lists instead of zend hashmaps where possible (previously, usage of zend hashmaps forced periodic reallocation to avoid memory leaks caused by frequent removal of keys)
- Multiple other fixes and improvements
MadelineProto was updated (8.4.6)!
This release fixes some layer issues by adding support for miniforums (aka direct channel messages, implemented as forums), using a temporary positive range that doesn't conflict with the other ID ranges.
This means that the chat IDs you will get for direct channel messages are most likely temporary and may change with a later update to match the bot API, if the bot API implements them too i.e. via the business chat API.
This release also fixes the reply method and replyToMsgId and topicId in sendMessage/sendVideo/etc... methods.
Among other layer-based deprecations, the Button objects were removed from the legacy onUpdateXXX event handlers (switching back to the raw API arrays), please use the new object-based event handler (filters) to receive the Button objects.
When receiving keyboards from methods like getMessages, use wrapMessages to obtain abstracted Message objects with Button objects.
Psalm v6 Deep Dive: Copy-on-Write + dynamic task dispatching
Psalm is one of the biggest and most powerful PHP Static analysis tools, featuring exclusive features like security analysis.
In Psalm 6.1, I implemented a major refactoring of multithreaded mode (automatically enabled on Linux/Mac OS) based on amphp/parallel, which greatly reduced analysis speeds!
But why was it so effective? To understand, one must first understand that in the vast majority of PHP multithreaded analysis tools, jobs are distributed statically between threads on startup, which means that towards the end of the analysis, a lot of workers just sit there doing nothing, just waiting for the other workers processing bigger and heavier files to finish.
However, the new multithreaded mode now allows Psalm to dynamically distribute jobs to workers immediately, as soon as they finish processing their current task, reducing idle worker time and maximizing CPU usage, thus reducing the overall runtime!
Implementation wasn't as easy as just plugging in amphp/parallel, because Psalm relies heavily on the copy-on-write semantics of fork(): indeed, Psalm's multithreaded mode was quite fast even before the refactoring because it doesn't have to copy all type information to all workers when spawning them, as when workers are spawned using the fork() syscall, the entire memory is not copied to the forked process.
Instead, it is copied only when a memory page is modified by the forked process, which means that unless workers start modifying large amounts of type information (which usually happens pretty rarely, as most of that data is immutable after Psalm's scan phase), most of the memory is not copied, leading to large performance improvements.
amphp/parallel does not support using fork() to spawn workers out of the box, however I managed to add support using a custom context class (taking care to avoid some edge cases around reused file descriptors, which can cause issues with the event loop).
The maintainer of amphp was kind enough to begin integration of Psalm's fork context inside of parallel itself after I pinged him, which means amphp users will soon be able to make use of Psalm's fork context to improve worker spawning performance with copy-on-write fork() semantics.
This release also adds an additional check to ensure VM overcommitting (the feature which allows copy-on-write optimizations) is enabled in the OS when running Psalm, by ensuring that the vm.overcommit_memory
kernel setting is always set to 1.
~~~
This post is the first of a series of technical deep dives into Psalm v6's performance improvements, which will be released over the next weeks, subscribe to @danog_blog to always stay up to date on the latest Psalm news and developments!
The first series of posts I'll be adding here will be some technical deep dives into the performance improvements I've made in Psalm v6, can't wait to share them all with you!
Читать полностью…P.S. A stable release for Psalm v7 is coming super soon, subscribe to the @psalmphp channel for news and updates!
Читать полностью…Changed Constructors:
- Added video_cover param to inputMediaUploadedDocument
- Added video_timestamp param to inputMediaUploadedDocument
- Added video_cover param to inputMediaDocument
- Added video_timestamp param to inputMediaDocument
- Added video_cover param to inputMediaDocumentExternal
- Added video_timestamp param to inputMediaDocumentExternal
- Added bot_verification_icon param to user
- Added send_paid_messages_stars param to user
- Added bot_verification_icon param to channel
- Added send_paid_messages_stars param to channel
- Added stargifts_available param to channelFull
- Added paid_messages_available param to channelFull
- Added bot_verification param to channelFull
- Added stargifts_count param to channelFull
- Added report_delivery_until_date param to message
- Added paid_message_stars param to message
- Added reactions_are_possible param to messageService
- Added reactions param to messageService
- Added video_cover param to messageMediaDocument
- Added video_timestamp param to messageMediaDocument
- Added upgraded param to messageActionStarGift
- Added refunded param to messageActionStarGift
- Added can_upgrade param to messageActionStarGift
- Added upgrade_msg_id param to messageActionStarGift
- Added upgrade_stars param to messageActionStarGift
- Added from_id param to messageActionStarGift
- Added peer param to messageActionStarGift
- Added saved_id param to messageActionStarGift
- Added charge_paid_message_stars param to peerSettings
- Added registration_month param to peerSettings
- Added phone_country param to peerSettings
- Added name_change_date param to peerSettings
- Added photo_change_date param to peerSettings
- Added display_gifts_button param to userFull
- Added bot_verification param to userFull
- Added send_paid_messages_stars param to userFull
- Added disallowed_gifts param to userFull
- Removed premium_gifts param from userFull
- Added video_cover_photo param to webPage
- Added bot_verification param to chatInvite
- Added verifier_settings param to botInfo
- Added conference_call param to phoneCallWaiting
- Added conference_call param to phoneCallRequested
- Added conference_call param to phoneCallAccepted
- Added conference_call param to phoneCall
- Added conference_call param to phoneCallDiscarded
- Added title_noanimate param to dialogFilter
- Added title_noanimate param to dialogFilterChatlist
- Added display_gifts_button param to globalPrivacySettings
- Added noncontact_peers_paid_stars param to globalPrivacySettings
- Added disallowed_gifts param to globalPrivacySettings
- Added conference_from_call param to groupCall
- Added include_upgrade param to inputInvoiceStarGift
- Added peer param to inputInvoiceStarGift
- Removed user_id param from inputInvoiceStarGift
- Added until param to emojiStatus
- Added title_noanimate param to chatlists.chatlistInvite
- Added rights param to connectedBot
- Removed can_reply param from connectedBot
- Added rights param to botBusinessConnection
- Removed can_reply param from botBusinessConnection
- Added stargift_upgrade param to starsTransaction
- Added paid_messages param to starsTransaction
- Added premium_gift_months param to starsTransaction
- Added upgrade_stars param to starGift
Deleted Constructors:
- premiumGiftOption
- emojiStatusUntil
- userStarGift
- payments.userStarGifts
MadelineProto v9 is next!
Regarding MadelineProto: like for Psalm, I also now take support contracts for MadelineProto, which also help with the development of MadelineProto.
Support contracts can cover development of MadelineProto projects (only for projects that respect the Telegram ToS), support for MadelineProto issues and development of additional MadelineProto features.
See here for info, pricing and contact information!
Happy New Year everyone!
Best wishes for a happy and peaceful new year, and lots of fun with MadelineProto :)
I can't wait to show you all I'm cooking for 2025: MadelineProto v9, Psalm v6 and much more! ❤️
MadelineProto was updated (8.4.1)!
This release fixes webhost support.
Fixes:
- Fix webhost support (PHP 8.2+)
- Fix sponsored messages
- Improve sponsored message API docs
MadelineProto was updated (8.4.0)!
Star and subscribe also to the MadelineProto repo on GitHub to stay up to date on all the latest releases!
Fixes:
- Fix peer database issues by @danogentili
- Fix handling of rate limiting and other errors during file uploads, fixing upload hangs by @danogentili
- Now wait()ing a RateLimitError will only wait until the exact expiration date of the rate limit by @danogentili
- Add proper error when uploading empty files by @danogentili
- Fix ChannelParticipant::newParticipant default value by @Piagrammist
- Avoid inactivity timeouts when uploading files with RemoteUrl by @danogentili
- Make the $message param of CallbackQuery::answer nullable by @mtalaeii
- Fix GOAWAY errors by bumping amphp/http-client
Features:
- Add full support for star payments with the new object-based DialogGiftStars, DialogStarGift updates by @mtalaeii in #1582
- Add support fo commands (automatically and optionally postfixed with the current bot's username) with FilterBotCommand by @mtalaeii in #1587
- Added the getWaitTimeLeft method and expires property to all RateLimitErrors, to obtain the exact time when the rate limit will expire by @danogentili
- Update to layer 195
New Methods:
- messages.viewSponsoredMessage
- messages.clickSponsoredMessage
- messages.reportSponsoredMessage
- messages.getSponsoredMessages
- messages.savePreparedInlineMessage
- messages.getPreparedInlineMessage
- messages.searchStickers
- bots.updateUserEmojiStatus
- bots.toggleUserEmojiStatusPermission
- bots.checkDownloadFileParams
- bots.getAdminedBots
- bots.updateStarRefProgram
- payments.botCancelStarsSubscription
- payments.getConnectedStarRefBots
- payments.getConnectedStarRefBot
- payments.getSuggestedStarRefBots
- payments.connectStarRefBot
- payments.editConnectedStarRefBot
Changed Methods:
- Added referer param to contacts.resolveUsername
- Added allow_paid_floodskip param to messages.sendMessage
- Added allow_paid_floodskip param to messages.sendMedia
- Added allow_paid_floodskip param to messages.forwardMessages
- Added allow_paid_floodskip param to messages.sendMultiMedia
- Added fullscreen param to messages.requestWebView
- Added fullscreen param to messages.requestSimpleWebView
- Added fullscreen param to messages.requestAppWebView
- Added fullscreen param to messages.requestMainWebView
- Added peer param to stats.getBroadcastRevenueStats
- Removed channel param from stats.getBroadcastRevenueStats
- Added peer param to stats.getBroadcastRevenueWithdrawalUrl
- Removed channel param from stats.getBroadcastRevenueWithdrawalUrl
- Added peer param to stats.getBroadcastRevenueTransactions
- Removed channel param from stats.getBroadcastRevenueTransactions
- Added peer param to stories.searchPosts
Deleted Methods:
- channels.viewSponsoredMessage
- channels.getSponsoredMessages
- channels.clickSponsoredMessage
- channels.reportSponsoredMessage
New Constructors:
- inputPrivacyKeyStarGiftsAutoSave
- privacyKeyStarGiftsAutoSave
- inputPrivacyValueAllowBots
- inputPrivacyValueDisallowBots
- privacyValueAllowBots
- privacyValueDisallowBots
- starsTransactionPeerAPI
- messages.botPreparedInlineMessage
- messages.preparedInlineMessage
- botAppSettings
- starRefProgram
- connectedBotStarRef
- payments.connectedStarRefBots
- payments.suggestedStarRefBots
- starsAmount
- messages.foundStickersNotModified
- messages.foundStickers
MadelineProto was updated (8.3.2)!
Features:
- Update to layer 188
- Bump PHP version of docker image
- Add editHide field to Messages
- AsyncOrm: Allow specifying custom serializers in OrmMappedArray attributes
Fixes:
- Support @
s in FilterCommand
- Clear entries from the username database when the corresponding peer database entry is removed
- Fix minor Poll wrapping bug
- Ensure typing actions are broadcasted to the group, not directed to the sender
- Fix getEventHandler when passing the class name of the main event handler class
- Allow passing no language tag in <pre>
tags
- Fixes etag hash generation (also adding support for string values)
- Fix a broadcast issue, by starting the IPC server immediately when first creating a session, instead of waiting for the next restart.
- Pre-upload media when broadcasting for improved performance
- Improve cancellation logic
New Methods:
- messages.sendPaidReaction
- messages.togglePaidReactionPrivacy
- messages.getPaidReactionPrivacy
- payments.getStarsSubscriptions
- payments.changeStarsSubscription
- payments.fulfillStarsSubscription
- payments.getStarsGiveawayOptions
Changed Methods:
- Added subscription_pricing param to messages.exportChatInvite
- Added subscription_expired param to messages.getChatInviteImporters
- Added paid_enabled param to messages.setChatAvailableReactions
- Added signatures_enabled param to channels.toggleSignatures
- Added profiles_enabled param to channels.toggleSignatures
- Removed enabled param from channels.toggleSignatures
- Added media param to channels.clickSponsoredMessage
- Added fullscreen param to channels.clickSponsoredMessage
- Added subscription_id param to payments.getStarsTransactions
New Constructors:
- inputFileStoryDocument
- messageActionPrizeStars
- updateBotPurchasedPaidMedia
- updatePaidReactionPrivacy
- keyboardButtonCopy
- channelAdminLogEventActionToggleSignatureProfiles
- channelAdminLogEventActionParticipantSubExtend
- inputInvoiceChatInviteSubscription
- inputStorePaymentStarsGiveaway
- reactionPaid
- prepaidStarsGiveaway
- starsSubscriptionPricing
- starsSubscription
- messageReactor
- starsGiveawayOption
- starsGiveawayWinnersOption
Changed Constructors:
- Added payload param to inputMediaPaidMedia
- Added signature_profiles param to channel
- Added subscription_until_date param to channel
- Added paid_reactions_available param to channelFull
- Added alt_documents param to messageMediaDocument
- Removed alt_document param from messageMediaDocument
- Added stars param to messageMediaGiveaway
- Added stars param to messageMediaGiveawayResults
- Added stars param to messageActionGiveawayLaunch
- Added stars param to messageActionGiveawayResults
- Added video_codec param to documentAttributeVideo
- Added subscription_expired param to chatInviteExported
- Added subscription_pricing param to chatInviteExported
- Added can_refulfill_subscription param to chatInvite
- Added subscription_pricing param to chatInvite
- Added subscription_form_id param to chatInvite
- Added privacy_policy_url param to botInfo
- Added subscription_until_date param to channelParticipant
- Added subscription_until_date param to channelParticipantSelf
- Added sub_extend param to channelAdminLogEventsFilter
- Added media param to sponsoredMessage
- Added top_reactors param to messageReactions
- Added stars_prize param to payments.giveawayInfoResults
- Added stars param to boost
- Added withdrawal_enabled param to broadcastRevenueBalances
- Added reaction param to starsTransaction
- Added subscription_period param to starsTransaction
- Added giveaway_post_id param to starsTransaction
- Added subscriptions param to payments.starsStatus
- Added subscriptions_next_offset param to payments.starsStatus
- Added subscriptions_missing_balance param to payments.starsStatus
MadelineProto was updated (8.2.1)!
This updates MadelineProto to layer 185.
New Methods:
- messages.requestMainWebView
- bots.getPopularAppBots
- bots.addPreviewMedia
- bots.editPreviewMedia
- bots.deletePreviewMedia
- bots.reorderPreviewMedias
- bots.getPreviewInfo
- bots.getPreviewMedias
- payments.getStarsRevenueStats
- payments.getStarsRevenueWithdrawalUrl
- payments.getStarsRevenueAdsAccountUrl
- payments.getStarsTransactionsByID
- payments.getStarsGiftOptions
- stories.searchPosts
Changed Methods:
- Added bots_app param to contacts.getTopPeers
- Added effect param to messages.saveDraft
- Added compact param to messages.requestWebView
- Added compact param to messages.requestSimpleWebView
- Added compact param to messages.requestAppWebView
- Added ascending param to payments.getStarsTransactions
- Added limit param to payments.getStarsTransactions
New Constructors:
- inputMediaPaidMedia
- messageMediaPaidMedia
- messageActionPaymentRefunded
- messageActionGiftStars
- updateBusinessBotCallbackQuery
- updateStarsRevenueStatus
- topPeerCategoryBotsApp
- inputStorePaymentStarsTopup
- inputStorePaymentStarsGift
- mediaAreaUrl
- mediaAreaWeather
- starsTransactionPeerAds
- foundStory
- stories.foundStories
- geoPointAddress
- starsRevenueStatus
- payments.starsRevenueStats
- payments.starsRevenueWithdrawalUrl
- payments.starsRevenueAdsAccountUrl
- inputStarsTransaction
- starsGiftOption
- bots.popularAppBots
- botPreviewMedia
- bots.previewInfo
Changed Constructors:
- Added bot_has_main_app param to user
- Added bot_active_users param to user
- Added paid_media_allowed param to channelFull
- Added can_view_stars_revenue param to channelFull
- Added video_start_ts param to documentAttributeVideo
- Added has_preview_medias param to botInfo
- Added play_integrity_project_id param to auth.sentCodeTypeFirebaseSms
- Added effect param to draftMessage
- Added fullsize param to webViewResultUrl
- Added purpose param to inputInvoiceStars
- Removed option param from inputInvoiceStars
- Added radius param to mediaAreaCoordinates
- Added address param to mediaAreaGeoPoint
- Added pending param to starsTransaction
- Added failed param to starsTransaction
- Added gift param to starsTransaction
- Added transaction_date param to starsTransaction
- Added transaction_url param to starsTransaction
- Added bot_payload param to starsTransaction
- Added msg_id param to starsTransaction
- Added extended_media param to starsTransaction
Deleted Constructors:
- simpleWebViewResultUrl
- inputStorePaymentStars
- appWebViewResultUrl
Fixes:
- Add extra validation for getDownloadLink URLs, to make sure only URLs are passed
- Update RPC errors
And here's a small preview of the dashboard!
Читать полностью…MadelineProto 8.0.1 adds support for styled text entities in polls, by adding a questionEntities property and a getQuestionHTML method to Poll a answerEntities property and a getHTML method to PollAnswer.
Читать полностью…MadelineProto was updated (8.4.11)!
This release fixes timeout issues on startup, QR code logins and a few other leftover issues.
Clarification: this means that they may change with a later MadelineProto update (with appropriate forewarning in the release notes), not that they may change at any time.
Читать полностью…MadelineProto was updated (8.4.5)!
Fixes:
- Fix "Error during deserializing message" errors caused by Telegram server-side layer issues by upgrading to layer 204
- Add missing _
type field when json-serializing Media, StarGift objects
- Fix hangs in case of errors when downloading files using downloadToResponse
- Fix ORM migration issues
Translations (thanks to everyone who contributed using https://weblate.madelineproto.xyz!):
- Portuguese: 18% => 81%
- Uzbek: 100%!
Layer 204 deprecations:
- Removed support for reply_to_msg_id
and top_msg_id
in messages.sendMessage and messages.sendMedia, please use sendMessage/sendVideo/etc... instead (easy) or manually construct a reply_to
constructor (hard & not backwards-compatible, please use sendMessage).
Layer changes: click here to see the full list of added/changed/removed methods and constructors.
And then, a long overdue post about my Autonomous System (AS198747), and an over more overdue MadelineProto v9 :D
Читать полностью…Happy to announce I've launched a blog, where I'll be posting news about all my different projects, MadelineProto, Psalm, and much more: blog.daniil.it!
I now also have a newsletter, feel free to subscribe to receive all the latest news: blog.daniil.it/newsletter ❤️
All posts posted to my blog and newsletter will also be posted here (replacing the old @daniilgentili blog for technical reasons, as I do not have access to the owner account anymore).
You can now discuss posts news about *all* my projects in the linked discussion group: here!
MadelineProto was updated (8.4.4)!
This release updates MadelineProto to layer 202, and bumps dependencies to fix some issues with amphp/http-client.
Psalm was also updated to v7, and thanks to the new and improved security analysis some improvements were made for MadelineProto, by escaping some possible taint sources.
New Methods:
- phone.deleteConferenceCallParticipants
- phone.sendConferenceCallBroadcast
- phone.inviteConferenceCallParticipant
- phone.declineConferenceCallInvite
- phone.getGroupCallChainBlocks
Changed Methods:
- Removed conference_call param from phone.requestCall
- Added public_key param to phone.joinGroupCall
- Added block param to phone.joinGroupCall
- Removed key_fingerprint param from phone.joinGroupCall
- Added muted param to phone.createConferenceCall
- Added video_stopped param to phone.createConferenceCall
- Added join param to phone.createConferenceCall
- Added random_id param to phone.createConferenceCall
- Added public_key param to phone.createConferenceCall
- Added block param to phone.createConferenceCall
- Added params param to phone.createConferenceCall
- Removed peer param from phone.createConferenceCall
- Removed key_fingerprint param from phone.createConferenceCall
New Constructors:
- messageActionConferenceCall
- updateGroupCallChainBlocks
- phoneCallDiscardReasonMigrateConferenceCall
- inputGroupCallSlug
- inputGroupCallInviteMessage
- inputInvoiceBusinessBotTransferStars
Changed Constructors:
- Removed conference_call param from phoneCallWaiting
- Removed conference_call param from phoneCallRequested
- Removed conference_call param from phoneCallAccepted
- Added conference_supported param to phoneCall
- Removed conference_call param from phoneCall
- Removed conference_call param from phoneCallDiscarded
- Added conference param to groupCall
- Added creator param to groupCall
- Added invite_link param to groupCall
- Removed conference_from_call param from groupCall
- Added business_transfer param to starsTransaction
Deleted Constructors:
- phoneCallDiscardReasonAllowGroupCall
MadelineProto was updated (8.4.2)!
This release adds support for layer 201, and bumps the dependencies with some 8.4 fixes.
New Methods:
- invokeWithReCaptcha
- account.getCollectibleEmojiStatuses
- account.addNoPaidMessagesException
- account.getPaidMessagesRevenue
- users.getRequirementsToContact
- contacts.getSponsoredPeers
- messages.reportMessagesDelivery
- channels.updatePaidMessagesPrice
- bots.setCustomVerification
- bots.getBotRecommendations
- payments.getStarGiftUpgradePreview
- payments.upgradeStarGift
- payments.transferStarGift
- payments.getUniqueStarGift
- payments.getSavedStarGifts
- payments.getSavedStarGift
- payments.getStarGiftWithdrawalUrl
- payments.toggleChatStarGiftNotifications
- payments.toggleStarGiftsPinnedToTop
- payments.canPurchaseStore
- phone.createConferenceCall
Changed Methods:
- Added rights param to account.updateConnectedBot
- Removed can_reply param from account.updateConnectedBot
- Added allow_paid_stars param to messages.sendMessage
- Added allow_paid_stars param to messages.sendMedia
- Added video_timestamp param to messages.forwardMessages
- Added allow_paid_stars param to messages.forwardMessages
- Added groups_only param to messages.searchGlobal
- Added users_only param to messages.searchGlobal
- Added allow_paid_stars param to messages.sendInlineBotResult
- Added allow_paid_stars param to messages.sendMultiMedia
- Removed peer param from messages.viewSponsoredMessage
- Removed peer param from messages.clickSponsoredMessage
- Removed peer param from messages.reportSponsoredMessage
- Added for_paid_reactions param to channels.getSendAs
- Added stargift param to payments.saveStarGift
- Removed user_id param from payments.saveStarGift
- Removed msg_id param from payments.saveStarGift
- Added stargift param to payments.convertStarGift
- Removed user_id param from payments.convertStarGift
- Removed msg_id param from payments.convertStarGift
- Added conference_call param to phone.requestCall
- Added key_fingerprint param to phone.joinGroupCall
Deleted Methods:
- users.getIsPremiumRequiredToContact
- payments.canPurchasePremium
- payments.getUserStarGifts
New Constructors:
- messageActionStarGiftUnique
- messageActionPaidMessagesRefunded
- messageActionPaidMessagesPrice
- auth.sentCodePaymentRequired
- updateSentPhoneCode
- inputPrivacyKeyNoPaidMessages
- privacyKeyNoPaidMessages
- phoneCallDiscardReasonAllowGroupCall
- webPageAttributeUniqueStarGift
- inputInvoiceStarGiftUpgrade
- inputInvoiceStarGiftTransfer
- inputInvoicePremiumGiftStars
- inputStorePaymentAuthCode
- emojiStatusCollectible
- inputEmojiStatusCollectible
- mediaAreaStarGift
- starGiftUnique
- botVerifierSettings
- botVerification
- starGiftAttributeModel
- starGiftAttributePattern
- starGiftAttributeBackdrop
- starGiftAttributeOriginalDetails
- payments.starGiftUpgradePreview
- users.users
- users.usersSlice
- payments.uniqueStarGift
- messages.webPagePreview
- savedStarGift
- payments.savedStarGifts
- inputSavedStarGiftUser
- inputSavedStarGiftChat
- payments.starGiftWithdrawalUrl
- paidReactionPrivacyDefault
- paidReactionPrivacyAnonymous
- paidReactionPrivacyPeer
- account.paidMessagesRevenue
- requirementToContactEmpty
- requirementToContactPremium
- requirementToContactPaidMessages
- businessBotRights
- disallowedGiftsSettings
- sponsoredPeer
- contacts.sponsoredPeersEmpty
- contacts.sponsoredPeers
Super happy to announce the release of Psalm v6!
Also announcing Psalm's new support model: you can support Psalm development by requesting a support contract from me, as I am the only active maintainer of Psalm.
Support contracts can cover full integration of Psalm into existing codebases, support for Psalm issues and development of additional Psalm features.
See here for info, pricing and contact information.
Main highlights of Psalm v6:
- PHP 8.4 support
- Amp v3 support
- PHP-Parser v5 support
- Fully overhauled [dictionaries](https://psalm.dev/docs/contributing/editing_callmaps/), for much more accurate and always up to date signatures for PHP and extension functions and methods, and much simpler PHP version upgrades.
- ignoreInternalFunctionFalseReturn
and ignoreInternalFunctionNullReturn
are now false
by default: this means Psalm now warns when a false/null return type of a native function is not explicitly checked.
- Modernization of the codebase for higher performance.
- Many other bugfixes and performance improvements.
To see the full list of features added to Psalm v6, click here!
Merry Christmas everyone! 🎄
Читать полностью…Changed Constructors:
- Added video_processing_pending param to message
- Added subscription_until_date param to messageActionPaymentSentMe
- Added subscription_until_date param to messageActionPaymentSent
- Added can_view_revenue param to userFull
- Added bot_can_manage_emoji_status param to userFull
- Added starref_program param to userFull
- Added sent_messages param to updateDeleteScheduledMessages
- Added app_settings param to botInfo
- Added subscription_period param to invoice
- Added fullscreen param to webViewResultUrl
- Added floodskip_number param to starsTransaction
- Added starref_commission_permille param to starsTransaction
- Added starref_peer param to starsTransaction
- Added starref_amount param to starsTransaction
- Added bot_canceled param to starsSubscription
- Added title param to starsSubscription
- Added photo param to starsSubscription
- Added invoice_slug param to starsSubscription
- Added sold_out param to starGift
- Added birthday param to starGift
- Added first_sale_date param to starGift
- Added last_sale_date param to starGift
MadelineProto was updated (8.3.3)!
This release updates MadelineProto to layer 190.
New Methods:
- payments.getStarGifts
- payments.getUserStarGifts
- payments.saveStarGift
- payments.convertStarGift
Changed Methods:
- Added option param to messages.report
- Removed reason param from messages.report
- Added option param to stories.report
- Removed reason param from stories.report
New Constructors:
- messageActionStarGift
- payments.paymentFormStarGift
- inputInvoiceStarGift
- starGift
- payments.starGiftsNotModified
- payments.starGifts
- userStarGift
- payments.userStarGifts
- messageReportOption
- reportResultChooseOption
- reportResultAddComment
- reportResultReported
Changed Constructors:
- Added message param to messageActionGiftPremium
- Added message param to messageActionGiftCode
- Added stargifts_count param to userFull
- Added message param to inputStorePaymentPremiumGiftCode
- Added stargift param to starsTransaction
MadelineProto was updated (8.2.2)!
This release fixes etag hash generation (also adding support for string values) and updates to layer 186.
New Methods:
- messages.sendPaidReaction
- messages.togglePaidReactionPrivacy
- payments.getStarsSubscriptions
- payments.changeStarsSubscription
- payments.fulfillStarsSubscription
Changed Methods:
- Added subscription_pricing param to messages.exportChatInvite
- Added subscription_expired param to messages.getChatInviteImporters
- Added paid_enabled param to messages.setChatAvailableReactions
- Added signatures_enabled param to channels.toggleSignatures
- Added profiles_enabled param to channels.toggleSignatures
- Removed enabled param from channels.toggleSignatures
- Added subscription_id param to payments.getStarsTransactions
New Constructors:
- inputFileStoryDocument
- channelAdminLogEventActionToggleSignatureProfiles
- inputInvoiceChatInviteSubscription
- reactionPaid
- starsSubscriptionPricing
- starsSubscription
- messageReactor
Changed Constructors:
- Added signature_profiles param to channel
- Added subscription_until_date param to channel
- Added paid_reactions_available param to channelFull
- Added subscription_expired param to chatInviteExported
- Added subscription_pricing param to chatInviteExported
- Added can_refulfill_subscription param to chatInvite
- Added subscription_pricing param to chatInvite
- Added subscription_form_id param to chatInvite
- Added privacy_policy_url param to botInfo
- Added subscription_until_date param to channelParticipant
- Added subscription_until_date param to channelParticipantSelf
- Added media param to sponsoredMessage
- Added top_reactors param to messageReactions
- Added reaction param to starsTransaction
- Added subscription_period param to starsTransaction
- Added subscriptions param to payments.starsStatus
- Added subscriptions_next_offset param to payments.starsStatus
- Added subscriptions_missing_balance param to payments.starsStatus
MadelineProto was updated (8.1.1)!
See here for the changelog: https://github.com/danog/MadelineProto/releases/tag/8.1.1
MadelineProto was updated!
MadelineProto 8.1.0 introduces an official Grafana dashboard for MadelineProto, powered by danog/better-prometheus!
See here for more info on how to configure the Prometheus metrics endpoint and Grafana dashboard!
Features:
- Official grafana dashboard, powered by danog/better-prometheus!
- Extract bot API dialog ID handling logic into a separate library, danog/tg-dialog-id!
- Add a previously missing $deleteHistory
flag to discardSecretChat
!
- Add messages.getEmojiStickerGroups method!
Fixes:
- Fix a possible bug in sendVideo
- Fix a possible bug in parseMode parsing
- Fix SecretMessage::delete
- Fix passing of seekable streams to IPC methods
- Other minor bugfixes
- Performance improvements
MadelineProto was updated!
8.0.0 is the first stable release of MadelineProto v8!
For the full changelog, see the messages on the official MadelineProto channel, starting from here!
Here are the main highlights:
- Amp v3 & revolt (fibers) support!
- A new simplified, stable and object-oriented event handler API based on filters and plugins!
- New sendVideo, sendAudio, sendDocument, etc methods with automatic metadata extraction via ffmpeg.
- A new getDownloadLink method for files up to 4gb!
- A new broadcast API, that can be used to asynchronously broadcast messages to all users of a bot or userbot in the background, automatically fetching all users of the bot!
- A pure PHP async VoIP implementation to make Telegram voice calls even on limited webhosts!
- An official docker image!
- Built-in static analysis of event handler code!
- Major performance and stability improvements!
- Many other new features and UX improvements, see all messages starting from /channel/MadelineProto/591 for more info!
Major parts of the MadelineProto core were split into standalone libraries that can be used without requiring all of MadelineProto:
- https://github.com/danog/AsyncOrm - Async ORM based on AMPHP v3 and fibers.
- https://github.com/danog/telegram-entities - A library to work with Telegram UTF-16 styled text entities.
- https://github.com/danog/tg-file-decoder - A library to work with Telegram bot API file IDs (recently updated).
The next releases will focus on even more features and performance improvements, such as prometheus and grafana statistics, a static TL parser and much, much more!
Cheers!