24.10.2024
- Add Python 3.13 support by @MarshalX in MarshalX#416
- Add support for
LexRef
as a Schema type of inputs by @MarshalX in MarshalX#412 - Replace
threading.Lock
with a boolean flag in_WebsocketClient
by @Darkkekus in MarshalX#402 - Update compatibility with Read The Docs by @MarshalX in MarshalX#405
- Update lexicons by @MarshalX in MarshalX#403, MarshalX#404, MarshalX#413
- Fix different cases of response header names by @MarshalX in MarshalX#415
13.09.2024
- Add
Client.send_video
high-level method by @Meorge in MarshalX#395 - Add support for
known_values
andenum
of string properties in objects by @MarshalX in MarshalX#391 - Update lexicons by @MarshalX in MarshalX#394 and MarshalX#398
- Fix string definitions which use
know_values
field as closed enum by @MarshalX in MarshalX#389 - Fix model field default value generating in cases when this is the only one constraint by @MarshalX in MarshalX#393
- Fix response parsing for JSON content type by @MarshalX in MarshalX#397
10.09.2024
β‘ Thanks to libipld 2.0.0 firehose performance should increase approximately by 30%! No changes from you are required! Check more detailed benchmark results here
- Add libipld v2.0.0 support by @MarshalX in MarshalX#315
- Update lexicons fetched from e4d41d6 committed 2024-09-04T10:42:39Z by @MarshalX in MarshalX#380
- Fix firehose client stop by @MarshalX in MarshalX#384
01.09.2024
- Add new asyncio implementation support for websockets 13.0; handle
ConnectionError
exception; removeclose_timeout
by @MarshalX in MarshalX#376 - Add process_commits_async example by @MarshalX in MarshalX#377
- Update process_commits example by @MarshalX in MarshalX#374
31.08.2024
- Fix PDS auto-switching for self-hosted instances by @MarshalX in MarshalX#370
- Update lexicons fetched from bfbac24 committed 2024-08-30T18:18:43Z by @MarshalX in MarshalX#372
30.08.2024
- Use
jiter
instead of the built-injson
module to improve performance by @MarshalX in MarshalX#360 - Update docs example to fix empty blocks of commit by @MarshalX in MarshalX#363
- Bump
certifi
from 2024.2.2 to 2024.7.4 by @dependabot in MarshalX#355 - Bump
zipp
from 3.18.1 to 3.19.1 by @dependabot in MarshalX#356 - Bump
setuptools
from 69.5.1 to 70.0.0 by @dependabot in MarshalX#357 - Update lexicons by @MarshalX in MarshalX#358, MarshalX#359, MarshalX#364, MarshalX#366, MarshalX#367
04.07.2024
Breaking changes for Direct Messages. Now you must create a client with a chat proxy. See the updated documentation.
- Add automatically switching to PDS endpoint after login and session resume by @MarshalX in MarshalX#344
- Add atproto proxy and atproto labelers support by @MarshalX in MarshalX#345 and MarshalX#351
- Add
BlobRef
representation conversations by @MarshalX in MarshalX#348 - Fix
BlobRef
creation for JSON representation by @MarshalX in MarshalX#340 - Fix
delete_post
example by @MarshalX in MarshalX#342 - Fix
repost
method by @MarshalX in MarshalX#343 - Bump urllib3 from 2.2.1 to 2.2.2 by @dependabot in MarshalX#346
- Update lexicons by @MarshalX in MarshalX#352, MarshalX#350, MarshalX#349, MarshalX#347, MarshalX#339, MarshalX#337
01.06.2024
- Add Firehose Account message (use instead of Identity) by @MarshalX in MarshalX#335
- Update lexicons fetched from 255d5ea committed 2024-05-31T21:39:21Z by @MarshalX in MarshalX#334
22.05.2024
π¬ Just shipped: Bluesky Direct Messages! https://atproto.blue/en/latest/dm.html
Breaking changes
Many of these changes were backward compatible for a few months with proper warnings.
- Drop support for Python 3.7 by @MarshalX in MarshalX#321
- Delete deprecated record models called
Main
instead ofRecord
by @MarshalX in MarshalX#323 - Delete deprecated
SessionString
class by @MarshalX in MarshalX#324 - Delete deprecated
subject
argument of.like()
and.repost()
methods by @MarshalX in MarshalX#325
What's Changed
- Add support for Direct Messages (Chats) by @MarshalX in MarshalX#331
- Add method to send post with multiple attached photos by @ryoryo25 in MarshalX#313
- Register chat (DM) namespace by @MarshalX in MarshalX#330
- Update lexicons by @MarshalX in MarshalX#312, MarshalX#314, MarshalX#317, MarshalX#322, MarshalX#327, MarshalX#328
- Fix HTTP error handling by @MarshalX in MarshalX#329
- Bump requests from 2.31.0 to 2.32.2 by @dependabot in MarshalX#332
20.03.2024
- Fix follow redirects by @MarshalX in MarshalX#309
- Update lexicons fetched from c28e374 committed 2024-03-19T16:26:14Z by @MarshalX in MarshalX#310
14.03.2024
Content labeling (moderation) is here! This update brings labeling data-stream support as well ozone.tools API!
- Add labels firehose data stream by @MarshalX in MarshalX#304
- Register ozone.tools namespace as root namespace by @MarshalX in MarshalX#303
- Generate unique namespace classes to avoid collisions between lexicons by @MarshalX in MarshalX#299
- Update lexicons by @MarshalX in MarshalX#297, MarshalX#298, MarshalX#302
- Fix CIMON by @MarshalX in MarshalX#300
- Fix lexicon updater by @MarshalX in MarshalX#301
05.03.2024
- Add identity firehose message by @MarshalX in MarshalX#294
- Update lexicons fetched from d643b5b committed 2024-02-23T22:59:47Z by @MarshalX in MarshalX#293
- Update lexicons fetched from c7e6ef0 committed 2024-03-05T19:27:25Z by @MarshalX in MarshalX#295
- Fix typo in README by @yallxe in MarshalX#291
22.02.2024
π New lexicon introduces Account Migration between PDS. More info: https://github.com/bluesky-social/pds/blob/main/ACCOUNT_MIGRATION.md
- Fix bytes response by @MarshalX in MarshalX#287
- Update lexicons fetched from 514aab9 committed 2024-02-22T15:43:58Z by @MarshalX in MarshalX#288
- Bump cryptography from 42.0.2 to 42.0.4 by @dependabot in MarshalX#289
17.02.2024
- Add
send_ogp_link_card.py
(Open Graph protocol) example by @OhkuboSGMS in MarshalX#273 - Update lexicons fetched from 8c94979 committed 2024-02-16T02:12:39Z by @MarshalX in MarshalX#279
- Bump cryptography from 41.0.7 to 42.0.2 by @dependabot in MarshalX#280
- Fix pyright for pydantic aliases via
alias_generator
by @MarshalX in MarshalX#277 - Fix
filter
argument ofget_author_feed
method in MarshalX#278 - Fix pyright errors part 1 by @MarshalX in MarshalX#278
09.02.2024
π₯ New documentation page about auth and session reusing!
- Add on session change callback by @MarshalX in MarshalX#269
- Update lexicons fetched from e4ec7af committed 2024-02-06T00:10:44Z by @MarshalX in MarshalX#271
04.02.2024
Syntax sugar for records is here! Check out how simple work with basic operations is:
from atproto import AtUri, Client, models
client = Client()
client.login('my-username', 'my-password')
# get records list
posts = client.app.bsky.feed.post.list(client.me.did, limit=10)
for uri, post in posts.records.items():
print(uri, post.text)
# get specific record
post = client.app.bsky.feed.post.get(client.me.did, AtUri.from_str(uri).rkey)
print(post.value.text)
# create new record
post_record = models.AppBskyFeedPost.Record(text='test record namespaces', created_at=client.get_current_time_iso())
new_post = client.app.bsky.feed.post.create(client.me.did, post_record)
print(new_post)
# delete record
deleted_post = client.app.bsky.feed.post.delete(client.me.did, AtUri.from_str(new_post.uri).rkey)
print(deleted_post)
- Add record syntax sugar with get, list, create, and delete methods by @MarshalX in MarshalX#263
- Rename record models from "Main" to "Record" by @MarshalX in MarshalX#264
- Integrate syntax sugar for repo operations upon records by @MarshalX in MarshalX#266
02.02.2024
.like()
and .repost()
methods are deprecated. Use URI and CID arguments instead.
- Use .like() and .repost() methods without strong reference by @MarshalX in MarshalX#255
- Allow Service URl as base URL by @MarshalX in MarshalX#256
- Improve URL detection in auto_hyperlinks example by @editor-syntax in MarshalX#250
- Simplify send_embed example by @MarshalX in MarshalX#258
- Update lexicons fetched from f023494 committed 2024-01-30T22:19:36Z by @MarshalX in MarshalX#259
- Delete release workflow by @MarshalX in MarshalX#252
- Add docs codegen check to GitHub Actions Workflow by @MarshalX in MarshalX#260
26.01.2024
- Add lexicons updating automation using GitHub Actions by @MarshalX in MarshalX#248
- Update lexicons fetched from 8994d36 committed 2024-01-25T20:16:30Z by @MarshalX in MarshalX#249
- Update code snippet in README by @MarshalX in MarshalX#245
- Fix input data mutation in DotDict by @MarshalX in MarshalX#246
- Fix links to documentation by @MarshalX in MarshalX#244
12.01.2024
π Welcome in 2024! User-specific custom feeds are here! This is a massive update with a lot of new implementations including Service JWT, signature validation, DID Keys, AtProtoData, and more! Huge docs restructuring is here too: https://atproto.blue
Code snippet: Authorized Custom Feed (user-specific results)
SDK:
- Implement Service JWT by @MarshalX in MarshalX#225
- Implement AtprotoData and DID key formatting and parsing by @MarshalX in MarshalX#227
- Implement signature verification by @MarshalX in MarshalX#232
- Add tests for auth flow in custom feeds by @MarshalX in MarshalX#236
- Describe JWT payload according to RFC 7519 by @MarshalX in MarshalX#235
- Update lexicons fetched from 51fcba7 committed 2024-01-09T23:29:07Z by @MarshalX in MarshalX#238
- Fix AtUri hostname parsing with digits by @MarshalX in MarshalX#229
Docs:
- Enable pydocstyle rules by @MarshalX in MarshalX#226
- Cleanup docs of models by disabling aliases, schemes, validators, and list of fields by @MarshalX in MarshalX#231
- Improve documentation by @MarshalX in MarshalX#234
- Bump jinja2 from 3.1.2 to 3.1.3 by @dependabot in MarshalX#230
23.12.2023
The AT Protocol Identity package has been implemented! It allows the resolution of DIDs and Handles using various techniques like DNS, HTTP, and PLC directory. Abstract and in-memory caching has been brought too. And as always, it provides both sync and async interfaces. Check the docs below!
π Identity resolvers for DID and Handle
21.12.2023
βBreaking changes: SDK was split into many packages. This affects imports in your codebase. Read more
- New SDK structure by @MarshalX in MarshalX#214 and MarshalX#216
- Fix decoding of CAR root by @MarshalX in MarshalX#213
- Fix parsing of BlobRef in CBOR by @MarshalX in MarshalX#215
- Update lexicons fetched from 905743d committed 2023-12-20T14:49:21Z by @MarshalX in MarshalX#217
17.12.2023
- Make SDK more backward and forward-compatible with protocol by @MarshalX in MarshalX#207
- Add plenty of new high-level methods by @MarshalX in MarshalX#208
- Breaking changes:
unlike
now accepts AT URI instead ofrecord_key
andprofile_identify
- New methods:
get_post
get_posts
get_post_thread
get_likes
get_reposted_by
get_timeline
get_author_feed
unrepost
AKAdelete_report
follow
unfollow
AKAdelete_follow
get_follows
get_followers
get_profile
get_profiles
mute
unmute
resolve_handle
update_handle
upload_blob
- Breaking changes:
- Migrate lexicon parser from dacite to pydantic; enable ruff ANN by @MarshalX in MarshalX#206
- Removed exceptions:
UnknownPrimitiveTypeError
UnknownDefinitionTypeError
- Renamed fields:
schema
->schema_
maxLength
->max_length
- ... and all other camelCase names now in snake_case
- Removed exceptions:
13.12.2023
- Update lexicons fetched from 0c54951 committed 2023-12-12T21:37:06Z by @MarshalX in MarshalX#202
- Update changelog for v0.0.32 by @MarshalX in MarshalX#199
11.12.2023
- Add text builder as helper for constructing rich text by @MarshalX in MarshalX#194
- Lock dependencies by major version only by @MarshalX in MarshalX#195
- Fix parsing of lexicon procedure parameters by @MarshalX in MarshalX#196
- Update lexicons fetched from ffe39aa committed 2023-12-08T21:32:06Z by @MarshalX in MarshalX#197
- Update code snippets in README by @MarshalX in MarshalX#198
- Update changelog for v0.0.31 by @MarshalX in MarshalX#191
02.12.2023
- Migrate firehose to new relay URI by @MarshalX in MarshalX#190
- Update lexicons fetched from 8d9b1f7 committed 2023-12-01T20:28:54Z by @MarshalX in MarshalX#189
- Update changelog for v0.0.30 by @MarshalX in MarshalX#184
06.11.2023
- Add Python 3.12; migrate from black to ruff format by @MarshalX in MarshalX#177
- Async Firehose Client: block on make message handler call, add on error callback by @DXsmiley in MarshalX#157
- Downgrade sphinxext-opengraph to clean up the tree of dependencies (including vulnerable) by @MarshalX in MarshalX#179
- Update lexicons fetched from 46b108c committed 2023-10-26T22:29:51Z by @MarshalX in MarshalX#178
- Update lexicons fetched from 772736a committed 2023-11-02T20:16:26Z by @MarshalX in MarshalX#182
- Update changelog for v0.0.29 by @MarshalX in MarshalX#173
- Fix type hint of OnMessageCallback (Firehose client) by @MarshalX in MarshalX#183
- Fix dependency groups by @MarshalX in MarshalX#180
28.09.2023
- Make codegen deterministic by @DXsmiley in MarshalX#162
- Add TypedDict for params and data arguments; add type hint for kwargs by @DXsmiley in MarshalX#166
- Update lexicons fetched from 41ee177 committed 2023-09-27T21:08:58Z by @MarshalX in MarshalX#172
- Update changelog for v0.0.28 by @MarshalX in MarshalX#156
16.09.2023
- Add
update_params
method to firehose clients to fix utilizing the old state on reconnecting by @MarshalX in MarshalX#149 - Add the ability to export and import session string by @MarshalX in MarshalX#154
- Add the ability to pass
base_uri
to Firehose clients by @MarshalX in MarshalX#155 - Update lexicons fetched from 9879ca9 committed 2023-09-14T20:24:48Z by @MarshalX in MarshalX#150
- Update changelog for v0.0.27 by @MarshalX in MarshalX#146
13.09.2023
- Add reposts support to the firehose process commits example by @MarshalX in MarshalX#140
- Add snake to camel and camel to snake case conversion support for DotDict wrapper by @MarshalX in MarshalX#143
- Update lexicons fetched from 07bb0da committed 2023-09-12T17:37:57Z by @MarshalX in MarshalX#144
- Update dependencies by @MarshalX in MarshalX#145
08.09.2023
All models have been migrated to Pydantic v2. Fields constraints have been added. Decoding of DAG-CBOR, CID and CAR files has been migrated to the brand-new library libipld. This library is powered by Rust and is much faster than the previous implementation. Pydantic v2 also uses Rust in the core. This leads to a significant performance boost.
Firehose catch up benchmark:
- The previous SDK version: 700 commits in 5 seconds.
- After migration to Pydantic v2: 2650 commits in 5 seconds.
- After migration to libipld: 20000 commits in 5 seconds.
- Using pydantic v2 and libipld with multiprocessing: 30000 commits in 5 seconds.
The new release gives a 40x performance boost! But the cost is a lot of breaking changes.
Example of firehose consumer with multiprocessing: process_commits.py
Test stand for benchmarks: MacBook Pro 2021, Apple M1 Pro, 32 GB RAM, 450mbps connection speed, Python 3.8
βBreaking changes
- Python 3.7.0 has been dropped. The minimum supported version is now Python 3.7.1.
- Camel cased fields are gone. Use snake case instead. For example,
createdAt
is nowcreated_at
. - Root namespace has been fixed from
bsky
toapp
. For example,Client().bsky.feed.get_likes
is nowClient().app.bsky.feed.get_likes
. - Using similar model instances as strong refs is not allowed anymore. Use
models.create_strong_ref
helper function to convert refs (example). - Creating model instances using positional arguments is no longer supported. Use keyword arguments instead. For example, thant's not possible anymore
models.ComAtprotoIdentityResolveHandle.Params('marshal.dev')
. Usemodels.ComAtprotoIdentityResolveHandle.Params(handle='marshal.dev')
instead. - Fields that conflict with reserved Pydantic names has _ (underscore) suffix. For example,
validation
is nowvalidation_
. DotDict
has been moved tomodels.dot_dict
.- Inheritance of base models has been changed. Please check new base classes.
- Inheritance of
DotDict
has been changed. Please check the new base class. BlobRef
model doesn't containto_dict()
method anymore.CID
class has been reimplemented using libipld lib. It supports much less API._type
field of models has been renamed topy_type
. Now it's constant.leb128
module has been removed.- Type hint of
CID
has been changed toCIDType
. - Type hint of
DotDict
has been changed toDotDictType
. multiformats
anddag-cbor
dependencies have been removed.- These reference classes have been removed:
ResponseRef
fromget_profile
. Usemodels.AppBskyActorDefs.ProfileViewDetailed
instead.ResponseRef
fromget_moderation_action
. Usemodels.ComAtprotoAdminDefs.ActionViewDetail
instead.ResponseRef
fromget_moderation_report
. Usemodels.ComAtprotoAdminDefs.ReportViewDetail
instead.ResponseRef
fromget_record
. Usemodels.ComAtprotoAdminDefs.RecordViewDetail
instead.ResponseRef
fromget_repo
. Usemodels.ComAtprotoAdminDefs.RepoViewDetail
instead.ResponseRef
fromresolve_moderation_reports
. Usemodels.ComAtprotoAdminDefs.ActionView
instead.ResponseRef
fromreverse_moderation_action
. Usemodels.ComAtprotoAdminDefs.ActionView
instead.ResponseRef
fromtake_moderation_action
. Usemodels.ComAtprotoAdminDefs.ActionView
instead.ResponseRef
fromcreate_app_password
. Usemodels.ComAtprotoServerCreateAppPassword.AppPassword
instead.
- These exceptions have been removed:
UnexpectedFieldError
. UseModelError
instead.MissingValueError
. UseModelError
instead.ModelFieldError
. UseModelError
instead.WrongTypeError
. UseModelError
instead.CBORDecodingError
. UseDAGCBORDecodingError
instead.
New Features
- Unit tests for model serialization and deserialization.
- Nested dictionaries support in
DotDict
models. DotDict
models now support__getitem__
and__setitem__
methods.create_strong_ref
helper function to convert ref-like models to strong refs.- Fields constraints for models. Now you can see the max items count for the image array, max string length, etc.
- Better documentation of models.
Minor Changes
- Fixed nesting of
DotDict
models. - Fixed serialization of
Union
types. - Fixed serialization of
Literal
types. - Fixed sending proper datetime values to the server.
- Fixed printing tracebacks in the Firehose async client.
- Fixed chaining of firehose exceptions.
- Fixed locked and outdated
typing-extensions
dependency. - Fixed passing of arguments to
ClientBase
.
30.08.2023
π₯ Bsky made breaking changes in models of firehose. This release fixes it
- Update changelog for v0.0.24 by @MarshalX in MarshalX#126
- Update lexicons fetched from ad1fcf1 committed 2023-08-30T00:07:21Z by @MarshalX in MarshalX#131
15.08.2023
- Add update profile example by @MarshalX in MarshalX#120
- Add automatic link (facet) detection example by @Jxck-S in MarshalX#122
- Update changelog for v0.0.23 by @MarshalX in MarshalX#117
- Update changelog by @MarshalX in MarshalX#118
- Update lexicons fetched from 244bf46 committed 2023-08-10T20:54:24Z by @MarshalX in MarshalX#124
- Update packages; fix CVE-2023-37920 (certifi) by @MarshalX in MarshalX#125
- Fix update profile example by @IamC8 in MarshalX#121
23.07.2023
- β Delete get_or_create_model method (backward incompatible) by @MarshalX in MarshalX#111
- Add documentation for base models by @MarshalX in MarshalX#109
- Add import aliases for "models.utils" by @MarshalX in MarshalX#111
- Add str and repr for BlobRef by @MarshalX in MarshalX#113
- Add Firehose process commits example by @MarshalX in MarshalX#114
- Implement additional magic methods for DotDict by @MarshalX in MarshalX#109
- Make languages constants immutable by @MarshalX in MarshalX#110
- Fix get_model_as_dict for DotDict by @MarshalX in MarshalX#111
- Fix is_record_type for DotDict models by @MarshalX in MarshalX#112
- Fix access to unknown fields in DotDict by @MarshalX in MarshalX#116
- Update changelog for v0.0.21 by @MarshalX in MarshalX#108
23.07.2023
release has been yanked
21.07.2023
- Add dot notation for dictionaries by @MarshalX in MarshalX#106
- Fix unknown type that could be plain dictionary by @MarshalX in MarshalX#105
- Fix parsing of custom (extended) records by @MarshalX in MarshalX#106
- Fix a small typo in
README.md
by @ndrezn in MarshalX#104 - Update lexicons fetched from b2ef386 committed 2023-07-20T16:00:51Z by @MarshalX in MarshalX#107
- Update changelog for v0.0.20 by @MarshalX in MarshalX#103
19.07.2023
- Update changelog for v0.0.19 by @MarshalX in MarshalX#99
- Add pagination example using cursors by @ymdpharm in MarshalX#93
- Migrate to websockets lib (fixed all known issues with lost firehouse frames, reconnections and crashes) by @MarshalX in MarshalX#101
18.07.2023
- Update changelog for v0.0.18 by @MarshalX in MarshalX#92
- Add posts langs support by @MarshalX in MarshalX#96
- Fix infinite loop of reconnections to Firehose by @MarshalX in MarshalX#97
- Update lexicons fetched from 775944e committed 2023-07-17T23:06:44Z by @MarshalX in MarshalX#98
16.07.2023
- Update changelog for v0.0.17 by @MarshalX in MarshalX#86
- Fix is_record_type for dict record types by @joelghill in MarshalX#88
- Lower version of typing-extensions as possible; update ruff by @MarshalX in MarshalX#90
- Update lexicons fetched from b9ca76f committed 2023-07-14T23:05:56Z by @MarshalX in MarshalX#91
06.07.2023
- Update changelog for v0.0.16 by @MarshalX in MarshalX#82
- Move the websocket client into part of the atproto package by @MarshalX in MarshalX#84
- Update lexicons fetched from e7a0d27 committed 2023-07-03T16:28:39Z by @MarshalX in MarshalX#85
01.07.2023
- Update changelog for v0.0.15 by @MarshalX in MarshalX#77
- Update lexicons fetched from 0306f81 committed 2023-06-23T20:30:52Z by @MarshalX in MarshalX#79
- Lock ruff version in GHA workflow by @MarshalX in MarshalX#81
23.06.2023
- Update changelog for v0.0.14 by @MarshalX in MarshalX#70
- Update Cimon by @MarshalX in MarshalX#71
- Update lexicons fetched from 84032a6 committed 2023-06-12T21:51:38Z by @MarshalX in MarshalX#72
- Update Ruff; make _MANDATORY_HEADERS private; fix issues by @MarshalX in MarshalX#73
- Disable Cimon fail-on-error flag by @MarshalX in MarshalX#74
- Update lexicons fetched from 2768fb9 committed 2023-06-20T14:36:09Z by @MarshalX in MarshalX#75
- Fix dynamic versioning build backend by @MarshalX in MarshalX#76
10.06.2023
- Update changelog for v0.0.13 by @MarshalX in MarshalX#60
- Add Cimon in Detect Mode by @MarshalX in MarshalX#63
- Enable Cimon Prevent Mode by @MarshalX in MarshalX#64
- Add send_embed example by @MarshalX in MarshalX#66
- Update README by @MarshalX in MarshalX#67
- Update lexicons fetched from 8857fb0 committed 2023-06-09T13:21:09Z by @MarshalX in MarshalX#68
- Bump requests from 2.30.0 to 2.31.0 by @dependabot in MarshalX#69
03.06.2023
- Update changelog for v0.0.12 by @MarshalX in MarshalX#58
- Update lexicons (add admin.rebaseRepo) fetched from 4a6c976 committed 2023-05-30T15:50:46Z by @MarshalX in MarshalX#59
01.06.2023
- Update changelog for v0.0.11 by @MarshalX in MarshalX#55
- Add mypy; fix types; fix error handling of requests by @MarshalX in MarshalX#56
- Increase max message size in Firehose by @MarshalX in MarshalX#57
30.05.2023
- Update changelog for v0.0.10 by @MarshalX in MarshalX#52
- Keep Firehose open on invalid CBOR or DAG-CBOR by @MarshalX in MarshalX#54
27.05.2023
- Update changelog for v0.0.9 by @MarshalX in MarshalX#42
- Add CLI for codegen by @MarshalX in MarshalX#43
- Update lexicons fetched from 743eaf1 committed 2023-05-26T00:04:10Z by @MarshalX in MarshalX#44
- Add Ruff; init tests; fix code style and type hints by @MarshalX in MarshalX#45
- Move docs dependencies to separated group by @MarshalX in MarshalX#46
- Fix Ruff for root dir by @MarshalX in MarshalX#48
- Update lexicons fetched from c62964b committed 2023-05-26T00:22:05Z by @MarshalX in MarshalX#49
- Fix .gitignore by @MarshalX in MarshalX#50
- Custom feed generators by @MarshalX in MarshalX#47
- Fix firehose params by @MarshalX in MarshalX#51
25.05.2023
- Update changelog for v0.0.8 by @MarshalX in MarshalX#39
- Add "delete_post" and "repost" methods by @codybraun in MarshalX#40
- Fix request error handling by @MarshalX in MarshalX#41
23.05.2023
- update changelog for v0.0.7 by @MarshalX in MarshalX#34
- Fix duplication of field descriptions in docs by @MarshalX in MarshalX#35
- Add support for custom feeds. Update lexicons fetched from d661a60 committed 2023-05-23T05:02:36Z by @MarshalX in MarshalX#36
- Add Firehose (data streaming) by @MarshalX in MarshalX#31
- Add forgotten models by @MarshalX in MarshalX#37
- Fix link format in docs by @MarshalX in MarshalX#38
20.05.2023
- update changelog for v0.0.6 by @MarshalX in MarshalX#29
- Update docs by @MarshalX in MarshalX#30
- Short typing import by @MarshalX in MarshalX#32
- Fix session refreshing by @MarshalX in MarshalX#33
19.05.2023
- update changelog for v0.0.5 by @MarshalX in MarshalX#24
- Update docs domain; improve open graph by @MarshalX in MarshalX#25
- Don't lock dependencies so strictly; add pyjwt by @MarshalX in MarshalX#26
- Add session refreshing by @MarshalX in MarshalX#27
- Update lexicons fetched from cf36b36 committed 2023-05-18T22:57:59Z by @MarshalX in MarshalX#28
17.05.2023
- update changelog for v0.0.4 by @MarshalX in MarshalX#14
- Add CAR files support by @MarshalX in MarshalX#17
- Update lexicons fetched from 1cbffd6 committed 2023-05-12T21:45:15Z (lists, mute lists preferences, repo rebase, and more), by @MarshalX in MarshalX#18
- Fix spacing in examples by @prtolem in MarshalX#16
- bump version by @MarshalX in MarshalX#19
- Add PyPI publishing to release workflow by @MarshalX in MarshalX#21
- Dynamic versioning from Git Tags by @MarshalX in MarshalX#22
- fix creating of GitHub Release by @MarshalX in MarshalX#23
12.05.2023
- update changes for 0.0.3 by @MarshalX in MarshalX#10
- Update logo by @MarshalX in MarshalX#11
- add example with rich text; fix generation of system type field by @MarshalX in MarshalX#13
- fix sending of facets
08.05.2023
- add GHA workflow to create release on tag creation by @roj1512 in MarshalX#1
- Add notifications example by @MarshalX in MarshalX#2
- simplify and fix process_notifications example by @MarshalX in MarshalX#4
- add ability to access to model's fields by [] by @MarshalX in MarshalX#5
- add deserialization of records by @MarshalX in MarshalX#6
- add home_timeline and profile_posts examples by @MarshalX in MarshalX#7
- publish package with OpenID Connect by @MarshalX in MarshalX#8
- bump version to 0.0.3 by @MarshalX in MarshalX#9
06.05.2023
The first public release.