pymzdata 0.65.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. pymzdata-0.65.5/.cliffignore +2 -0
  2. pymzdata-0.65.5/.env +1 -0
  3. pymzdata-0.65.5/.gitattributes +10 -0
  4. pymzdata-0.65.5/.github/helpers/vcpkg.json +11 -0
  5. pymzdata-0.65.5/.github/workflows/release-pymzdata.yml +119 -0
  6. pymzdata-0.65.5/.github/workflows/test-static.yaml +31 -0
  7. pymzdata-0.65.5/.github/workflows/test.yaml +122 -0
  8. pymzdata-0.65.5/.gitignore +8 -0
  9. pymzdata-0.65.5/.vscode/launch.json +30 -0
  10. pymzdata-0.65.5/.vscode/tasks.json +13 -0
  11. pymzdata-0.65.5/CHANGELOG.md +1224 -0
  12. pymzdata-0.65.5/Cargo.lock +4742 -0
  13. pymzdata-0.65.5/Cargo.toml +236 -0
  14. pymzdata-0.65.5/Justfile +116 -0
  15. pymzdata-0.65.5/LICENSE +201 -0
  16. pymzdata-0.65.5/PKG-INFO +14 -0
  17. pymzdata-0.65.5/README.md +50 -0
  18. pymzdata-0.65.5/benches/mzml.rs +45 -0
  19. pymzdata-0.65.5/cliff.toml +84 -0
  20. pymzdata-0.65.5/crates/pymzdata/.gitignore +76 -0
  21. pymzdata-0.65.5/crates/pymzdata/Cargo.lock +3720 -0
  22. pymzdata-0.65.5/crates/pymzdata/Cargo.toml +26 -0
  23. pymzdata-0.65.5/crates/pymzdata/src/lib.rs +37 -0
  24. pymzdata-0.65.5/crates/pymzdata/src/meta.rs +661 -0
  25. pymzdata-0.65.5/crates/pymzdata/src/params.rs +354 -0
  26. pymzdata-0.65.5/crates/pymzdata/src/reader.rs +565 -0
  27. pymzdata-0.65.5/crates/pymzdata/src/spectrum.rs +412 -0
  28. pymzdata-0.65.5/crates/pymzdata/tests/conftest.py +68 -0
  29. pymzdata-0.65.5/crates/pymzdata/tests/test_ion_mobility.py +48 -0
  30. pymzdata-0.65.5/crates/pymzdata/tests/test_metadata.py +52 -0
  31. pymzdata-0.65.5/crates/pymzdata/tests/test_mgf.py +42 -0
  32. pymzdata-0.65.5/crates/pymzdata/tests/test_params.py +47 -0
  33. pymzdata-0.65.5/crates/pymzdata/tests/test_precursor.py +43 -0
  34. pymzdata-0.65.5/crates/pymzdata/tests/test_pyteomics_parity.py +92 -0
  35. pymzdata-0.65.5/crates/pymzdata/tests/test_reader.py +90 -0
  36. pymzdata-0.65.5/crates/pymzdata/tests/test_spectrum.py +95 -0
  37. pymzdata-0.65.5/cv/extract_activation.py +117 -0
  38. pymzdata-0.65.5/cv/extract_component.py +193 -0
  39. pymzdata-0.65.5/cv/extract_cv_metadata.py +33 -0
  40. pymzdata-0.65.5/cv/extract_energy.py +131 -0
  41. pymzdata-0.65.5/cv/extract_file_formats.py +116 -0
  42. pymzdata-0.65.5/cv/extract_native_ids.py +133 -0
  43. pymzdata-0.65.5/cv/extract_software.py +118 -0
  44. pymzdata-0.65.5/cv/psi-ms.obo.gz +0 -0
  45. pymzdata-0.65.5/cv/requirements.txt +1 -0
  46. pymzdata-0.65.5/docs/img/denoised_spec.png +0 -0
  47. pymzdata-0.65.5/docs/img/raw_spec.png +0 -0
  48. pymzdata-0.65.5/docs/img/to_uri.py +27 -0
  49. pymzdata-0.65.5/docs/ion_mobility_tutorial.md +370 -0
  50. pymzdata-0.65.5/docs/reader_tutorial.md +338 -0
  51. pymzdata-0.65.5/docs/spectrum_tutorial.md +417 -0
  52. pymzdata-0.65.5/docs/writer_tutorial.md +122 -0
  53. pymzdata-0.65.5/examples/async_mzcat.rs +66 -0
  54. pymzdata-0.65.5/examples/averaging_writer.rs +94 -0
  55. pymzdata-0.65.5/examples/compressed_mzml.rs +46 -0
  56. pymzdata-0.65.5/examples/describe_instrument.rs +32 -0
  57. pymzdata-0.65.5/examples/from_stdin.rs +56 -0
  58. pymzdata-0.65.5/examples/get_chromatogram_by.rs +39 -0
  59. pymzdata-0.65.5/examples/get_scan_by.rs +43 -0
  60. pymzdata-0.65.5/examples/infer_format.rs +25 -0
  61. pymzdata-0.65.5/examples/msn_target_mapping.rs +269 -0
  62. pymzdata-0.65.5/examples/mzcat.rs +36 -0
  63. pymzdata-0.65.5/examples/mzconvert.rs +337 -0
  64. pymzdata-0.65.5/examples/mzinfo.rs +250 -0
  65. pymzdata-0.65.5/examples/random_access_iter.rs +60 -0
  66. pymzdata-0.65.5/examples/readme.rs +36 -0
  67. pymzdata-0.65.5/pipeconvert.sh +8 -0
  68. pymzdata-0.65.5/pyproject.toml +28 -0
  69. pymzdata-0.65.5/src/io/compression.rs +118 -0
  70. pymzdata-0.65.5/src/io/imzml/README.md +58 -0
  71. pymzdata-0.65.5/src/io/imzml/mod.rs +30 -0
  72. pymzdata-0.65.5/src/io/imzml/reader.rs +1489 -0
  73. pymzdata-0.65.5/src/io/imzml/tests.rs +118 -0
  74. pymzdata-0.65.5/src/io/infer_format/dispatch.rs +1399 -0
  75. pymzdata-0.65.5/src/io/infer_format/inference.rs +219 -0
  76. pymzdata-0.65.5/src/io/infer_format/mod.rs +167 -0
  77. pymzdata-0.65.5/src/io/infer_format/pipeline.rs +617 -0
  78. pymzdata-0.65.5/src/io/mgf/async_reader.rs +564 -0
  79. pymzdata-0.65.5/src/io/mgf/mod.rs +333 -0
  80. pymzdata-0.65.5/src/io/mgf/reader.rs +1130 -0
  81. pymzdata-0.65.5/src/io/mgf/writer.rs +397 -0
  82. pymzdata-0.65.5/src/io/mod.rs +97 -0
  83. pymzdata-0.65.5/src/io/mzml/async_reader.rs +1170 -0
  84. pymzdata-0.65.5/src/io/mzml/mod.rs +45 -0
  85. pymzdata-0.65.5/src/io/mzml/reader.rs +3183 -0
  86. pymzdata-0.65.5/src/io/mzml/reading_shared.rs +1319 -0
  87. pymzdata-0.65.5/src/io/mzml/writer.rs +2347 -0
  88. pymzdata-0.65.5/src/io/mzmlb/common.rs +88 -0
  89. pymzdata-0.65.5/src/io/mzmlb/mod.rs +23 -0
  90. pymzdata-0.65.5/src/io/mzmlb/reader.rs +1350 -0
  91. pymzdata-0.65.5/src/io/mzmlb/writer.rs +1117 -0
  92. pymzdata-0.65.5/src/io/offset_index.rs +106 -0
  93. pymzdata-0.65.5/src/io/proxi.rs +1374 -0
  94. pymzdata-0.65.5/src/io/shorthand.rs +651 -0
  95. pymzdata-0.65.5/src/io/tdf/arrays.rs +175 -0
  96. pymzdata-0.65.5/src/io/tdf/constants.rs +133 -0
  97. pymzdata-0.65.5/src/io/tdf/mod.rs +14 -0
  98. pymzdata-0.65.5/src/io/tdf/reader.rs +1745 -0
  99. pymzdata-0.65.5/src/io/tdf/sql.rs +695 -0
  100. pymzdata-0.65.5/src/io/thermo/async_reader.rs +317 -0
  101. pymzdata-0.65.5/src/io/thermo/instruments.rs +1222 -0
  102. pymzdata-0.65.5/src/io/thermo/mod.rs +43 -0
  103. pymzdata-0.65.5/src/io/thermo/reader.rs +1823 -0
  104. pymzdata-0.65.5/src/io/traits/chromatogram.rs +53 -0
  105. pymzdata-0.65.5/src/io/traits/frame.rs +1018 -0
  106. pymzdata-0.65.5/src/io/traits/spectrum.rs +1475 -0
  107. pymzdata-0.65.5/src/io/traits/util.rs +4 -0
  108. pymzdata-0.65.5/src/io/traits.rs +43 -0
  109. pymzdata-0.65.5/src/io/usi.rs +355 -0
  110. pymzdata-0.65.5/src/io/utils.rs +455 -0
  111. pymzdata-0.65.5/src/lib.rs +154 -0
  112. pymzdata-0.65.5/src/main.rs +8 -0
  113. pymzdata-0.65.5/src/meta/activation.rs +346 -0
  114. pymzdata-0.65.5/src/meta/data_processing.rs +213 -0
  115. pymzdata-0.65.5/src/meta/file_description.rs +1134 -0
  116. pymzdata-0.65.5/src/meta/instrument.rs +611 -0
  117. pymzdata-0.65.5/src/meta/run.rs +31 -0
  118. pymzdata-0.65.5/src/meta/sample.rs +27 -0
  119. pymzdata-0.65.5/src/meta/scan_settings.rs +31 -0
  120. pymzdata-0.65.5/src/meta/software.rs +1372 -0
  121. pymzdata-0.65.5/src/meta/traits.rs +396 -0
  122. pymzdata-0.65.5/src/meta.rs +443 -0
  123. pymzdata-0.65.5/src/params.rs +2764 -0
  124. pymzdata-0.65.5/src/prelude.rs +34 -0
  125. pymzdata-0.65.5/src/spectrum/bindata/array.rs +1319 -0
  126. pymzdata-0.65.5/src/spectrum/bindata/conversion.rs +930 -0
  127. pymzdata-0.65.5/src/spectrum/bindata/encodings.rs +1740 -0
  128. pymzdata-0.65.5/src/spectrum/bindata/map.rs +868 -0
  129. pymzdata-0.65.5/src/spectrum/bindata/traits.rs +303 -0
  130. pymzdata-0.65.5/src/spectrum/bindata.rs +17 -0
  131. pymzdata-0.65.5/src/spectrum/chromatogram.rs +275 -0
  132. pymzdata-0.65.5/src/spectrum/frame.rs +810 -0
  133. pymzdata-0.65.5/src/spectrum/group/flat.rs +194 -0
  134. pymzdata-0.65.5/src/spectrum/group/frame.rs +444 -0
  135. pymzdata-0.65.5/src/spectrum/group/mse_iter.rs +318 -0
  136. pymzdata-0.65.5/src/spectrum/group/spectrum.rs +433 -0
  137. pymzdata-0.65.5/src/spectrum/group/util.rs +94 -0
  138. pymzdata-0.65.5/src/spectrum/group.rs +1566 -0
  139. pymzdata-0.65.5/src/spectrum/peaks.rs +780 -0
  140. pymzdata-0.65.5/src/spectrum/scan_properties.rs +1003 -0
  141. pymzdata-0.65.5/src/spectrum/spectrum_types.rs +1768 -0
  142. pymzdata-0.65.5/src/spectrum/utils.rs +377 -0
  143. pymzdata-0.65.5/src/spectrum.rs +96 -0
  144. pymzdata-0.65.5/src/tutorial/ion_mobility.rs +6 -0
  145. pymzdata-0.65.5/src/tutorial/reading.rs +6 -0
  146. pymzdata-0.65.5/src/tutorial/spectrum.rs +6 -0
  147. pymzdata-0.65.5/src/tutorial/writing.rs +6 -0
  148. pymzdata-0.65.5/src/tutorial.rs +5 -0
  149. pymzdata-0.65.5/src/utils.rs +11 -0
@@ -0,0 +1,2 @@
1
+ b0a6b97de1472ee14b19822865ed1a4407cd5cea
2
+ 2dc3cf69b0a00fafaf4484898c670a598b2fd52a
pymzdata-0.65.5/.env ADDED
@@ -0,0 +1 @@
1
+ RUST_LOG=info
@@ -0,0 +1,10 @@
1
+ * text=auto
2
+
3
+ *.rs text
4
+ *.md text
5
+ *.sh text eol=lf
6
+
7
+ *.mzML binary
8
+ *.mzml binary
9
+ *.gz binary
10
+ *.mgf binary
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json",
3
+ "dependencies": [
4
+ {
5
+ "name": "hdf5",
6
+ "version>=": "1.10.1"
7
+ }
8
+ ],
9
+ "overrides": [{ "name": "hdf5", "version": "1.10.1" }],
10
+ "builtin-baseline": "e57b2167e66c847f991bd6bce1355b85acd944e8"
11
+ }
@@ -0,0 +1,119 @@
1
+ name: Release pymzdata
2
+
3
+ # Build the crates/pymzdata wheels + sdist and publish them to PyPI, so downstreams users can
4
+ # `pip install pymzdata` without a Rust toolchain. Mirrors the maturin-action layout used by the
5
+ # ms2rescore-rs, with one crate-specific addition: the `-m crates/pymzdata/Cargo.toml` manifest
6
+ # (pymzdata is a sub-crate). mzdata uses the pure-Rust zlib-rs backend, so no C toolchain is needed.
7
+ on:
8
+ release:
9
+ types: [created]
10
+ workflow_dispatch:
11
+
12
+ permissions:
13
+ contents: read
14
+
15
+ env:
16
+ MANIFEST: crates/pymzdata/Cargo.toml
17
+
18
+ jobs:
19
+ linux:
20
+ runs-on: ubuntu-latest
21
+ strategy:
22
+ matrix:
23
+ target: [
24
+ x86_64,
25
+ # aarch64 https://github.com/aws/aws-lc-rs/issues/1022
26
+ ]
27
+ steps:
28
+ - uses: actions/checkout@v4
29
+ - uses: actions/setup-python@v5
30
+ with:
31
+ python-version: "3.10"
32
+ - name: Build wheels
33
+ uses: PyO3/maturin-action@v1
34
+ with:
35
+ target: ${{ matrix.target }}
36
+ args: --release --out dist --find-interpreter -m ${{ env.MANIFEST }}
37
+ sccache: "true"
38
+ manylinux: auto
39
+ - name: Upload wheels
40
+ uses: actions/upload-artifact@v4
41
+ with:
42
+ name: wheels-linux-${{ matrix.target }}
43
+ path: dist
44
+
45
+ windows:
46
+ runs-on: windows-latest
47
+ strategy:
48
+ matrix:
49
+ target: [x64]
50
+ steps:
51
+ - uses: actions/checkout@v4
52
+ - uses: actions/setup-python@v5
53
+ with:
54
+ python-version: "3.10"
55
+ architecture: ${{ matrix.target }}
56
+ - name: Build wheels
57
+ uses: PyO3/maturin-action@v1
58
+ with:
59
+ target: ${{ matrix.target }}
60
+ args: --release --out dist --find-interpreter -m ${{ env.MANIFEST }}
61
+ sccache: "true"
62
+ - name: Upload wheels
63
+ uses: actions/upload-artifact@v4
64
+ with:
65
+ name: wheels-windows-${{ matrix.target }}
66
+ path: dist
67
+
68
+ macos:
69
+ runs-on: macos-latest
70
+ strategy:
71
+ matrix:
72
+ target: [x86_64, aarch64]
73
+ steps:
74
+ - uses: actions/checkout@v4
75
+ - uses: actions/setup-python@v5
76
+ with:
77
+ python-version: "3.10"
78
+ - name: Build wheels
79
+ uses: PyO3/maturin-action@v1
80
+ with:
81
+ target: ${{ matrix.target }}
82
+ args: --release --out dist --find-interpreter -m ${{ env.MANIFEST }}
83
+ sccache: "true"
84
+ - name: Upload wheels
85
+ uses: actions/upload-artifact@v4
86
+ with:
87
+ name: wheels-macos-${{ matrix.target }}
88
+ path: dist
89
+
90
+ sdist:
91
+ runs-on: ubuntu-latest
92
+ steps:
93
+ - uses: actions/checkout@v4
94
+ - name: Build sdist
95
+ uses: PyO3/maturin-action@v1
96
+ with:
97
+ command: sdist
98
+ args: --out dist -m ${{ env.MANIFEST }}
99
+ - name: Upload sdist
100
+ uses: actions/upload-artifact@v4
101
+ with:
102
+ name: wheels-sdist
103
+ path: dist
104
+
105
+ release:
106
+ name: Release
107
+ runs-on: ubuntu-latest
108
+ needs: [linux, windows, macos, sdist]
109
+ # Trusted Publishing (OIDC): configure a PyPI publisher for this repo + workflow. Swap for
110
+ # `MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_API_TOKEN }}` if you publish with a token instead.
111
+ permissions:
112
+ id-token: write
113
+ steps:
114
+ - uses: actions/download-artifact@v4
115
+ - name: Publish to PyPI
116
+ uses: PyO3/maturin-action@v1
117
+ with:
118
+ command: upload
119
+ args: --non-interactive --skip-existing wheels-*/*
@@ -0,0 +1,31 @@
1
+ on: [push, pull_request]
2
+
3
+ env:
4
+ RUST_BACKTRACE: full
5
+ RUST_LOG: debug
6
+ CARGO_PROFILE_TEST_BUILD_OVERRIDE_DEBUG: true
7
+
8
+ name: Test (HDF5 Static Compilation)
9
+ jobs:
10
+
11
+ test:
12
+ strategy:
13
+ matrix:
14
+ os: [ubuntu-latest]
15
+ name: Test Suite
16
+ runs-on: ${{ matrix.os }}
17
+ steps:
18
+ - name: Checkout sources
19
+ uses: actions/checkout@v4
20
+
21
+ - name: Install stable toolchain
22
+ uses: actions-rs/toolchain@v1
23
+ with:
24
+ profile: minimal
25
+ toolchain: stable
26
+ override: true
27
+ - name: Run cargo test
28
+ uses: actions-rs/cargo@v1
29
+ with:
30
+ command: test
31
+ args: --features hdf5_static,zlib -- --nocapture --show-output
@@ -0,0 +1,122 @@
1
+ on: [push, pull_request]
2
+
3
+ env:
4
+ RUST_BACKTRACE: full
5
+ RUST_LOG: debug
6
+ CARGO_PROFILE_TEST_BUILD_OVERRIDE_DEBUG: true
7
+
8
+ name: Test
9
+ jobs:
10
+
11
+ test:
12
+ strategy:
13
+ matrix:
14
+ os: [ubuntu-latest, windows-latest]
15
+ name: Test Suite
16
+ runs-on: ${{ matrix.os }}
17
+ steps:
18
+ - name: Checkout sources
19
+ uses: actions/checkout@v4
20
+
21
+ - name: Install stable toolchain
22
+ uses: actions-rs/toolchain@v1
23
+ with:
24
+ profile: minimal
25
+ toolchain: stable
26
+ override: true
27
+ - name: Rust Cache
28
+ uses: Swatinem/rust-cache@v2
29
+ - name: Run cargo test
30
+ uses: actions-rs/cargo@v1
31
+ with:
32
+ command: test
33
+ args: --features nalgebra,parallelism,async,mzsignal,thermo,numpress,bruker_tdf -- --nocapture --show-output
34
+
35
+ test-remote:
36
+ name: PROXI Test Suite
37
+ runs-on: ubuntu-latest
38
+ steps:
39
+ - name: Checkout sources
40
+ uses: actions/checkout@v4
41
+
42
+ - name: Install stable toolchain
43
+ uses: actions-rs/toolchain@v1
44
+ with:
45
+ profile: minimal
46
+ toolchain: stable
47
+ override: true
48
+ - name: Rust Cache
49
+ uses: Swatinem/rust-cache@v2
50
+ - name: Run cargo test
51
+ continue-on-error: true
52
+ uses: actions-rs/cargo@v1
53
+ with:
54
+ command: test
55
+ args: --features async,proxi,proxi-async -- --nocapture --show-output
56
+
57
+ test-pymzdata:
58
+ name: pymzdata Python Test Suite
59
+ runs-on: ubuntu-latest
60
+ steps:
61
+ - name: Checkout sources
62
+ uses: actions/checkout@v4
63
+ - name: Set up Python
64
+ uses: actions/setup-python@v5
65
+ with:
66
+ python-version: "3.10"
67
+ - name: Build pymzdata wheel
68
+ uses: PyO3/maturin-action@v1
69
+ with:
70
+ args: --release --out dist -m crates/pymzdata/Cargo.toml
71
+ manylinux: off
72
+ rust-toolchain: stable
73
+ - name: Install pymzdata and test dependencies
74
+ run: |
75
+ python -m pip install dist/*.whl
76
+ python -m pip install 'pytest>=7' 'numpy>=1.21' 'pyteomics>=4.6' 'lxml>=4.9' 'psims>=1.3'
77
+ - name: Run Python tests
78
+ working-directory: crates/pymzdata
79
+ run: python -m pytest -v -s
80
+
81
+ test-spectra-subset:
82
+ name: mzdata-spectra
83
+ runs-on: ubuntu-latest
84
+ steps:
85
+ - name: Checkout sources
86
+ uses: actions/checkout@v4
87
+
88
+ - name: Install stable toolchain
89
+ uses: actions-rs/toolchain@v1
90
+ with:
91
+ profile: minimal
92
+ toolchain: stable
93
+ override: true
94
+ - name: Rust Cache
95
+ uses: Swatinem/rust-cache@v2
96
+
97
+ - name: Run cargo test
98
+ continue-on-error: true
99
+ run: |
100
+ cd crates/mzdata-spectra && cargo build --features mzsignal,nalgebra,serde
101
+
102
+ test-async-subset:
103
+ name: async_partial
104
+ runs-on: ubuntu-latest
105
+ steps:
106
+ - name: Checkout sources
107
+ uses: actions/checkout@v4
108
+
109
+ - name: Install stable toolchain
110
+ uses: actions-rs/toolchain@v1
111
+ with:
112
+ profile: minimal
113
+ toolchain: stable
114
+ override: true
115
+ - name: Rust Cache
116
+ uses: Swatinem/rust-cache@v2
117
+ - name: Run cargo test
118
+ continue-on-error: true
119
+ uses: actions-rs/cargo@v1
120
+ with:
121
+ command: test
122
+ args: --features async_partial -- --nocapture --show-output
@@ -0,0 +1,8 @@
1
+ /target
2
+ test/data/*.index.json
3
+ .vscode/*
4
+ Untitled*
5
+ test.mzML
6
+ tmp.mzML
7
+ *.sh
8
+ *.py
@@ -0,0 +1,30 @@
1
+ {
2
+ // Use IntelliSense to learn about possible attributes.
3
+ // Hover to view descriptions of existing attributes.
4
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5
+ "version": "0.2.0",
6
+ "configurations": [
7
+ {
8
+ "name": "(Windows) Launch",
9
+ "type": "cppvsdbg",
10
+ "request": "launch",
11
+ "program": "${workspaceFolder}/target/debug/mzdata.exe",
12
+ "args": [],
13
+ "stopAtEntry": false,
14
+ "cwd": "${workspaceRoot}",
15
+ "environment": [],
16
+ "console": "internalConsole"
17
+ },
18
+ {
19
+ "name": "Run Test Debugger",
20
+ "type": "cppvsdbg",
21
+ "request": "launch",
22
+ "program": "${workspaceRoot}/target/debug/deps/mzdata-d4d3354e8c37294a.exe",
23
+ "args": [],
24
+ "stopAtEntry": false,
25
+ "cwd": "${workspaceRoot}",
26
+ "environment": [],
27
+ "console": "internalConsole"
28
+ }
29
+ ]
30
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "version": "2.0.0",
3
+ "type": "shell",
4
+ "label": "cargo test build",
5
+ "command": "cargo",
6
+ "args": [
7
+ "test",
8
+ "--no-run"
9
+ ],
10
+ "problemMatcher": [
11
+ "$rustc"
12
+ ]
13
+ }