protected function getOutstanding(): array
	{
		$migrations = $this->getMigrationsFilteredByConnection();

		if(!empty($migrations))
		{
			foreach($this->getMigrated() as $migrated)
			{
				foreach($migrations as $key => $migration)
				{
					if($migrated->package === $migration->package && $migrated->version === $migration->version)
					{
						unset($migrations[$key]);
					}
				}
			}

			usort($migrations, function($a, $b)
			{
				return strcmp($a->version, $b->version);
			});
		}

		return $migrations;
	}