Синхронизация расхождения go-onlyoffice: main на Gitea и GitHub разошлись. Этот PR переносит коммиты, существовавшие только на GitHub (mail-send SendMail, files ops/WebDAV, contact-indexes CRM, history whitelist), в Gitea main (источник истины).
После мержа: Gitea main = GitHub main по содержимому, затем зеркалим Gitea main -> GitHub, чтобы sha совпал.
Никаких коммитов не теряется; история не переписывается.
Синхронизация расхождения go-onlyoffice: main на Gitea и GitHub разошлись. Этот PR переносит коммиты, существовавшие только на GitHub (mail-send SendMail, files ops/WebDAV, contact-indexes CRM, history whitelist), в Gitea main (источник истины).
После мержа: Gitea main = GitHub main по содержимому, затем зеркалим Gitea main -> GitHub, чтобы sha совпал.
Никаких коммитов не теряется; история не переписывается.
resolveAPIURL now rewrites absolute viewUrl hosts to the configured portal
base so downloads stay on the internal network and keep the Authorization
header (a cross-host HTTP->HTTPS redirect would otherwise strip it, failing
large-file reads).
- Client.SendMail: PUT /api/2.0/mail/messages/send.json, omits empty cc/bcc
- oo mails send subcommand with --id/--to/--subject/--body/--cc/--bcc
- guard: sending by --id without --body errors (send.json does not copy
subject/body from the draft; prevents empty emails)
- unit test: empty cc/bcc omitted, correct path
- BuildContactEmailIndex: one-pass email→contact id map over all persons
(O(N) instead of per-address FindPersonByEmail O(N×M))
- BuildPersonOpportunityIndex: person→lowest-id opportunity for history notes
(OO has no person-level history; verified live)
- HistoryEntity{Opportunity,Case} whitelist constants
- IsCompany/ContactID/NumericIDLess/SortIDs helpers with unit tests
Merges GitHub main content (mail-send SendMail, files ops/WebDAV,
contact-indexes CRM, history whitelist) onto Gitea main so Gitea (source
of truth) contains every commit from both sides.
eSlider
merged commit 3fd3f797dc into main2026-08-23 19:55:48 +01:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Синхронизация расхождения go-onlyoffice: main на Gitea и GitHub разошлись. Этот PR переносит коммиты, существовавшие только на GitHub (mail-send SendMail, files ops/WebDAV, contact-indexes CRM, history whitelist), в Gitea main (источник истины).
После мержа: Gitea main = GitHub main по содержимому, затем зеркалим Gitea main -> GitHub, чтобы sha совпал.
Никаких коммитов не теряется; история не переписывается.
- BuildContactEmailIndex: one-pass email→contact id map over all persons (O(N) instead of per-address FindPersonByEmail O(N×M)) - BuildPersonOpportunityIndex: person→lowest-id opportunity for history notes (OO has no person-level history; verified live) - HistoryEntity{Opportunity,Case} whitelist constants - IsCompany/ContactID/NumericIDLess/SortIDs helpers with unit tests