Use raw string + binary matching for URL regex.
Long URLs are allowed only if they are alone on their lines.

Signed-off-by: Mateusz Starzyk <mateusz.starzyk@mobica.com>
diff --git a/scripts/assemble_changelog.py b/scripts/assemble_changelog.py
index 09d9dce..e8a1c21 100755
--- a/scripts/assemble_changelog.py
+++ b/scripts/assemble_changelog.py
@@ -201,6 +201,8 @@
     # a version that is not yet released. Something like "3.1a" is accepted.
     _version_number_re = re.compile(br'[0-9]+\.[0-9A-Za-z.]+')
     _incomplete_version_number_re = re.compile(br'.*\.[A-Za-z]')
+    _only_url_re = re.compile(br'^\s*\w+://\S+\s*$')
+    _has_url_re = re.compile(br'.*://.*')
 
     def add_categories_from_text(self, filename, line_offset,
                                  text, allow_unknown_category):
@@ -219,14 +221,18 @@
                                        category.name.decode('utf8'))
 
             body_split = category.body.splitlines()
-            re_has_url = re.compile('.*http[s]?://.*')
             for line_number, line in enumerate(body_split, 1):
-                if not re_has_url.match(line.decode('utf-8')) and \
+                if not self.__class__._only_url_re.match(line) and \
                    len(line) > MAX_LINE_LENGTH:
+                    long_url_msg = '. URL exceeding length limit must be ' \
+                        'alone in it\'s line.' if \
+                        self.__class__._has_url_re.match(line) else ""
                     raise InputFormatError(filename,
                                            category.body_line + line_number,
-                                           'Line is longer than allowed: Length {} (Max {})',
-                                           len(line), MAX_LINE_LENGTH)
+                                           'Line is longer than allowed: '
+                                           'Length {} (Max {}){}',
+                                           len(line), MAX_LINE_LENGTH,
+                                           long_url_msg)
 
             self.categories[category.name] += category.body