Skip to content

Conversation

@xarx00
Copy link
Contributor

@xarx00 xarx00 commented Mar 4, 2019

I propose this fix for isuue #717. It fixes event list, which didn't worked when invoked from CLI (and probably neither when used from gitlab API).

print('%s: %s' % (obj._id_attr.replace('_', '-'), id))
if hasattr(obj, '_short_print_attr'):
value = getattr(obj, obj._short_print_attr)
value = getattr(obj, obj._short_print_attr) or 'None'
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

shouldn't None events just be skipped in the CLI?

target_title: None

target_title: None

target_title: None

target_title: None

target_title: None

target_title: None

target_title: None

target_title: None

target_title: None

Copy link
Contributor Author

@xarx00 xarx00 Mar 6, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, I don't know what these bad events are. It seems to me better to display them then to hide them. Because I consider github as a tool that helps me to show precisely what's going on in GitLab. If it hides the bad results, it may hide an important clue to a problem I'm solving.

But I don't know how other parts of github behave. It's up to you to decide what you want it to do.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The problem I see with this issue is that there is no way to have a usable output without displaying multiple attributes. For events that would be target_type and action_name for exemple

What we could do (to be discussed):

  1. make the display_dict check for a repr method for the object. This method would return a key and a value to be displayed. We could use __repr__ ou __unicode__ for this maybe
  2. if the method doesn't exist, fallback to the _short_print_attr attribute
  3. if this attribute is None raise an error so we can fix the code and add the method from 1 (not sure about this step, it's not nice for end users).

Other idea: _short_print_attr could become a tuple, and we display multiple lines when needed

@gpocentek
Copy link
Contributor

@xarx00 could you make the commit messages a bit more meaningful? Something like:

fix(cli): Don't fail when the short print attr value is None

Fixes #717 

Thanks for your help on fixing the CLI 👍

@xarx00
Copy link
Contributor Author

xarx00 commented Mar 7, 2019

@gpocentek OK, I have thought that link to the defect is enough.

Also, the PEP8 test on GitHub Travis CI complains when the commit message is longer than 50 chars.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants