python: Reformat with Black, except quotes.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg
2021-02-11 23:19:30 -08:00
committed by Tim Abbott
parent 5028c081cb
commit 11741543da
817 changed files with 44952 additions and 24860 deletions

View File

@@ -12,8 +12,7 @@ from django.db.migrations.state import StateApps
from zerver.models import generate_email_token_for_stream
def migrate_existing_attachment_data(apps: StateApps,
schema_editor: DatabaseSchemaEditor) -> None:
def migrate_existing_attachment_data(apps: StateApps, schema_editor: DatabaseSchemaEditor) -> None:
Attachment = apps.get_model('zerver', 'Attachment')
Recipient = apps.get_model('zerver', 'Recipient')
Stream = apps.get_model('zerver', 'Stream')
@@ -26,11 +25,14 @@ def migrate_existing_attachment_data(apps: StateApps,
if owner == message.sender:
if message.recipient.type == Recipient.STREAM:
stream = Stream.objects.get(id=message.recipient.type_id)
is_realm_public = not stream.realm.is_zephyr_mirror_realm and not stream.invite_only
is_realm_public = (
not stream.realm.is_zephyr_mirror_realm and not stream.invite_only
)
entry.is_realm_public = entry.is_realm_public or is_realm_public
entry.save()
class Migration(migrations.Migration):
initial = True
@@ -79,10 +81,27 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='UserProfile',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('password', models.CharField(max_length=128, verbose_name='password')),
('last_login', models.DateTimeField(default=django.utils.timezone.now, verbose_name='last login')),
('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
(
'last_login',
models.DateTimeField(
default=django.utils.timezone.now, verbose_name='last login'
),
),
(
'is_superuser',
models.BooleanField(
default=False,
help_text='Designates that this user has all permissions without explicitly assigning them.',
verbose_name='superuser status',
),
),
('email', models.EmailField(db_index=True, max_length=75, unique=True)),
('is_staff', models.BooleanField(default=False)),
('is_active', models.BooleanField(default=True)),
@@ -102,20 +121,48 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
('enable_offline_push_notifications', models.BooleanField(default=True)),
('enable_digest_emails', models.BooleanField(default=True)),
('default_desktop_notifications', models.BooleanField(default=True)),
('last_reminder', models.DateTimeField(default=django.utils.timezone.now, null=True)),
(
'last_reminder',
models.DateTimeField(default=django.utils.timezone.now, null=True),
),
('rate_limits', models.CharField(default='', max_length=100)),
('default_all_public_streams', models.BooleanField(default=False)),
('enter_sends', models.NullBooleanField(default=True)),
('autoscroll_forever', models.BooleanField(default=False)),
('twenty_four_hour_time', models.BooleanField(default=False)),
('avatar_source', models.CharField(choices=[('G', 'Hosted by Gravatar'), ('U', 'Uploaded by user'), ('S', 'System generated')], default='G', max_length=1)),
('tutorial_status', models.CharField(choices=[('W', 'Waiting'), ('S', 'Started'), ('F', 'Finished')], default='W', max_length=1)),
(
'avatar_source',
models.CharField(
choices=[
('G', 'Hosted by Gravatar'),
('U', 'Uploaded by user'),
('S', 'System generated'),
],
default='G',
max_length=1,
),
),
(
'tutorial_status',
models.CharField(
choices=[('W', 'Waiting'), ('S', 'Started'), ('F', 'Finished')],
default='W',
max_length=1,
),
),
('onboarding_steps', models.TextField(default='[]')),
('invites_granted', models.IntegerField(default=0)),
('invites_used', models.IntegerField(default=0)),
('alert_words', models.TextField(default='[]')),
('muted_topics', models.TextField(default='[]')),
('bot_owner', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)),
(
'bot_owner',
models.ForeignKey(
null=True,
on_delete=django.db.models.deletion.SET_NULL,
to=settings.AUTH_USER_MODEL,
),
),
],
options={
'abstract': False,
@@ -124,27 +171,47 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='Client',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('name', models.CharField(db_index=True, max_length=30, unique=True)),
],
),
migrations.CreateModel(
name='DefaultStream',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
],
),
migrations.CreateModel(
name='Huddle',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('huddle_hash', models.CharField(db_index=True, max_length=40, unique=True)),
],
),
migrations.CreateModel(
name='Message',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('subject', models.CharField(db_index=True, max_length=60)),
('content', models.TextField()),
('rendered_content', models.TextField(null=True)),
@@ -160,7 +227,12 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='PreregistrationUser',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('email', models.EmailField(max_length=75)),
('invited_at', models.DateTimeField(auto_now=True)),
('status', models.IntegerField(default=0)),
@@ -169,18 +241,36 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='PushDeviceToken',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('kind', models.PositiveSmallIntegerField(choices=[(1, 'apns'), (2, 'gcm')])),
('token', models.CharField(max_length=4096, unique=True)),
('last_updated', models.DateTimeField(auto_now=True, default=django.utils.timezone.now)),
(
'last_updated',
models.DateTimeField(auto_now=True, default=django.utils.timezone.now),
),
('ios_app_id', models.TextField(null=True)),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'user',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
],
),
migrations.CreateModel(
name='Realm',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('domain', models.CharField(db_index=True, max_length=40, unique=True)),
('name', models.CharField(max_length=40, null=True)),
('restricted_to_domain', models.BooleanField(default=True)),
@@ -199,33 +289,68 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='RealmAlias',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('domain', models.CharField(db_index=True, max_length=80, unique=True)),
('realm', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm')),
(
'realm',
models.ForeignKey(
null=True, on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm'
),
),
],
),
migrations.CreateModel(
name='RealmEmoji',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('name', models.TextField()),
('img_url', models.TextField()),
('realm', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm')),
(
'realm',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm'
),
),
],
),
migrations.CreateModel(
name='RealmFilter',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('pattern', models.TextField()),
('url_format_string', models.TextField()),
('realm', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm')),
(
'realm',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm'
),
),
],
),
migrations.CreateModel(
name='Recipient',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('type_id', models.IntegerField(db_index=True)),
('type', models.PositiveSmallIntegerField(db_index=True)),
],
@@ -233,16 +358,31 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='Referral',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('email', models.EmailField(max_length=75)),
('timestamp', models.DateTimeField(auto_now_add=True)),
('user_profile', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'user_profile',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
],
),
migrations.CreateModel(
name='ScheduledJob',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('scheduled_timestamp', models.DateTimeField()),
('type', models.PositiveSmallIntegerField()),
('data', models.TextField()),
@@ -253,67 +393,169 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='Stream',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('name', models.CharField(db_index=True, max_length=60)),
('invite_only', models.NullBooleanField(default=False)),
('email_token', models.CharField(default=generate_email_token_for_stream, max_length=32)),
(
'email_token',
models.CharField(default=generate_email_token_for_stream, max_length=32),
),
('description', models.CharField(default='', max_length=1024)),
('date_created', models.DateTimeField(default=django.utils.timezone.now)),
('deactivated', models.BooleanField(default=False)),
('realm', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm')),
(
'realm',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm'
),
),
],
),
migrations.CreateModel(
name='Subscription',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('active', models.BooleanField(default=True)),
('in_home_view', models.NullBooleanField(default=True)),
('color', models.CharField(default='#c2c2c2', max_length=10)),
('desktop_notifications', models.BooleanField(default=True)),
('audible_notifications', models.BooleanField(default=True)),
('notifications', models.BooleanField(default=False)),
('recipient', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Recipient')),
('user_profile', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'recipient',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Recipient'
),
),
(
'user_profile',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
],
),
migrations.CreateModel(
name='UserActivity',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('query', models.CharField(db_index=True, max_length=50)),
('count', models.IntegerField()),
('last_visit', models.DateTimeField(verbose_name='last visit')),
('client', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Client')),
('user_profile', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'client',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Client'
),
),
(
'user_profile',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
],
),
migrations.CreateModel(
name='UserActivityInterval',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('start', models.DateTimeField(db_index=True, verbose_name='start time')),
('end', models.DateTimeField(db_index=True, verbose_name='end time')),
('user_profile', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'user_profile',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
],
),
migrations.CreateModel(
name='UserMessage',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('flags', bitfield.models.BitField(['read', 'starred', 'collapsed', 'mentioned', 'wildcard_mentioned', 'summarize_in_home', 'summarize_in_stream', 'force_expand', 'force_collapse', 'has_alert_word', 'historical', 'is_me_message'], default=0)),
('message', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Message')),
('user_profile', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
(
'flags',
bitfield.models.BitField(
[
'read',
'starred',
'collapsed',
'mentioned',
'wildcard_mentioned',
'summarize_in_home',
'summarize_in_stream',
'force_expand',
'force_collapse',
'has_alert_word',
'historical',
'is_me_message',
],
default=0,
),
),
(
'message',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Message'
),
),
(
'user_profile',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
],
),
migrations.CreateModel(
name='UserPresence',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('timestamp', models.DateTimeField(verbose_name='presence changed')),
('status', models.PositiveSmallIntegerField(default=1)),
('client', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Client')),
('user_profile', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'client',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Client'
),
),
(
'user_profile',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
],
),
migrations.AlterUniqueTogether(
@@ -351,17 +593,27 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AddField(
model_name='realm',
name='notifications_stream',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='zerver.Stream'),
field=models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name='+',
to='zerver.Stream',
),
),
migrations.AddField(
model_name='preregistrationuser',
name='realm',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm'),
field=models.ForeignKey(
null=True, on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm'
),
),
migrations.AddField(
model_name='preregistrationuser',
name='referred_by',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
field=models.ForeignKey(
null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
migrations.AddField(
model_name='preregistrationuser',
@@ -371,17 +623,23 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AddField(
model_name='message',
name='recipient',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Recipient'),
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Recipient'
),
),
migrations.AddField(
model_name='message',
name='sender',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
migrations.AddField(
model_name='message',
name='sending_client',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Client'),
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Client'
),
),
migrations.AddField(
model_name='defaultstream',
@@ -391,7 +649,9 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AddField(
model_name='defaultstream',
name='stream',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='zerver.Stream'),
field=models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to='zerver.Stream'
),
),
migrations.AlterUniqueTogether(
name='defaultstream',
@@ -400,17 +660,34 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AddField(
model_name='userprofile',
name='default_events_register_stream',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='zerver.Stream'),
field=models.ForeignKey(
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name='+',
to='zerver.Stream',
),
),
migrations.AddField(
model_name='userprofile',
name='default_sending_stream',
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='zerver.Stream'),
field=models.ForeignKey(
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name='+',
to='zerver.Stream',
),
),
migrations.AddField(
model_name='userprofile',
name='groups',
field=models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups'),
field=models.ManyToManyField(
blank=True,
help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.',
related_name='user_set',
related_query_name='user',
to='auth.Group',
verbose_name='groups',
),
),
migrations.AddField(
model_name='userprofile',
@@ -420,7 +697,14 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AddField(
model_name='userprofile',
name='user_permissions',
field=models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions'),
field=models.ManyToManyField(
blank=True,
help_text='Specific permissions for this user.',
related_name='user_set',
related_query_name='user',
to='auth.Permission',
verbose_name='user permissions',
),
),
migrations.RunSQL(
sql=fts_sql,
@@ -476,7 +760,12 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
),
migrations.AlterModelOptions(
name='realm',
options={'permissions': (('administer', 'Administer a realm'), ('api_super_user', 'Can send messages as other users for mirroring'))},
options={
'permissions': (
('administer', 'Administer a realm'),
('api_super_user', 'Can send messages as other users for mirroring'),
)
},
),
migrations.RunSQL(
sql='CREATE INDEX upper_userprofile_email_idx ON zerver_userprofile ((upper(email)));',
@@ -524,7 +813,12 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AlterField(
model_name='realmemoji',
name='name',
field=models.TextField(validators=[django.core.validators.MinLengthValidator(1), django.core.validators.RegexValidator(regex='^[0-9a-zA-Z.\\-_]+(?<![.\\-_])$')]),
field=models.TextField(
validators=[
django.core.validators.MinLengthValidator(1),
django.core.validators.RegexValidator(regex='^[0-9a-zA-Z.\\-_]+(?<![.\\-_])$'),
]
),
),
migrations.AlterField(
model_name='realmemoji',
@@ -534,12 +828,25 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.CreateModel(
name='Attachment',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
(
'id',
models.AutoField(
auto_created=True, primary_key=True, serialize=False, verbose_name='ID'
),
),
('file_name', models.CharField(db_index=True, max_length=100)),
('path_id', models.TextField(db_index=True)),
('create_time', models.DateTimeField(db_index=True, default=django.utils.timezone.now)),
(
'create_time',
models.DateTimeField(db_index=True, default=django.utils.timezone.now),
),
('messages', models.ManyToManyField(to='zerver.Message')),
('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
(
'owner',
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL
),
),
('is_realm_public', models.BooleanField(default=False)),
],
),
@@ -556,7 +863,15 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AlterField(
model_name='realmemoji',
name='name',
field=models.TextField(validators=[django.core.validators.MinLengthValidator(1), django.core.validators.RegexValidator(message='Invalid characters in emoji name', regex='^[0-9a-zA-Z.\\-_]+(?<![.\\-_])$')]),
field=models.TextField(
validators=[
django.core.validators.MinLengthValidator(1),
django.core.validators.RegexValidator(
message='Invalid characters in emoji name',
regex='^[0-9a-zA-Z.\\-_]+(?<![.\\-_])$',
),
]
),
),
migrations.AddField(
model_name='preregistrationuser',
@@ -566,7 +881,12 @@ CREATE TRIGGER zerver_message_update_search_tsvector_async
migrations.AddField(
model_name='attachment',
name='realm',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='zerver.Realm'),
field=models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.CASCADE,
to='zerver.Realm',
),
),
migrations.RunPython(
code=migrate_existing_attachment_data,