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

Add linter for xml #523

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions linters/plugin.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -538,6 +538,12 @@ lint:
extensions:
- xib

- name: xml
extensions:
- xml
comments:
- slashes-xml

- name: yaml
extensions:
- yaml
Expand Down
34 changes: 23 additions & 11 deletions linters/prettier/plugin.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,17 +9,8 @@ tools:
lint:
definitions:
- name: prettier
files:
- typescript
- yaml
- css
- sass
- html
- markdown
- json
- javascript
- graphql
- prettier_supported_configs
extra_packages:
- "@prettier/plugin-xml"
commands:
- name: format
output: rewrite
Expand All @@ -28,6 +19,27 @@ lint:
batch: true
in_place: true
formatter: true
files:
- typescript
- yaml
- css
- sass
- html
- markdown
- json
- javascript
- graphql
- prettier_supported_configs
Comment on lines +22 to +32
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Strictly speaking, this is correct. But just wanted to call out that we may see a couple reports when people upgrade because I know a handful of people overrode prettier filetypes in order to support some of the prettier plugins

- name: format-xml
output: rewrite
run: prettier --plugin=@prettier/plugin-xml -w ${target}
success_codes: [0]
batch: true
in_place: true
formatter: true
version: ">=3.0.0"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Calling out for posterity that the latest @prettier/plugin-xml only works on prettier >=3.0.0, and you have to manually downgrade in order to support older versions

files:
- xml
tools: [prettier]
suggest_if: files_present
direct_configs:
Expand Down
25 changes: 25 additions & 0 deletions linters/prettier/test_data/prettier_v2.6.2_xml_test.fmt.shot
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`Testing formatter prettier test xml_test 1`] = `
"<?xml version="1.0" encoding="UTF-8"?>






<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>choiceAttribute</key>
<string>customLocation</string>
<key>attributeSetting</key>
<string>INSTALL_DIR</string>
<key>choiceIdentifier</key>
<string>default</string>
</dict>
</array>
</plist>
"
`;
20 changes: 20 additions & 0 deletions linters/prettier/test_data/prettier_v3.0.0_xml_test.fmt.shot
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP

exports[`Testing formatter prettier test xml_test 1`] = `
"<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>choiceAttribute</key>
<string>customLocation</string>
<key>attributeSetting</key>
<string>INSTALL_DIR</string>
<key>choiceIdentifier</key>
<string>default</string>
</dict>
</array>
</plist>
"
`;
20 changes: 20 additions & 0 deletions linters/prettier/test_data/xml_test.in.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>






<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>choiceAttribute</key>
<string>customLocation</string>
<key>attributeSetting</key>
<string>INSTALL_DIR</string>
<key>choiceIdentifier</key>
<string>default</string>
</dict>
</array>
</plist>
Loading