Join attr does get added with left outer join (3.11 ... 3.12)
It seems you included two versions in the issue title -- are you indicating this is a regression? At any rate -- when you are using a left outer join, all rows from the left-hand table (Tweet) are included, along with any matching from the right-hand (User). This means you can have Tweet without a User.

When you manually patch a related object onto a user-defined attribute, currently peewee does not set the join attribute when there is no data/related-object to set.

You can work around this for now by just using the regular `user` attr, or you can use `hasattr(tweet, 'author')` / `getattr(tweet, 'author', None)` instead. > It seems you included two versions in the issue title -- are you indicating this is a regression?

I have seen this behaviour with both versions. 

yes, it's, in a way, a regression. With version 2.x (it used to be defined with an **alias** of the join condition) it was working. The value of the property was None, eg, the test was `twee.author is None` This is probably worth documenting as I was expecting a null result. (Thinking about it, I suspect the null result would be rather difficult to implement -- so docs would be great)
http://docs.peewee-orm.com/en/latest/peewee/relationships.html#selecting-from-multiple-sources shows how to user **attr** with joins. It works with inner join fine. The query fails with the outer join. 

```python
>>> class User(Model):
...     name = CharField()
...     class Meta:
...         database = db

>>> class Tweet(Model):
...     user = ForeignKeyField(User, null=True)
...     message = TextField(null=True)
...     class Meta:
...         database = db


>>> for r in Tweet.select(Tweet, User).join(User, JOIN.LEFT_OUTER, attr="author"): print(r.author)
2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'Tweet' object has no attribute 'author'

'Tweet' object has no attribute 'author'

>>> for r in Tweet.select(Tweet, User).join(User, attr="author"): print(r.author)
2

```