This week, phabricator changed the terminology it uses for managing dependencies between tasks. What has been called "Blocking"/"Blocked by" is now called "Parent"/"Subtask". Ignoring phab terminology for a minute, here are the two basic cases these terms are covering:
1.
Sequential dependencies. For example, if "Implement feature X" needed to be complete before "Document feature X", then the implementation task would Block the document task, and the document task would be blocked by the implement task.
2.
Composition relationships/task breakdown. For example, if "deploy feature X" consisted of "implement feature X" and "document feature X", then the deploy task might be a parent, while the implement and document tasks would be subtasks.
Until recently, phab has used the blocking/blocked by term to cover both cases. A parent task would be blocked by its subtasks. There was a command to create a subtask, which would create the appropriate blocking relationships.