Block does not show up in block list
Always set region (Until bug is fixed)

I believe this may be a bug in the code, it seems that is Status/region are toggled it causes problems, to guarantee that it shows for now make sure you set region

    function recentpost_block_info(){
      $blocks['recentpost'] = array(
        'info' =&gt; t('Recentpost'),
        'region' =&gt; BLOCK_REGION_NONE,
        'status' =&gt; true,       
        'weight' =&gt; 0,
      );
      return $blocks;
    }


The bug seems to be in the function "_block_rehash()" where it checks for empty($block['status'])