Socket
Socket
Sign inDemoInstall

csso

Package Overview
Dependencies
3
Maintainers
3
Versions
82
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install
Previous1
46
9Next

1.6.0

Diff

Changelog

Source

1.6.0 (February 27, 2016)

  • source maps support
  • parser remake:
    • various parsing issues fixed
    • fix unicode sequence processing in ident (#191)
    • support for flags in attribute selector (#270)
    • position (line and column) of parse error (#109)
    • 4x performance boost, less memory consumption
  • compressor refactoring
    • internal AST is using doubly linked lists (with safe transformation support during iteration) instead of arrays
    • rename restructuring to restructure option for minify()/compress() (restructuring is alias for restructure now, with lower priority)
    • unquote urls when possible (#141, #60)
  • setup code coverage and a number of related fixes
  • add eslint to check unused things
lahmatiy
published 1.5.4 •

Changelog

Source

1.5.4 (January 27, 2016)

  • one more fix (in restructRuleset this time) with merge of rulesets when a ruleset with same specificity places between them (#264)
  • disable partial merge of rulesets in @keyframes rulesets (until sure it's correct)
lahmatiy
published 1.5.3 •

Changelog

Source

1.5.3 (January 25, 2016)

  • don't override display values with different browser support (#259)
  • fix publish issue (one of modules leak in development state)
lahmatiy
published 1.5.2 •

Changelog

Source

1.5.2 (January 24, 2016)

  • don't merge rulesets if between them a ruleset with same specificity (#264)
lahmatiy
published 1.5.1 •

Changelog

Source

1.5.1 (January 14, 2016)

  • ensure - is not used as an identifier in attribute selectors (thanks to @mathiasbynens)
  • fix broken justDoIt() function
  • various small fixes
lahmatiy
published 1.5.0 •

Changelog

Source

1.5.0 (January 14, 2016)

Parser

  • attach minus to number

Compressor

  • split code base into small modules and related refactoring
  • introduce internal AST format for compressor (gonzalesinternal and internalgonzales convertors, walkers, translator)
  • various optimizations: no snapshots, using caches and indexes
  • sort selectors, merge selectors in alphabet order
  • compute selector's specificity
  • better ruleset restructuring, improve compression of partially equal blocks
  • better ruleset merge – not only closest but also disjoined by other rulesets when safe
  • join @media with same query
  • outputAst – new option to specify output AST format (gonzales by default for backward compatibility)
  • remove quotes surrounding attribute values in attribute selectors when possible (#73)
  • replace from0% and 100%to at @keyframes (#205)
  • prevent partial merge of rulesets at @keyframes (#80, #197)

API

  • walker for gonzales AST was implemented

CLI

  • new option --stat (output stat in stderr)
  • new optional parameter level for --debug option
lahmatiy
published 1.4.4 •

Changelog

Source

1.4.4 (December 10, 2015)

  • prevent removal of spaces after braces that before identifier that breaking at-rules expressions (#258)
lahmatiy
published 1.4.3 •

Changelog

Source

1.4.3 (December 4, 2015)

  • fix unicode-range parsing that cause to wrong function detection (#250)
lahmatiy
published 1.4.2 •

Changelog

Source

1.4.2 (November 9, 2015)

  • allow spaces between progid: and rest part of value for IE's filter property as autoprefixer generates this kind of code (#249)
  • fixes for Windows:
    • correct processing new lines
    • normalize file content in test suite
  • fixes to work in strict mode (#252)
  • init compressor dictionaries for every css block (#248, #251)
  • bump uglify-js version
lahmatiy
published 1.4.1 •

Changelog

Source

1.4.1 (October 20, 2015)

  • allow merge for display property (#167, #244)
  • more accurate rect (clip property value) merge
  • fix typo when specifying options in cli (thanks to @Taritsyn)
  • fix safe unit values merge with keyword values (#244)
  • fix wrong descendant combinator removal (#246)
  • build browser version on prepublish (thanks to @silentroach)
  • parser: store whitespaces as single token (performance and reduce memory consumption)
  • rearrange compress tests layout

1.4 (October 16, 2015)

Bringing project back to life. Changed files structure, cleaned up and refactored most of sources.

Common

  • single code base (no more src folder)
  • build browser version with browserify (no more make, and web folder), browser version is available at dist/csso-browser.js
  • main file is lib/index.js now
  • minimal node.js version is 0.12 now
  • restrict file list to publish on npm (no more useless folders and files in package)
  • add jscs to control code style
  • automate gh-pages update
  • util functions reworked
  • translator reworked
  • test suite reworked
  • compressor refactored
  • initial parser refactoring

API

  • new method minify(src, options), options:
    • restructuring – if set to false, disable structure optimisations (true by default)
    • debug - outputs intermediate state of CSS during compression (false by default)
  • deprecate justDoIt() method (use minify instead)
  • rename treeToString() method to stringify()
  • drop printTree() method
  • AST node info
    • column and offset added
    • ln renamed to line
    • fix line counting across multiple files and input with CR LF (#147)

CLI

  • completely reworked, use clap to parse argv
  • add support for input from stdin (#128)
  • drop undocumented and obsoleted options --rule and --parser (suppose nobody use it)
  • drop -off alias for --restructure-off as incorrect (only one letter options should starts with single -)
  • new option --debug that reflecting to options.debug for minify

Parsing and optimizations

  • keep all exclamation comments (#194)
  • add /deep/ combinator support (#209)
  • attribute selector
    • allow colon in attribute name (#237)
    • support for namespaces (#233)
  • color
    • support all css/html colors
    • convert hsla to rgba and hls to rgb
    • convert rgba with 1 as alpha value to rgb (#122)
    • interpolate rgb and rgba percentage values to absolute values
    • replace percentage values in rgba for normalized/interpolated values
    • lowercase hex colors and color names (#169)
    • fix color minification when hex value replaced for color name (#176)
    • fit rgb values to 0..255 range (#181)
  • calc
    • remove spaces for multiple operator in calc
    • don't remove units inside calc (#222)
    • fix wrong white space removal around + and - (#228)
  • don't remove units in flex property as it could change value meaning (#200)
  • don't merge \9 hack values (#231)
  • merge property values only if they have the same functions (#150, #227)
  • don't merge property values with some sort of units (#140, #161)
  • fix !important issue for top-right-bottom-left properties (#189)
  • fix top-right-bottom-left properties merge (#139, #175)
  • support for unicode-range (#148)
  • don't crash on ruleset with no selector (#135)
  • tolerant to class names that starts with digit (#99, #105)
  • fix background compressing (#170)
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc