Why dawn theme doesn't use theme blocks?

After 3 days I finally finished the whole documentation and I was ready to jump into making a theme and decided to use dawn instead of the skeleton theme only to find out some odd things happening.

First thing that was off, was that there was no blocks folder. I learned that you should use theme blocks while developing components that a merchant can select and use but dawn only used section blocks. That was really odd because this way it was repeating code that could have been a theme block.

Some examples are the buttons component that you can find in some files like image-banner.liquid and rich-text.liquid. Both of these have a duplicate entry for these buttons on their schema and also on their implementation.

Repeating Code
{%- if block.settings.button_label != blank -%}
  <a
    {% if block.settings.button_link == blank %}
      role="link" aria-disabled="true"
    {% else %}
      href="{{ block.settings.button_link }}"
    {% endif %}
    class="button{% if block.settings.button_style_secondary %} button--secondary{% else %} button--primary{% endif %}"
  >
    {{- block.settings.button_label | escape -}}
  </a>
{%- endif -%}
{%- if block.settings.button_label_2 != blank -%}
  <a
    {% if block.settings.button_link_2 == blank %}
      role="link" aria-disabled="true"
    {% else %}
      href="{{ block.settings.button_link_2 }}"
    {% endif %}
    class="button{% if block.settings.button_style_secondary_2 %} button--secondary{% else %} button--primary{% endif %}"
  >
    {{- block.settings.button_label_2 | escape -}}
  </a>
{%- endif -%}

There are plenty more examples like this one. Now my question is why was it done like that ? Is there a reason ? Will it ever be updated ? Should I continue from now and on and use theme blocks on the new components I will make (or even migrate the existing ones over), or should I follow this pattern despite what I was taught by the docs ?

Lastly, I was wondering, if I make a pull request to the dawn repo, either by migrating these components over to section blocks or fixing small inconsistencies like buttons section named button in another section even though it’s the same component consisting of multiple buttons, will they accept it?

Thank you in advance for your time, and it is nice to have you !

The obvious reason is that Dawn was created well before the theme blocks were invented.

Of course you can create a pull request.

However, take into account that Dawn is not just a theme, it’s a base for a family of themes which are updated in sync and for your Dawn PR the team would need to create PR for each of them, and this, of course, would be a significant undertaking.

And: Price Filter only works with Store Currency | Not working for multicurrency · Issue #1712 · Shopify/dawn · GitHub :

… we’re not actively investing in adding new features to Dawn.