mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
unicode_literals everywhere and modoboa-admin deploy fixes
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
#!/usr/bin/env python
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from modoboa.core.commands import handle_command_line
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1 +1,3 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
default_app_config = "modoboa.admin.apps.AdminConfig"
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Admin API."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import http
|
||||
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Modoboa admin settings."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import os
|
||||
|
||||
from django import forms
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""AppConfig for admin."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.apps import AppConfig
|
||||
|
||||
from .app_settings import load_admin_settings
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Admin constants."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
DNSBL_PROVIDERS = [
|
||||
"aspews.ext.sorbs.net",
|
||||
"b.barracudacentral.org",
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
"""
|
||||
Fixtures factories.
|
||||
"""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import factory
|
||||
|
||||
from modoboa.core.factories import PermissionFactory, UserFactory
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from .domain import (
|
||||
DomainFormGeneral, DomainFormOptions, DomainForm, DomainWizard
|
||||
)
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Forms related to accounts management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from collections import OrderedDict
|
||||
from functools import reduce
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Forms related to aliases management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from collections import OrderedDict
|
||||
|
||||
from django import forms
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Forms related to domains management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from functools import reduce
|
||||
|
||||
from django import forms
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import forms
|
||||
from django.utils.translation import ugettext_lazy
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Forms related to forwards management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import forms
|
||||
from django.core import validators
|
||||
from django.utils.translation import ugettext_lazy
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Forms related to import operations."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import forms
|
||||
from django.utils.translation import ugettext_lazy
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Django signal handlers for admin."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.db.models import signals
|
||||
from django.dispatch import receiver
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
"""Internal library for admin."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from functools import wraps
|
||||
from itertools import chain
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""A management command to apply mailbox operations."""
|
||||
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals, print_function
|
||||
|
||||
import logging
|
||||
import os
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Modoboa main management command."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from subcommand.base import SubcommandCommand
|
||||
|
||||
from .subcommands._mx import CheckMXRecords
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Django management command to export admin objects."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import csv
|
||||
import sys
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Django management command to import admin objects."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import csv
|
||||
import os
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""Management command to check defined domains."""
|
||||
|
||||
from __future__ import print_function
|
||||
from __future__ import print_function, unicode_literals
|
||||
|
||||
from datetime import timedelta
|
||||
import ipaddress
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
"""Management command to check and fix known problems."""
|
||||
|
||||
from __future__ import print_function
|
||||
from __future__ import print_function, unicode_literals
|
||||
|
||||
from django.conf import settings
|
||||
from django.core.management.base import BaseCommand
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Admin models."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from .base import AdminObject
|
||||
from .domain import Domain, MXRecord, DNSBLResult
|
||||
from .domain_alias import DomainAlias
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Models related to aliases management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import hashlib
|
||||
import random
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Base admin models."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models
|
||||
from django.utils import timezone
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Models related to domains management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import datetime
|
||||
from functools import reduce
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Models related to domain aliases management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models
|
||||
from django.utils.encoding import python_2_unicode_compatible, smart_text
|
||||
from django.utils.translation import ugettext as _, ugettext_lazy
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Models related to mailboxes management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import os
|
||||
import pwd
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Map file definitions for postfix."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
|
||||
class DomainsMap(object):
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Admin serializers."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.utils.translation import ugettext as _, ugettext_lazy
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Modoboa admin signals."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import django.dispatch
|
||||
|
||||
check_extra_account_form = django.dispatch.Signal(
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Admin extension tags."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from functools import reduce
|
||||
|
||||
from django import template
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from unittest import skipIf
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
"""Admin test cases."""
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# coding: utf-8
|
||||
"""Admin API related tests."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import copy
|
||||
import json
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
"""Domain related test cases."""
|
||||
|
||||
import json
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
from modoboa.lib.tests import ModoTestCase
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Export related test cases."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
from modoboa.lib.tests import ModoTestCase
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.files.base import ContentFile
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Management command tests."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import os
|
||||
import shutil
|
||||
import tempfile
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Test map files generation."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import os
|
||||
|
||||
from django.conf import settings
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""DNSBL related tests."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core import management
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.test import override_settings
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
from modoboa.core.models import User
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
"""Repair command tests"""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core import management
|
||||
|
||||
from modoboa.lib.permissions import get_object_owner
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""User related tests."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import json
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# pylint: disable=invalid-name, protected-access
|
||||
"""Admin urls."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.conf.urls import url
|
||||
|
||||
from . import views
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Admin API urls."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from rest_framework import routers
|
||||
|
||||
from . import api
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Shortcuts."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from .alias import AliasDetailView
|
||||
from .identity import AccountDetailView
|
||||
from .dns import DNSBLDomainDetailView, MXDomainDetailView
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Alias related views."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.db import IntegrityError
|
||||
from django.shortcuts import render
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""DNSBL related views."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.views import generic
|
||||
|
||||
from django.utils.translation import ugettext as _
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Domain related views."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from functools import reduce
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Export related views."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import csv
|
||||
import io
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Identity related views."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.shortcuts import render
|
||||
from django.template.loader import render_to_string
|
||||
from django.utils.translation import ugettext as _, ungettext
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Import related views."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import csv
|
||||
|
||||
from django.contrib.auth.decorators import (
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""SimpleUsers views."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.template.loader import render_to_string
|
||||
from django.utils.translation import ugettext as _
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
"""App config for core."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
default_app_config = "modoboa.core.apps.CoreConfig"
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import forms
|
||||
from django.conf import settings
|
||||
from django.utils.translation import ugettext as _, ugettext_lazy
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Core config for admin."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.apps import AppConfig
|
||||
from django.db.models import signals
|
||||
from django.utils.translation import ugettext_lazy
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals, print_function
|
||||
|
||||
import argparse
|
||||
import os
|
||||
@@ -8,6 +8,7 @@ import sys
|
||||
|
||||
from django.conf import settings
|
||||
from django.template import Context, Template
|
||||
from django.utils import six
|
||||
|
||||
|
||||
class Command(object):
|
||||
@@ -65,8 +66,12 @@ def scan_for_commands(dirname=""):
|
||||
if os.path.isfile(f):
|
||||
continue
|
||||
cmdname = f.replace(".py", "")
|
||||
if six.PY2:
|
||||
fromlist = [cmdname.encode()]
|
||||
else:
|
||||
fromlist = [cmdname]
|
||||
cmdmod = __import__("modoboa.core.commands", globals(), locals(),
|
||||
[cmdname])
|
||||
fromlist)
|
||||
cmdmod = getattr(cmdmod, cmdname)
|
||||
if "_" in cmdname:
|
||||
cmdclassname = "".join(
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
"""A shortcut to deploy a fresh modoboa instance."""
|
||||
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals, print_function
|
||||
|
||||
import getpass
|
||||
import os
|
||||
@@ -21,6 +21,7 @@ except ImportError:
|
||||
import django
|
||||
from django.core import management
|
||||
from django.template import Context, Template
|
||||
from django.utils import six
|
||||
import dj_database_url
|
||||
|
||||
from modoboa.core.commands import Command
|
||||
@@ -231,7 +232,11 @@ class DeployCommand(Command):
|
||||
os.path.join(os.path.dirname(__file__), "../../bower_components")
|
||||
)
|
||||
|
||||
mod = __import__(parsed_args.name, globals(), locals(), ['settings'])
|
||||
if six.PY2:
|
||||
fromlist = ['settings'.encode()]
|
||||
else:
|
||||
fromlist = ['settings']
|
||||
mod = __import__(parsed_args.name, globals(), locals(), fromlist)
|
||||
tpl = self._render_template(
|
||||
"%s/settings.py.tpl" % self._templates_dir, {
|
||||
'db_connections': connections,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import print_function
|
||||
from __future__ import unicode_literals, print_function
|
||||
|
||||
import sys
|
||||
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
"""Core application constants."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.utils.translation import ugettext_lazy
|
||||
|
||||
SIMPLEUSERS_ROLE = ("SimpleUsers", ugettext_lazy("Simple user"))
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Custom context processors."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from functools import reduce
|
||||
|
||||
from . import signals
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
# Development settings
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import os
|
||||
|
||||
BOWER_COMPONENTS_ROOT = os.path.join(
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
"""Extension management."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.conf import settings
|
||||
from django.conf.urls import include, url
|
||||
from django.utils import six
|
||||
|
||||
|
||||
class ModoExtension(object):
|
||||
@@ -76,7 +79,11 @@ class ExtensionsPool(object):
|
||||
|
||||
def load_extension(self, name):
|
||||
"""Load a registered extension."""
|
||||
__import__(name, locals(), globals(), ["modo_extension"])
|
||||
if six.PY2:
|
||||
fromlist = ["modo_extension".encode()]
|
||||
else:
|
||||
fromlist = ["modo_extension"]
|
||||
__import__(name, locals(), globals(), fromlist)
|
||||
extinstance = self.get_extension(name)
|
||||
if extinstance is None:
|
||||
return None
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Factories for core application."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import factory
|
||||
|
||||
from django.contrib.auth.models import Group
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
"""Core forms."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import forms
|
||||
from django.utils.translation import ugettext as _, ugettext_lazy
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Modoboa core signal handlers."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import logging
|
||||
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import logging
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# coding: utf-8
|
||||
|
||||
from __future__ import print_function
|
||||
from __future__ import print_function, unicode_literals
|
||||
|
||||
import datetime
|
||||
import logging
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Management command to communicate with public API."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.management.base import BaseCommand, CommandError
|
||||
|
||||
from modoboa.admin import models as admin_models
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
"""Management command to generate/update postfix map files."""
|
||||
from __future__ import print_function
|
||||
from __future__ import print_function, unicode_literals
|
||||
|
||||
import copy
|
||||
import hashlib
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
|
||||
"""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from functools import reduce
|
||||
|
||||
from django.contrib.auth.models import Group
|
||||
|
||||
@@ -5,6 +5,8 @@ A simple managemenent command to update the default site.
|
||||
See `https://docs.djangoproject.com/en/dev/ref/contrib/sites/`_.
|
||||
"""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.management.base import BaseCommand, CommandError
|
||||
|
||||
from django.contrib.sites.models import Site
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Core middlewares."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from . import models
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Mocks used for testing."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import httmock
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Core models."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from email.header import Header
|
||||
import re
|
||||
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
"""
|
||||
Password hashers for Modoboa.
|
||||
"""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from modoboa.core.password_hashers.base import (
|
||||
PLAINHasher, CRYPTHasher, MD5Hasher, SHA256Hasher
|
||||
)
|
||||
|
||||
@@ -4,6 +4,8 @@ Advanced (ie. stronger) password hashers.
|
||||
This module relies on `passlib` to provide more secure hashers.
|
||||
"""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from passlib.hash import bcrypt, md5_crypt, sha256_crypt, sha512_crypt
|
||||
|
||||
from modoboa.parameters import tools as param_tools
|
||||
|
||||
@@ -4,6 +4,8 @@ Base password hashers.
|
||||
Contains weak hashers (the original ones) available with Modoboa.
|
||||
"""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import base64
|
||||
import crypt
|
||||
import hashlib
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Modoboa core signals."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import django.dispatch
|
||||
|
||||
account_auto_created = django.dispatch.Signal(providing_args=["user"])
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
# coding: utf-8
|
||||
"""Custom tags for Core application."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from functools import reduce
|
||||
import os
|
||||
import pkg_resources
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""A stupid extension used for tests."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from modoboa.core import extensions
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""A stupid extension used for tests."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from modoboa.core import extensions
|
||||
|
||||
|
||||
@@ -11,4 +13,5 @@ class StupidExtension2(extensions.ModoExtension):
|
||||
version = "1.0.0"
|
||||
description = "A stupid extension"
|
||||
|
||||
|
||||
extensions.exts_pool.register_extension(StupidExtension2, show=False)
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
"""Custom urls."""
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.conf.urls import url
|
||||
|
||||
from . import views
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django import http
|
||||
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user