Follow Plugin 👨

Haha, glad to hear it. You are welcome to report any issues during the month, but we need to earn a living so are not always able to provide free support the whole month.

1 Like

Hello everyone!

We’re happy to announce that this plugin will be officially maintained by the Discourse team! Going forward, we will keep this plugin compatible with Discourse latest and the stable branch.

We’ve been working on the plugin to bring it up to the current best practices such as migrating the plugin’s data from custom fields to standalone tables in the database, removing core patches and lots of tests. There are also some changes to the plugin in terms of features:

  1. the /following topics list page has been replaced with a posts feed under the user profile page

  2. a new user preference that gives users the option to never be followed by anyone

  3. it’s no longer possible to set a per-user notification level when following someone

  4. there are now site settings to control the default values of user preferences added by the plugin. Note these settings only work retroactively for users who have never changed the preferences added by the plugin.

  5. the Notify me when someone I follow replies and Notify me when someone I follow creates a topic user preferences are now off by default, but the default can be changed via site settings (see #4)

I will post here when the plugin is transferred to the discourse GitHub organization.

17 Likes

Thanks @Osama.

Yes, the Discourse team reached out to us and asked if they could take over the maintenance of the plugin. We were very happy to oblige.

We wish them all the best with the future of Discourse Follow!

11 Likes

Discourse should just acquire Pavilion already.

Will the plug-in be enabled here?

This is done, the plugin is now at https://github.com/discourse/discourse-follow. Be sure to update your app.yml file next time you upgrade/rebuild your Discourse instance.

No.

5 Likes

Hello,

Thank you Osama :heart_eyes: I updated the plugin. I really like the post feed and the other features. I noticed an issue on the follow feed section.
When I click the arrow toggle it reload the page.
Screenshot 2021-10-09 at 10.05.13


We also have an issue with Android mobile push notification translation.

Thank you :slightly_smiling_face:

1 Like

I upgraded Discourse and plugins (via admin/upgrade) last night, and I encountered an error on two occasions:

When I click on an avatar, the popup load for a few milliseconds but disappear, the user card never loads. Here are the logs:

And when I try to access a user profile /u/Username, I have an error 500 with these logs:

I copied the logs in a text file: follow.txt (5.2 KB)

Note that I didn’t do a rebuild in a few weeks and I didn’t notice the github link has changed. There’s a redirection and it seems like I’m on the latest commit of the plugin (072aeb4), but a rebuild with the proper git link might fix this anyway. I’ll edit this post if this is the case.

But I wanted to share in case it happens to other users.

3 Likes

I am attempting to install the new plugin on my sandbox and am getting this error during the rebuild

I, [2021-10-10T13:33:44.338642 #1]  INFO -- : == 20210901115010 CreateUserFollower: migrating ===============================
-- create_table(:user_followers)
   -> 0.0643s
-- add_index(:user_followers, [:user_id, :follower_id], {:unique=>true})
   -> 0.0119s
== 20210901115010 CreateUserFollower: migrated (0.0826s) ======================

== 20210901135131 MigrateFollowerDataFromCustomFieldsToTables: migrating ======
3 Likes

Hi, do we need remove this line:
- git clone https://github.com/paviliondev/discourse-follow.git
and insert a new one:
- git clone https://github.com/discourse/discourse-follow.git
is this correct?

4 Likes

Will be fixed when this is merged:

I don’t see an error in this logs snippet. Did the rebuild get stuck here?

Yes, that’s correct.

I need more information to debug this problem (I can’t repro on a production site I control or my local development site). Can you please run this in the rails console and paste the output here?

SiteSetting.follow_followers_visible
SiteSetting.follow_following_visible
Group::AUTO_GROUPS
3 Likes

Sorry I forgot to do a proper rebuild last night, I’m not able to check if it can fix this issue.

Here’s the output:

[1] pry(main)> SiteSetting.follow_followers_visible
=> "none"
[2] pry(main)> SiteSetting.follow_following_visible
=> "everyone"
[3] pry(main)> Group::AUTO_GROUPS
=> {:everyone=>0,
 :admins=>1,
 :moderators=>2,
 :staff=>3,
 :trust_level_0=>10,
 :trust_level_1=>11,
 :trust_level_2=>12,
 :trust_level_3=>13,
 :trust_level_4=>14}
[4] pry(main)>

(If it helps, the forum has around 4.9k users, I don’t remember exactly when I installed this plugin for my client, I would guess a few months ago, at least)

1 Like

Yes, the rebuild failed and I have all other plugins disabled.

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 3969 exit 1>
Location of failure: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
9937074e74201dd6a0aa38381e43470d3e7b0de7b1f3958ae3e211ae28dce8c0
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.

Thank you, the issue should be fixed in this commit:

Ok, so the database migration that moves the data from custom fields to standalone tables failed on your site. Can you please copy/paste a few more lines from logs output before this snippet:

the actual error is somewhere before this.

1 Like

Ahh I see it now, here you go

Logs
I, [2021-10-11T13:41:27.798601 #1]  INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
2021-10-11 13:41:35.428 UTC [3991] discourse@discourse ERROR:  invalid input syntax for type bigint: ""
2021-10-11 13:41:35.428 UTC [3991] discourse@discourse STATEMENT:  INSERT INTO user_followers (follower_id, user_id, level, updated_at, created_at) (
	  SELECT
	    user_id::bigint AS follower_id,
	    split_part(value, ',', 1)::bigint AS user_id,
	    (
	      CASE
	        WHEN split_part(value, ',', 2)::integer = 0 THEN 3
	        WHEN split_part(value, ',', 2)::integer = 1 THEN 4
	        ELSE split_part(value, ',', 2)::integer
	      END
	    ) AS level,
	    updated_at,
	    created_at
	  FROM user_custom_fields
	  WHERE name = 'following'
	)
	ON CONFLICT DO NOTHING

rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

ERROR:  invalid input syntax for type bigint: ""
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.3/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.3/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/mini_sql-1.1.3/lib/mini_sql/postgres/connection.rb:209:in `run'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/mini_sql-1.1.3/lib/mini_sql/postgres/connection.rb:181:in `exec'
/var/www/discourse/plugins/discourse-follow/db/post_migrate/20210901135131_migrate_follower_data_from_custom_fields_to_tables.rb:5:in `up'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:870:in `public_send'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:9:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:851:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:850:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:462:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:849:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1037:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1329:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1380:in `block in ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/database_statements.rb:320:in `block in transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/database_statements.rb:320:in `transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1380:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1328:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1302:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1302:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1251:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1401:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1416:in `block in with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:462:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1416:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1397:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1251:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1086:in `up'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1061:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/tasks/database_tasks.rb:237:in `migrate'
/var/www/discourse/lib/tasks/db.rake:218:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:33:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:29:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:29:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:14:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:210:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'

Caused by:
PG::InvalidTextRepresentation: ERROR:  invalid input syntax for type bigint: ""
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.3/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rack-mini-profiler-2.3.3/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/mini_sql-1.1.3/lib/mini_sql/postgres/connection.rb:209:in `run'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/mini_sql-1.1.3/lib/mini_sql/postgres/connection.rb:181:in `exec'
/var/www/discourse/plugins/discourse-follow/db/post_migrate/20210901135131_migrate_follower_data_from_custom_fields_to_tables.rb:5:in `up'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:870:in `public_send'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:870:in `exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:9:in `block in exec_migration'
/var/www/discourse/lib/freedom_patches/schema_migration_details.rb:8:in `exec_migration'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:851:in `block (2 levels) in migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:850:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:462:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:849:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1037:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1329:in `block in execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1380:in `block in ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/database_statements.rb:320:in `block in transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/transaction.rb:319:in `block in within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:26:in `block (2 levels) in synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:25:in `block in synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `handle_interrupt'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.1.4.1/lib/active_support/concurrency/load_interlock_aware_monitor.rb:21:in `synchronize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/transaction.rb:317:in `within_new_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/database_statements.rb:320:in `transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/transactions.rb:209:in `transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1380:in `ddl_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1328:in `execute_migration_in_transaction'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1302:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1302:in `migrate_without_lock'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1251:in `block in migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1401:in `block in with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1416:in `block in with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:462:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1416:in `with_advisory_lock_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1397:in `with_advisory_lock'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1251:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1086:in `up'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/migration.rb:1061:in `migrate'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.1.4.1/lib/active_record/tasks/database_tasks.rb:237:in `migrate'
/var/www/discourse/lib/tasks/db.rake:218:in `block (2 levels) in <main>'
/var/www/discourse/lib/distributed_mutex.rb:33:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:29:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:29:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:14:in `synchronize'
/var/www/discourse/lib/tasks/db.rake:210:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
I, [2021-10-11T13:41:35.533911 #1]  INFO -- : == 20210901135131 MigrateFollowerDataFromCustomFieldsToTables: migrating ======

I, [2021-10-11T13:41:35.536028 #1]  INFO -- : Terminating async processes
I, [2021-10-11T13:41:35.536825 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 56
2021-10-11 13:41:35.538 UTC [56] LOG:  received fast shutdown request
I, [2021-10-11T13:41:35.545380 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 173
173:signal-handler (1633959695) Received SIGTERM scheduling shutdown...
2021-10-11 13:41:35.555 UTC [56] LOG:  aborting any active transactions
173:M 11 Oct 2021 13:41:35.568 # User requested shutdown...
173:M 11 Oct 2021 13:41:35.569 * Saving the final RDB snapshot before exiting.
2021-10-11 13:41:35.574 UTC [56] LOG:  background worker "logical replication launcher" (PID 65) exited with exit code 1
2021-10-11 13:41:35.578 UTC [60] LOG:  shutting down
173:M 11 Oct 2021 13:41:35.652 * DB saved on disk
173:M 11 Oct 2021 13:41:35.654 # Redis is now ready to exit, bye bye...
2021-10-11 13:41:35.666 UTC [56] LOG:  database system is shut down
1 Like

Ok it looks like there are some custom fields records that are in a format the migration did not expect. To find out what these records look like, can you please run this query in a psql session and paste the output here:

SELECT value, user_id
FROM user_custom_fields
WHERE value !~ E'^\\d+,\\d+$' AND name = 'following';

Open this for instructions on getting a psql session:

Instructions
./launcher enter app
su discourse
psql

and then copy and paste the query.
To exit the session type \q.

Here you go

Values
 value | user_id
-------+---------
       |      20
       |      -2
       |      -1
       |       1
       |       3
       |     948
       |    1548
       |    1549
       |    1740
       |       4
       |    1106
       |       6
       |       7
       |       8
       |      10
       |      13
       |      14
       |      15
       |      16
       |      18
       |      19
       |      21
       |      22
       |      23
       |      24
       |      25
       |      26
       |      27
       |      28
       |      29
       |      31
       |      32
       |      33
       |      34
       |      35
       |      36
       |      37
       |      38
       |      39
       |      40
       |      41
       |      42
       |      43
       |      44
       |      45
       |      46
       |      47
       |      48
       |      49
       |      50
       |      51
       |      52
       |      53
       |      54
       |      55
       |      56
       |      57
       |      58
       |      59
       |      60
       |      62
       |      63
       |      64
       |      66
       |      67
       |      68
       |      69
       |      70
       |      71
       |      72
       |      73
       |      74
       |      75
       |      76
       |      77
       |      78
       |      79
       |      81
       |      82
       |      83
       |      85
       |      86
       |      87
       |      88
       |      89
       |      90
       |      91
       |      93
       |      94
       |      95
       |      96
       |      97
       |      98
       |      99
       |     100
       |     101
       |     102
       |     103
       |     104
       |     105
       |     107
       |     108
       |     109
       |     110
       |     111
       |     112
       |     113
       |     114
       |     115
       |     116
       |     117
       |     118
       |     119
       |     120
       |     121
       |     122
       |     123
       |     125
       |     126
       |     127
       |     128
       |     129
       |     130
       |     131
       |     132
       |     135
       |     137
       |     138
       |     139
       |     140
       |     141
       |     142
       |     143
       |     144
       |     145
       |     146
       |     147
       |     148
       |     149
       |     150
       |     151
       |     152
       |     153
       |     154
       |     155
       |     156
       |     157
       |     158
       |     159
       |     160
       |     161
       |     162
       |     163
       |     164
       |     165
       |     166
       |     167
       |     168
       |     169
       |     170
       |     171
       |     172
       |     173
       |     174
       |     175
       |     176
       |     177
       |     178
       |     179
       |     180
       |     181
       |     182
       |     183
       |     184
       |     185
       |     186
       |     187
       |     188
       |     189
       |     191
       |     192
       |     193
       |     194
       |     195
       |     196
       |     197
       |     198
       |     199
       |     200
       |     201
       |     202
       |     203
       |     204
       |     206
       |     207
       |     208
       |     209
       |     210
       |     211
       |     212
       |     213
       |     214
       |     215
       |     216
       |     217
       |     218
       |     219
       |     220
       |     221
       |     222
       |     223
       |     224
       |     225
       |     226
       |     227
       |     228
       |     229
       |     230
       |     231
       |     233
       |     234
       |     235
       |     236
       |     237
       |     238
       |     239
       |     240
       |     241
       |     242
       |     243
       |     244
       |     245
       |     246
       |     247
       |     248
       |     249
       |     250
       |     251
       |     253
       |     254
       |     255
       |     256
       |     257
       |     258
       |     259
       |     260
       |     261
       |     262
       |     263
       |     264
       |     265
       |     266
       |     267
       |     268
       |     269
       |     270
       |     271
       |     272
 value | user_id
-------+---------
       |      20
       |      -2
       |      -1
       |       1
       |       3
       |     948
       |    1548
       |    1549
       |    1740
       |       4
       |    1106
       |       6
       |       7
       |       8
       |      10
       |      13
       |      14
       |      15
       |      16
       |      18
       |      19
       |      21
       |      22
       |      23
       |      24
       |      25
       |      26
       |      27
       |      28
       |      29
       |      31
       |      32
       |      33
       |      34
       |      35
       |      36
       |      37
       |      38
       |      39
       |      40
       |      41
       |      42
       |      43
       |      44
       |      45
       |      46
       |      47
       |      48
       |      49
       |      50
       |      51
       |      52
       |      53
       |      54
       |      55
       |      56
       |      57
       |      58
       |      59
       |      60
       |      62
       |      63
       |      64
       |      66
       |      67
       |      68
       |      69
       |      70
       |      71
       |      72
       |      73
       |      74
       |      75
       |      76
       |      77
       |      78
       |      79
       |      81
       |      82
       |      83
       |      85
       |      86
       |      87
       |      88
       |      89
       |      90
       |      91
       |      93
       |      94
       |      95
       |      96
       |      97
       |      98
       |      99
       |     100
       |     101
       |     102
       |     103
       |     104
       |     105
       |     107
       |     108
       |     109
       |     110
       |     111
       |     112
       |     113
       |     114
       |     115
       |     116
       |     117
       |     118
       |     119
       |     120
       |     121
       |     122
       |     123
       |     125
       |     126
       |     127
       |     128
       |     129
       |     130
       |     131
       |     132
       |     135
       |     137
       |     138
       |     139
       |      81
       |      82
       |      83
       |      85
       |      86
       |      87
       |      88
       |      89
       |      90
       |      91
       |      93
       |      94
       |      95
       |      96
       |      97
       |      98
       |      99
       |     100
       |     101
       |     102
       |     103
       |     104
       |     105
       |     107
       |     108
       |     109
       |     110
       |     111
       |     112
       |     113
       |     114
       |     115
       |     116
       |     117
       |     118
       |     119
       |     120
       |     121
       |     122
       |     123
       |     125
       |     126
       |     127
       |     128
       |     129
       |     130
       |     131
       |     132
       |     135
       |     137
       |     138
       |     139
       |     140
       |     141
       |     142
       |     143
       |     144
       |     145
       |     146
       |     147
       |     148
       |     149
       |     150
       |     151
       |     152
       |     153
       |     154
       |     155
       |     156
       |     157
       |     158
       |     159
       |     160
 value | user_id
-------+---------
       |      20
       |      -2
       |      -1
       |       1
       |       3
       |     948
       |    1548
       |    1549
       |    1740
       |       4
       |    1106
       |       6
       |       7
       |       8
       |      10
       |      13
       |      14
       |      15
       |      16
       |      18
       |      19
       |      21
       |      22
       |      23
       |      24
       |      25
       |      26
       |      27
       |      28
       |      29
       |      31
       |      32
       |      33
       |      34
 value | user_id
-------+---------
       |      20
       |      -2
       |      -1
       |       1
       |       3
       |     948
       |    1548
       |    1549
       |    1740
       |       4
       |    1106
       |       6
       |       7
       |       8
       |      10
       |      13
       |      14
       |      15
       |      16
       |      18
       |      19
       |      21
       |      22
       |      23
       |      24
       |      25
       |      26
       |      27
       |      28
       |      29
       |      31
       |      32
       |      33
       |      34
       |      35
       |      36
       |      37
       |      38
       |      39
       |      40
       |      41
       |      42
       |      43
       |      44
       |      45
       |      46
       |      47
       |      48
       |      49
       |      50
       |      51
       |      52
       |      53
       |      54
       |      55
       |      56
       |      57
       |      58
       |      59
       |      60
       |      62
       |      63
       |      64
       |      66
       |      67
       |      68
       |      69
       |      70
       |      71
       |      72
       |      73
       |      74
       |      75
       |      76
       |      77
       |      78
       |      79
       |      81
       |      82
       |      83
       |      85
       |      86
       |      87
       |      88
       |      89
       |      90
       |      91
       |      93
       |      94
       |      95
       |      96
       |      97
       |      98
       |      99
       |     100
       |     101
       |     102
       |     103
       |     104
       |     105
       |     107
       |     108
       |     109
       |     110
       |     111
       |     112
       |     113
       |     114
       |     115
       |     116
       |     117
       |     118
       |     119
       |     120
       |     121
       |     122
       |     123
       |     125
       |     126
       |     127
       |     128
       |     129
       |     130
       |     131
       |     132
       |     135
       |     137
       |     138
       |     139
       |     140
       |     141
       |     142
       |     143
       |     144
       |     145
       |     146
       |     147
       |     148
       |     149
       |     150
       |     151
       |     152
       |     153
       |     154
       |     155
       |     156
       |     157
       |     158
       |     159
       |     160
       |     161
       |     162
       |     163
       |     164
       |     165
       |     166
       |     167
       |     168
       |     169
       |     170
       |     171
       |     172
       |     173
       |     174
       |     175
       |     176
       |     177
       |     178
       |     179
       |     180
       |     181
       |     182
       |     183
       |     184
       |     185
       |     186
       |     187
       |     188
       |     189
       |     191
       |     192
       |     193
       |     194
       |     195
       |     196
       |     197
       |     198
       |     199
       |     200
       |     201
       |     202
       |     203
       |     204
       |     206
       |     207
       |     208
       |     209
       |     210
       |     211
       |     212
       |     213
       |     214
       |     215
       |     216
       |     217
       |     218
       |     219
       |     220
       |     221
       |     222
       |     223
       |     224
       |     225
       |     226
       |     227
       |     228
       |     229
       |     230
       |     231
       |     233
       |     234
       |     235
       |     236
       |     237
       |     238
       |     239
       |     240
       |     241
       |     242
       |     243
       |     244
       |     245
       |     246
       |     247
       |     248
       |     249
       |     250
       |     251
       |     253
       |     254
       |     255
       |     256
       |     257
       |     258
       |     259
       |     260
       |     261
       |     262
       |     263
       |     264
       |     265
       |     266
       |     267
       |     268
       |     269
       |     270
       |     271
       |     272
       |     273
       |     274
       |     275
       |     276
       |     277
       |     278
       |     279
       |     280
       |     281
       |     282
       |     283
       |     284
       |     285
       |     286
       |     287
       |     288
       |     291
       |     292
       |     293
       |     294
       |     295
       |     296
       |     297
       |     298
       |     299
       |     300
       |     301
       |     302
       |     303
       |     304
       |     305
       |     306
       |     307
       |     308
       |     309
       |     310
       |     311
       |     312
       |     314
       |     315
       |     316
       |     317
       |     318
       |     320
       |     321
       |     322
       |     323
       |     324
       |     325
       |     326
       |     327
       |     328
       |     329
       |     330
       |     331
       |     332
       |     333
       |     334
       |     335
       |     336
       |     337
       |     338
       |     340
       |     341
       |     343
       |     344
       |     345
       |     346
       |     347
       |     348
       |     349
       |     350
       |     351
       |     352
       |     353
       |     354
       |     355
       |     356
       |     357
       |     358
       |     359
       |     360
       |     361
       |     362
       |     363
       |     364
       |     365
       |     367
       |     368
       |     369
       |     370
       |     371
       |     372
       |     373
       |     374
       |     375
       |     376
       |     377
       |     378
       |     379
       |     380
       |     381
       |     382
       |     383
       |     384
       |     385
       |     386
       |     388
       |     389
       |     390
       |     391
       |     392
       |     393
       |     394
       |     395
       |     396
       |     397
       |     398
       |     399
       |     400
       |     401
       |     402
       |     403
       |     404
       |     405
       |     406
       |     408
       |     409
       |     410
       |     411
       |     412
       |     413
       |     414
       |     415
       |     416
       |     417
       |     418
       |     419
       |     420
       |     421
       |     422
       |     423
       |     424
       |     425
       |     427
       |     428
       |     429
1 Like

Super helpful, thank you! I’ve just merged this fix which should fix the migration problem:

Can you try again?

3 Likes

I updated the plugin and it seems to the android push notification is translate able but the username, topic, site_title are not changing.


Now the arrow toggle works fine :slightly_smiling_face: I found an other thing in the follow feed section. If I click the post image url in collapsed or click the image in expanded post it will open in new window instead of using lightbox.

1 Like

That fixed it, thanks Osama!

1 Like

I can confirm this is fixed on my issue also, thanks!

1 Like