mirror of
				https://github.com/LonamiWebs/Telethon.git
				synced 2025-10-31 16:07:44 +03:00 
			
		
		
		
	Update to v1.8.0
This commit is contained in:
		
							parent
							
								
									5832ab2f31
								
							
						
					
					
						commit
						30a0e39060
					
				|  | @ -13,6 +13,121 @@ it can take advantage of new goodies! | |||
| 
 | ||||
| .. contents:: List of All Versions | ||||
| 
 | ||||
| Documentation Overhaul (v1.8) | ||||
| ============================= | ||||
| 
 | ||||
| *Published at 2019/05/30* | ||||
| 
 | ||||
| +------------------------+ | ||||
| | Scheme layer used: 100 | | ||||
| +------------------------+ | ||||
| 
 | ||||
| The documentation has been completely reworked from the ground up, | ||||
| with awesome new quick references such as :ref:`client-ref` to help | ||||
| you quickly find what you need! | ||||
| 
 | ||||
| Raw methods also warn you when a friendly variant is available, so | ||||
| that you don't accidentally make your life harder than it has to be. | ||||
| 
 | ||||
| In addition, all methods in the client now are fully annotated with type | ||||
| hints! More work needs to be done, but this should already help a lot when | ||||
| using Telethon from any IDEs. | ||||
| 
 | ||||
| You may have noticed that the patch versions between ``v1.7.2`` to ``v1.7.7`` | ||||
| have not been documented. This is because patch versions should only contain | ||||
| bug fixes, no new features or breaking changes. This hasn't been the case in | ||||
| the past, but from now on, the library will try to adhere more strictly to | ||||
| the `Semantic Versioning <https://semver.org>`_ principles. | ||||
| 
 | ||||
| If you ever want to look at those bug fixes, please use the appropriated | ||||
| ``git`` command, such as ``git shortlog v1.7.1...v1.7.4``, but in general, | ||||
| they probably just fixed your issue. | ||||
| 
 | ||||
| With that out of the way, let's look at the full change set: | ||||
| 
 | ||||
| 
 | ||||
| Breaking Changes | ||||
| ~~~~~~~~~~~~~~~~ | ||||
| 
 | ||||
| * The layer changed, so take note if you use the raw API, as it's usual. | ||||
| * The way photos are downloaded changed during the layer update of the | ||||
|   previous version, and fixing that bug as a breaking change in itself. | ||||
|   `client.download_media() <telethon.client.downloads.DownloadMethods.download_media>` | ||||
|   now offers a different way to deal with thumbnails. | ||||
| 
 | ||||
| 
 | ||||
| Additions | ||||
| ~~~~~~~~~ | ||||
| 
 | ||||
| * New `Message.file <telethon.tl.custom.message.Message.file>` property! | ||||
|   Now you can trivially access `message.file.id  <telethon.tl.custom.file.File.id>` | ||||
|   to get the file ID of some media, or even ``print(message.file.name)``. | ||||
| * Archiving dialogs with `Dialog.archive() <telethon.tl.custom.dialog.Dialog.archive>` | ||||
|   or `client.edit_folder() <telethon.client.dialogs.DialogMethods.edit_folder>` | ||||
|   is now possible. | ||||
| * New cleaned-up method to stream downloads with `client.iter_download() | ||||
|   <telethon.client.downloads.DownloadMethods.iter_download>`, which offers | ||||
|   a lot of flexibility, such as arbitrary offsets for efficient seeking. | ||||
| * `Dialog.delete() <telethon.tl.custom.dialog.Dialog.delete>` has existed | ||||
|   for a while, and now `client.delete_dialog() | ||||
|   <telethon.client.dialogs.DialogMethods.delete_dialog>` exists too so you | ||||
|   can easily leave chats or delete dialogs without fetching all dialogs. | ||||
| * Some people or chats have a lot of profile photos. You can now iterate | ||||
|   over all of them with the new `client.iter_profile_photos() | ||||
|   <telethon.client.chats.ChatMethods.iter_profile_photos>` method. | ||||
| * You can now annoy everyone with the new `Message.pin(notify=True) | ||||
|   <telethon.tl.custom.message.Message.pin>`! The client has its own | ||||
|   variant too, called `client.pin_message() | ||||
|   <telethon.client.messages.MessageMethods.pin_message>`. | ||||
| 
 | ||||
| 
 | ||||
| Bug fixes | ||||
| ~~~~~~~~~ | ||||
| 
 | ||||
| * Correctly catch and raise all RPC errors. | ||||
| * Downloading stripped photos wouldn't work correctly. | ||||
| * Under some systems, ``libssl`` would fail to load earlier than | ||||
|   expected, causing the library to fail when being imported. | ||||
| * `conv.get_response() <telethon.tl.custom.conversation.Conversation.get_response>` | ||||
|   after ID 0 wasn't allowed when it should. | ||||
| * `InlineBuilder <telethon.tl.custom.inlinebuilder.InlineBuilder>` only worked | ||||
|   with local files, but files from anywhere are supported. | ||||
| * Accessing the text property from a raw-API call to fetch :tl:`Message` would fail | ||||
|   (any any other property that needed the client). | ||||
| * Database is now upgraded if the version was lower, not different. | ||||
|   From now on, this should help with upgrades and downgrades slightly. | ||||
| * Fixed saving ``pts`` and session-related stuff. | ||||
| * Disconnection should not raise any errors. | ||||
| * Invite links of the form ``tg://join?invite=`` now work. | ||||
| * `client.iter_participants(search=...) <telethon.client.chats.ChatMethods.iter_participants>` | ||||
|   now works on private chats again. | ||||
| * Iterating over messages in reverse with a date as offset wouldn't work. | ||||
| * The conversation would behave weirdly when a timeout occurred. | ||||
| 
 | ||||
| 
 | ||||
| Enhancements | ||||
| ~~~~~~~~~~~~ | ||||
| 
 | ||||
| * ``telethon`` now re-export all the goodies that you commonly need when | ||||
|   using the library, so e.g. ``from telethon import Button`` will now work. | ||||
| * ``telethon.sync`` now re-exports everything from ``telethon``, so that | ||||
|   you can trivially import from just one place everything that you need. | ||||
| * More attempts at reducing CPU usage after automatically fetching missing | ||||
|   entities on events. This isn't a big deal, even if it sounds like one. | ||||
| * Hexadecimal invite links are now supported. You didn't need them, but | ||||
|   they will now work. | ||||
| 
 | ||||
| Internal Changes | ||||
| ~~~~~~~~~~~~~~~~ | ||||
| 
 | ||||
| * Deterministic code generation. This is good for ``diff``. | ||||
| * On Python 3.7 and above, we properly close the connection. | ||||
| * A lot of micro-optimization. | ||||
| * Fixes to bugs introduced while making this release. | ||||
| * Custom commands on ``setup.py`` are nicer to use. | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| Fix-up for Photo Downloads (v1.7.1) | ||||
| =================================== | ||||
| 
 | ||||
|  |  | |||
|  | @ -239,6 +239,45 @@ can find the individual results: | |||
|     download_media | ||||
| 
 | ||||
| 
 | ||||
| Dialog | ||||
| ====== | ||||
| 
 | ||||
| The `Dialog <telethon.tl.custom.dialog.Dialog>` object is returned when | ||||
| you call `client.iter_dialogs() <telethon.client.dialogs.DialogMethods.iter_dialogs>`. | ||||
| 
 | ||||
| .. currentmodule:: telethon.tl.custom.dialog.Dialog | ||||
| 
 | ||||
| .. autosummary:: | ||||
|     :nosignatures: | ||||
| 
 | ||||
|     send_message | ||||
|     archive | ||||
|     delete | ||||
| 
 | ||||
| 
 | ||||
| Draft | ||||
| ====== | ||||
| 
 | ||||
| The `Draft <telethon.tl.custom.draft.Draft>` object is returned when | ||||
| you call `client.iter_drafts() <telethon.client.dialogs.DialogMethods.iter_drafts>`. | ||||
| 
 | ||||
| .. currentmodule:: telethon.tl.custom.draft.Draft | ||||
| 
 | ||||
| .. autosummary:: | ||||
|     :nosignatures: | ||||
| 
 | ||||
|     entity | ||||
|     input_entity | ||||
|     get_entity | ||||
|     get_input_entity | ||||
|     text | ||||
|     raw_text | ||||
|     is_empty | ||||
|     set_message | ||||
|     send | ||||
|     delete | ||||
| 
 | ||||
| 
 | ||||
| Utils | ||||
| ===== | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,3 +1,3 @@ | |||
| # Versions should comply with PEP440. | ||||
| # This line is parsed in setup.py: | ||||
| __version__ = '1.7.7' | ||||
| __version__ = '1.8.0' | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user