{"push_id":714312243,"size":15,"distinct_size":15,"ref":"refs/heads/master","head":"b981aad1f1bec8bc57ca1d3f2bf2d7e917884ef7","before":"6865446152d97dc6a4b3d8f091d44702a338aaec","commits":[{"sha":"b39f5d651c423b4d5e86d407988fa73bd95cd560","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Modernize transaction comment editor\n\nSummary: Fixes T8703. The URI handling here was a little unusual.\n\nTest Plan:\n  - Edited and deleted comments in several applications, including Macro.\n  - As an admin, deleted others' comments.\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: epriestley\n\nManiphest Tasks: T8703\n\nDifferential Revision: https://secure.phabricator.com/D13469","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/b39f5d651c423b4d5e86d407988fa73bd95cd560"},{"sha":"12b966f44e5166b922602b60e06f27f949817093","author":{"email":"3abdeb20bbfaf7f3efaf2a217619f0ce681d08bb@phacility.com","name":"Bob Trahan"},"message":"Spaces + Diffusion - make creating a new repository work again\n\nSummary: Fixes T8702. Needed to teach these controls how to serialize / unserialize themselves in that they are storing two values (policy phid + space phid) nowadays\n\nTest Plan: made a new repo successfully with policy as described in T8702. Also edited policy successfully.\n\nReviewers: epriestley\n\nReviewed By: epriestley\n\nSubscribers: epriestley, Korvin\n\nManiphest Tasks: T8702\n\nDifferential Revision: https://secure.phabricator.com/D13472","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/12b966f44e5166b922602b60e06f27f949817093"},{"sha":"6b7183a76232cba02490585cdba1c3acbff56ca3","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Modularize Aphront \"sites\"\n\nSummary:\nFixes T5702. The path here is long and windy:\n\n  - I want to move `blog.phacility.com` to the new `secure` host.\n  - That host has `security.require-https` set, which I want to keep set (before, this was handled in a sort of hacky way at the nginx/preamble level, but I've cleaned up everything else now).\n  - Currently, that setting forces blogs to HTTPS too, which won't work.\n  - To let blogs be individually configurable, we need to either modularize site config or make things hackier.\n  - Modularize rather than increasing hackiness.\n  - Also add a little \"modules\" panel in Config. See T6859. This feels like a reasonable middle ground between putting this stuff in Applications and burying it in `bin/somewhere`.\n\nTest Plan:\n  - Visited normal site.\n  - Visited phame on-domain site.\n  - Visited phame off-domain site.\n  - Viewed static resources.\n\n{F561897}\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: epriestley\n\nManiphest Tasks: T5702\n\nDifferential Revision: https://secure.phabricator.com/D13474","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/6b7183a76232cba02490585cdba1c3acbff56ca3"},{"sha":"12c6e63d5badbcd14f23bc118c1728a35aa52796","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Don't put the entire corpus into project edit feed stories\n\nSummary: Fixes T8723. We override timeline titles for these fields to shorten them, but the parent class shows full values for feed edits, which can lead to screen-sized notifications.\n\nTest Plan: Edited a project, saw a reasonably-sized notification for it.\n\nReviewers: btrahan, chad\n\nReviewed By: chad\n\nSubscribers: epriestley\n\nManiphest Tasks: T8723\n\nDifferential Revision: https://secure.phabricator.com/D13485","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/12c6e63d5badbcd14f23bc118c1728a35aa52796"},{"sha":"9eda21451a4455ba0c11bf675b334c028e29b0c9","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Let PhabricatorPlatformSite catch unconfigured requests\n\nSummary: Fix T8717. If the install didn't configure base-uri, assume they want Phabricator; We'll later show the setup warning about it.\n\nTest Plan: Set base-uri to something else, see short error. Delete it, see Phabricator.\n\nReviewers: laomoi, #blessed_reviewers, epriestley\n\nReviewed By: laomoi, #blessed_reviewers, epriestley\n\nSubscribers: laomoi, epriestley, Korvin\n\nManiphest Tasks: T8717\n\nDifferential Revision: https://secure.phabricator.com/D13482","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/9eda21451a4455ba0c11bf675b334c028e29b0c9"},{"sha":"594690ade94ef652258d5ae39fbfeae9580c3943","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Don't require missing fields be present in order to subscribe to an object\n\nSummary: Fixes T8719. It's fine to subscribe to objects that don't have all their required fields filled in.\n\nTest Plan: Subscribed/unsubscribed from an object.\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: epriestley\n\nManiphest Tasks: T8719\n\nDifferential Revision: https://secure.phabricator.com/D13484","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/594690ade94ef652258d5ae39fbfeae9580c3943"},{"sha":"0ef1d4bc17bb9e0be7c571f0097a33653b61e5cc","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Don't try to load profile images for projects with no profile image\n\nSummary: Ref T8631. Projects may not have a profile image PHID; don't try to load it if they don't.\n\nTest Plan: Saw `WHERE phid IN ('')` query stop happening on a local feed story page.\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: epriestley\n\nManiphest Tasks: T8631\n\nDifferential Revision: https://secure.phabricator.com/D13476","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/0ef1d4bc17bb9e0be7c571f0097a33653b61e5cc"},{"sha":"4adaf53bf0cba8e798cffcf86432ca96ad44cef3","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Dramatically increase cache hit rate for feed\n\nSummary:\nRef T8631. The query plan for feed stories is really bad right now, because we miss caches we should be hitting:\n\n  - The workspace cache is stored at each query, so adjacent queries can't benefit from the cache (only subqueries). Feed has primarily sibling queries.\n    - There is no technical reason to do this. Store the workspace cache on the root query, so sibling queries can hit it.\n  - In `ObjectQuery`, we check the workspace once, then load all the PHIDs. When the PHIDs are a mixture of transactions and objects, we always miss the workspace and load the objects twice.\n    - Instead, check the workspace after loading each type of object.\n  - `HandleQuery` does not set itself as the parent query for `ObjectQuery`, so handles never hit the workspace cache.\n    - Pass it, so they can hit the workspace cache.\n  - Feed's weird `PhabricatorFeedStory::loadAllFromRows()` method does not specify a parent query on its object/handle queries.\n    - Just declare the object query to be the \"root\" query until this eventually gets cleaned up.\n\nTest Plan: Saw queries for each object drop from 4-6x to 1x in `/feed/`.\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: epriestley\n\nManiphest Tasks: T8631\n\nDifferential Revision: https://secure.phabricator.com/D13479","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/4adaf53bf0cba8e798cffcf86432ca96ad44cef3"},{"sha":"a8f5e10b790f4abe43668840a9c41701f66aa593","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Cache remarkup engines in Feed\n\nSummary: Ref T8631. This method uses cached settings.\n\nTest Plan: Saw 40% performance improvement locally (reduced 200ms of 500ms).\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: epriestley\n\nManiphest Tasks: T8631\n\nDifferential Revision: https://secure.phabricator.com/D13480","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/a8f5e10b790f4abe43668840a9c41701f66aa593"},{"sha":"1bb306348c011bf9f52ff2b07f61a1350b4fbd9f","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Fix infinite loop in renderAccessDenied()\n\nSummary:\nFixes T8727. When I added `setParentQuery()`, I increased the cache hit rate but also accidentally propagated policy exception settings.\n\nInstead, make the policy exception beahvior explicit: no exceptions should be raised when querying handles.\n\nTest Plan: Will test production.\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: epriestley\n\nManiphest Tasks: T8727\n\nDifferential Revision: https://secure.phabricator.com/D13489","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/1bb306348c011bf9f52ff2b07f61a1350b4fbd9f"},{"sha":"28e0af5a62c81eaf14a26ca9f4317f567bedd10c","author":{"email":"2544c3322fa46d7c21c4e7b362b2d75d60b17add@gmail.com","name":"lkassianik"},"message":"Commenting on instances of a recurring event should create a new event with its own comments\n\nSummary: Closes T8696, Commenting on instances of a recurring event should create a new event with its own comments\n\nTest Plan: Open recurring event instance (not exception), should see no timeline, leave a comment, an exception to event should be created.\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: epriestley, Korvin\n\nManiphest Tasks: T8696\n\nDifferential Revision: https://secure.phabricator.com/D13481","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/28e0af5a62c81eaf14a26ca9f4317f567bedd10c"},{"sha":"d5e4d9608626cee8cdef8cc762d2bbaa64f1557e","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Don't put objects into the query workspace by default\n\nSummary:\nRef T8731. I think the issue is that some `ProjectQuery` (without needImages()) populates the query workspace, then the \"real\" one hits the workspace.\n\nInstead, only populate the workspace from ObjectQuery, so we know that objects in the workspace always have whatever ObjectQuery attaches to them.\n\nTest Plan: Verified this didn't destroy the cache hitrate, but I can't repro the original issue locally per se.\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: chad, epriestley\n\nManiphest Tasks: T8731\n\nDifferential Revision: https://secure.phabricator.com/D13516","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/d5e4d9608626cee8cdef8cc762d2bbaa64f1557e"},{"sha":"7f67bd8aff022c6e3dc52555409510281eeef688","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Fix some pht-strings\n\nSummary: This correct some bad strings for translations\n\nTest Plan:\nmerge similar stings\nremoves some word wraps\n\nReviewers: #blessed_reviewers, epriestley\n\nReviewed By: #blessed_reviewers, epriestley\n\nSubscribers: Korvin, epriestley\n\nManiphest Tasks: T8700\n\nDifferential Revision: https://secure.phabricator.com/D13464","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/7f67bd8aff022c6e3dc52555409510281eeef688"},{"sha":"6a996d76fd1a1a144177b1fb9e10c816f0e8e98e","author":{"email":"46f1a0bd5592a2f9244ca321b129902a06b53e03@epriestley.com","name":"epriestley"},"message":"Remove \"feed.public\" and sort out feed policies\n\nSummary:\nRef T6817. Fixes T8731. On the old `secure` host, `feed.public` was set to `true`. I didn't bring the option over, which caused the secondary issue in T8731.\n\nSpecifically, when `feed.public` is off, a logged-out user looking at feed can't see //any// stories, so they query all of feed until they hit the time limit.\n\nTo fix this immediately, just use the most open policy, which is basically equivalent but always correct.\n\nTo fix this more thoroughly:\n\n  - Remove `feed.public`, which violates policies and has been slated for removal for a while (see T6817).\n  - Clean up policy handling.\n\nTest Plan:\n  - As a logged-out user, viewed feed on a public install with `feed.public` off; no longer saw all stories get queried + no feed shown.\n  - Grepped for `feed.public`.\n\nReviewers: btrahan\n\nReviewed By: btrahan\n\nSubscribers: chad, epriestley\n\nManiphest Tasks: T6817, T8731\n\nDifferential Revision: https://secure.phabricator.com/D13518","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/6a996d76fd1a1a144177b1fb9e10c816f0e8e98e"},{"sha":"b981aad1f1bec8bc57ca1d3f2bf2d7e917884ef7","author":{"email":"be5acd4cab620d494846b6383e5e26dbab0e82f4@khanacademy.org","name":"Craig Silverstein"},"message":"Merge branch 'master' of github.com:facebook/phabricator","distinct":true,"url":"https://api.github.com/repos/Khan/phabricator/commits/b981aad1f1bec8bc57ca1d3f2bf2d7e917884ef7"}]}