mirror of
https://github.com/inventree/InvenTree.git
synced 2025-07-01 03:00:54 +00:00
resort imports
This commit is contained in:
@ -2,9 +2,9 @@
|
||||
Utility file to enable simper imports
|
||||
"""
|
||||
|
||||
from .helpers import MixinImplementationError, MixinNotImplementedError
|
||||
from .plugin import IntegrationPluginBase, InvenTreePlugin
|
||||
from .registry import registry
|
||||
from .plugin import InvenTreePlugin, IntegrationPluginBase
|
||||
from .helpers import MixinNotImplementedError, MixinImplementationError
|
||||
|
||||
__all__ = [
|
||||
'registry',
|
||||
|
@ -5,18 +5,17 @@ JSON API for the plugin app
|
||||
from django.conf import settings
|
||||
from django.urls import include, re_path
|
||||
|
||||
from django_filters.rest_framework import DjangoFilterBackend
|
||||
from rest_framework import filters, generics, permissions, status
|
||||
from rest_framework.exceptions import NotFound
|
||||
from rest_framework.response import Response
|
||||
|
||||
from django_filters.rest_framework import DjangoFilterBackend
|
||||
|
||||
import plugin.serializers as PluginSerializers
|
||||
from common.api import GlobalSettingsPermissions
|
||||
from plugin.base.barcodes.api import barcode_api_urls
|
||||
from plugin.base.action.api import ActionPluginView
|
||||
from plugin.base.barcodes.api import barcode_api_urls
|
||||
from plugin.base.locate.api import LocatePluginView
|
||||
from plugin.models import PluginConfig, PluginSetting
|
||||
import plugin.serializers as PluginSerializers
|
||||
from plugin.registry import registry
|
||||
|
||||
|
||||
|
@ -11,7 +11,6 @@ from InvenTree.ready import canAppAccessDatabase
|
||||
from plugin import registry
|
||||
from plugin.helpers import check_git_version, log_error
|
||||
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
""" Unit tests for action plugins """
|
||||
|
||||
from django.test import TestCase
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.test import TestCase
|
||||
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import ActionMixin
|
||||
|
@ -1,19 +1,18 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from django.urls import reverse, path, re_path
|
||||
from django.urls import path, re_path, reverse
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from rest_framework.exceptions import ValidationError
|
||||
from rest_framework import permissions
|
||||
from rest_framework.exceptions import ValidationError
|
||||
from rest_framework.response import Response
|
||||
from rest_framework.views import APIView
|
||||
|
||||
from plugin import registry
|
||||
from plugin.base.barcodes.mixins import hash_barcode
|
||||
from plugin.builtin.barcodes.inventree_barcode import InvenTreeBarcodePlugin
|
||||
from stock.models import StockItem
|
||||
from stock.serializers import StockItemSerializer
|
||||
|
||||
from plugin.builtin.barcodes.inventree_barcode import InvenTreeBarcodePlugin
|
||||
from plugin.base.barcodes.mixins import hash_barcode
|
||||
from plugin import registry
|
||||
|
||||
|
||||
class BarcodeScan(APIView):
|
||||
"""
|
||||
|
@ -1,12 +1,12 @@
|
||||
"""
|
||||
Plugin mixin classes for barcode plugin
|
||||
"""
|
||||
import string
|
||||
import hashlib
|
||||
import string
|
||||
|
||||
from stock.models import StockItem
|
||||
from stock.serializers import StockItemSerializer, LocationSerializer
|
||||
from part.serializers import PartSerializer
|
||||
from stock.models import StockItem
|
||||
from stock.serializers import LocationSerializer, StockItemSerializer
|
||||
|
||||
|
||||
def hash_barcode(barcode_data):
|
||||
|
@ -7,8 +7,8 @@ Unit tests for Barcode endpoints
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.urls import reverse
|
||||
|
||||
from rest_framework.test import APITestCase
|
||||
from rest_framework import status
|
||||
from rest_framework.test import APITestCase
|
||||
|
||||
from stock.models import StockItem
|
||||
|
||||
|
@ -6,15 +6,13 @@ import logging
|
||||
|
||||
from django.conf import settings
|
||||
from django.db import transaction
|
||||
from django.db.models.signals import post_save, post_delete
|
||||
from django.db.models.signals import post_delete, post_save
|
||||
from django.dispatch.dispatcher import receiver
|
||||
|
||||
from InvenTree.ready import canAppAccessDatabase, isImportingData
|
||||
from InvenTree.tasks import offload_task
|
||||
|
||||
from plugin.registry import registry
|
||||
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
|
||||
|
@ -2,22 +2,21 @@
|
||||
Plugin mixin classes
|
||||
"""
|
||||
|
||||
import logging
|
||||
import json
|
||||
import logging
|
||||
|
||||
from django.db.utils import OperationalError, ProgrammingError
|
||||
from django.urls import include, re_path
|
||||
|
||||
import requests
|
||||
|
||||
from django.urls import include, re_path
|
||||
from django.db.utils import OperationalError, ProgrammingError
|
||||
|
||||
import InvenTree.helpers
|
||||
|
||||
from plugin.helpers import MixinImplementationError, MixinNotImplementedError
|
||||
from plugin.helpers import render_template, render_text
|
||||
from plugin.helpers import (MixinImplementationError, MixinNotImplementedError,
|
||||
render_template, render_text)
|
||||
from plugin.models import PluginConfig, PluginSetting
|
||||
from plugin.registry import registry
|
||||
from plugin.urls import PLUGIN_BASE
|
||||
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
|
||||
|
@ -1,19 +1,19 @@
|
||||
""" Unit tests for base mixins for plugins """
|
||||
|
||||
from django.test import TestCase
|
||||
from django.conf import settings
|
||||
from django.urls import include, re_path, reverse
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.contrib.auth.models import Group
|
||||
from django.test import TestCase
|
||||
from django.urls import include, re_path, reverse
|
||||
|
||||
from error_report.models import Error
|
||||
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import AppMixin, SettingsMixin, UrlsMixin, NavigationMixin, APICallMixin
|
||||
from plugin.urls import PLUGIN_BASE
|
||||
from plugin.helpers import MixinNotImplementedError
|
||||
|
||||
from plugin.mixins import (APICallMixin, AppMixin, NavigationMixin,
|
||||
SettingsMixin, UrlsMixin)
|
||||
from plugin.registry import registry
|
||||
from plugin.urls import PLUGIN_BASE
|
||||
|
||||
|
||||
class BaseMixinDefinition:
|
||||
|
@ -3,9 +3,8 @@ import logging
|
||||
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from plugin.registry import registry
|
||||
import common.notifications
|
||||
|
||||
from plugin.registry import registry
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
|
@ -1,12 +1,11 @@
|
||||
"""API for location plugins"""
|
||||
|
||||
from rest_framework import permissions
|
||||
from rest_framework.exceptions import ParseError, NotFound
|
||||
from rest_framework.exceptions import NotFound, ParseError
|
||||
from rest_framework.response import Response
|
||||
from rest_framework.views import APIView
|
||||
|
||||
from InvenTree.tasks import offload_task
|
||||
|
||||
from plugin.registry import registry
|
||||
from stock.models import StockItem, StockLocation
|
||||
|
||||
|
@ -5,7 +5,6 @@ Unit tests for the 'locate' plugin mixin class
|
||||
from django.urls import reverse
|
||||
|
||||
from InvenTree.api_tester import InvenTreeAPITestCase
|
||||
|
||||
from plugin.registry import registry
|
||||
from stock.models import StockItem, StockLocation
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
""" Unit tests for action plugins """
|
||||
|
||||
from django.test import TestCase
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.test import TestCase
|
||||
|
||||
from plugin.builtin.action.simpleactionplugin import SimpleActionPlugin
|
||||
|
||||
|
@ -13,13 +13,12 @@ references model objects actually exist in the database.
|
||||
|
||||
import json
|
||||
|
||||
from rest_framework.exceptions import ValidationError
|
||||
|
||||
from part.models import Part
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import BarcodeMixin
|
||||
|
||||
from stock.models import StockItem, StockLocation
|
||||
from part.models import Part
|
||||
|
||||
from rest_framework.exceptions import ValidationError
|
||||
|
||||
|
||||
class InvenTreeBarcodePlugin(BarcodeMixin, InvenTreePlugin):
|
||||
|
@ -4,8 +4,8 @@
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.urls import reverse
|
||||
|
||||
from rest_framework.test import APITestCase
|
||||
from rest_framework import status
|
||||
from rest_framework.test import APITestCase
|
||||
|
||||
|
||||
class TestInvenTreeBarcode(APITestCase):
|
||||
|
@ -5,9 +5,9 @@ from django.utils.translation import ugettext_lazy as _
|
||||
|
||||
from allauth.account.models import EmailAddress
|
||||
|
||||
import InvenTree.tasks
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import BulkNotificationMethod, SettingsMixin
|
||||
import InvenTree.tasks
|
||||
|
||||
|
||||
class PlgMixin:
|
||||
|
@ -1,7 +1,8 @@
|
||||
from plugin.models import NotificationUserSetting
|
||||
from part.test_part import BaseNotificationIntegrationTest
|
||||
from plugin.builtin.integration.core_notifications import CoreNotificationsPlugin
|
||||
from plugin import registry
|
||||
from plugin.builtin.integration.core_notifications import \
|
||||
CoreNotificationsPlugin
|
||||
from plugin.models import NotificationUserSetting
|
||||
|
||||
|
||||
class CoreNotificationTestTests(BaseNotificationIntegrationTest):
|
||||
|
@ -2,7 +2,8 @@
|
||||
Import helper for events
|
||||
"""
|
||||
|
||||
from plugin.base.event.events import process_event, register_event, trigger_event
|
||||
from plugin.base.event.events import (process_event, register_event,
|
||||
trigger_event)
|
||||
|
||||
__all__ = [
|
||||
'process_event',
|
||||
|
@ -1,21 +1,20 @@
|
||||
"""
|
||||
Helpers for plugin app
|
||||
"""
|
||||
import inspect
|
||||
import logging
|
||||
import os
|
||||
import subprocess
|
||||
import pathlib
|
||||
import pkgutil
|
||||
import subprocess
|
||||
import sysconfig
|
||||
import traceback
|
||||
import inspect
|
||||
import pkgutil
|
||||
import logging
|
||||
|
||||
from django import template
|
||||
from django.conf import settings
|
||||
from django.core.exceptions import AppRegistryNotReady
|
||||
from django.db.utils import IntegrityError
|
||||
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
|
||||
|
@ -2,13 +2,15 @@
|
||||
Utility class to enable simpler imports
|
||||
"""
|
||||
|
||||
from ..base.integration.mixins import APICallMixin, AppMixin, SettingsMixin, ScheduleMixin, UrlsMixin, NavigationMixin, PanelMixin
|
||||
|
||||
from common.notifications import SingleNotificationMethod, BulkNotificationMethod
|
||||
from common.notifications import (BulkNotificationMethod,
|
||||
SingleNotificationMethod)
|
||||
|
||||
from ..base.action.mixins import ActionMixin
|
||||
from ..base.barcodes.mixins import BarcodeMixin
|
||||
from ..base.event.mixins import EventMixin
|
||||
from ..base.integration.mixins import (APICallMixin, AppMixin, NavigationMixin,
|
||||
PanelMixin, ScheduleMixin,
|
||||
SettingsMixin, UrlsMixin)
|
||||
from ..base.label.mixins import LabelPrintingMixin
|
||||
from ..base.locate.mixins import LocateMixin
|
||||
|
||||
|
@ -4,13 +4,12 @@ Plugin model definitions
|
||||
|
||||
import warnings
|
||||
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.db import models
|
||||
from django.contrib.auth.models import User
|
||||
from django.conf import settings
|
||||
from django.contrib.auth.models import User
|
||||
from django.db import models
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
import common.models
|
||||
|
||||
from plugin import InvenTreePlugin, registry
|
||||
|
||||
|
||||
|
@ -2,21 +2,20 @@
|
||||
"""
|
||||
Base Class for InvenTree plugins
|
||||
"""
|
||||
import inspect
|
||||
import logging
|
||||
import os
|
||||
import inspect
|
||||
from datetime import datetime
|
||||
import pathlib
|
||||
import warnings
|
||||
from datetime import datetime
|
||||
|
||||
from django.conf import settings
|
||||
from django.db.utils import OperationalError, ProgrammingError
|
||||
from django.urls.base import reverse
|
||||
from django.utils.text import slugify
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.urls.base import reverse
|
||||
|
||||
from plugin.helpers import get_git_log, GitStatus
|
||||
|
||||
from plugin.helpers import GitStatus, get_git_log
|
||||
|
||||
logger = logging.getLogger("inventree")
|
||||
|
||||
|
@ -6,28 +6,26 @@ Registry for loading and managing multiple plugins at run-time
|
||||
"""
|
||||
|
||||
import importlib
|
||||
import pathlib
|
||||
import logging
|
||||
import os
|
||||
import pathlib
|
||||
import subprocess
|
||||
|
||||
from importlib import metadata, reload
|
||||
from typing import OrderedDict
|
||||
from importlib import reload, metadata
|
||||
|
||||
from django.apps import apps
|
||||
from django.conf import settings
|
||||
from django.db.utils import OperationalError, ProgrammingError, IntegrityError
|
||||
from django.urls import include, re_path
|
||||
from django.urls import clear_url_caches
|
||||
from django.contrib import admin
|
||||
from django.db.utils import IntegrityError, OperationalError, ProgrammingError
|
||||
from django.urls import clear_url_caches, include, re_path
|
||||
from django.utils.text import slugify
|
||||
|
||||
from maintenance_mode.core import maintenance_mode_on
|
||||
from maintenance_mode.core import get_maintenance_mode, set_maintenance_mode
|
||||
from maintenance_mode.core import (get_maintenance_mode, maintenance_mode_on,
|
||||
set_maintenance_mode)
|
||||
|
||||
from .helpers import (IntegrationPluginError, get_plugins, handle_error,
|
||||
log_error)
|
||||
from .plugin import InvenTreePlugin
|
||||
from .helpers import handle_error, log_error, get_plugins, IntegrationPluginError
|
||||
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
@ -576,7 +574,8 @@ class PluginsRegistry:
|
||||
self.plugins_inactive = {}
|
||||
|
||||
def _update_urls(self):
|
||||
from InvenTree.urls import urlpatterns as global_pattern, frontendpatterns as urlpatterns
|
||||
from InvenTree.urls import frontendpatterns as urlpatterns
|
||||
from InvenTree.urls import urlpatterns as global_pattern
|
||||
from plugin.urls import get_plugin_urls
|
||||
|
||||
for index, a in enumerate(urlpatterns):
|
||||
|
@ -2,10 +2,9 @@
|
||||
Sample plugin which renders custom panels on certain pages
|
||||
"""
|
||||
|
||||
from part.views import PartDetail
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import PanelMixin, SettingsMixin
|
||||
|
||||
from part.views import PartDetail
|
||||
from stock.views import StockLocationDetail
|
||||
|
||||
|
||||
|
@ -2,12 +2,12 @@
|
||||
Sample implementations for IntegrationPlugin
|
||||
"""
|
||||
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import AppMixin, SettingsMixin, UrlsMixin, NavigationMixin
|
||||
|
||||
from django.http import HttpResponse
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.urls import include, re_path
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import AppMixin, NavigationMixin, SettingsMixin, UrlsMixin
|
||||
|
||||
|
||||
class SampleIntegrationPlugin(AppMixin, SettingsMixin, UrlsMixin, NavigationMixin, InvenTreePlugin):
|
||||
|
@ -1,7 +1,7 @@
|
||||
""" Unit tests for action plugins """
|
||||
|
||||
from django.test import TestCase
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.test import TestCase
|
||||
|
||||
|
||||
class SampleIntegrationPluginTests(TestCase):
|
||||
|
@ -2,10 +2,10 @@
|
||||
|
||||
from django.test import TestCase
|
||||
|
||||
from plugin import registry, InvenTreePlugin
|
||||
from plugin import InvenTreePlugin, registry
|
||||
from plugin.helpers import MixinImplementationError
|
||||
from plugin.registry import call_function
|
||||
from plugin.mixins import ScheduleMixin
|
||||
from plugin.registry import call_function
|
||||
|
||||
|
||||
class ExampleScheduledTaskPluginTests(TestCase):
|
||||
|
@ -9,7 +9,6 @@ import logging
|
||||
from plugin import InvenTreePlugin
|
||||
from plugin.mixins import LocateMixin
|
||||
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
|
||||
|
@ -5,15 +5,15 @@ JSON serializers for plugin app
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.conf import settings
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.core.exceptions import ValidationError
|
||||
from django.utils import timezone
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
from rest_framework import serializers
|
||||
|
||||
from plugin.models import PluginConfig, PluginSetting, NotificationUserSetting
|
||||
from common.serializers import GenericReferencedSettingSerializer
|
||||
from plugin.models import NotificationUserSetting, PluginConfig, PluginSetting
|
||||
|
||||
|
||||
class MetadataSerializer(serializers.ModelSerializer):
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
""" This module provides template tags for handeling plugins
|
||||
"""
|
||||
from django.conf import settings as djangosettings
|
||||
from django import template
|
||||
from django.conf import settings as djangosettings
|
||||
from django.urls import reverse
|
||||
|
||||
from common.models import InvenTreeSetting
|
||||
from plugin import registry
|
||||
from common.notifications import storage
|
||||
from plugin import registry
|
||||
|
||||
register = template.Library()
|
||||
|
||||
|
@ -76,8 +76,8 @@ class PluginDetailAPITest(InvenTreeAPITestCase):
|
||||
"""
|
||||
Test the PluginConfig action commands
|
||||
"""
|
||||
from plugin.models import PluginConfig
|
||||
from plugin import registry
|
||||
from plugin.models import PluginConfig
|
||||
|
||||
url = reverse('admin:plugin_pluginconfig_changelist')
|
||||
fixtures = PluginConfig.objects.all()
|
||||
@ -135,8 +135,8 @@ class PluginDetailAPITest(InvenTreeAPITestCase):
|
||||
"""
|
||||
Test the PluginConfig model
|
||||
"""
|
||||
from plugin.models import PluginConfig
|
||||
from plugin import registry
|
||||
from plugin.models import PluginConfig
|
||||
|
||||
fixtures = PluginConfig.objects.all()
|
||||
|
||||
|
@ -6,10 +6,11 @@ from datetime import datetime
|
||||
|
||||
from django.test import TestCase
|
||||
|
||||
from plugin.samples.integration.sample import SampleIntegrationPlugin
|
||||
from plugin.samples.integration.another_sample import WrongIntegrationPlugin, NoIntegrationPlugin
|
||||
import plugin.templatetags.plugin_extras as plugin_tags
|
||||
from plugin import registry, InvenTreePlugin, IntegrationPluginBase
|
||||
from plugin import IntegrationPluginBase, InvenTreePlugin, registry
|
||||
from plugin.samples.integration.another_sample import (NoIntegrationPlugin,
|
||||
WrongIntegrationPlugin)
|
||||
from plugin.samples.integration.sample import SampleIntegrationPlugin
|
||||
|
||||
|
||||
class PluginTagTests(TestCase):
|
||||
|
@ -6,7 +6,6 @@ from django.urls import include, re_path
|
||||
|
||||
from plugin import registry
|
||||
|
||||
|
||||
PLUGIN_BASE = 'plugin' # Constant for links
|
||||
|
||||
|
||||
|
@ -9,7 +9,6 @@ from error_report.models import Error
|
||||
|
||||
from plugin.registry import registry
|
||||
|
||||
|
||||
logger = logging.getLogger('inventree')
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user