<commit_before># Release Notes

## Development

[Commits](https://github.com/wycats/handlebars.js/compare/v4.2.1...master)

## v4.2.1 - September 20th, 2019
Bugfixes: 

- The "browser" property in the package.json has been updated to use the common-js builds instead of the minified UMD - c55a7be, #1553

Compatibility notes:
- No compatibility issues should arise

[Commits](https://github.com/wycats/handlebars.js/compare/v4.2.0...v4.2.1)<commit_msg>Update release notes<commit_after># Release Notes

## Development

[Commits](https://github.com/wycats/handlebars.js/compare/v4.3.0...master)

## v4.3.0 - September 24th, 2019
Fixes:

- Security: Disallow calling "helperMissing" and "blockHelperMissing" directly - 2078c72
- Disallow calling "helperMissing" and "blockHelperMissing" directly - 2078c72

Features:

- Add new runtime option `allowCallsToHelperMissing` to allow calling `blockHelperMissing` and `helperMissing`.

Breaking changes:

Compatibility notes:
- Compiler revision increased - 06b7224
  - This means that template compiled with versions prior to 4.3.0 will not work with runtimes >= 4.3.0
    The increase was done because the "helperMissing" and "blockHelperMissing" are now moved from the helpers
    to the internal "container.hooks" object, so old templates will not be able to call them anymore. We suggest
    that you always recompile your templates with the latest compiler in your build pipelines.

- Disallow calling "helperMissing" and "blockHelperMissing" directly - 2078c72
  - Calling "helperMissing" and "blockHelperMissing" directly from a template (like in `{{blockHelperMissing}}` was 
    never intended and was part of the exploits that have been revealed early in 2019 
    (see https://github.com/wycats/handlebars.js/issues/1495). *It is also part of a new exploit that 
    is not captured by the earlier fix.* In order to harden Handlebars against such exploits, calling thos helpers 
    is now not possible anymore. *Overriding* those helpers is still possible.
  - If you really need this behavior, you can set the runtime option `allowCallsToHelperMissing` to `true` and the
    calls will again be possible

Both bullet points imly that Handlebars is not 100% percent compatible to 4.2.0, despite the minor version bump.

We consider it more important to resolve a major security issue than to maintain 100% compatibility.

    

[Commits](https://github.com/wycats/handlebars.js/compare/v4.2.1...v4.3.0)

## v4.2.1 - September 20th, 2019
Bugfixes: 

- The "browser" property in the package.json has been updated to use the common-js builds instead of the minified UMD - c55a7be, #1553

Compatibility notes:
- No compatibility issues should arise

[Commits](https://github.com/wycats/handlebars.js/compare/v4.2.0...v4.2.1)
{'fraction_non_alphanumeric': 0.08753602305475504, 'fraction_numerical': 0.040345821325648415, 'mean_word_length': 4.161710037174721, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 4, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5853434', 'n_tokens_mistral': 877, 'n_tokens_neox': 802, 'n_words': 313}