A summary of data about the Ruby ecosystem.

Recent Releases of https://github.com/haml/haml

https://github.com/haml/haml - v7.2.0

What's Changed

New Contributors

Full Changelog: https://github.com/haml/haml/compare/v7.1.0...v7.2.0

- Ruby
Published by github-actions[bot] 4 months ago

https://github.com/haml/haml - v7.1.0

What's Changed

New Contributors

Full Changelog: https://github.com/haml/haml/compare/v7.0.2...v7.1.0

- Ruby
Published by github-actions[bot] 5 months ago

https://github.com/haml/haml - v7.0.2

What's Changed

New Contributors

Full Changelog: https://github.com/haml/haml/compare/v7.0.1...v7.0.2

- Ruby
Published by github-actions[bot] 6 months ago

https://github.com/haml/haml - v7.0.1

What's Changed

New Contributors

Full Changelog: https://github.com/haml/haml/compare/v7.0.0...v7.0.1

- Ruby
Published by github-actions[bot] 6 months ago

https://github.com/haml/haml - v7.0.0

What's Changed

Full Changelog: https://github.com/haml/haml/compare/v6.4.0...v7.0.0

- Ruby
Published by github-actions[bot] 6 months ago

https://github.com/haml/haml - v6.4.0

What's Changed

New Contributors

Full Changelog: https://github.com/haml/haml/compare/v6.3.1...v6.4.0

- Ruby
Published by github-actions[bot] 6 months ago

https://github.com/haml/haml - v6.3.1

What's Changed

New Contributors

Full Changelog: https://github.com/haml/haml/compare/v6.3.0...v6.3.1

- Ruby
Published by github-actions[bot] 6 months ago

https://github.com/haml/haml -

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Deprecate Haml::RailsTemplate#default_format that was added in v6.1.3 for Turbo (discussion)

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Support case-in statement #1155

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Resurrect RDFa doctype support #1147

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Allow adding custom attributes to Haml::BOOLEAN_ATTRIBUTES #1148
  • Consider aria-xxx: false as a boolean attribute

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Fix v6.2.0's bug in rendering dynamic aria attributes #1149

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Drop the C extension #1146

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Let Haml::Util.escape_html use ERB::Escape if available #1145

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Add Haml::RailsTemplate#default_format for Turbo compatibility #1144

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Use the rails template path as filename #1140

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Fix an empty output of Ruby 3.1's Hash shorthand syntax #1083

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Optimize away a to_s call on = scripts
  • Fix escaping for objects that return an html_safe string on to_s #1117

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Fix a whitespace removal with > and an if-else statement #1114

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Fix a whitespace removal with > and an if statement #1114

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Evaluate :erb filter in the template context like Haml 5

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Support sass-embedded #1112

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Support interpolation in HTML comments, which has not been working since 6.0.0
    #1107

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Haml::Engine and Haml::Template use StringBuffer instead of ArrayBuffer
    • It seems more performant in many cases with recent Ruby versions.
    • Haml::RailsTemplate is not affected.

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Prevent CRuby from accidentally using the Ruby implementation fallback
    • Reversing what v6.0.3 and v6.0.4 did, but still supporting Wasm.

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Resurrect #haml_object_ref support in an object reference #1097
    • This was removed in 6.0.0, and added back in this version.
  • Stop warning remove_whitespace: true option.

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Fix a parse failure of % in attributes #1096
  • Add another fallback from C to Ruby for Wasm.

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • For Wasm, fallback to Ruby when C extension is not available.

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml -

  • Unescape HTML-safe arguments for surround, succeed, and precede on Rails
    #1088

- Ruby
Published by k0kubun over 2 years ago

https://github.com/haml/haml - 6.0.1

  • Unescape HTML-safe interpolation on Rails #1084
  • Resurrect Haml 5's AttributeParser.available? for syntax_tree-haml #1085

- Ruby
Published by k0kubun over 3 years ago

https://github.com/haml/haml - 6.0.0

Haml 6 became 1.7x faster than Haml 5, and it's now faster than Slim and Erubi in this benchmark that was originally written by Slim developers.

$ bundle exec ruby benchmark/slim/run-benchmarks.rb
Calculating -------------------------------------
       erubi v1.11.0    34.595k i/100ms
         slim v4.1.0    30.931k i/100ms
  haml v6.0.0.beta.1    35.621k i/100ms
-------------------------------------------------
       erubi v1.11.0    411.827k (± 0.4%) i/s -      2.076M
         slim v4.1.0    361.660k (± 0.4%) i/s -      1.825M
  haml v6.0.0.beta.1    427.207k (± 0.6%) i/s -      2.137M

Comparison:
  haml v6.0.0.beta.1:   427206.9 i/s
       erubi v1.11.0:   411826.6 i/s - 1.04x slower
         slim v4.1.0:   361659.8 i/s - 1.18x slower

Changes

  • Replace the implementation with Hamlit
    • Haml 6 is about 1.7x faster than Haml 5 in this benchmark.
    • The parser is kept as is, but everything else is replaced.
    • The haml CLI interface was also replaced.
    • The interface of Haml::Engine is changed. Haml::Template is most likely what you need now.
    • Most Haml helpers are removed.
      • Rails:
        • Kept: find_and_reserve, preserve, surround, precede, succeed, capture_haml
        • Removed: block_is_haml?, flatten, haml_concat, haml_indent, haml_tag, haml_tag_if, html_attrs,
          html_escape, init_haml_helpers, is_haml?, list_of, non_haml, tab_down, tab_up, with_tabs
      • Tilt:
        • Kept: preserve
        • Removed: block_is_haml?, capture_haml, escape_once, find_and_preserve, flatten, haml_concat,
          haml_indent, haml_tag, haml_tag_if, html_attrs, html_escape, init_haml_helpers, is_haml?,
          list_of, non_haml, precede, succeed, surround, tab_down, tab_up, with_tabs
    • Only the attributes in Haml::AttributeBuilder::BOOLEAN_ATTRIBUTES
      are handled as boolean attributes.
    • Some legacy Rails integration is removed.

- Ruby
Published by k0kubun over 3 years ago

https://github.com/haml/haml - 6.0.0.beta.1

Haml 6 became 1.7x faster than Haml 5, and it's now faster than Slim and Erubi in this benchmark that was originally written by Slim developers.

$ bundle exec ruby benchmark/slim/run-benchmarks.rb
Calculating -------------------------------------
       erubi v1.11.0    34.595k i/100ms
         slim v4.1.0    30.931k i/100ms
  haml v6.0.0.beta.1    35.621k i/100ms
-------------------------------------------------
       erubi v1.11.0    411.827k (± 0.4%) i/s -      2.076M
         slim v4.1.0    361.660k (± 0.4%) i/s -      1.825M
  haml v6.0.0.beta.1    427.207k (± 0.6%) i/s -      2.137M

Comparison:
  haml v6.0.0.beta.1:   427206.9 i/s
       erubi v1.11.0:   411826.6 i/s - 1.04x slower
         slim v4.1.0:   361659.8 i/s - 1.18x slower

This is a beta release of Haml 6. It has breaking changes from Haml 5, so please be sure to test it with your application.

Changes

  • Replace the implementation with Hamlit
    • The parser is kept as is, but everything else is replaced.
    • All Haml helpers except for preserve are removed.
    • Some legacy Rails integration is removed.

- Ruby
Published by k0kubun over 3 years ago

https://github.com/haml/haml - Look Under Your Seats, It's an All Expense Paid Annotation!

Howdy Haml-faml,

The 5.x.x line of Haml keeps chugging along, and we will likely keep this codebase going for those who want this full-fat version of Haml and addressing little issues here and there.

In this version, the wonderful @jdelStrother brought in a new feature for adding annotations to your output during development showing which template the html came from.

<div class='navbar-light navbar-collapse collapse wi-100 d-md-none' id='navbar-collapse'>
    <div class='navbar-nav phm mbm' role='menu'>
        <!-- BEGIN app/views/page_header/_user_profile_links.html.haml -->
        <a class="nav-link" href="/profile">Profile</a>
        <a class="nav-link" href="/account/edit">Settings</a>
        <div class='dropdown-divider'></div>
        <a class="nav-link" href="/logout">Log out</a>
        <!-- END app/views/page_header/_user_profile_links.html.haml -->
  </div>
</div>

This was added in Rails 6.1 for ERB files, and now all you wonderful Haml-ers out there get the same useful feature.

As for the future of Haml, we are likely going to be moving over the main branch and 6.x.x development to be based off of @k0kubun's awesome Hamlit implementation. It does lack some of the features that 5.x has, but it comes with almost 2x speed improvement and honestly, even the way I (Hampton) use Haml – is well covered by Hamlit. You really have to be doing some weird stuff for it to be an issue. So, we'll likely be releasing an alpha of that 6.x-based-on-Hamlit code soon.

- Ruby
Published by HamptonMakes almost 5 years ago

https://github.com/haml/haml - A Surprise Visit

It's time to face the facts that the last release was a LIE. I said we weren't going to release another version of Haml 5.x... and yet, here we are again.

"What's this all about?!?!", you must be screaming at your computer.

Well, our wonderful @k0kubun has given all of us a wonderful present– which is proper multiline-attributes support for Haml. No longer are we forced to either have super long lines or have kinda wonky spacing on our attributes.

How it started:

  .messages-overflow-container{"data-simplebar": true}
    .messages{data: {controller: "chat-messages"}}
  .like-notification{data: {controller: "reaction-notification"}}
  - unless video.finished?
    .message-write{data: { "controller": "chat", "show-when-logged-in": true }}
      .chat-controls
        .write-area{placeholder: 'Send a message', contenteditable: true, role: "textbox", data: {action: "keydown->chat#chatBoxKeyDown", target: "chat.messageInput"}}
        = render "shared/reaction_button"
    .message-login-prompt{data: { "show-when-logged-out": true }}
      %button{data: {action: "authentication#showModal"}} Login To Chat

How it's going:

  .messages-overflow-container{"data-simplebar": true}
    .messages{
      data: { controller: "chat-messages" }
   }
  .like-notification{
    data: { controller: "reaction-notification" } }
  - unless video.finished?
    .message-write{
      data: { 
        "controller": "chat", 
        "show-when-logged-in": true 
      }
    }
      .chat-controls
        .write-area{
          placeholder: 'Send a message', 
          contenteditable: true, 
          role: "textbox", 
          data: {
            action: "keydown->chat#chatBoxKeyDown", 
            target: "chat.messageInput"
          }
        }
        = render "shared/reaction_button"
    .message-login-prompt{data: { "show-when-logged-out": true }}
      %button{
        data: {
          action: "authentication#showModal"
        }
      } Login To Chat

How about THAT! I don't know about you, but this is going to improve my markup by a huge margin. I am super thrilled to get this into our code at @veuelive!

- Ruby
Published by HamptonMakes over 5 years ago

https://github.com/haml/haml - The Long Goodbye

This release is meant to be the final release that's got all the bells and whistles of Haml from the last 10 years. Going forward, new releases will be in the 6.x.x series and will NOT be backwards compatible for many features.

We may do a release of 5.2.1+ if we have security issues come up.

- Ruby
Published by HamptonMakes over 5 years ago