Skip to content

Commit

Permalink
Merge tag 'v1.5.0' into stable
Browse files Browse the repository at this point in the history
* tag 'v1.5.0': (333 commits)
  Bump to 1.5.0
  Update Dutch (nl) strings (mastodon#4480)
  Show SMTP_TLS in config sample (mastodon#4477)
  fix(web_push_notifications): Send message with welcome notifications (mastodon#4471)
  Change logo URL for Heroku and Scalingo (mastodon#4476)
  Add libidn11 to Aptfile (mastodon#4475)
  Re-add outline (mastodon#4474)
  do not emojify tm, (R) and (C) (mastodon#4472)
  i18n: update Persian translation (mastodon#4470)
  Load extra polyfills when isIntersecting is undefined (mastodon#4469)
  Bump to 1.5.0rc3
  Simplify web UI character counter logic (mastodon#4463)
  Fix button overflow on confirmation modal for mobile (mastodon#4465)
  Change RuboCop rules to loose (mastodon#4464)
  i18n: Update Polish translation (mastodon#4467)
  Disable sensitive button when with content warnings (mastodon#4460)
  Fix length validator counting things that look like URIs like URLs (mastodon#4462)
  Make salutation of email localizable (mastodon#4454)
  Improve accessibility (part 7) (mastodon#4457)
  Change to sensitive when adding content warning from web UI (mastodon#4456)
  ...
  • Loading branch information
pfigel committed Aug 3, 2017
2 parents f2e2110 + 559fd08 commit 457be38
Show file tree
Hide file tree
Showing 647 changed files with 12,347 additions and 5,934 deletions.
4 changes: 3 additions & 1 deletion .babelrc
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@
{
"messagesDir": "./build/messages"
}
]
],
"preval"
],
"env": {
"development": {
Expand All @@ -44,6 +45,7 @@
]
}
],
"transform-react-inline-elements",
[
"transform-runtime",
{
Expand Down
1 change: 0 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ public/system
public/assets
public/packs
node_modules
storybook
neo4j
vendor/bundle
.DS_Store
Expand Down
2 changes: 1 addition & 1 deletion .env.nanobox
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ SMTP_FROM_ADDRESS=notifications@${APP_NAME}.nanoapp.io
# PAPERCLIP_ROOT_URL=/system

# Optional asset host for multi-server setups
# CDN_HOST=assets.example.com
# CDN_HOST=https://assets.example.com

# S3 (optional)
# S3_ENABLED=true
Expand Down
13 changes: 12 additions & 1 deletion .env.production.sample
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,17 @@ PAPERCLIP_SECRET=
SECRET_KEY_BASE=
OTP_SECRET=

# VAPID keys (used for push notifications
# You can generate the keys using the following command (first is the private key, second is the public one)
# You should only generate this once per instance. If you later decide to change it, all push subscription will
# be invalidated, requiring the users to access the website again to resubscribe.
#
# Generate with `rake mastodon:webpush:generate_vapid_key` task (`docker-compose run --rm web rake mastodon:webpush:generate_vapid_key` if you use docker compose)
#
# For more information visit https://rossta.net/blog/using-the-web-push-api-with-vapid.html
VAPID_PRIVATE_KEY=
VAPID_PUBLIC_KEY=

# Registrations
# Single user mode will disable registrations and redirect frontpage to the first profile
# SINGLE_USER_MODE=true
Expand Down Expand Up @@ -58,7 +69,7 @@ SMTP_FROM_ADDRESS=notifications@example.com
#SMTP_CA_FILE=/etc/ssl/certs/ca-certificates.crt
#SMTP_OPENSSL_VERIFY_MODE=peer
#SMTP_ENABLE_STARTTLS_AUTO=true

#SMTP_TLS=true

# Optional user upload path and URL (images, avatars). Default is :rails_root/public/system. If you set this variable, you are responsible for making your HTTP server (eg. nginx) serve these files.
# PAPERCLIP_ROOT_PATH=/var/lib/mastodon/public-system
Expand Down
4 changes: 2 additions & 2 deletions .eslintrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ rules:
jsx-a11y/iframe-has-title: warn
jsx-a11y/img-has-alt: warn
jsx-a11y/img-redundant-alt: warn
jsx-a11y/label-has-for: warn
jsx-a11y/label-has-for: off
jsx-a11y/mouse-events-have-key-events: warn
jsx-a11y/no-access-key: warn
jsx-a11y/no-distracting-elements: warn
Expand All @@ -121,6 +121,6 @@ rules:
jsx-a11y/onclick-has-focus: warn
jsx-a11y/onclick-has-role: warn
jsx-a11y/role-has-required-aria-props: warn
jsx-a11y/role-supports-aria-props: warn
jsx-a11y/role-supports-aria-props: off
jsx-a11y/scope: warn
jsx-a11y/tabindex-no-positive: warn
1 change: 0 additions & 1 deletion .nanoignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ node_modules/
public/assets/
public/system/
spec/
storybook/
tmp/
.vagrant/
vendor/bundle/
1 change: 1 addition & 0 deletions .postcssrc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,4 @@ plugins:
- last 2 versions
- IE >= 11
- iOS >= 9
postcss-object-fit-images: {}
9 changes: 5 additions & 4 deletions .rubocop.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ Metrics/AbcSize:
Max: 100

Metrics/BlockLength:
Max: 35
Exclude:
- 'lib/tasks/**/*'

Expand All @@ -35,10 +36,10 @@ Metrics/BlockNesting:

Metrics/ClassLength:
CountComments: false
Max: 200
Max: 300

Metrics/CyclomaticComplexity:
Max: 15
Max: 25

Metrics/LineLength:
AllowURI: true
Expand All @@ -53,11 +54,11 @@ Metrics/ModuleLength:
Max: 200

Metrics/ParameterLists:
Max: 4
Max: 5
CountKeywordArgs: true

Metrics/PerceivedComplexity:
Max: 10
Max: 20

Rails:
Enabled: true
Expand Down
1 change: 0 additions & 1 deletion .slugignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,3 @@ node_modules/
.cache/
docs/
spec/
storybook/
1 change: 1 addition & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ addons:
- g++-6
- libprotobuf-dev
- protobuf-compiler
- libicu-dev

rvm:
- 2.3.4
Expand Down
8 changes: 6 additions & 2 deletions Aptfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
protobuf-compiler
libprotobuf-dev
ffmpeg
libicu-dev
libidn11
libidn11-dev
libpq-dev
libprotobuf-dev
libxdamage1
libxfixes3
protobuf-compiler
7 changes: 6 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,12 @@ EXPOSE 3000 4000
WORKDIR /mastodon

RUN echo "@edge https://nl.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories \
&& echo "@edge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \
&& apk -U upgrade \
&& apk add -t build-dependencies \
build-base \
icu-dev \
libidn-dev \
libxml2-dev \
libxslt-dev \
postgresql-dev \
Expand All @@ -25,7 +28,9 @@ RUN echo "@edge https://nl.alpinelinux.org/alpine/edge/main" >> /etc/apk/reposit
ffmpeg \
file \
git \
icu-libs \
imagemagick@edge \
libidn \
libpq \
libxml2 \
libxslt \
Expand All @@ -34,7 +39,7 @@ RUN echo "@edge https://nl.alpinelinux.org/alpine/edge/main" >> /etc/apk/reposit
protobuf \
su-exec \
tini \
&& npm install -g npm@3 && npm install -g yarn \
yarn@edge \
&& update-ca-certificates \
&& rm -rf /tmp/* /var/cache/apk/*

Expand Down
10 changes: 8 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,23 +19,27 @@ gem 'paperclip', '~> 5.1'
gem 'fog-openstack', '~> 0.1.21'
gem 'paperclip-av-transcoder', '~> 0.6'

gem 'active_model_serializers', '~> 0.10'
gem 'addressable', '~> 2.5'
gem 'bootsnap'
gem 'browser'
gem 'charlock_holmes', '~> 0.7.3'
gem 'cld3', '~> 3.1'
gem 'devise', '~> 4.2'
gem 'devise-two-factor', '~> 3.0'
gem 'doorkeeper', '~> 4.2'
gem 'fast_blank', '~> 1.0'
gem 'goldfinger', '~> 1.2'
gem 'goldfinger', '~> 2.0'
gem 'hiredis', '~> 0.6'
gem 'redis-namespace', '~> 1.5'
gem 'htmlentities', '~> 4.3'
gem 'http', '~> 2.2'
gem 'http_accept_language', '~> 2.1'
gem 'httplog', '~> 0.99'
gem 'idn-ruby', require: 'idn'
gem 'kaminari', '~> 1.0'
gem 'link_header', '~> 0.0'
gem 'mime-types', '~> 3.1'
gem 'nokogiri', '~> 1.7'
gem 'oj', '~> 3.0'
gem 'ostatus2', '~> 2.0'
Expand All @@ -48,6 +52,7 @@ gem 'rack-timeout', '~> 0.4'
gem 'rails-i18n', '~> 5.0'
gem 'rails-settings-cached', '~> 0.6'
gem 'redis', '~> 3.3', require: ['redis', 'redis/connection/hiredis']
gem 'mario-redis-lock', '~> 1.2', require: 'redis_lock'
gem 'rqrcode', '~> 0.10'
gem 'ruby-oembed', '~> 0.12', require: 'oembed'
gem 'sanitize', '~> 4.4'
Expand All @@ -62,6 +67,7 @@ gem 'statsd-instrument', '~> 2.1'
gem 'twitter-text', '~> 1.14'
gem 'tzinfo-data', '~> 1.2017'
gem 'webpacker', '~> 2.0'
gem 'webpush'

group :development, :test do
gem 'fabrication', '~> 2.16'
Expand All @@ -75,7 +81,7 @@ group :test do
gem 'capybara', '~> 2.14'
gem 'climate_control', '~> 0.2'
gem 'faker', '~> 1.7'
gem 'microformats2', '~> 3.0'
gem 'microformats', '~> 4.0'
gem 'rails-controller-testing', '~> 1.0'
gem 'rspec-sidekiq', '~> 3.0'
gem 'simplecov', '~> 0.14', require: false
Expand Down
40 changes: 32 additions & 8 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ GEM
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.3)
active_model_serializers (0.10.6)
actionpack (>= 4.1, < 6)
activemodel (>= 4.1, < 6)
case_transform (>= 0.2)
jsonapi-renderer (>= 0.1.1.beta1, < 0.2)
active_record_query_trace (1.5.4)
activejob (5.1.2)
activesupport (= 5.1.2)
Expand Down Expand Up @@ -101,6 +106,9 @@ GEM
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
case_transform (0.2)
activesupport
charlock_holmes (0.7.3)
chunky_png (1.3.8)
cld3 (3.1.3)
ffi (>= 1.1.0, < 1.10.0)
Expand Down Expand Up @@ -170,10 +178,11 @@ GEM
ruby-progressbar (~> 1.4)
globalid (0.4.0)
activesupport (>= 4.2.0)
goldfinger (1.2.0)
addressable (~> 2.4)
http (~> 2.0)
nokogiri (~> 1.6)
goldfinger (2.0.0)
addressable (~> 2.5)
http (~> 2.2)
nokogiri (~> 1.8)
oj (~> 3.0)
hamlit (2.8.4)
temple (>= 0.8.0)
thor
Expand All @@ -186,6 +195,7 @@ GEM
hashdiff (0.3.4)
highline (1.7.8)
hiredis (0.6.1)
hkdf (0.3.0)
htmlentities (4.3.4)
http (2.2.2)
addressable (~> 2.3)
Expand All @@ -211,9 +221,12 @@ GEM
parser (>= 2.2.3.0)
rainbow (~> 2.2)
terminal-table (>= 1.5.1)
idn-ruby (0.1.0)
ipaddress (0.8.3)
jmespath (1.3.1)
json (2.1.0)
jsonapi-renderer (0.1.2)
jwt (1.5.6)
kaminari (1.0.1)
activesupport (>= 4.1.0)
kaminari-actionview (= 1.0.1)
Expand Down Expand Up @@ -243,8 +256,10 @@ GEM
nokogiri (>= 1.5.9)
mail (2.6.6)
mime-types (>= 1.16, < 4)
mario-redis-lock (1.2.0)
redis (~> 3, >= 3.0.5)
method_source (0.8.2)
microformats2 (3.1.0)
microformats (4.0.7)
json
nokogiri
mime-types (3.1)
Expand Down Expand Up @@ -480,6 +495,9 @@ GEM
activesupport (>= 4.2)
multi_json (~> 1.2)
railties (>= 4.2)
webpush (0.3.2)
hkdf (~> 0.2)
jwt
websocket-driver (0.6.5)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.2)
Expand All @@ -490,6 +508,7 @@ PLATFORMS
ruby

DEPENDENCIES
active_model_serializers (~> 0.10)
active_record_query_trace (~> 1.5)
addressable (~> 2.5)
annotate (~> 2.7)
Expand All @@ -506,6 +525,7 @@ DEPENDENCIES
capistrano-rbenv (~> 2.1)
capistrano-yarn (~> 2.0)
capybara (~> 2.14)
charlock_holmes (~> 0.7.3)
cld3 (~> 3.1)
climate_control (~> 0.2)
devise (~> 4.2)
Expand All @@ -517,20 +537,23 @@ DEPENDENCIES
fast_blank (~> 1.0)
fog-openstack (~> 0.1.21)
fuubar (~> 2.2)
goldfinger (~> 1.2)
goldfinger (~> 2.0)
hamlit-rails (~> 0.2)
hiredis (~> 0.6)
htmlentities (~> 4.3)
http (~> 2.2)
http_accept_language (~> 2.1)
httplog (~> 0.99)
i18n-tasks (~> 0.9)
idn-ruby
kaminari (~> 1.0)
letter_opener (~> 1.4)
letter_opener_web (~> 1.3)
link_header (~> 0.0)
lograge (~> 0.5)
microformats2 (~> 3.0)
mario-redis-lock (~> 1.2)
microformats (~> 4.0)
mime-types (~> 3.1)
nokogiri (~> 1.7)
oj (~> 3.0)
ostatus2 (~> 2.0)
Expand Down Expand Up @@ -576,9 +599,10 @@ DEPENDENCIES
uglifier (~> 3.2)
webmock (~> 3.0)
webpacker (~> 2.0)
webpush

RUBY VERSION
ruby 2.4.1p111

BUNDLED WITH
1.15.1
1.15.2
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Mastodon
![Mastodon](https://i.imgur.com/NhZc40l.png)
========

[![Build Status](http://img.shields.io/travis/tootsuite/mastodon.svg)][travis]
Expand All @@ -9,7 +9,7 @@ Mastodon

Mastodon is a free, open-source social network server. A decentralized solution to commercial platforms, it avoids the risks of a single company monopolizing your communication. Anyone can run Mastodon and participate in the social network seamlessly.

An alternative implementation of the GNU social project. Based on [ActivityStreams](https://en.wikipedia.org/wiki/Activity_Streams_(format)), [Webfinger](https://en.wikipedia.org/wiki/WebFinger), [PubsubHubbub](https://en.wikipedia.org/wiki/PubSubHubbub) and [Salmon](https://en.wikipedia.org/wiki/Salmon_(protocol)).
An alternative implementation of the GNU social project. Based on [ActivityStreams](https://en.wikipedia.org/wiki/Activity_Streams_(format)), [Webfinger](https://en.wikipedia.org/wiki/WebFinger), [WebSub](https://en.wikipedia.org/wiki/WebSub) and [Salmon](https://en.wikipedia.org/wiki/Salmon_(protocol)).

Click on the screenshot to watch a demo of the UI:

Expand All @@ -34,7 +34,7 @@ If you would like, you can [support the development of this project on Patreon][
## Features

- **Fully interoperable with GNU social and any OStatus platform**
Whatever implements Atom feeds, ActivityStreams, Salmon, PubSubHubbub and Webfinger is part of the network
Whatever implements Atom feeds, ActivityStreams, Salmon, WebSub and Webfinger is part of the network
- **Real-time timeline updates**
See the updates of people you're following appear in real-time in the UI via WebSockets
- **Federated thread resolving**
Expand Down
Loading

0 comments on commit 457be38

Please sign in to comment.