Wykres commitów

117 Commity (a30965dfd6986e287a921c901e6622305be16905)

Autor SHA1 Wiadomość Data
Ryan Barrett 0f7289b706
drop Object.labels 2025-01-31 14:57:56 -08:00
Ryan Barrett ca86534f21
Protocol.receive: when fetching actor, fetch profile id
also update tests to test profile vs actor id with Fake users more
2025-01-27 16:47:33 -08:00
Ryan Barrett bf9957f889
/update-profile bug fix for profile id vs actor id
for #1720
2025-01-27 16:13:59 -08:00
Ryan Barrett 899a6dd405
remove a bunch of old deprecated URL endpoints
looked at requests to these endpoints over the last 30d, they all have either none, or all errors, or requests for just my account (snarfed.org web)

* /ap/web/...
* /inbox
* /render
* /user/...
2025-01-26 19:40:29 -08:00
Ryan Barrett 6f384c9e21
PagesTest.test_update_profile: use fake:profile:... id 2025-01-20 13:45:12 -08:00
Ryan Barrett f03057502a
start all synthetic id fragments with #bridgy-fed-... 2025-01-18 12:16:47 -08:00
Ryan Barrett cd28e4d68b
stop serving user pages and counting followers for protocol bot users
for #1561, #1678
2025-01-12 08:32:18 -08:00
Ryan Barrett e80dacdb2c
add /user-page form for finding user page, for any protocol
for #1043
2025-01-10 12:38:46 -08:00
Ryan Barrett ae315a4257
add new Protocol.DEFAULT_SERVE_USER_PAGES config attr
for #1043
2025-01-10 11:36:22 -08:00
Ryan Barrett 1aca15ee1e
drop User.direct
subsumed by User.enabled_protocols. for #973
2025-01-06 20:06:23 -08:00
Ryan Barrett 3e17806401
RSS feeds: add default email address so that author gets populated
for https://github.com/snarfed/granary/pull/847
2024-12-23 12:54:13 -08:00
Ryan Barrett 572ca2c9ab
Revert "temporarily disable tasklet patch and hydrating objects/authors in pages.serve_feed"
This reverts commit 01ba8b5d50.

didn't help with ndb caching

for #1149
2024-12-19 16:41:55 -08:00
Ryan Barrett 01ba8b5d50
temporarily disable tasklet patch and hydrating objects/authors in pages.serve_feed
for https://github.com/snarfed/bridgy-fed/issues/1149#issuecomment-2555798869
2024-12-19 13:25:34 -08:00
Ryan Barrett f57951d5d8
require web users to have an Atom or RSS feed or webmentions
for #1458
2024-11-24 21:03:51 -08:00
Ryan Barrett 05b86df9d2
Web.fetch: if we're fetching a homepage, set its url to the initial url
not the final response URL. handles when root domain redirects to www. for #1490
2024-11-15 21:31:22 -08:00
Ryan Barrett 2cd127bb5a
/update-profile: for Web users, try to set ATProto handle to domain
for #826
2024-10-28 21:23:11 -07:00
Ryan Barrett a452f288fe
send and receive tasks: switch from url-safe Object key to string id
will affect all send tasks, but only update-profile receive tasks, the rest already switched to passing Object properties in the HTTP request directly
2024-10-11 08:53:21 -07:00
Ryan Barrett a5cbc9b581
tests: remove routing special case for Fake and OtherFake in Protocol.receive
for #1180
2024-10-08 15:03:43 -07:00
Ryan Barrett 94996047a0
more checking fake sent objects in tests: test_pages, test_protocol
for #1076
2024-10-08 15:03:43 -07:00
Ryan Barrett 7015262315
/update-profile: fix ugly bug for Web users that deleted their profiles
introduced in 4df76d0db7
2024-09-22 12:57:09 -07:00
Ryan Barrett 356903c3e9
test_pages: test www special case domains
for #1244
2024-08-08 20:16:17 -07:00
Ryan Barrett 5bcb230d39
drop /bridge-user 2024-07-22 20:45:22 -07:00
Ryan Barrett fd74d98a6e
fix tests for 6eda331946 2024-06-23 08:38:00 -07:00
Ryan Barrett 6eda331946
user page UI: apply status to query by handle as well as get_by_id 2024-06-23 08:03:22 -07:00
Ryan Barrett 3301da3031
noop: add Fake.web_url 2024-05-29 16:46:16 -07:00
Ryan Barrett 8f5d8221a9
add ids.profile_id, use everywhere
for #566
2024-05-29 16:18:15 -07:00
Ryan Barrett bfbae4b280
authz: normalize user ids before comparing, in both receive and Object.get_or_create
for #566
2024-05-29 12:29:38 -07:00
Ryan Barrett 1de49de720
update-profile: pass user id to receive task authed_as, not handle
for #566
2024-05-28 14:54:31 -07:00
Ryan Barrett 2dc693d654
test_pages: test_update_profile_receive_task 2024-05-27 20:38:51 -07:00
Ryan Barrett 79e5d2be07
bug fix for User.status handling: check for false-ness, not is None
we have some users in the datastore with status None, some with False. 😕 fixes #1048
2024-05-12 19:02:07 -07:00
Ryan Barrett c943e6fd87
/update-profile: bug fix for when user profile fetch fails
fixes https://console.cloud.google.com/errors/detail/CLzStOz_oPfYxwE;time=P30D?project=bridgy-federated
2024-05-05 19:22:11 -07:00
Ryan Barrett b6be345921
UI: refactor actor link rendering into User.user_link / Object.actor_link 2024-04-29 12:27:00 -07:00
Ryan Barrett 2a4146fe74
update profile UI: link handle in flashed message 2024-04-28 06:50:46 -07:00
Ryan Barrett 71cb803840
user page bug fix for direct vs enabledd
need to drop direct!
2024-04-27 09:54:13 -07:00
Ryan Barrett 1d20befe7e
Protocol.receive: always wrap actor objects in update, not post/create 2024-04-25 13:45:27 -07:00
Ryan Barrett d6a10b4be0
update profile button: make receive task instead of running it inline 2024-04-24 17:06:25 -07:00
Ryan Barrett 115d85909a
abstract "update profile" button across protocols
adds new /[protocol]/[id]/update-profile endpoint
2024-04-22 20:21:56 -07:00
Ryan Barrett 817ef1d5d6
user pages: only hide indirect AP users, not ATProto 2024-04-11 14:24:18 -07:00
Ryan Barrett 6325f0e94c
temporarily disable /bridge-user tests, for 245ef44 2024-03-13 13:53:30 -07:00
Ryan Barrett 51254f67de
atproto: tweak profile label, add bridgy-fed- 2024-03-11 15:31:31 -07:00
Ryan Barrett 95e46c5ebb
Revert "cache outbound HTTP request responses, locally to each inbound request"
This reverts commit 30debfc8fa.

seemed promising, but broke in production. Saw a lot of `IncompleteRead`s on both GETs and POSTs. Rolled back for now.

```
('Connection broken: IncompleteRead(9172 bytes read, -4586 more expected)', IncompleteRead(9172 bytes read, -4586 more expected))
...
File "oauth_dropins/webutil/util.py", line 1673, in call
  resp = getattr((session or requests), fn)(url, *args, **kwargs)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests_cache/session.py", line 102, in get
  return self.request('GET', url, params=params, **kwargs)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests_cache/session.py", line 158, in request
  return super().request(method, url, *args, headers=headers, **kwargs)  # type: ignore
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests/sessions.py", line 589, in request
  resp = self.send(prep, **send_kwargs)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests_cache/session.py", line 205, in send
  response = self._send_and_cache(request, actions, cached_response, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests_cache/session.py", line 233, in _send_and_cache
  self.cache.save_response(response, actions.cache_key, actions.expires)
File "requests_cache/backends/base.py", line 89, in save_response
  cached_response = CachedResponse.from_response(response, expires=expires)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests_cache/models/response.py", line 102, in from_response
  obj.raw = CachedHTTPResponse.from_response(response)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests_cache/models/raw_response.py", line 69, in from_response
  _ = response.content  # This property reads, decodes, and stores response content
      ^^^^^^^^^^^^^^^^
File "requests/models.py", line 899, in content
  self._content = b"".join(self.iter_content(CONTENT_CHUNK_SIZE)) or b""
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "requests/models.py", line 818, in generate
  raise ChunkedEncodingError(e)
```
2024-03-11 15:31:30 -07:00
Ryan Barrett 30debfc8fa
cache outbound HTTP request responses, locally to each inbound request
using requests-cache. pretty straightforward! for #588
2024-03-08 12:34:49 -08:00
Ryan Barrett c2b8db8687
atproto: self label profiles with 'bridged-from-[protocol]'
fixes #827
2024-03-01 13:31:59 -08:00
Ryan Barrett 675e39809e
web UI: tweak user links in user page header 2024-02-11 14:39:09 -08:00
Ryan Barrett 907e6e7aeb
show Web user page even when direct is False
not other protocols though
2024-01-22 13:12:20 -08:00
Ryan Barrett 7941b632ca
Object._pre_put_hook: require that protocol owns id 2024-01-12 19:53:01 -08:00
Ryan Barrett 49eb9b8541
add Mastodon instance info at /api/v1/instance
https://docs.joinmastodon.org/methods/instance/#v1

right now just for FediSeer: https://fediseer.com/faq/eng#how-can-i-claim-my-instance
2023-12-31 08:42:26 -08:00
Ryan Barrett 520b2fd3b0
User.ap_address() => handle_as(ActivityPub) 2023-11-29 21:06:55 -08:00
Ryan Barrett 1ec1fc2482
genericize user handles on UI follower/following pages 2023-11-27 21:40:01 -08:00
Ryan Barrett 004726d397
fix followers/ing UI page for AP users
fixes #718
2023-11-27 21:01:02 -08:00