forgejo/modules
mrsdizzie 6293736d02 Use stricter boundaries for auto-link detection (#6522)
* Use stricter boundaries for auto-link detection

Currently autolinks use \W for boundary detection which creates many
situations of inserting links into places they don't belong (paths,
URLs, UUIDs, etc...)

This fixes that by replacing \W and only allowing these matches to touch
an open paren or bracket (matching what seems to be Github behavior) in
addition to whitespace and start of line. Similar for ending boundary as
well.

Fixes #6149
(and probably others)

* Update test

Replace incorrect test with a value that is a valid username, based on:

"Username should contain only alphanumeric, dash ('-'), underscore ('_')
and dot ('.') characters."

* Also allow for period at the end

Matching Github behavior

* Fix email regex to work properly with specificed boundaries

Create a specific capture group for email address and then use
FindStringSubmatchIndex to allow for non-matching patterns as
boundaries.

* Add Tests

Add tests for new behavior -- including tests for email addresses which
were absent before.
2019-04-07 12:18:16 +01:00
..
auth Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
avatar Use assert in legacy unit tests (#867) 2017-02-08 14:29:07 +08:00
base Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
cache Fix memcache support when value is returned as string always (#2924) 2017-11-16 15:06:34 +08:00
context Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
cron Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
generate Integrate OAuth2 Provider (#5378) 2019-03-08 11:42:50 -05:00
git move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
gzip Pooled and buffered gzip implementation (#5722) 2019-01-23 10:56:51 +02:00
highlight No highlighting for .txt files (#1922) 2017-06-09 19:39:16 -05:00
httplib Add sensitive headers (#3429) 2018-01-31 00:09:16 +02:00
indexer Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
lfs Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
log Quieter Integration Tests (#6513) 2019-04-07 03:25:14 +03:00
mailer Add X-Auto-Response-Suppress header to outgoing messages (#6492) 2019-04-02 11:45:54 -04:00
markup Use stricter boundaries for auto-link detection (#6522) 2019-04-07 12:18:16 +01:00
metrics Prometheus endpoint (#5256) 2018-11-04 22:20:00 -05:00
minwinsvc Fix Git hooks not being executed on Windows when running as a service (#1149) 2017-03-09 09:27:43 +08:00
notification Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
options Fix typos in models/ and modules/ (#1248) 2017-03-15 08:52:01 +08:00
pprof Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
private Clean up various use of escape/unescape functions for URL generation (#6334) 2019-03-18 10:00:23 -04:00
process Fix run command race (#1470) 2017-11-13 22:51:45 +08:00
public When redirecting clean the path to avoid redirecting to //www.othersite.com (#5669) 2019-01-09 13:39:01 -05:00
recaptcha Add Recaptcha functionality to Gitea (#4044) 2018-07-05 00:13:05 -04:00
search Global code search support (#3664) 2018-03-16 22:04:33 +08:00
secret Integrate OAuth2 Provider (#5378) 2019-03-08 11:42:50 -05:00
setting Quieter Integration Tests (#6513) 2019-04-07 03:25:14 +03:00
ssh Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
structs Allow to set organization visibility (public, internal, private) (#1763) 2019-02-18 18:00:27 +02:00
sync Fix status table race condition (#1835) 2017-05-31 16:57:17 +08:00
templates Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
test move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
uploader move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 2019-03-27 17:33:00 +08:00
user Remove check for negative length (#5120) 2018-10-20 17:25:14 -04:00
util Better logging (#6038) (#6095) 2019-04-02 08:48:31 +01:00
validation Clean up ref name rules (#6437) 2019-03-26 21:59:48 +02:00