Wykres commitów

2621 Commity (1280982e97d7fcaafeb3bebc5b4a6eb9a58d1585)

Autor SHA1 Wiadomość Data
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