It's not "lying" and it's not "deceiving" because deceiving requires an intention to mislead...to decieve.
It's more like omiting info (sometimes vital) from what's being said for whatever reason. That reason does not have to be malicious. It can even be regarded as good. So the word I'm looking for does not have an immediate negative connotation.
For example:
"why were you late?"
"I was late because of the traffic".
Although it is technically true, the speaker omitted the fact that it was because there was a shoot out and the road was blocked.
It's not a lie, it's a ____________.