Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency pug to v3 - autoclosed #5

Closed
wants to merge 1 commit into from

Conversation

mend-for-github-com[bot]
Copy link

@mend-for-github-com mend-for-github-com bot commented Jun 2, 2022

This PR contains the following updates:

Package Type Update Change
pug (source) dependencies major ^2.0.3 -> ^3.0.0

By merging this PR, the issue #4 will be automatically resolved and closed:

Severity CVSS Score CVE Reachability
Critical Critical 9.0 CVE-2021-21353

Release Notes

pugjs/pug (pug)

v3.0.0

Compare Source

Breaking Changes

  • read plugins must now return Buffer if you want to support filters that use renderBuffer (#​3213)

    If you don't wish to support this advanced use case, you can continue returning string. If you did not provide a read plugin, you do not need to do anything.

  • The minify option on filters now requires you to install the relevant jstransformer (#​3084)

    Currently we support:

    • jstransformer-uglify-js for JavaScript
    • jstransformer-clean-css for CSS
  • Drop support for node 6 and 8 (#​3243)

New Features

  • Support filters that apply to Buffers (#​3213)

    e.g.

    // options.js
    exports.filters = {
      png: {
        // instead of a function, specify an object with a "renderBuffer" property
        // whose value is a function that takes a Buffer instead of a string
        renderBuffer: function(buffer, options) {
          var data = Buffer.from(buffer).toString('base64');
          return '<img src="data:image/png;base64, ' + data + '"/>';
        }
      }
    };

    You can then use the filter like:

    // foo.pug
    include:png my-small-image.png
  • Add support for replacing code gen via a plugin with generateCode (#​3230)

  • Support each ... of ... loops (#​3179)

    each value of iterable
      li= value

    This requires an environment that supports the for (const val of iterable) syntax in JS. You can iterate over Maps, Sets etc. as well as arrays. There is also some destructuring of map keys:

    - const map = new Map([['a', 'x'], ['b', 'y']]);
    each [key, value] of map
      li
        strong= key
        = value

v2.0.4: 2.0.4

Compare Source

  • fix: improve error message when requiring a filter that's not installed
  • fix: toJSON is now only called on object-like values
  • fix: preLex plugins were not called when compiling from a string
  • perf: add "files" property to exclude un-used files from package and reduce install size
  • feat: support ... spread attributes when compiling to JSX N.B. this will not work when rendering to HTML

  • If you want to rebase/retry this PR, check this box

@mend-for-github-com mend-for-github-com bot added the security fix Security fix generated by Mend label Jun 2, 2022
@mend-for-github-com mend-for-github-com bot changed the title Update dependency pug to v3 Update dependency pug to v3 - autoclosed Apr 30, 2024
@mend-for-github-com mend-for-github-com bot deleted the whitesource-remediate/pug-3.x branch April 30, 2024 03:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
security fix Security fix generated by Mend
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants