forgejo/modules/indexer/code
Giteabot b8e6cffd31
Preserve BOM in web editor (#28935) (#28959)
Backport #28935 by @silverwind

The `ToUTF8*` functions were stripping BOM, while BOM is actually valid
in UTF8, so the stripping must be optional depending on use case. This
does:

- Add a options struct to all `ToUTF8*` functions, that by default will
strip BOM to preserve existing behaviour
- Remove `ToUTF8` function, it was dead code
- Rename `ToUTF8WithErr` to `ToUTF8`
- Preserve BOM in Monaco Editor
- Remove a unnecessary newline in the textarea value. Browsers did
ignore it, it seems but it's better not to rely on this behaviour.

Fixes: https://github.com/go-gitea/gitea/issues/28743
Related: https://github.com/go-gitea/gitea/issues/6716 which seems to
have once introduced a mechanism that strips and re-adds the BOM, but
from what I can tell, this mechanism was removed at some point after
that PR.

Co-authored-by: silverwind <me@silverwind.io>
2024-01-27 23:23:31 +01:00
..
bleve Preserve BOM in web editor (#28935) (#28959) 2024-01-27 23:23:31 +01:00
elasticsearch Preserve BOM in web editor (#28935) (#28959) 2024-01-27 23:23:31 +01:00
internal Refactor indexer (#25174) 2023-06-23 12:37:56 +00:00
git.go Update status and code index after changing the default branch (#27018) 2023-09-13 04:43:31 +00:00
indexer.go Clarify the git command Stdin hanging problem (#26967) 2023-09-08 13:20:38 +00:00
indexer_test.go move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
search.go Add option to disable ambiguous unicode characters detection (#28454) (#28499) 2023-12-18 12:20:37 +08:00