forked from Open-MSS/MSS
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.cfg
More file actions
134 lines (125 loc) · 3.72 KB
/
Copy pathsetup.cfg
File metadata and controls
134 lines (125 loc) · 3.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# -*- coding: utf-8 -*-
#
# mslib.setup
# ~~~~~~~~~~~
#
# setup.cfg
#
# This file is part of mss.
#
# :copyright: Copyright 2016-2017 Reimar Bauer, Joern Ungermann
# :copyright: Copyright 2016-2026 by the MSS team, see AUTHORS.
# :license: APACHE-2.0, see LICENSE for details.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in com#pliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
[aliases]
test = pytest
[coverage:run]
branch = True
relative_files = True
source = mslib
omit =
mslib/msui/qt5/*py
tests/*
[tool:pytest]
norecursedirs = .git .idea .cache
[flake8]
ignore = E124,E125,E402,W503,W504,A005
max-line-length = 120
exclude = mslib/msui/qt5/*.py, mslib/mscolab/migrations/*.py
# Architectural import contracts (checked by `pixi run -e dev lint-imports` and CI).
# The target dependency direction is documented in ARCHITECTURE.md. Every entry in
# an ignore_imports list below is a grandfathered, known violation of the target
# architecture -- shrink these lists, never grow them.
[importlinter]
root_package = mslib
include_external_packages = True
[importlinter:contract:gui-isolation]
name = Only the GUI package may import mslib.msui
type = forbidden
source_modules =
mslib.mscolab
mslib.mswms
mslib.utils
mslib.plugins
mslib.msidp
mslib.support
forbidden_modules =
mslib.msui
ignore_imports =
mslib.plugins.io.csv -> mslib.msui.flighttrack
mslib.plugins.io.text -> mslib.msui.flighttrack
mslib.plugins.io.flitestar -> mslib.msui.flighttrack
[importlinter:contract:server-isolation]
name = Only the shared protocol constants of mslib.mscolab may be imported elsewhere
type = forbidden
source_modules =
mslib.msui
mslib.mswms
mslib.utils
mslib.plugins
mslib.msidp
mslib.support
mslib.autoplot
forbidden_modules =
mslib.mscolab
ignore_imports =
# mslib.mscolab.api is the typed client/server contract (schemas +
# endpoint registry) plus the shared socket/message vocabulary
# (events.py, message_type.py): the one part of mslib.mscolab any msui
# module may import. Reworked from a per-call-site whitelist (2 lines for
# mslib.msui.mscolab only) into this wildcard once a 3rd file
# (mscolab_connect_dialog.py) needed it too. The api-leaf contract below
# keeps this safe.
mslib.msui.* -> mslib.mscolab.api.*
[importlinter:contract:api-leaf]
name = mslib.mscolab.api must not pull in the server stack
type = forbidden
source_modules =
mslib.mscolab.api
forbidden_modules =
mslib.mscolab.app
mslib.mscolab.auth
mslib.mscolab.blueprints
mslib.mscolab.chat_manager
mslib.mscolab.cli_notify
mslib.mscolab.conf
mslib.mscolab.custom_migration_types
mslib.mscolab.file_manager
mslib.mscolab.forms
mslib.mscolab.migrations
mslib.mscolab.models
mslib.mscolab.mscolab
mslib.mscolab.seed
mslib.mscolab.server
mslib.mscolab.sockets_manager
mslib.mscolab.utils
mslib.msui
mslib.mswms
flask
flask_socketio
flask_sqlalchemy
sqlalchemy
[importlinter:contract:wms-isolation]
name = No other mslib package may import the mswms server
type = forbidden
source_modules =
mslib.msui
mslib.mscolab
mslib.utils
mslib.plugins
mslib.msidp
mslib.support
mslib.autoplot
forbidden_modules =
mslib.mswms