Opened 6 years ago

Last modified 18 months ago

#14036 assigned task

[UI Translation] Migrate to a newer — at Version 7

Reported by: nielx Owned by: nielx
Priority: low Milestone: Unscheduled
Component: Website/Pootle Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description (last modified by nielx)

Currently we are using Pootle (version 2.7). The project seems to be currently unmaintained, so at some point (post R1?) it may be a good idea to migrate to something else.

Wishlist:

  • Online translation
  • Offline translation
  • Export of the result - perhaps even user friendly so that it can be tested on the fly

Change History (7)

comment:1 by nielx, 6 years ago

Configuration changes:

  • In the DATABASES string the engine should be set to 'django.db.backends.postgresql'
  • Add the POOTLE_FS_WORKING_PATH setting
  • Add the POOTLE_CANONICAL_URL setting
  • Change the POOTLE_MARKUP_FILTER setting

comment:2 by nielx, 6 years ago

Before doing migrations run: DROP INDEX pootle_store_suggestion_state; to fix the problem below.

Running migrations:
  Applying pootle_store.0027_unit_created_by_squashed_0055_fill_unit_source_data...Traceback (most recent call last):
  File "env/bin/pootle", line 11, in <module>
    sys.exit(main())
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/pootle/runner.py", line 357, in main
    run_app(project='pootle', django_settings_module='pootle.settings')
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/pootle/runner.py", line 338, in run_app
    management.execute_from_command_line(command)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 359, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/base.py", line 294, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/base.py", line 345, in execute
    output = self.handle(*args, **options)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 204, in handle
    fake_initial=fake_initial,
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/executor.py", line 115, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/executor.py", line 145, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/executor.py", line 244, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/migration.py", line 129, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/operations/models.py", line 96, in database_forwards
    schema_editor.create_model(model)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/base/schema.py", line 295, in create_model
    self.execute(sql, params or None)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/base/schema.py", line 112, in execute
    cursor.execute(sql, params)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/utils.py", line 62, in execute
    return self.cursor.execute(sql)
django.db.utils.ProgrammingError: relation "pootle_store_suggestion_state" already exists
Last edited 6 years ago by nielx (previous) (diff)

comment:3 by nielx, 6 years ago

Next database issue

  Applying pootle_statistics.0011_cleanup_submissions_squashed_0023_remove_scorelog...Traceback (most recent call last):
  File "env/bin/pootle", line 11, in <module>
    sys.exit(main())
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/pootle/runner.py", line 357, in main
    run_app(project='pootle', django_settings_module='pootle.settings')
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/pootle/runner.py", line 338, in run_app
    management.execute_from_command_line(command)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line
    utility.execute()
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/__init__.py", line 359, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/base.py", line 294, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/base.py", line 345, in execute
    output = self.handle(*args, **options)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 204, in handle
    fake_initial=fake_initial,
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/executor.py", line 115, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/executor.py", line 145, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/executor.py", line 244, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/migration.py", line 129, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/migrations/operations/fields.py", line 147, in database_forwards
    schema_editor.remove_field(from_model, from_model._meta.get_field(self.name))
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/base/schema.py", line 445, in remove_field
    self.execute(self._delete_constraint_sql(self.sql_delete_fk, model, fk_name))
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/base/schema.py", line 112, in execute
    cursor.execute(sql, params)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/utils.py", line 94, in __exit__
    six.reraise(dj_exc_type, dj_exc_value, traceback)
  File "/srv/pootle-staging/env/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute
    return self.cursor.execute(sql, params)
django.db.utils.OperationalError: cannot ALTER TABLE "pootle_app_submission" because it has pending trigger events

comment:4 by nielx, 6 years ago

Owner: changed from haiku-sysadmin to haiku-web
Status: newassigned

The haiku-sysadmin user no longer exists, changing to haiku-web.

comment:5 by nielx, 6 years ago

Owner: changed from haiku-web to nielx
Status: assignedin-progress

comment:6 by pulkomandy, 4 years ago

Pootle seems a bit unmaintained nowadays. Today at FOSDEM I was approached by someone from Weblate who could apparently help us migrate to their platform. Or we could consider KapiX's tool as well.

comment:7 by nielx, 4 years ago

Description: modified (diff)
Summary: [Pootle 2.8] Tracking ticket for Pootle 2.8[UI Translation] Migrate to a newer

Indeed I have noticed. It seems dead.

I have modified the ticket.

Note: See TracTickets for help on using tickets.