{"push_id":814550912,"size":9,"distinct_size":1,"ref":"refs/heads/master","head":"e52d64f8a979954cab748d6500970f3b78624eea","before":"85bac3dbb6e4fdaa8c0e9bc78b98018b9b56208d","commits":[{"sha":"3b11bc38cafd3d83492736fc0e979eb2190cd369","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Add email privacy toggle for Authors\n\nTo enable this, I added a JSON column named `preferences` to the\nUsers table, and I used `store_accessor` to make it usable just like a\nnormal AR attribute.\n\n`private_email` is stored inside `preferences` (and serialized into JSON)\nand `store_accessor` makes it directly available on any user instance:\n\n  user.private_email = true\n  user.save\n  user.preferences\n  => {\"private_email\"=>true}\n  user.private_email\n  => true\n  user.update(private_email: true)\n\nI added a quick toggle link that is only visible to the user when they\nvisit their profile. Finally, all private emails are hidden from the authors\nindex page.\n\nFixes #177","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/3b11bc38cafd3d83492736fc0e979eb2190cd369"},{"sha":"72a30a87c25751847f8d0a612d30f9dc9810d217","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Add a rake users:make_all_emails_private to do just that","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/72a30a87c25751847f8d0a612d30f9dc9810d217"},{"sha":"a8eac36a5014475798ea60dc741dd05247b18e14","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Tell Travis to use PostgreSQL 9.3 (for JSON type)","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/a8eac36a5014475798ea60dc741dd05247b18e14"},{"sha":"cb2702b667d3d9cdb0452e7c079e5af62272317c","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Print out Postgres version","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/cb2702b667d3d9cdb0452e7c079e5af62272317c"},{"sha":"f9850e86a97eff77298f54ce68ca0a07c173e81a","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Try to output actual PG version from SQL","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/f9850e86a97eff77298f54ce68ca0a07c173e81a"},{"sha":"253fa4d2c91979c94cfe308fdfc0b64eeb018f8f","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Fix duplicate addon declaration \n\nAs good folks from Travis explained, two addon declarations means the second overrides the first:\r\nhttp://stackoverflow.com/a/32899097/385622","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/253fa4d2c91979c94cfe308fdfc0b64eeb018f8f"},{"sha":"3e959fa0b855d3036d1390cd50ede5c6aef063d6","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Merge branch 'master' into private-emails\n\n# Conflicts:\n#\t.travis.yml","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/3e959fa0b855d3036d1390cd50ede5c6aef063d6"},{"sha":"fcd7b3ed77747f71d2d6253b602ce5161d668314","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Update .travis.yml","distinct":false,"url":"https://api.github.com/repos/orientation/orientation/commits/fcd7b3ed77747f71d2d6253b602ce5161d668314"},{"sha":"e52d64f8a979954cab748d6500970f3b78624eea","author":{"email":"c22b5f9178342609428d6f51b2c5af4c0bde6a42@olivierlacan.com","name":"Olivier Lacan"},"message":"Merge pull request #184 from orientation/private-emails\n\nAdd email privacy toggle for Authors","distinct":true,"url":"https://api.github.com/repos/orientation/orientation/commits/e52d64f8a979954cab748d6500970f3b78624eea"}]}