This commit is contained in:
Mateusz Gruszczyński committed 2026-11-04 08:55:53 +01:00
1 parent cdca612a59
commit eb25f8de4a
56 files changed
+7848 -4345

No files matched your search

+17 -13
View File
@@ -138,9 +138,13 @@ for marker in ['/rspamd-dkim/generate', 'selector_map', 'path_map', 'RspamdDkimC
fail(f'missing Rspamd DKIM integration marker: {marker}')
compatibility_regression_markers = {
'src/routes/vacation.rs': ['sync_vacation_alias', 'vacation_address', 'validate_dates'],
'src/routes/aliases.rs': ['technical', 'internal_vacation', 'can_edit_description'],
'src/web/js/10-pages.js': ['vacationMailboxPicker', 'Aliasy techniczne', 'local_part'],
'src/routes/vacation.rs': ['sync_vacation_alias', 'vacation_address', 'normalize_dates'],
'src/routes/aliases.rs': ['technical', 'internal_vacation', 'require_mailbox_alias_control', 'recipient_delimiter_base'],
'src/routes/mailboxes.rs': ['check_quota', 'allowed_quota', 'set_forwarding', 'set_own_name'],
'src/limits.rs': ['ensure_mailbox_allowed', 'ensure_alias_allowed'],
'src/schema.rs': ['PFA_SCHEMA_VERSION', 'integrity_check'],
'src/routes/fetchmail.rs': ['encode_src_password'],
'src/web/js/10-pages.js': ['vacationEditor', 'technical', 'local_part'],
'packaging/postfixadmin-rs-rspamd-setup': ['postfixadmin-rspamd', 'systemctl restart postfixadmin-rs rspamd'],
}
for relative, markers in compatibility_regression_markers.items():
@@ -151,14 +155,14 @@ for relative, markers in compatibility_regression_markers.items():
domain_ui_regression_markers = {
'src/web/js/10-pages.js': [
'aliasRows.filter(item => !item.is_mailbox)',
'regularAliases = indexedAliases.filter(({ item }) => !item.technical)',
'technicalAliases = indexedAliases.filter(({ item }) => item.technical)',
'Aliasy użytkowników',
'Aliasy techniczne',
"['Adres', 'Cel', 'Opis', 'Status', 'Aktywny', '']",
'aliasDestinations',
'aliasTargetsCell',
'async function virtualPage(',
'row.catch_all',
'function aliasForm(',
'function mailboxForm(',
'function forwardingForm(',
'pager(aliases.total',
'pager(mailboxes.total',
'deleteInactive',
],
'src/web/css/20-app.css': ['.workspace-grid{display:grid;grid-template-columns:1fr;'],
'src/routes/aliases.rs': ['a.goto AS goto_value', 'row_string(row, "goto_value")'],
@@ -248,7 +252,7 @@ core_js = (ROOT / 'src/web/js/00-core.js').read_text(encoding='utf-8')
for marker in ['/sieve/status', '/sieve/scripts/{name}', '/sieve/check']:
if marker not in routes_mod:
fail(f'missing ManageSieve route: {marker}')
for marker in ['openSieveRuleBuilder', 'buildSieveRule', 'mergeSieveRequirements']:
for marker in ['newRule', 'buildSieveRule', 'mergeSieveRequirements']:
if marker not in pages_js:
fail(f'missing ManageSieve visual rule builder marker: {marker}')
for marker in ['SieveConfig', 'allow_insecure_auth', 'timeout_secs', 'read_only']:
@@ -275,7 +279,7 @@ else:
result = subprocess.run([sys.executable, '-m', 'py_compile', str(sync_script)], capture_output=True, text=True)
if result.returncode:
fail(f'{sync_script.relative_to(ROOT)}: py_compile failed: {result.stderr.strip()}')
for marker in ["['mailboxes', 'mail', 'Skrzynki', S.me.kind === 'admin']", "S.me.kind === 'user'", 'readonlyDomain(selected)', "api('/mailboxes')", "api('/aliases')", 'vacationUserForm', 'passwordForm']:
for marker in ['const isUser = ', 'async function userOverview(', 'async function forwardingPage(', "['forwarding', 'Forwarding', 'Mailbox'", 'passwordForm', 'edit_own_name']:
if marker not in core_js + '\n' + pages_js:
fail(f'missing mailbox-user UX marker: {marker}')
if 'Sesja: HttpOnly' in branding_text or 'Session: HttpOnly' in branding_text or 'SameSite=Strict, Secure w produkcji' in branding_text: