Error when citation is not given in the DatasetInfo
MEMBER
Yes looks good to me.
Note that we may refactor quite strongly the `info.py` to make it a lot simpler (it's very complicated for basically a dictionary of info I think)
2020-04-15T21:27:11Z
https://github.com/huggingface/datasets/issues/6#issuecomment-614288880
https://api.github.com/repos/huggingface/datasets/issues/6
MDEyOklzc3VlQ29tbWVudDYxNDI4ODg4MA==
https://api.github.com/repos/huggingface/datasets/issues/comments/614288880/reactions
2020-04-15T21:27:11Z
https://api.github.com/repos/huggingface/datasets/issues/comments/614288880
https://avatars.githubusercontent.com/u/7353373?v=4
https://api.github.com/users/thomwolf/events{/privacy}
https://api.github.com/users/thomwolf/followers
https://api.github.com/users/thomwolf/following{/other_user}
https://api.github.com/users/thomwolf/gists{/gist_id}
https://github.com/thomwolf
thomwolf
MDQ6VXNlcjczNTMzNzM=
https://api.github.com/users/thomwolf/orgs
https://api.github.com/users/thomwolf/received_events
https://api.github.com/users/thomwolf/repos
https://api.github.com/users/thomwolf/starred{/owner}{/repo}
https://api.github.com/users/thomwolf/subscriptions
User
https://api.github.com/users/thomwolf
public
CONTRIBUTOR
No, problem ^^ It might just be a temporary fix :)
2020-04-17T08:00:38Z
https://github.com/huggingface/datasets/issues/6#issuecomment-615104204
https://api.github.com/repos/huggingface/datasets/issues/6
MDEyOklzc3VlQ29tbWVudDYxNTEwNDIwNA==
https://api.github.com/repos/huggingface/datasets/issues/comments/615104204/reactions
2020-04-17T08:00:38Z
https://api.github.com/repos/huggingface/datasets/issues/comments/615104204
https://avatars.githubusercontent.com/u/959590?v=4
https://api.github.com/users/jplu/events{/privacy}
https://api.github.com/users/jplu/followers
https://api.github.com/users/jplu/following{/other_user}
https://api.github.com/users/jplu/gists{/gist_id}
https://github.com/jplu
jplu
MDQ6VXNlcjk1OTU5MA==
https://api.github.com/users/jplu/orgs
https://api.github.com/users/jplu/received_events
https://api.github.com/users/jplu/repos
https://api.github.com/users/jplu/starred{/owner}{/repo}
https://api.github.com/users/jplu/subscriptions
User
https://api.github.com/users/jplu
public
CONTRIBUTOR
Fixed.
2020-04-29T09:23:21Z
https://github.com/huggingface/datasets/issues/6#issuecomment-621088369
https://api.github.com/repos/huggingface/datasets/issues/6
MDEyOklzc3VlQ29tbWVudDYyMTA4ODM2OQ==
https://api.github.com/repos/huggingface/datasets/issues/comments/621088369/reactions
2020-04-29T09:23:21Z
https://api.github.com/repos/huggingface/datasets/issues/comments/621088369
https://avatars.githubusercontent.com/u/959590?v=4
https://api.github.com/users/jplu/events{/privacy}
https://api.github.com/users/jplu/followers
https://api.github.com/users/jplu/following{/other_user}
https://api.github.com/users/jplu/gists{/gist_id}
https://github.com/jplu
jplu
MDQ6VXNlcjk1OTU5MA==
https://api.github.com/users/jplu/orgs
https://api.github.com/users/jplu/received_events
https://api.github.com/users/jplu/repos
https://api.github.com/users/jplu/starred{/owner}{/repo}
https://api.github.com/users/jplu/subscriptions
User
https://api.github.com/users/jplu
public
The following error is raised when the `citation` parameter is missing when we instantiate a `DatasetInfo`:
```
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/jplu/dev/jplu/datasets/src/nlp/info.py", line 338, in __repr__
    citation_pprint = _indent('"""{}"""'.format(self.citation.strip()))
AttributeError: 'NoneType' object has no attribute 'strip'
```

I propose to do the following change in the `info.py` file. The method:
```python
def __repr__(self):
        splits_pprint = _indent("\n".join(["{"] + [
                "    '{}': {},".format(k, split.num_examples)
                for k, split in sorted(self.splits.items())
        ] + ["}"]))
        features_pprint = _indent(repr(self.features))
        citation_pprint = _indent('"""{}"""'.format(self.citation.strip()))
        return INFO_STR.format(
                name=self.name,
                version=self.version,
                description=self.description,
                total_num_examples=self.splits.total_num_examples,
                features=features_pprint,
                splits=splits_pprint,
                citation=citation_pprint,
                homepage=self.homepage,
                supervised_keys=self.supervised_keys,
                # Proto add a \n that we strip.
                license=str(self.license).strip())
```
Becomes:
```python
def __repr__(self):
        splits_pprint = _indent("\n".join(["{"] + [
                "    '{}': {},".format(k, split.num_examples)
                for k, split in sorted(self.splits.items())
        ] + ["}"]))
        features_pprint = _indent(repr(self.features))
        ## the strip is done only is the citation is given
        citation_pprint = self.citation

        if self.citation:
            citation_pprint = _indent('"""{}"""'.format(self.citation.strip()))
        return INFO_STR.format(
                name=self.name,
                version=self.version,
                description=self.description,
                total_num_examples=self.splits.total_num_examples,
                features=features_pprint,
                splits=splits_pprint,
                citation=citation_pprint,
                homepage=self.homepage,
                supervised_keys=self.supervised_keys,
                # Proto add a \n that we strip.
                license=str(self.license).strip())
```
And now it is ok. @thomwolf are you ok with this fix?