prettydiff

Beautifier and language aware code comparison tool for many languages. It also minifies and a few other things.

OTHER License

Downloads
28.4K
Stars
1.7K
Committers
11
prettydiff - 101.0.0 Latest Release

Published by prettydiff over 5 years ago

This major change addresses three concerns:

  • The build task is dramatically simplified.
    • The output is compatible with the upcoming TypeScript incremental builds. This application will start using incremental builds once they are available via terminal argument, such as --incremental.
  • From the outside the application is dramatically more simple.
    • There is only one list of options, which is always populated by default.
    • There is not a separate method for executing the application. Before the code looks like prettydiff.mode(options) where now it is simply prettydiff().
    • No need to pass a list of options in as the application reads from the options property: prettydiff.options.
  • Fixes an internal architectural defect.
    • Pretty Diff was using options end and start internally to determine when to switch between language grammars. This is problematic if options are cached in memory and those options are not reset to a default value between each time the application is called.
    • Now end and start are removed from the options object and are reset to their default after every execution.
prettydiff - Better CSS support

Published by prettydiff over 5 years ago

CSS beautification is now smaller, faster, and more precise than before.

prettydiff - 100.2.5

Published by prettydiff over 5 years ago

Better TypeScript support in parsing and beautification.

prettydiff - 100.2.2

Published by prettydiff over 5 years ago

Fixed several bugs and merged in latest major version of the parser.

prettydiff - 100.1.7

Published by prettydiff over 5 years ago

Bumping release to current version.

This is the first tagged release since the major version change was published. A lot has changed. Please review the documentation and validate Pretty Diff against your integration tests.

prettydiff - 2.2.8

Published by prettydiff over 7 years ago

v2.2.8

Defects

  • Fixes a regression issue in JSX regarding the newline option
  • Fixes a parse mode formatting defect in the webtool
  • Fixes a defect in loading the web tool
  • Fixes several minor defects when attempting to merge Pretty Diff 2.x into Atom Beautify
  • Fixes #463, incorrectly removing unit on 0 values in CSS transitions

Enhancements

  • Adding support for the 'u' regex flag
  • Pretty Diff 2 is on NPM with the package name prettydiff2. This is the minimum code to run Pretty Diff from Node.js.
prettydiff - 2.2.0

Published by prettydiff over 7 years ago

v2.2.0

Defects

  • Fixes numerous undocumented defects in the validation build and diff tool
  • Fixes #434, CSS beautfication defect with a space appearing before a selector list
  • Fixes #435, Circular dependency problem when using require.js
  • Fixes #441, Fold error in rendered HTML reports
  • Fixes #442, Ternaries inside parenthesis now cause an extra step of indentation
  • Fixes #444, CLI with readmethod:file and mode:diff producing no output
  • Fixes #445, ASP, PHP error where tags containing the "do" command were treated like a start tag
  • Fixes #447, Diff library ignoring carriage return characters. White space differences are now more explicitly called out.

Enhancements

  • Fixes #409, Pretty Diff is fully integrated with biddle for its own dependency and in publication with biddle for distribution elsewhere. Ready for integration with Atom Beautify.
prettydiff - 2.1.18

Published by prettydiff over 7 years ago

v2.1.18

Defects

  • Fixes #420, markup attributes should not be sorted if sorting is disabled in the options
  • Fixes #429, fixes regression against diffcli option

Enhancements

  • Fixes #414, better preserve whitespace adjacent to span tags in HTML
  • Fixes #418, performance improvement for lib/markuppretty.js in V8 by ensuring level array contains only number types
  • Fixes #422, create a new option to explicitly supply or eliminate a new line at the end of output
  • Fixes #426, remove duplicate logic from lib/diffview.js
  • Fixes #427, two performance improvements for new diff algorithm
  • Fixes #428, performance improvement in all code for V8 by converting arithmetic assignment operators to assignments followed by separate explicit arithmetic
  • Fixes #430, created a minimal barebones HTML code sample demonstrating running Pretty Diff in a generic HTML tool
prettydiff - 2.1.17

Published by prettydiff over 7 years ago

v2.1.17

Defects

  • Fixes #410, missing diamond (empty generic type) in Java

Enhancements

  • Fixes #268, a new diff algorithm... super high precision and possibly the world's fastest diff algorithm
  • Fixes #269, a change of license is universally applied to the project. New license is CC0.
  • Fixes #417, adding support for "module" script type to markuppretty library.
prettydiff - 2.1.16

Published by prettydiff over 7 years ago

v2.1.16

Defects

  • Fixes #392, problems with vertical alignment
  • Fixes #396, biddle application is now working properly
  • Fixes #398, JSX disruption due to comments
  • Fixes #399, SCSS @else properly recognized as an else template tag
  • Fixes #401, a minor TypeScript flaw with missing indentation
  • Fixes #402, defect with code getting dropped if a template tag wraps as markup
  • Fixes #403, {{end -}} was not properly recognized as an end tag
  • Fixes #407, some extra hardiness for Rust language conventions

Enhancements

  • Fixes #393, JSON code is no longer polluted with JavaScript specific parsing enhancements
  • Fixes #405, stronger wrapping when strings and non-strings are mixed
prettydiff - 2.1.15

Published by prettydiff almost 8 years ago

v2.1.15

Defect resolutions

  • Fixes #374, multiple improvements to include better vertical alignment, better ternary indentation, better method-chain indentation, and several minor defect resolutions
  • Fixes #379, CSS quote convert defect
  • Fixes #380, defect with CSS option "noleadzero"
  • Fixes #383, minor ASI defect
  • Fixes #384, {{block}} treated as a start tag in Twig templates
  • Fixes #385, numbers of form 3e5+2 improperly broken on "+"
  • Fixes #388, improper line breaking on complex argument lists
  • Fixes #394, JSX broken on JS comments inside a markup tag that is a child of JavaScript embedded in a higher markup tag

Enhancements

prettydiff - 2.1.14

Published by prettydiff about 8 years ago

v2.1.14

prettydiff - 2.1.13

Published by prettydiff about 8 years ago

v2.1.13

  • Fixing a minor incompatibility with JSLint
prettydiff - 2.1.12

Published by prettydiff about 8 years ago

v2.1.12

Defect resolutions

  • Fixes #370, JavaScript string wrapping defect
  • Fixes #372, edge case failure of JavaScript ASI
  • Fixes #373, fixes two Twig issues
  • Fixes a minor JavaScript indentation problem of method arguments following a long wrapped string
prettydiff - 2.1.11

Published by prettydiff about 8 years ago

v2.1.11

Defect resolutions

  • Fixes #363, resolves several defects with option bracepadding
  • Fixes #365, catastrophic parsing flaw for Liquid HTML templates

Enhancement

  • Fixes #366, adding support for GoHTML template language
prettydiff - 2.1.10

Published by prettydiff about 8 years ago

v2.1.10

Defect resolutions

  • Fixes #360, incorrect markup parsing for multiple tag structures in a single JSX return
  • Reverting code validation back to 2.1.8 version for stability

Enhancement

  • Fixes #362, providing support for Flow.js
  • Better TSX support
prettydiff - 2.1.9

Published by prettydiff about 8 years ago

v2.1.9

  • Better comment beautification
  • Language identification for some forms of C/C++ (not supported)
prettydiff - v2.1.8

Published by prettydiff about 8 years ago

v2.1.8

Defect resolutions

  • Fixed #356 - C# code sample defect: binary literal notation, inline comments between ) and { of blocks
  • Fixed #352 - a TypeScript defect that left code with too much indentation.

Enhancement

  • Fixed #354 - ERB tag indentation
  • Fixed #353 - Upgrading markup attribute parsing to parse values apart from attribute names.
  • Modified code in support of a JSLint enhancement.
prettydiff - v2.1.7

Published by prettydiff about 8 years ago

v2.1.7

Defect resolutions

  • Fixed #349 - Added curly braces as markup attribute delimiters in support of RiotJS
prettydiff - v2.1.6

Published by prettydiff about 8 years ago

v2.1.6

  • fixed a minor regression error in the instructional HTML guides