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
82a12a58a8
fix(config): better error message for unsupported extension ( #4969 )
2018-08-11 16:35:18 +08:00
Jorge Gonzalez
7d78ce68ef
feat(config): support TOML configuration files ( #4877 )
...
* Add initial support for TOML in configuration files
* Missed brace
* Fix snapshots
* refactor: move loadToml to utils
* Use @iarna/toml
* Add tests for loadToml
* Fix test for CI
* Remove jest-extended
* Create snapshot for load-toml
* Add feat to docs
* lint docs
* Use @iarna/toml/parse-string
* Change path string
2018-08-03 06:27:19 -04:00
Lucas Azzola
a938076ae5
Ignore .git, .svn and .hg directories ( #4906 )
...
Fixes #4895
2018-07-30 00:08:51 +10:00
Ika
18aa527adc
feat(api): support relative paths for plugin(SearchDir)s in config files ( #4667 )
...
* feat(api): support relative paths for plugin(SearchDir)s in config files
* fix: convince appveyor
2018-06-15 04:25:03 +08:00
Ika
75e86b9e6b
fix(cli): no regression for --debug-check + --list-different ( #4600 )
2018-05-31 00:42:26 +08:00
Lucas Duailibe
5c6e0802af
Don't default parser to babylon ( #4528 )
...
* Don't default parser to babylon
* Different default values according to version
* Fix error logging
* Add tests specifically for parser inference
* Add another test case
* Add API test
2018-05-23 16:55:06 -03: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
Joseph Frazier
5153b15245
Respect EditorConfig when `--config` is passed ( #3992 )
...
* Respect EditorConfig when `--config` is passed
* Clarify config-resolution test file
See https://github.com/prettier/prettier/pull/3255#issuecomment-348420546
* Update test snapshots
2018-02-24 19:11:23 +11: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
Joseph Frazier
7b211eab24
editorconfig: Only search for .editorconfig up to the VCS directory ( #3559 )
...
* editorconfig: Only search for .editorconfig up to $PWD
This addresses https://github.com/prettier/prettier/issues/3558
I'm not sure if this is the best way to find the "project root", but it
seems better than before.
* editorconfig: Search for `.editorconfig` up to the VCS directory
This uses [find-project-root] to find the nearest directory containing `.git` or `.hg`
See here for context: https://github.com/prettier/prettier/pull/3559#issuecomment-353756948
[find-project-root]: https://github.com/kirstein/find-project-root
* editorconfig: Add test for finding VCS directory
It's a little hacky in that the .hg file isn't really a Mercurial
repository, but it's enough to illustrate the intent. See here for
context: https://github.com/prettier/prettier/pull/3559#issuecomment-353857109
2017-12-26 18:16:09 +11:00
Lucas Duailibe
639c523885
Skip folders in CLI pattern
2017-12-05 16:07:27 -02:00
Joseph Frazier
cecf0657a5
Re-add EditorConfig support (undo #3213 ) ( #3255 )
...
* Revert "Revert "Respect EditorConfig settings" (#3213 )"
This reverts commit d2241fc0d5
.
* Comment out EditorConfig docs
See https://github.com/prettier/prettier/pull/3213#issuecomment-343009769
* editorconfig: Support `indent_size = 0`
See https://github.com/prettier/prettier/pull/2760#discussion_r137447715
and c38b84c42a
* Revert "Comment out EditorConfig docs"
This reverts commit ddfa529c55cac4853a1e76e00c8b5e3ef158c01f.
* Mark EditorConfig functionality as v1.9.0+
See https://github.com/prettier/prettier/pull/3255#discussion_r150432508
* editorconfig: Upgrade editorconfig-to-prettier to 0.0.4
* editorconfig: Only enable for CLI, by default
https://github.com/prettier/prettier/pull/3255#issuecomment-348420546
* editorconfig: Add tests confirming that editorconfig is ignored by default in the API
https://github.com/prettier/prettier/pull/3255#issuecomment-348420546
* editorconfig: Add/fix CLI option parsing
* editorconfig: Move docs from configuration.md to options.md
* editorconfig: Add `oppositeDescription` to show docs for `--no-editorconfig`
Addresses https://github.com/prettier/prettier/pull/3255#discussion_r154542792
* editorconfig: Update test snapshots
* editorconfig: Remove unnecessary options parsing code
Addresses https://github.com/prettier/prettier/pull/3255#discussion_r154544560
* editorconfig: Move docs from options.md to api.md and cli.md
Addresses https://github.com/prettier/prettier/pull/3255#discussion_r154545979
* resolveConfig: return null if both .prettierrc and .editorconfig are missing
Addresses https://github.com/prettier/prettier/pull/3255#discussion_r154574613
* Don't add now-failing tests
The way these tests work, both `tests_integration/cli/config/.prettierrc`
and `.prettierrc` apply to `tests_integration/cli/config/editorconfig/file.shouldnotexist`,
so the test wouldn't work even on master. Here's a way to confirm that:
```js
const path = require('path')
const assert = require('assert')
const prettier = require('./')
const file = './tests_integration/cli/config/editorconfig/file.shouldnotexist'
console.log(prettier.resolveConfig.sync(file))
assert(prettier.resolveConfig.sync(file) === null)
```
2017-12-05 09:28:27 +11:00
Ika
a1d878acc7
fix(cli): respect `--ignore-path` when using `--stdin-filepath` ( #3309 )
2017-11-23 21:54:04 +11:00
Lucas Azzola
d2241fc0d5
Revert "Respect EditorConfig settings" ( #3213 )
...
* Revert "Respect EditorConfig settings (#2760 )"
This reverts commit 8f58ca0f48
.
2017-11-09 11:38:58 +11:00
Joseph Frazier
8f58ca0f48
Respect EditorConfig settings ( #2760 )
...
This fixes https://github.com/prettier/prettier/issues/42 .
It adds support for .editorconfig's `indent_style`, `indent_size`, `tab_width`,
and `max_line_length` properties.
It doesn't support the `end_of_line` property as described in
https://github.com/prettier/prettier/issues/42#issuecomment-327073326 ,
but that could be added later. The same goes for `quote_type`
(https://github.com/prettier/prettier-atom/issues/293#issue-267288335 ).
* Make test .prettierrc not set config for all file extensions
This makes it easier to keep tests isolated.
2017-11-08 14:30:28 -05:00
Lucas Azzola
d5de6ac84f
Delete $schema from resolved config
2017-10-18 23:54:55 +11:00
Lucas Azzola
21d7561ecd
Resolve file paths relative to config file ( #3037 )
...
* Add currently passing test case for #3005
* Fix test to fail without code change
2017-10-15 18:32:16 +11:00
Ika
2ef879f20d
feat(cli): add `--loglevel` option ( #2992 )
...
* feat(cli): add `--loglevel` option
* fix: handle error from invalid option
* fix: choice value and shouldLog logic
* test: fix test cases
* fix: change log style
* test: truncate snapshots
* test: reduce duplicate code
* test: use patterns instead of snapshots
* test: fix regex
2017-10-13 20:17:01 -05:00
Ika
6c8cde9672
fix(cli): do not early exit for `--debug-check` ( #2987 )
...
* test: add failing test
* fix(cli): do not early exit for `--debug-check`
2017-10-07 04:36:43 -05:00
Joern Bernhardt
3c00979530
Fix typo in test files (`*formated` -> `*formatted`) ( #2982 )
...
* Fix typo in test files
Signed-off-by: Joern Bernhardt <jb@campudus.com>
* Rename cursot-offset.js to cursor-offset.js
Signed-off-by: Joern Bernhardt <jb@campudus.com>
2017-10-06 20:01:21 +11:00
Ahmed El Gabri
2fed6c873b
Use relative paths with CLI ( #2969 )
...
* always get relative paths
* Add test
* update snapshots
2017-10-04 18:56:01 +11:00
Ika
0d756080b5
fix: ignore and show warning for unknown option from config file ( #2929 )
2017-09-28 19:59:32 +02:00
Ika
4435ecbc7b
fix(cli): validate options for every `config-precedence` ( #2894 )
...
* fix(cli): validate options for every `config-precedence`
* refactor: use camelcase
* refactor: reduce duplicate code
* refactor: rename function
* refactor: rename parameter
2017-09-25 21:04:25 +02:00
Nick Ribal
592f99fde6
Enable cosmiconfig rcExtensions ( #2749 )
...
* Enable cosmiconfig rcExtensions; add two tests
* Remove default value; make integration input files self descripting; update all integration snapshots
* Add engines field to package.json
2017-09-17 02:47:53 +10:00
长天之云
df5482008e
fix(prettierignore): support absolute filename ( #2783 )
2017-09-10 18:21:56 +02:00
Mitermayer Reis
c59a82cbae
Add CLI option '--config-precedence' ( #2733 )
...
Add CLI option '--config-precedence'
2017-09-05 08:56:23 +10:00
ikatyang
ca7be87f9e
test: remove unnecessary `eslint-disable`
2017-09-03 22:06:55 +08:00
ikatyang
ac9fa43114
test(integration): add more tests
2017-09-03 21:31:33 +08:00
Simon Lydell
7c9e589323
Fix CLI option parsing ( #2684 )
...
Fixes #2683
2017-08-29 08:16:04 +02:00
Evilebot Tnawi
469059dc20
CLI: Support .ignore files ( #2412 )
...
Closes #2294
2017-07-11 23:33:46 +10:00
Lucas Azzola
dcccfed366
Implement cosmiconfig for workspace configuration ( #2434 )
...
* Implement cosmiconfig
* Add resolveOptions API and extname support
* Add --resolve-config and --config, rename resolveOptions to resolveConfig
* Move color to top-level CLI options
* Fix unknown param warning
* Change from {} to null when no config is found
* Change override API to emulate eslint
* Add test for eslint-style overrides
* Delete overrides from resolveConfig
2017-07-10 22:26:36 +10:00
Evilebot Tnawi
a0cadad222
feat(cli): support multiple patterns with ignore pattern ( #2356 )
2017-07-04 17:55:06 +02:00
Philipp Spieß
d679f235ed
Also infer parser when using `--list-different` ( #1997 )
...
* Also infer parser when using `--list-different`
* Add integration tests for parser inference
2017-06-06 08:24:56 -07:00
Joseph Frazier
f6dabc0d27
Add regression test for CLI shebang preservation ( #1901 )
...
Following up on https://github.com/prettier/prettier/pull/1899
2017-06-02 13:42:44 -07:00
Michał Pierzchała
7a0df958dc
Ignore node_modules when running prettier from CLI ( #1683 )
...
* Ignore node_modules by default
* Add integration test suite for --with-node-modules CLI arg
* Refactor tests to snapshots
* Disable eslint for purposely faulty files
* Fix node 4
* Fix prettier
* Gitignore only top-level node_modules
2017-05-23 14:19:04 -07:00