Commit Graph

3232 Commits (5c2745725e2480f18bc81176575210bbef7f286c)

Author SHA1 Message Date
Alexander Strizhakov ed189568f3
moving mrf settings from instance to separate group
4 years ago
Alexander Strizhakov 3c2cee33ad
moving custom ecto types in context folders
4 years ago
Alexander Strizhakov 9a4fde9766
Mogrify args as custom tuples
4 years ago
lain 015f9258a9 Transmogrifier: Extract user update handling tests.
4 years ago
lain 1eb6cedaad ActivityPub: When restricting to media posts, only show 'Creates'.
4 years ago
stwf faba1a6e33 fix tests
4 years ago
Maksim Pechnikov 579763126f Merge branch 'develop' into issue/1855
4 years ago
Egor Kislitsyn bd63089a63
Fix tests
4 years ago
Egor Kislitsyn 58e4e3db8b
Merge remote-tracking branch 'origin/develop' into merge-ogp-twitter-parsers
4 years ago
Maksim Pechnikov 62b8c31b7a added tests
4 years ago
lain b7df7436c8 Conversations: Return last dm for conversation, not last message.
4 years ago
Maksim Pechnikov 2e8a236cef fix invalidates media url's
4 years ago
eugenijm b15cfc3d36 Mastodon API: ensure the notification endpoint doesn't return less than the requested amount of records unless it's the last page
4 years ago
rinpatch 271ea5068f Merge branch '1851-favorites-pagination' into 'develop'
4 years ago
href cb7be6eef2 Remove use of atoms in MRF.UserAllowListPolicy
4 years ago
Egor Kislitsyn 520367d6fd Fix atom leak in Rich Media Parser
4 years ago
Mark Felder 26f710b9e3 Merge branch 'develop' into preload-data
4 years ago
Haelwenn 4115701f71 Merge branch 'recipients-experiments' into 'develop'
4 years ago
Egor Kislitsyn 697cf92024
Merge remote-tracking branch 'origin/develop' into merge-ogp-twitter-parsers
4 years ago
lain e557265a03 Merge branch 'global-status-expiration' into 'develop'
4 years ago
Maksim Pechnikov f9dcf15ecb added admin api for MediaProxy cache invalidation
4 years ago
Ivan Tashkinov 2188097066 [#1794] Fixes URI query handling for hashtags extraction in search.
4 years ago
Egor Kislitsyn 1f35acce54
Merge OGP parser with TwitterCard
4 years ago
Ivan Tashkinov b28cec4271 [#1794] Fixes URI query handling for hashtags extraction in search.
4 years ago
lain 5d87405b51 ActivityPubTest: Update test for atomized parameters.
4 years ago
Thibaut Girka 570123ae21 Add test
4 years ago
rinpatch 7aa6c82937 Merge branch 'remake-remodel-dms' into 'develop'
4 years ago
lain 600e2ea073 ActivityPubTest: Make test easier to understand.
4 years ago
lain 9e411372d0 ActivityPub: Don't show announces of your own objects in timeline.
4 years ago
Egor Kislitsyn 3dd1de61a7 Add `url` field to AdminAPI.AccountView
4 years ago
lain 063e6b9841 StatusController: Correctly paginate favorites.
4 years ago
lain 064c4f86f3 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
Roman Chvanikov 604a83ae3e merge develop
4 years ago
Egor Kislitsyn d44843e677
Restrict ActivityExpirationPolicy to Notes only
4 years ago
Egor Kislitsyn da22119c2f
Merge branch 'develop' into global-status-expiration
4 years ago
lain d192492658 Merge branch 'openapi/admin/relay' into 'develop'
4 years ago
lain 3b5282bef2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain 89b85f6529 ChatController: Remove nonsensical pagination.
4 years ago
lain 7d66dd180a Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain fe2a5d0614 ChatController: Make last_read_id mandatory.
4 years ago
lain 801e668a97 ChatController: Add `last_read_id` option to mark_as_read.
4 years ago
lain 2cdaac4330 SideEffects: Move streaming of chats to after the transaction.
4 years ago
lain f4cf4ae16e ChatController: Use new oauth scope *:chats.
4 years ago
Haelwenn (lanodan) Monnier e1b07402ab
User: Add raw_bio, storing unformatted bio
4 years ago
lain ca0e6e702b ChatMessageReference -> Chat.MessageReference
4 years ago
lain 4e8c0eecd5 WebPush: Don't break on contentless chat messages.
4 years ago
Egor Kislitsyn b02df1803e
Merge remote-tracking branch 'origin/develop' into activity-pub-use-atoms-as-keys
4 years ago
lain a8ca030d85 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
Haelwenn d74985af23 Merge branch 'features/apc2s-pagination' into 'develop'
4 years ago
lain 115d08a754 Pipeline: Add a side effects step after the transaction finishes
4 years ago
lain 0efa8aa0b9 Transmogrifier: For follows, create notifications last.
4 years ago
lain cc8a7dc205 SideEffects / ChatView: Add an unread cache.
4 years ago
lain d44da91bbf SubscriptionOperation: Let chat mentions through.
4 years ago
Egor Kislitsyn 317e2b8d61
Use atoms as keys in `ActivityPub.fetch_*` functions options
4 years ago
lain 74edd4f391 Merge branch 'remake-remodel-dms' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain 56dfa0e0fb Transmogrifier: Update notification after accepting.
4 years ago
lain 41503b1673 Apply suggestion to test/web/activity_pub/transmogrifier/chat_message_test.exs
4 years ago
lain 00748e9650 ChatMessageReferences: Change seen -> unread
4 years ago
stwf a42d135cce test fix
4 years ago
minibikini b57e4ad1ab Merge branch 'develop' into 'openapi/admin/relay'
4 years ago
lain b952f3f379 WebPush: Push out chat message notications.
4 years ago
lain 5d7dda883e SideEffectsTest: More tests.
4 years ago
Egor Kislitsyn a8132690bd
Fix credo
4 years ago
Egor Kislitsyn 70f054b083
Merge branch 'develop' into openapi/admin/relay
4 years ago
Egor Kislitsyn b4d5bdd6f1
Merge branch 'develop' into openapi/admin/config
4 years ago
stwf 3b8180d7d1 add status_net/config
4 years ago
stwf dbcc1b105e encode data properly
4 years ago
stwf 29ae5bb771 preload data into index.html
4 years ago
lain b3407344d3 ChatController: Add function to mark single message as read.
4 years ago
lain c020fd4352 ChatMessageReferenceView: Return read status as `unread`.
4 years ago
Egor Kislitsyn c16315d055
Add OpenAPI spec for AdminAPI.ReportController
4 years ago
Egor Kislitsyn 9d572f2f66
Move report actions to AdminAPI.ReportController
4 years ago
lain fb4ae9c720 Streamer, SideEffects: Stream out ChatMessageReferences
4 years ago
lain 7f5c5b11a5 Chats: Remove `unread` from the db, calculate from unseen messages.
4 years ago
lain f3ccd50a33 ChatMessageReferences: Adjust views
4 years ago
lain aa22fce8f4 ChatMessageReference: Introduce and switch in chat controller.
4 years ago
feld 6c1c2cddec Merge branch 'fix/1794-hashtag-search-results' into 'develop'
4 years ago
Egor Kislitsyn 68cb152a08
Merge branch 'develop' into openapi/admin/relay
4 years ago
lain 879304dcd9 Merge branch 'replies-domain-block' into 'develop'
4 years ago
lain 5da38c15cd Merge branch 'openapi/admin/oauth-apps' into 'develop'
4 years ago
lain 022d975a39 Merge branch 'openapi/admin/invites' into 'develop'
4 years ago
lain 904295d53b Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain 37542a9dfa Activity: Remove notifications-related functions.
4 years ago
lain 127ccc4e1c NotificationController: Don't return chat_mentions by default.
4 years ago
lain cd2abcc0e3 Merge branch 'fix/invisible-repeats' into 'develop'
4 years ago
rinpatch 165a4b2a69 Do not include activities of invisible users unless explicitly requested
4 years ago
lain d111eae798 Merge branch 'feature/status-by-id-account-view' into 'develop'
4 years ago
lain 8e1db6a835 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
Alexander Strizhakov 19f468c5bc
replies filtering for blocked domains
4 years ago
rinpatch 6fb900a496 Merge branch 'user-updates' into 'develop'
4 years ago
Alexander Strizhakov 7e6ec778d9
exclude replies on blocked domains
4 years ago
lain af9090238e CommonAPI: Newlines -> br for chat messages.
4 years ago
Egor Kislitsyn a7627bdc7a
Merge remote-tracking branch 'origin/develop' into global-status-expiration
4 years ago
lain d4d4b92f75 TimelineController: Only return `Create` in public timelines.
4 years ago
lain 9460983032 AccountController: Federate user account changes.
4 years ago
lain 6ff079ca9f Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain 8bdf18d7c1 CommonAPI: Linkify chat messages.
4 years ago
lain 2c9465cc51 SafeText: Let through basic html.
4 years ago
lain b004c427a0 Merge branch 'conversation-pagination' into 'develop'
4 years ago
Steven Fuchs 6d4b80822b Conversation pagination
4 years ago
Ivan Tashkinov 24f40b8a26 [#1794] Fixed search query splitting regex to deal with Unicode. Adjusted a test.
4 years ago
Ivan Tashkinov 78c80a261a Merge remote-tracking branch 'remotes/origin/develop' into fix/1794-hashtag-search-results
4 years ago
Roman Chvanikov 0a83af330b fix unused var warning
4 years ago
Ivan Tashkinov c181e555db [#1794] Improvements to hashtags extraction from search query.
4 years ago
kPherox 9ca978494f
Add test for stream boosts of mastodon user
4 years ago
Haelwenn (lanodan) Monnier a43b435c0a
AP C2S: allow limit & order on outbox & read_inbox
4 years ago
Haelwenn (lanodan) Monnier b3b367b894
Bugfix: Reuse Controller.Helper pagination for APC2S
4 years ago
lain 863c02b25d SideEffects: Stream out chat messages.
4 years ago
lain c86a88edec Streamer: Add a chat message stream.
4 years ago
lain 9848978109 Merge branch 'fix-relay-repeat-notification' into 'develop'
4 years ago
lain af6d01ec93 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
rinpatch 396bc69aee Merge branch 'fix/mediaproxy-bypass-emoji' into 'develop'
4 years ago
Egor Kislitsyn 06f20e9181
Add OpenApi spec to AdminAPI.ConfigController
4 years ago
Egor Kislitsyn d1ee3527ef
Move config actions to AdminAPI.ConfigController
4 years ago
lain f6ddf0cc50 Merge branch 'feature/1792-update-actor-type' into 'develop'
4 years ago
Mark Felder 9eea800026 Refactor notification settings
4 years ago
rinpatch 8f6d428880 AccountView: Use mediaproxy URLs for emojis
4 years ago
rinpatch 78c46fb7ba MediaProxy test: use config macros instead of directly putting values
4 years ago
kPherox 48fd9be65a
Exclude post actor from to of relay announce
4 years ago
rinpatch d35be02e70 Merge branch 'refactor-add-mention-step-one' into 'develop'
4 years ago
Alexander Strizhakov 3249141588
validate actor type
4 years ago
rinpatch 3601c0015c Merge branch '1808-pleroma-sucks' into 'develop'
4 years ago
Egor Kislitsyn fca48154a2
Add AdminAPI.InviteView
4 years ago
Egor Kislitsyn 2a4f965191
Add OpenAPI spec for AdminAPI.InviteTokenController
4 years ago
Egor Kislitsyn 95ebfb9190
Move invite actions to AdminAPI.InviteTokenController
4 years ago
Alexander Strizhakov 8f08384d80
another view for account in admin-fe status_show
4 years ago
Ivan Tashkinov d7a57004ef [#1501] Made user feed contain public and unlisted activities.
4 years ago
Egor Kislitsyn 0ba1f2631a
Add OpenAPI spec for AdminAPI.OAuthAppContoller
4 years ago
lain dbd07d29a3 Streamer: Don't crash on streaming chat notifications
4 years ago
lain 2c25087d20 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain 6bd7070b00 Transmogrifier: Use a simpler way to get mentions.
4 years ago
Egor Kislitsyn cbcd592300
Add OpenAPI spec for AdminAPI.RelayController
4 years ago
lain f20dff451e Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into 1808-pleroma-sucks
4 years ago
lain 5d5db7e5b7 StealEmojiPolicyTest: Clean up.
4 years ago
lain 2dff376041 StealEmojiPolicyTest: Fix flaky test.
4 years ago
lain ee35bb5ac2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain aeb0875025 StealEmojiPolicyTest: Fix flaky test.
4 years ago
lain ec470c4c77 Merge branch 'openapi/admin/status' into 'develop'
4 years ago
lain d0c26956da User: Don't error out if we want to refresh a user but can't
4 years ago
rinpatch 7bc2ec0aa2 Merge branch 'mastodon-migration-compat' into 'develop'
4 years ago
lain ddbbefeb2e Merge branch 'feature/configure-filename-truncate' into 'develop'
4 years ago
Roman Chvanikov cc82229ba7 Add filename_display_max_length config
4 years ago
lain 91c8467582 OStatusController: Add Mastodon activity compat route.
4 years ago
lain 355aa3bdc7 ActivityPubController: Add Mastodon activity compat route.
4 years ago
lain 8a4bd9e5d1 OStatusController: Add Mastodon compatibility route for objects.
4 years ago
rinpatch 1fa7aa9fc5 Merge branch 'emoji-react-better-errors' into 'develop'
4 years ago
Egor Kislitsyn ba106aa9c8
Fix notifications mark as read API
4 years ago
lain ca755f9a73 ActivityPubController: Add Mastodon compatibility route.
4 years ago
lain bcb549531f EmojiReactionController: Return more appropriate error.
4 years ago
Haelwenn 7b02bfca51 Merge branch 'announce-validator' into 'develop'
4 years ago
Haelwenn a57e7f3503 Merge branch '1113-op-mentioning' into 'develop'
4 years ago
lain 578ed3a37f Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain a42a0716ec Merge branch 'features/emoji_stealer' into 'develop'
4 years ago
lain f166316f50 Merge branch 'openapi/pleroma-api/pleroma' into 'develop'
4 years ago
Egor Kislitsyn 45d2c4157f
Add OpenAPI spec for AdminAPI.StatusController
4 years ago
lain cc0d462e91 Attachments: Have the mediaType on the root, too.
4 years ago
lain 814c3e5171 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain bf1b221f94 Credo fixes for the credo god.
4 years ago
lain cdc6ba8d7b AnnounceValidator: Check for announcability
4 years ago
lain c76267afb9 Credo fixes.
4 years ago
lain 23e248694d Announcements: Fix all tests.
4 years ago
lain d9d425708e SideEffects: Builed out Announce effects.
4 years ago
Egor Kislitsyn 9de9760aa6
Move status actions to AdminAPI.StatusController
4 years ago
lain 39031f4860 Pipeline: Don't federate if federation is disabled.
4 years ago
lain e42bc5f557 Announcements: Handle through common pipeline.
4 years ago
lain 265746b21f Merge branch 'openapi/pleroma-api/emojis' into 'develop'
4 years ago
lain c7cdc553ff Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into announce-validator
4 years ago
lain 423ea497bb Merge branch 'feature/1734-user-deletion' into 'develop'
4 years ago
lain eb5f428565 CommonAPI: Change public->private implicit addressing.
4 years ago
Egor Kislitsyn 5ba6e1c322
Move notification actions to PleromaAPI.NotificationController
4 years ago
Egor Kislitsyn f3fc8b22b1
Move conversation actions to PleromaAPI.ConversationController
4 years ago
Egor Kislitsyn 9a5de0f454
Move reaction actions to EmojiReactionController
4 years ago
Egor Kislitsyn 490a3a34b6
Add OpenAPI spec for PleromaAPI.PleromaAPIController
4 years ago
Haelwenn 94ba5a7802 Merge branch 'exposed-background-image' into 'develop'
4 years ago
lain 6dd1575c64 Merge branch 'issue/1509' into 'develop'
4 years ago
Egor Kislitsyn 6609714d66
Move Scrobble views to ScrobbleView
4 years ago
Egor Kislitsyn 524d04d921
Add OpenAPI spec for PleromaAPI.ScrobbleController
4 years ago
Haelwenn 58ccd2bbfd Merge branch 'openapi/pleroma-api/mascot' into 'develop'
4 years ago
Maksim Pechnikov 41f8f17260 fix api/v1/accounts/update_credentials
4 years ago
Maksim Pechnikov 5f0a3ac74d added tests
4 years ago
lain d19c716770 AttachmentValidator: Handle empty mediatypes
4 years ago
Egor Kislitsyn fe5d423b43
Add OpenAPI spec for MascotController
4 years ago
Egor Kislitsyn 45c3a72404
[OpenAPI] Use BooleanLike in all request bodies
4 years ago
lain be4db41d71 ChatMessageValidator: Allow one message in an array, too.
4 years ago
lain 0d417e005d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
Egor Kislitsyn aef31c69df
Rename EmojiAPIController to EmojiPackController
4 years ago
Egor Kislitsyn 8bde8dfec2
Cleanup Pleroma.Emoji.Pack
4 years ago
Egor Kislitsyn 6e4de715b3
Add OpenAPI spec for PleromaAPI.EmojiAPIController
4 years ago
lain 0d5bce018d AnnounceValidator: Validate for existing announce
4 years ago
lain 17a8342c1e ObjectValidators: Add basic Announce validator.
4 years ago
lain 63ab2743ce TransmogrifierTest: Fix tests.
4 years ago
lain 7d381b16b7 Transmogrifier Test: Extract Announce handling.
4 years ago
Alexander Strizhakov 215daabdb4
copyright update
4 years ago
lain 188b32145e InstanceView: Expose background image link.
4 years ago
lain 96f7b1b140 Merge branch 'show-media-endpoint-fixes' into 'develop'
4 years ago
Roman Chvanikov 01bd6a1e54 Merge branch 'develop' into feature/admin-api-status-count-per-instance
4 years ago
Alexander Strizhakov 0321a3e078
test naming fix
4 years ago
Alexander Strizhakov b1aa402229
removing 410 status
4 years ago
Alexander Strizhakov e7bc2f980c
account visibility
4 years ago
Ivan Tashkinov 9b76565264 MediaController: enforced owner-only access in :show action.
4 years ago
lain baf051a59e SideEffects: Don't update unread count for actor in chatmessages.
4 years ago
lain 9c17109765 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain 8bfd9710ae Pleroma Authenticator: Also update passwords here.
4 years ago
lain 4b28d812cf Merge branch 'restricted-relations-embedding' into 'develop'
4 years ago
Ivan Tashkinov af9dfdce6b MediaController OAuth scope assignments fix.
4 years ago
lain d96f8f17e8 Merge branch 'features/mastoapi_v2_media' into 'develop'
4 years ago
lain d15aa9d950 Merge branch 'develop' into 'remove-twitter-api'
4 years ago
lain 2dcb26a6e5 CommonAPI: Unblock a user even if we don't have an activity.
4 years ago
Alexander Strizhakov 3c29f4f957
returning partial chain
4 years ago
lain f012c3a202 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
rinpatch e455ca3f3e Merge branch 'feature/database-configuration-whitelist' into 'develop'
4 years ago
Egor Kislitsyn bb03dfdb03
Do not require `description` in `update` action
4 years ago
Egor Kislitsyn 0f885b4b86
Fix OpenAPI spec
4 years ago
Stephanie Wilde-Hobbs 20cbfb5cb5
Allow whitelisting whole groups
4 years ago
lain 3342846ac2 ChatView: Add update_at field.
4 years ago
Haelwenn (lanodan) Monnier cb363f0183
MastodonAPI: /api/v2/media endpoints
4 years ago
Haelwenn (lanodan) Monnier e688d4ee69
MRF.StealEmojiPolicy: New Policy
4 years ago
Roman Chvanikov 8a383707ae Merge develop
4 years ago
Egor Kislitsyn 6802dc28ba
Add OpenAPI spec for PleromaAPI.AccountController
4 years ago
lain da550be066 Merge branch 'fix/1742-random-failing-tests' into 'develop'
4 years ago
lain 0f0acc740d Chat: Allow posting without content if an attachment is present.
4 years ago
lain 06cad239e5 InstanceView: Add pleroma chat messages to nodeinfo
4 years ago
lain 3cff4e24cd Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
Egor Kislitsyn bcadbf964a
Add OpenAPI spec for SuggestionController
4 years ago
Ivan Tashkinov fd2fb2bb2e Merge remote-tracking branch 'remotes/origin/develop' into restricted-relations-embedding
4 years ago
lain 156c8a5088 Merge branch 'openapi/statuses' into 'develop'
4 years ago
lain 1307d6ca3c Merge branch 'openapi/timelines' into 'develop'
4 years ago
Alexander Strizhakov 2c356a4bac
don't use async with global mocks
4 years ago
Alexander Strizhakov 12635bc156
don't use global mocks in setup callbacks
4 years ago
Alexander Strizhakov ec27f346ee
correct order for publised in assert
4 years ago
Alexander Strizhakov e0944dee99
make test fail everytime
4 years ago
Alexander Strizhakov 712055612f
don't run tests which change env in async
4 years ago
Alex Gleason b46811a074
Upgrade Comeonin to v5
4 years ago
Egor Kislitsyn 7803a85d2c
Add OpenAPI spec for StatusController
4 years ago
Stephanie Wilde-Hobbs a2fcfc78c9
Filter config descriptions by config whitelist
4 years ago
rinpatch 2b18b8a263 Merge branch 'streamer-get-topic' into 'develop'
4 years ago
rinpatch 24c8c13640 Merge branch '1757-blocks-breaking-on-disabled-outgoing-blocks' into 'develop'
4 years ago
rinpatch 4cc71aad65 Merge branch '1748-remote-following-follower-count' into 'develop'
4 years ago
Stephanie Wilde-Hobbs 620247a015
Add database configuration whitelist
4 years ago
href e6d8cacf2d Expand and authorize streams in Streamer directly
4 years ago
lain c0ea5c60e4 ChatController: Don't return chats for user you've blocked.
4 years ago
lain e44166b510 Credo fixes.
4 years ago
lain ec72cba43e Chat Controller: Add basic error handling.
4 years ago
lain dcb5cda324 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago
lain b5aa204eb8 ChatController: Support deletion of chat messages.
4 years ago
lain dfb90a1fd6 Transmogrifier: Add tests for certain announces
4 years ago
lain ca31af473c Transmogrifier: On incoming follow accept, update follow counts.
4 years ago
lain d0ba1844b0 ActivityPub: Fix non-federating blocks.
4 years ago
rinpatch f8190aea5e Merge branch 'fix/issue-1676' into 'develop'
4 years ago
lain f28ed36b4d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms
4 years ago