Repository: rr-/docstring_parser

Issue:
Parameter description parsing captures less indented text of another section
Expected behavior: Parameter description ends when there parser encounters less indented line.

Actual behavior: The parameter description capturing does not seem to stop when less indented line is encountered and captures it as well.

```python
def foo():
    '''Converts Keras HDF5 model to Tensorflow SavedModel format.

    Args:
        model_path: Keras model in HDF5 format.
        converted_model_path: Keras model in Tensorflow SavedModel format.

    Annotations:
        author: Alexey Volkov <alexey.volkov@ark-kun.com>
    '''
```

The description for `converted_model_path` becomes:
```
Keras model in Tensorflow SavedModel format.
Annotations:
```

P.S. It would be really great if it was possible to parse additional sections that are not currently recognized by the docstring_parser.

Discussion:

Patch:
diff --git a/docstring_parser/google.py b/docstring_parser/google.py
index 5a817c1..1be8972 100644
--- a/docstring_parser/google.py
+++ b/docstring_parser/google.py
@@ -222,12 +222,20 @@ class GoogleParser:
             splits.append((matches[j].end(), matches[j + 1].start()))
         splits.append((matches[-1].end(), len(meta_chunk)))
 
-        chunks = OrderedDict()
+        chunks = OrderedDict()  # type: T.Mapping[str,str]
         for j, (start, end) in enumerate(splits):
             title = matches[j].group(1)
             if title not in self.sections:
                 continue
-            chunks[title] = meta_chunk[start:end].strip("\n")
+
+            # Clear Any Unknown Meta
+            # Ref: https://github.com/rr-/docstring_parser/issues/29
+            meta_details = meta_chunk[start:end]
+            unknown_meta = re.search(r"\n\S", meta_details)
+            if unknown_meta is not None:
+                meta_details = meta_details[: unknown_meta.start()]
+
+            chunks[title] = meta_details.strip("\n")
         if not chunks:
             return ret
 


Test patch:
diff --git a/docstring_parser/tests/test_google.py b/docstring_parser/tests/test_google.py
index d49544f..a725b7f 100644
--- a/docstring_parser/tests/test_google.py
+++ b/docstring_parser/tests/test_google.py
@@ -591,3 +591,28 @@ def test_broken_meta() -> None:
 
     with pytest.raises(ParseError):
         parse("Args:\n    herp derp")
+
+
+def test_unknown_meta() -> None:
+    docstring = parse(
+        """Short desc
+        
+        Unknown 0:
+            title0: content0
+
+        Args:
+            arg0: desc0
+            arg1: desc1
+
+        Unknown1:
+            title1: content1
+
+        Unknown2:
+            title2: content2
+        """
+    )
+
+    assert docstring.params[0].arg_name == "arg0"
+    assert docstring.params[0].description == "desc0"
+    assert docstring.params[1].arg_name == "arg1"
+    assert docstring.params[1].description == "desc1"