about summary refs log tree commit diff
path: root/app/lib
AgeCommit message (Collapse)Author
2017-05-03Language improvements, replace whatlanguage with CLD (#2753)Matt Jankowski
* add failing en specs * add cld2 gem * Replace WhatLanguage with CLD
2017-04-30Add target=_blank to user note (#2622)Yamagishi Kazutoshi
* Add target=_blank to user note Open new window when click link from user profile in remote instance. * fix rubocop
2017-04-27Hotfix remote status formatting (#2543)Eugen Rochko
2017-04-27Fix broken oEmbed provider (#2537)Yamagishi Kazutoshi
2017-04-27OEmbed support for PreviewCard (#2337)Eugen Rochko
* OEmbed support for PreviewCard * Improve ProviderDiscovery code failure treatment * Do not crawl links if there is a content warning, since those don't display a link card anyway * Reset db schema * Fresh migrate * Fix rubocop style issues Fix #1681 - return existing access token when applicable instead of creating new * Fix test * Extract http client to helper * Improve oembed controller
2017-04-25Decodes URL containing IDN (#2436)Yamagishi Kazutoshi
2017-04-25Punycode URI normalization (#2370)Eugen
* Fix #2119 - Whenever about to send a HTTP request, normalize the URI * Add test for IDN request in FetchLinkCardService * Perform IDN normalization on domains before they are stored in the DB
2017-04-23Add simple_format to simplified_format (#2198)178inaba
2017-04-23Allow webfinger controller to reply to user@WEB_DOMAIN in addition to ↵ThibG
user@LOCAL_DOMAIN (#2351) This provides a hotfix for outbound salmon requests to other Mastodon instances as they currently will try to resovle user@WEB_DOMAIN instead of user@LOCAL_DOMAIN (see #2012 and #20312). Furthermore, this should ease transition from users switching from LOCAL_DOMAIN = WEB_DOMAIN to another LOCAL_DOMAIN when WEB_DOMAIN does not change.
2017-04-22[WIP] Html lang on statuses (#2297)Matt Jankowski
* Add html lang attributes around statuses * Remove urls from language detection
2017-04-22Improve bio compatibility (#2278)Eugen
* Fix #1057 (close #1819) - Move HTML-formatted bio from <poco:note /> to <summary type="html" /> * Ensure <poco:note /> is plaintext for remote accounts, also, by stripping out HTML
2017-04-21Fix mangling of ##tag matches (#2194) (#2247)Mingye Wang
This commit fixes hashtag_html so it correctly handles matches with multiple hash-signs. Bug located by @over9001, initial fix suggested by @nightpool.
2017-04-21Clean up settings/preferences controller (#2237)Matt Jankowski
* Add missing fields group on preferences page * Clean up settings/preferences controller * Extract a UserSettingsDecorator
2017-04-19Fix html escape characters in the URL (#2138)abcang
* fix character escaping in URL * add tests * put a comma after the last item * add HTML escape test
2017-04-18Language detection refactor (#2099)Matt Jankowski
* Extract detect_language to separate class * Use default locale, not just en * Add spec to confirm that whatlanguage cant identify empty string * Allow account locale to override default in language detector * PostStatusService supplies an account to detect language
2017-04-17Fix #1972, fix #1870 - Fix special characters in XML, add tests (#1988)Eugen
Also improve efficiency of the mastodon:maintenance:add_static_avatars task
2017-04-16Fix #1870 - Strip control characters out of strings in AtomSerializer (#1876)Eugen
* Fix #1870 - Strip control characters out of strings in AtomSerializer * Adjust according to comment by @alpaca-tc
2017-04-16Add language detection (#1772)Eugen
* Add language detection via WhatLanguage and (de)serialization of it through Atom * Fix default language in ProcessFeedService * Re-add newline before 'react-rails' Gem to fix groupings Fixes Code Climate issue
2017-04-16Fix #1852 - Ensure feeds have valid <title> tags (#1875)Eugen
2017-04-15Allow running mastodon on a different domain as the one used for identifying ↵ThibG
users (#1267) * Allow running mastodon on a different domain as the one used for identifying users * Alter documentation of WEB_DOMAIN to make clear it shouldn't be used unless the admin knows what they are doing * Compare to web_domain instead of local_domain when dealing with feeds/API * Correctly identify mentions to local accounts Mentions URLs point to the person's web profile, i.e., the user page served on WEB_DOMAIN.
2017-04-14Change usage of gsub to delete, as per Code Climate/Rubocop recommendation ↵Effy Elden
(#1753)
2017-04-13Fix #1220, fix #1671 - Hook up comment box to the Redux comment value (#1699)Eugen
Fix username styling regression introduced in #1063 Fix report screen background regression introduced in #1415
2017-04-13Fix #1609, fix #1628 - Revert #1397 (#1700)Eugen
When transmitting data in a HTML-encoded element like <content type="html" />, relying on newlines being preserved is not wise, since HTML by itself does not care for newlines - it cares for <p> and <br> Additional fix: reset NSFW toggle after sending toot
2017-04-13Organize coverage dirs (#1695)Matt Jankowski
* Add `Presenters` group to SimpleCov configuration * Move validators to app/validators, add to simplecov config
2017-04-12significant improvement in microformats markup (#1063)Ben Roberts
* significant improvement in microformats markup This is a huge improvement and I believe will close #965. Had these microformats reviewed by others in the community to help ensure they are at least correct, if not complete. I did not want to change the structure of the page, and so there it does not fully mark up the entire ancestry chain, or reply chain, only the direct decendants and direct ancestors are correctly associated, but this is likely fine as the most important bit is to have access to the urls for those toots which are now correctly fetchable. * improve code climate * trying to pass code climate tests * code climate * fix p-summary for content warning posts * fix error introduced when merging via github
2017-04-12Quick best practice cleanup of views/helpers (#1546)Matt Jankowski
* Remove trailing whitespace * Use query methods instead of explicit .blank? checks
2017-04-12Webfinger resource to extract username from resource string (#1607)Matt Jankowski
* Add WebfingerResource class to extract usernames * Use WebfingerResource in xrd#webfinger
2017-04-11Remove order prior to .find_in_batches (#1470)Matt Jankowski
The `Status` class has a default order on it, so when this query gets built and gets all the way to `find_in_batches` there is an order already there. When `find_in_batches` is run it discards any existing order on the query, and emits a warning to the logs if there is one there. This change removes the order prior calling `find_in_batches`, which will stop the logged warning from occurring as well.
2017-04-10Clean up generation of account webfinger string (#1477)Matt Jankowski
* Consolidate webfinger string creation under Account#to_webfinger_s * Introduce Account#local_username_and_domain for consolidation
2017-04-10Keep newlines in xml (#1397)Rachel H
2017-04-09Fix #1339 - better Atom titles (#1343)Eugen
2017-04-07DRY up reblog vs original status checkJoël Quenneville
Checking reblog vs original status was happening in multiple places across the app. For views, this logic was encapsulated in a helper method named `proper_status` but in the other layers of the app, the logic was duplicated. Because the logic is used at all layers of the app, we extracted it into a `Status#proper` method on the model and changed all uses of the logic to use this method. There is now a single source of truth for this condition. We added test coverage to untested methods that got refactored.
2017-04-07Fix nil#object_type errorEugen Rochko
2017-04-07Re-add forgotten <author> element on standalone <entry>Eugen Rochko
2017-04-07Force UTF8 encoding on generated XML (#1140)Eugen
2017-04-07Rewrite Atom generation from stream entries to use Ox instead of Nokogiri ↵Eugen
(#1124) * Rewrite Atom generation from stream entries to use Ox instead of Nokogiri::Builder StreamEntry is now limited to only statuses, which allows some optimization. Removed extra queries on AccountsController#show. AtomSerializer instead of AtomBuilderHelper used in AccountsController#show, StreamEntriesController#show, StreamEntryRenderer and PubSubHubbub::DistributionWorker PubSubHubbub::DistributionWorker moves n+1 DomainBlock query to PubSubHubbub::DeliveryWorker instead. All Salmon slaps that aren't based on StreamEntry still use AtomBuilderHelper and Nokogiri * All Salmon slaps now use Ox instead of Nokogiri. No touch from status on account
2017-04-05Replace calls to FeedManager#inline_render and #broadcastEugen Rochko
2017-04-04Moved to the workerKurtis Rainbolt-Greene
2017-04-04This method isn't used anymoreKurtis Rainbolt-Greene
2017-04-04By pushing this into a worker we can reduce the amount of time the feed ↵Kurtis Rainbolt-Greene
manager using workers eat up a connection
2017-04-05Merge pull request #852 from peterkeen/email-whitelist-817Eugen
[#817] Add email whitelist
2017-04-05Merge pull request #858 from krainboltgreene/patch-6Eugen
Use active record shorthand
2017-04-04Spawn FeedInsertWorker to deliver status into personal feedEugen Rochko
2017-04-04Use active record shorthandKurtis Rainbolt-Greene
2017-04-04[#817] Add email whitelistPete Keen
This adds the ability to filter user signup with a whitelist instead of or in addition to a blacklist. Fixes #817
2017-04-04Reduce number of items in feeds, optimize regeneration worker slightly,Eugen Rochko
make regeneration worker unique, (only schedule/execute once at a time)
2017-04-04Optimize FeedManager#unmerge, and slightly optimize FeedManager#mergeEugen Rochko
2017-04-04Optimize filter methods in FeedManager a bit, use redis pipelining on ↵Eugen Rochko
merge/unmerge feed methods, do not re-create a dynamic class on each feed push call, make sure redis-rb uses hiredis
2017-04-03Add check for visibility.nil? even though it can't ever be, to check for ↵Eugen Rochko
race conditions
2017-04-02Fix issue with feed merge-in code as wellEugen Rochko