Steps to reproduce:
- Create a new block instance and export its config .yml file. (or use attached .yml file. Be sure to remove the extra underscore in the filename: "block_" should be "block". Drupal.org renamed the file for security reasons.)
- Copy .yml file into /profiles/standard/config/optional/
- Install Drupal (standard profile) into an empty database. New block instance should appear on the site.
- Go to /admin/structure/block and delete the block instance. Block should no longer appear on the site.
- Enable Language module.
- Block re-appears.
If I deleted the block, the block should be gone, regardless of which modules I enable.
The block re-appears when I wanted it to be gone.
The workaround for my immediate issue is putting block instance config entities in myprofile/config/install instead of myprofile/config/optional.
As a side note, I verified that this only manifests in Profiles, not in Modules.
I am using PHP 7 via MAMP Pro 3.5 on Mac OS X 10.10.5. I checked out the most recent Drupal core git branch 8.2.x.
This issue also manifested on Acquia Cloud, running PHP 5.6, Drupal 8.2.5.