fisker Cheung
5ce16eaa02
Update linguist-languages to v7 ( #6367 )
...
* Update linguist-languages to v7
* Trigger build
* Update
* replace `includes` with `indexOf`
* fix `exclude`
* add `nodejs` back
2019-09-14 00:57:16 +03:00
Lucas Azzola
f526c47b1e
Add an option to modify when Prettier quotes object properties ( #5934 )
...
* Implement quote-props=preserve
* Implement quote-props=consistent
* Add tests
* Enable quoteProps in playground
* Add documentation
* Cache objectHasStringProp calculations
* Fixup changelog
2019-03-06 20:33:08 +11:00
Lucas Azzola
2982dcd897
Fixup getSupportInfo for babylon parser prior to 1.16.0 ( #5826 )
...
This undoes an accidental breaking change where `prettier.getSupportInfo('1.0.0')` would report supporting the `babel` parser instead of `babylon`.
Fixes #5822
2019-02-03 21:57:59 +11:00
Nathan Totten
a093bb3f7b
Adds LWC Parser to support unquoted interop attributes ( #5800 )
...
This pull requests adds a new parser option `lwc`. This is the same as the HTML parser, but it adds support for unquoted HTML attributes per the needs of LWC. See: #5627
2019-02-01 13:58:50 +08:00
Ika
7c4cebeaa5
feat: add babel-flow ( #5685 )
2018-12-29 21:35:47 +08:00
Wei-Wei Wu
91c20f7fbe
Rename "babylon" with "babel" ( #5647 )
2018-12-27 21:05:19 +08:00
Laurin Quast
9d1fb93e86
feat: add mjml extension to html language ( #5505 )
2018-12-07 21:01:40 +08:00
Alexander Kachkaev
b87fe4cf22
Add option to enforce certain line endings ( #5327 )
2018-11-06 22:47:13 +08:00
Stefan Mirea
e17512adcd
Add an option to print single quotes in JSX ( #4798 )
...
* feat(option-singleQuote-jsx): Added jsSingleQuote
* feat(option-singleQuote-jsx): Refactored to use a simple jsxSingleQuote flag
* feat(option-singleQuote-jsx): Fixed borked rebase
* feat(option-singleQuote-jsx): Updated snapshots
* feat(option-singleQuote-jsx): Resolved pending comments
* feat(option-singleQuote-jsx): Removed assert
* Fixed merge conflicts
* Updated snapshots after merge conflicts
2018-11-04 16:36:00 -05:00
Ika
5e8a4a115a
feat: support HTML/Vue/Angular ( #5259 )
2018-11-04 23:03:07 +08:00
Ika
dd4687e7ef
feat(html): whitespace-sensitive formatting ( #5168 )
...
- whitespace-sensitive formatting
- respect css `display: block`/`white-space: pre` (data from [`html-styles`](https://github.com/marionebl/html-styles ))
- support magic comment (`<!-- display: block -->`)
- add an option to specify whitespace sensitivity (`--html-whitespace-sensitivity <css|strict|ignore>`)
- magic comments take precedence
- (default) `css`: respect default css style (safe in the most cases)
- `strict`: every node is considered whitespace sensitive (the safest)
- `ignore`: every node is considered whitespace insensitive (dangerous, the original behavior)
- inline inline-tags
- support ie conditional comment (`<!--[if IE]><![endif]-->`)
- indent the script/style content
- no inconsistent output for 2+ attributes
- force break tag if there're multiline attributes
2018-10-13 13:55:38 +08:00
Petter
1244729ad7
Infer via shebang ( #5149 )
...
If no file type can be inferred, this attempts to read the first line of a file and extract a shebang, which can be checked against a known list.
2018-10-05 08:47:23 +08:00
Ika
13147facc5
feat(html): switch to htmlparser2 ( #5127 )
...
- switch to [`htmlparser2`](https://github.com/fb55/htmlparser2 )
- no need to fork
- won't generate pseudo nodes ([`parse5` will](https://github.com/prettier/prettier/issues/5098#issuecomment-423055181 ))
- should be [faster](https://github.com/fb55/htmlparser2#performance )
- support custom self-closing tags
- support HTML entities
- remove extra trailing newline for `<template>`
- distinguish empty/empty-string attributes (`<tag x>`/`<tag x="">`)
- rename `--parser parse5` with `--parser html`
- enable `html` since 1.15, which means it's enabled by default if you install the dev version from GitHub after this PR merged.
2018-09-22 21:53:38 +08:00
Ika
1790211f76
feat: support MDX ( #4975 )
...
* feat: support MDX
* refactor: flip condition
2018-08-13 22:23:09 +08:00
Ika
e72cb538f9
fix: update flow support info ( #4943 )
2018-08-08 23:47:49 +08:00
Ika
1a2c4e663e
chore: use pre-release version number on master ( #4855 )
...
* chore: use pre-release version number on master
* docs: tweak comment
2018-07-18 09:38:26 +08:00
Ika
ed0ecdad18
fix(json): do not put values on a separate line from the key ( #4852 )
...
* test: add tests
* fix(json): do not put values on a separate line from the key
2018-07-17 18:08:59 -03:00
Ika
2271992446
feat(json): add jsonc to aliases and use it to find parser in markdown embed ( #4734 )
2018-07-07 20:46:34 +08:00
Ika
432c9d7d04
feat(yaml): support proseWrap ( #4742 )
...
- support `proseWrap` in `yaml`
- move `proseWrap` to `commonOptions`
- update to `yaml@1.0.0-rc.4` and `yaml-unist-parser@1.0.0-rc.1`
2018-07-04 00:28:47 +08:00
Ika
9bb8edf96a
feat: support .js.flow ( #4777 )
...
* feat: support .js.flow
* feat: add Flow language entry
2018-07-01 16:18:08 +08:00
Ika
0b659b898d
feat: update linguist languages ( #4741 )
...
Context: https://github.com/prettier/prettier/pull/4734#issue-196702272
Languages should be easy to maintain now.
2018-06-28 08:24:02 +08:00
Ika
c38e6af301
fix(yaml): add missing `since` field ( #4739 )
2018-06-23 17:04:47 +08:00
Ika
dcf44ffbdc
feat: support YAML ( #4563 )
...
* feat: support YAML
* fix: do not indent sequence in mappingValue
* docs: add yaml to index.md
* fix: reduce `SyntaxError: Node#parse consumed no characters`
* chore: remove old-build and new-worker.js
* refactor
* refactor
* refactor
* refactor
* refactor
* refactor
* refactor
* refactor
* refactor
* refactor
* refactor
* refactor
* fix: no space after `<<`
* fix: add yaml to standalone test
* test: add tests
* fix: next empty line in flow collection
* fix: tabs are not allowed
http://yaml.org/spec/1.2/spec.html#space/indentation/
* fix: update parser
* feat: rewrite the mappingItem logic
* feat: indent sequence in mapping
* feat(doc): add ifBreak#groupId and group#id
* chore: fix node 4
* chore: add tools_yaml.svg
* chore: remove resolved TODO
* refactor: remove unnecessary workaround
* chore(worker): importScriptOnce
* chore(build): rename with babelPlugins
* make it rollup compatible
* feat: support singleQuote
* refactor
2018-06-21 10:29:42 +08:00
Lucas Duailibe
8892b14d8a
1.13.0
2018-05-27 15:19:39 -03:00
Suchipi
ec45dc9a4c
(refactor): Move common options out of JS plugin ( #4445 )
...
* (refactor): Move common options out of JS plugin
* Add Common category to playground
2018-05-15 14:14:50 -06:00
Ika
9cc5d4f162
fix(json): jsonc is considered JSON instead of JSON5 ( #4374 )
...
* fix(json): jsonc in consider JSON instead of JSON5
* feat: add json5 id
2018-04-27 00:09:36 +08:00
Ika
317f3a3c56
feat: split out JSON5 ( #4367 )
...
* feat: split out JSON5
* test: update snapshots
* test: update debug-check tests
* feat(playground): use JSON's code sample for JSON5
* fix: add missing trailing newline
2018-04-25 22:10:22 +08:00
Christian Zosel
d05a29da05
Allow plugins to override default options ( #3991 )
...
* refactor(cli): defer default value applying
* Allow plugins to override default options
* Move "defaultOptions" to top level of plugin
* Simplify implementation
* Attach plugin name
* Add pluginOptions to cli help
* Update snapshots
* Code review (immutable style)
* Add test for help output
* Use snapshot test, fix Object.assign
* Refactor to immutable style
* Add test case for automatic plugin resolution
* Add tests for applying and overriding default opts
* Remove "since" option
* Only set defaults for CLI args when no pluginDefaults are present
* Revert workaround, rebase to #4045
* Add basic documentation for `options` and `defaultOptions`
2018-02-28 00:20:02 +11:00
Ika
84c603623d
feat: support external options ( #3775 )
...
* refactor: wrap
* refactor: replace
* refactor: replace
* refactor: replace
* refactor: extract
* refactor: logger
* refactor
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* feat(support): add `showInternal` option
* refactor: use internal
* refactor
* refactor: extract
* refactor: extract
* refactor
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: reorder
* refactor: remove unnecessary
* refactor: reorder
* refactor: move
* refactor
* refactor
* refactor
* refactor: remove unnecessary
* feat: external options from CLI
* refactor: push/pop plugins
* feat: external options from config file
* refactor: remove unnecessary
* refactor
* refactor
* refactor
* fix: use `json-stable-stringify`
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: move
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: extract
* refactor: move
* refactor: extract
* docs: add comments
* refactor: sort
* refactor: sort
* refactor: rename
* refactor: remove unnecessary
* style: remove trailing whitespace
2018-01-28 00:24:25 +08:00
Ika
dc26445e51
refactor(options): use supportOptions to generate CLI options ( #3622 )
...
* refactor(cli-constant): use supportOptions
* refactor(options): use supportOptions
* refactor(cli-util): use supportOptions
* fix: do not infer parser in multiparser
* chore: remove unnecessary package
* chore: trigger another travis build
* test: add kebab-case test to ensure no regression
* test: update snapshots
2018-01-18 15:26:27 +08:00
Lucas Azzola
bae21cb166
1.10.0
2018-01-10 23:08:15 +11:00
Ika
6c0dd74518
feat(support-info): add `options` field ( #3433 )
...
* refactor: rename supportTable with supportLanguages
* refactor: use `dedent`
* test: reduce unnecessary data
* feat(support-info): add `options` field
* add `showDeprecated` option
* add `showUnreleased` option
* test: snapshot diff
* fix(support): add missing `since`
* fix: add missing `category`
* refactor: use template tag
* fix: `trailingComma:true` should redirect to `trailingComma:es5`
* refactor: reorder parser
* refactor: fix linting
* refactor: move options
* refactor: move options to printers
2017-12-31 15:34:37 +11:00
Lucas Azzola
4c9d4061da
Prettier Plugin API ( #3536 )
...
* Move files around in preparation for refactor
* Update paths in build script
* Extract generic printing logic from the JavaScript printer
* Conform printer API
* Fixup decorator handling
* Fix multiparser
* Create plugin entry for markdown
* Create plugin entry for javascript/typescript
* Create plugin entry for html
* Create plugin entry for graphql
* Create plugin entry for css/less/scss
* Move JSON to JS plugin entry
* Integrate plugins into getSupportInfo()
* Move astFormat to parser definition
* Move util to common
* Implement parser loading
* remark -> mdast
* Rename cli/cli -> cli/index
* Rename builder -> doc package, fix printer resolution
* Fix doc shape assumption in CSS-in-JS logic
* Fix third-party.js prod resolution
* Fixup build-docs script
* Distribute multiparser code
* Remove requirement to forward options
* Flatten closure
* Remove debug directory
* Expose doc
* Add external plugins
* Pass options to loadPlugins
* Export getParsers
* Pin resolve version
* Use getSupportInfo in Markdown embed
* Document plugin API
* Update build-docs
* Add CLI for plugins
* Lint docs
* Fixup build.js
* Add vue language
* Fixup multiparser for vue
* Upgrade rollup and rollup-plugin-commonjs
* Fixup third-party build
* Change AST format in docs
2017-12-26 12:23:50 +11:00
Anatolie Rotaru
d4101169e5
Fix PostCSS VS Code integration ( #3454 )
2017-12-19 00:05:39 +11:00
Georgii Dolzhykov
5c6b93a654
Add "JSON with comments" to vscodeLanguageIds ( #3496 )
2017-12-16 11:45:51 +11:00
Lucas Azzola
3f13ab08ab
Update getSupportInfo snapshot for 1.8.0 ( #3164 )
2017-11-07 15:28:23 +11:00
Lucas Azzola
e436adae04
Implement getSupportInfo() and use it for inference ( #3033 )
...
* Implement getSupportInfo() and use it for inference
* Add comment with source of languages.yml
* Fix build, pin semver
* Simplify test snapshots
* Remove stray 'type' property
* Fix parser being overwritten
* Don't infer unreleased parser from extension
* Add CLI and docs for support info
2017-11-03 18:06:25 +11:00