Ryan Barrett
960d564614
ATProto DatastoreClient: add support for records in local repos
...
hopefully fixes https://console.cloud.google.com/errors/detail/CMCs_JjSnpWBtAE;time=P7D?project=bridgy-federated
2024-06-19 16:08:07 -07:00
Ryan Barrett
32c69876fb
AP: bug fix for converting Link attachments to HTML links in content
...
for 980a786
, #958
2024-06-19 13:54:06 -07:00
Ryan Barrett
980a786c6b
AP: convert Link attachments to HTML links in content
...
...since some fediverse platforms (notably Mastodon) will render them as blank "Preview not available" embeds, and support on other platforms is unreliable. Most reliably generate preview embeds for HTML links in content though.
fixes #958
2024-06-19 13:29:20 -07:00
Ryan Barrett
349f4ba544
user page UI: ellipsize user-visible handles
...
fixes #994
2024-06-19 11:05:10 -07:00
Ryan Barrett
b20bbf0564
memcache config: try to only use prod Memorystore on prod GAE
2024-06-19 11:01:46 -07:00
Ryan Barrett
4a197549cd
migrate old ATProto integration tests from polling to firehose
...
for #689
2024-06-18 20:41:00 -07:00
Ryan Barrett
875db043fa
router config: back to two workers, 50 threads each 🤷
...
for #1138
2024-06-18 20:22:56 -07:00
Ryan Barrett
1e20044035
text fix for e6b4a23
(bug fix for bot user profiles)
2024-06-18 14:58:57 -07:00
Ryan Barrett
e6b4a237c4
bug fix for bot user profiles, banner image URL
2024-06-18 14:30:09 -07:00
Ryan Barrett
a87f3583ca
add separate banner image to bot user profiles
2024-06-18 10:53:58 -07:00
Ryan Barrett
679e89c175
Protocol.translate_ids: add AS1 attachments[].id
...
needed for quote posts, #461
2024-06-17 16:36:44 -07:00
Ryan Barrett
c0747c33aa
README tweak: shipped Bluesky, considering Farcaster
2024-06-17 16:36:44 -07:00
dependabot[bot]
78cf5f9a33
build(deps): bump urllib3 from 2.2.1 to 2.2.2
...
Bumps [urllib3](https://github.com/urllib3/urllib3 ) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/urllib3/urllib3/releases )
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst )
- [Commits](https://github.com/urllib3/urllib3/compare/2.2.1...2.2.2 )
---
updated-dependencies:
- dependency-name: urllib3
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-17 15:56:37 -07:00
Ryan Barrett
d466886a38
circle never mind continuous deploy for router, we need the limited_domains file
...
...which isn't in the git repo. next step would be to put it into a circle env var.
2024-06-14 15:35:24 -07:00
Ryan Barrett
f1867d9521
circle: deploy router in separate gcloud command because Flex doesn't support --no-cache
...
https://issuetracker.google.com/issues/347268867
2024-06-14 15:19:50 -07:00
Ryan Barrett
f09d8eb0bc
circle: add router to continuous deploy
2024-06-14 13:10:30 -07:00
Ryan Barrett
da5d434595
bug fix for deleting bridged fediverse actors: translate object as actor id
...
...not as object id. for #783 , 81319a7628
2024-06-14 12:54:55 -07:00
Ryan Barrett
49445c9f97
AP outbox and following endpoints: 404 if user hasn't enabled AP
2024-06-14 12:00:20 -07:00
Ryan Barrett
81319a7628
when a Bluesky user blocks the ap.brid.gy bot, delete their bridged fediverse profile
...
for #783
2024-06-13 21:47:19 -07:00
Ryan Barrett
f21bc2cfe8
ActivityPub.target_for: pass shared kwarg through to recursive call
2024-06-13 20:11:37 -07:00
Ryan Barrett
162d882112
ATProto: pass new type kwarg to granary Bluesky.truncate() call
...
for snarfed/granary@7d7e377c28
2024-06-13 19:46:43 -07:00
Ryan Barrett
4e489a4ee0
activitypub.inbox: store seen activity ids in memcache, short circuit on seen ids earlier
2024-06-13 13:54:37 -07:00
Ryan Barrett
cb2a3bef0b
Object: drop legacy converting (un-escaping) between ^^ and # in ids/URLs
...
for #469 , well over a year old, I think we're safe to forget about this now
2024-06-13 13:24:32 -07:00
Ryan Barrett
13df5e9fe7
bump up router to 2 cores and 100 threads, double receive/send task queue rates
2024-06-13 12:46:26 -07:00
Ryan Barrett
3c06739889
common.report_exception bug fix
2024-06-13 12:02:54 -07:00
Ryan Barrett
fdca3b6d55
Protocol.receive: don't attempt to deliver to followers on non-enabled protocols
...
mostly just handles this more gracefully. these deliveries were failing anyway, just not cleanly. fixes eg https://console.cloud.google.com/errors/detail/CMHloZaRmPXQZQ;time=P30D?project=bridgy-federated , probably others too
2024-06-13 12:02:54 -07:00
Ryan Barrett
616073f788
merge hub and atproto_firehose services into a single service, atproto_hub
...
atproto_firehose is averaging 20-40% CPU right now, hub 5-10%, and both are 500-600M memory steady state, so they can easily fit together.
2024-06-13 12:02:54 -07:00
Ryan Barrett
590021926c
bump up router threads from 40 to 50, task queue rate limits
...
router is hitting 100% CPU sustained during bursts right now, probably need to either rethink its architecture or just add another core soon :/
2024-06-12 15:48:11 -07:00
Ryan Barrett
387d3169a6
ATProto: rename original* custom fields to bridgyOriginal*
...
for #1092
2024-06-12 15:22:45 -07:00
Ryan Barrett
417a88a2a6
ATProto: support new off-lexicon originalDescription and originalUrl fields
...
for snarfed/bridgy-fed#1092
2024-06-12 15:22:45 -07:00
dependabot[bot]
5d42e042d8
build(deps): bump testtools from 2.7.1 to 2.7.2
...
Bumps [testtools](https://github.com/testing-cabal/testtools ) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/testing-cabal/testtools/releases )
- [Changelog](https://github.com/testing-cabal/testtools/blob/master/NEWS )
- [Commits](https://github.com/testing-cabal/testtools/compare/2.7.1...2.7.2 )
---
updated-dependencies:
- dependency-name: testtools
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-11 05:31:30 -07:00
Ryan Barrett
04112c88bf
ATProto.add_source_links: switch to granary's Bluesky.truncate()
...
for #986
2024-06-10 16:15:59 -07:00
dependabot[bot]
5f02f81775
build(deps): bump packaging from 24.0 to 24.1
...
Bumps [packaging](https://github.com/pypa/packaging ) from 24.0 to 24.1.
- [Release notes](https://github.com/pypa/packaging/releases )
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pypa/packaging/compare/24.0...24.1 )
---
updated-dependencies:
- dependency-name: packaging
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-10 05:47:51 -07:00
Ryan Barrett
b2f03414ef
ATProto: deregister XRPC methods we don't support
...
fixes:
* https://console.cloud.google.com/errors/detail/CIGTqdDu7ZPg4QE;time=P30D?project=bridgy-federated
* https://console.cloud.google.com/errors/detail/CPbL1db3m4KzVw;time=P30D?project=bridgy-federated
* https://console.cloud.google.com/errors/detail/CIGTqdDu7ZPg4QE;time=P30D?project=bridgy-federated
2024-06-09 18:46:53 -07:00
Ryan Barrett
551637f6a1
ATProto.send: ignore update/delete of object that we didn't bridge
...
fixes https://console.cloud.google.com/errors/detail/COX1ss-HvOq5Xg;time=P30D?project=bridgy-federated
2024-06-08 16:52:34 -07:00
Ryan Barrett
5b7f8de8d6
ATProto.send: handle delete when we have Object but not contents
...
fixes https://console.cloud.google.com/errors/detail/COjSuYPS0qLvmAE;time=P30D?project=bridgy-federated
2024-06-08 16:40:19 -07:00
Ryan Barrett
4a2abbac5b
ATProto.send, create_report: short circuit if repo is tombstoned
...
fixes https://console.cloud.google.com/errors/detail/CLTU-qezn5vJnQE;time=P30D?project=bridgy-federated
2024-06-08 15:16:39 -07:00
Ryan Barrett
796edf2033
Protocol.receive: drop direct targets if user isn't bridged into their protocol
...
fixes https://console.cloud.google.com/errors/detail/CMHloZaRmPXQZQ;time=P30D?project=bridgy-federated
2024-06-08 15:08:12 -07:00
Ryan Barrett
9ff28ea690
ATProto.send: short circuit out for deletes of objects we don't have
...
fixes https://console.cloud.google.com/errors/detail/COjSuYPS0qLvmAE;time=P30D?project=bridgy-federated , https://console.cloud.google.com/errors/detail/COX1ss-HvOq5Xg;time=P30D?project=bridgy-federated
2024-06-08 14:28:16 -07:00
Ryan Barrett
aca0a060a3
Protocol.send_task: only interpret HTTP exceptions as failures; re-raise others
...
this contributed to hiding the root cause of #1121 . log:
```
Running send task 6251425858687873358
Params: [('obj', 'ahBicmlkZ3ktZmVkZXJhdGVkclYLEgZPYmplY3QiSmh0dHBzOi8vaW5kaWV3ZWIuc29jaWFsL3VzZXJzL3NuYXJmZWQvc3RhdHVzZXMvMTEyNTgyNzgwNzcwODQzNjQ1L2FjdGl2aXR5DA'), ('orig_obj', ''), ('protocol', 'atproto'), ('url', 'https://atproto.brid.gy '), ('user', 'ahBicmlkZ3ktZmVkZXJhdGVkcjYLEgtBY3Rpdml0eVB1YiIlaHR0cHM6Ly9pbmRpZXdlYi5zb2NpYWwvdXNlcnMvc25hcmZlZAw')]
Sending https://indieweb.social/users/snarfed/statuses/112582780770843645/activity AS1: ...
Using server at https://api.bsky.app
Determining protocol for id https://indieweb.social/users/snarfed/statuses/112582780770843645
Key('Object', 'https://indieweb.social/users/snarfed/statuses/112582780770843645 ') owned by source_protocol activitypub
Can't translate object id https://indieweb.social/users/snarfed/statuses/112582780770843645 to atproto , haven't copied it there yet!
Determining protocol for id https://indieweb.social/users/snarfed
Key('Object', 'https://indieweb.social/users/snarfed ') owned by source_protocol activitypub
Using server at https://bsky.social/
"name 'link_length' is not defined
Traceback (most recent call last):
File "/workspace/protocol.py", line 1611, in send_task
sent = PROTOCOLS[protocol].send(obj, url, from_user=user, orig_obj=orig_obj)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/workspace/atproto.py", line 423, in send
record = to_cls.convert(base_obj, fetch_blobs=True, from_user=from_user)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/workspace/protocol.py", line 540, in convert
converted = cls._convert(obj, from_user=from_user, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/workspace/atproto.py", line 610, in _convert
ret = bluesky.from_as1(cls.translate_ids(obj.as1), blobs=blobs,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "granary/bluesky.py", line 577, in from_as1
text = src.truncate(full_text, None, OMIT_LINK)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "granary/source.py", line 908, in truncate
truncated = brevity.shorten(content, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "brevity.py", line 247, in shorten
base_length = total_length(tokens)
^^^^^^^^^^^^^^^^^^^^
File "brevity.py", line 188, in total_length
return sum(token_length(t) for t in tokens)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "brevity.py", line 188, in <genexpr>
return sum(token_length(t) for t in tokens)
^^^^^^^^^^^^^^^
File "brevity.py", line 183, in token_length
return link_length
^^^^^^^^^^^
NameError: name 'link_length' is not defined"
```
2024-06-08 13:20:34 -07:00
Ryan Barrett
e761f23324
Protocol: noop, comment tweak and TODO
2024-06-08 13:14:56 -07:00
Ryan Barrett
1b4a04c70e
hub: bring back ROLLBACK_WINDOW, bumped up to 50k seqs
2024-06-07 16:47:56 -07:00
Ryan Barrett
026d99edc0
pass ignore_links=True to html_to_text everywhere
...
for #976
2024-06-06 18:14:35 -07:00
Ryan Barrett
183c829229
ATProto.add_source_links: truncate before adding source links
...
for #976
2024-06-06 14:16:05 -07:00
Ryan Barrett
27fc843825
Protocol.add_source_links bug fixes, handle actors inside create/update activities
...
for #976
2024-06-06 11:40:25 -07:00
Ryan Barrett
be30afd55a
ATProto: use plain text URLs domains in "bridged by Bridgy Fed" profile text
...
for #976
2024-06-06 08:58:09 -07:00
Ryan Barrett
9e18b7f110
tweak "bridged by Bridgy Fed" links in profile: use handle, add source protocol
...
for #976
2024-06-06 08:58:09 -07:00
Ryan Barrett
ad81b1883e
refactor Protocol.convert, extract out new add_source_links method
...
for #976
2024-06-06 08:58:08 -07:00
dependabot[bot]
64aeae63ad
build(deps): bump redis from 5.0.4 to 5.0.5
...
Bumps [redis](https://github.com/redis/redis-py ) from 5.0.4 to 5.0.5.
- [Release notes](https://github.com/redis/redis-py/releases )
- [Changelog](https://github.com/redis/redis-py/blob/master/CHANGES )
- [Commits](https://github.com/redis/redis-py/compare/v5.0.4...v5.0.5 )
---
updated-dependencies:
- dependency-name: redis
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-06 05:10:30 -07:00
dependabot[bot]
0e56a37526
build(deps): bump cbor2 from 5.6.3 to 5.6.4
...
Bumps [cbor2](https://github.com/agronholm/cbor2 ) from 5.6.3 to 5.6.4.
- [Release notes](https://github.com/agronholm/cbor2/releases )
- [Changelog](https://github.com/agronholm/cbor2/blob/master/docs/versionhistory.rst )
- [Commits](https://github.com/agronholm/cbor2/compare/5.6.3...5.6.4 )
---
updated-dependencies:
- dependency-name: cbor2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-06-06 05:10:12 -07:00