diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 1428e6ac2..ab2a2c12a 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -2,11 +2,11 @@ "name": "compiler-explorer", "dockerFile": "Dockerfile", "build": { - "args": {"NODE_MAJOR_VERSION": "20"} + "args": { "NODE_MAJOR_VERSION": "20" } }, "postCreateCommand": [".devcontainer/post-create.sh"], "portsAttributes": { - "10240": {"label": "Compiler Explorer"} + "10240": { "label": "Compiler Explorer" } }, "customizations": { "vscode": { diff --git a/.eslint-license-header.yml b/.eslint-license-header.yml deleted file mode 100644 index f3be3702c..000000000 --- a/.eslint-license-header.yml +++ /dev/null @@ -1,32 +0,0 @@ ---- -plugins: - - eslint-plugin-header -rules: - header/header: - - off - - line - - - pattern: '^ Copyright \\(c\\) \\d{4}, .*$' - template: ' Copyright (c) 2022, Compiler Explorer Authors' - - ' All rights reserved.' - - '' - - ' Redistribution and use in source and binary forms, with or without' - - ' modification, are permitted provided that the following conditions are met:' - - '' - - ' * Redistributions of source code must retain the above copyright notice,' - - ' this list of conditions and the following disclaimer.' - - ' * Redistributions in binary form must reproduce the above copyright' - - ' notice, this list of conditions and the following disclaimer in the' - - ' documentation and/or other materials provided with the distribution.' - - '' - - ' THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"' - - ' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE' - - ' IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE' - - ' ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE' - - ' LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR' - - ' CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF' - - ' SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS' - - ' INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN' - - ' CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)' - - ' ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE' - - ' POSSIBILITY OF SUCH DAMAGE.' - - 1 diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 851b95e0d..000000000 --- a/.eslintignore +++ /dev/null @@ -1,12 +0,0 @@ -# If you change this file, please also modify .prettierignore -# Uninteresting folders (node_modules and dotfiles/dotfolders ignored by default) -coverage -docs -etc -examples -out -views - -# Autogenerated files -lib/asm-docs/generated/asm-docs-* -etc/scripts/docenizer/vendor/jvms.html diff --git a/.eslintrc.yml b/.eslintrc.yml deleted file mode 100644 index 9a3d31afa..000000000 --- a/.eslintrc.yml +++ /dev/null @@ -1,181 +0,0 @@ ---- -root: true -plugins: - - import - - jsdoc - - n - - promise - - sonarjs - - prettier - - unicorn - - '@typescript-eslint' - - unused-imports -extends: - - ./.eslint-license-header.yml - - eslint:recommended - - plugin:import/recommended - - plugin:n/recommended - - plugin:unicorn/recommended - - prettier - - plugin:@typescript-eslint/eslint-recommended - - plugin:@typescript-eslint/recommended - - plugin:import/typescript -env: - node: true - es6: true -rules: - prettier/prettier: error - comma-dangle: - - error - - arrays: always-multiline - objects: always-multiline - imports: always-multiline - exports: always-multiline - functions: always-multiline - eol-last: - - error - - always - eqeqeq: - - error - - smart - import/default: off # fs-extra trips this. the ts compiler catches actual errors - import/extensions: error - import/first: error - import/newline-after-import: error - import/no-absolute-path: error - #import/no-cycle: error # TODO(jeremy-rifkin) disabled for now due to compilation types - import/no-default-export: error - import/no-deprecated: error - import/no-mutable-exports: error - import/no-named-as-default-member: off # Far too many things (express, morgan, fs) trip this - import/no-self-import: error - import/no-useless-path-segments: error - import/no-webpack-loader-syntax: error - import/no-unresolved: off # Doesn't like .js files - import/order: - - error - - alphabetize: - order: asc - caseInsensitive: true - newlines-between: always - max-len: - - error - - 120 - - ignoreRegExpLiterals: true - max-statements: - - error - - 100 # TODO reduce...was 50 - no-console: error - no-control-regex: 0 - no-duplicate-imports: error - no-useless-call: error - no-useless-computed-key: error - no-useless-concat: error - '@typescript-eslint/no-useless-constructor': error - no-useless-escape: error - no-useless-rename: error - no-useless-return: error - no-empty: - - error - - allowEmptyCatch: true - quote-props: - - error - - as-needed - quotes: - - error - - single - - allowTemplateLiterals: true - avoidEscape: true - semi: - - error - - always - space-before-function-paren: - - error - - anonymous: always - asyncArrow: always - named: never - keyword-spacing: - - error - - after: true - yoda: - - error - - never - - onlyEquality: true - prefer-const: - - error - - destructuring: all - jsdoc/check-alignment: error - jsdoc/check-param-names: error - jsdoc/check-syntax: error - jsdoc/check-tag-names: off - jsdoc/check-types: error - jsdoc/empty-tags: error - jsdoc/require-hyphen-before-param-description: error - jsdoc/valid-types: error - no-multiple-empty-lines: - - error - - max: 1 - maxBOF: 0 - maxEOF: 0 - n/no-process-exit: off - promise/catch-or-return: error - promise/no-new-statics: error - promise/no-return-wrap: error - promise/param-names: error - promise/valid-params: error - sonarjs/no-collection-size-mischeck: error - sonarjs/no-redundant-boolean: error - sonarjs/no-unused-collection: error - sonarjs/prefer-immediate-return: error - sonarjs/prefer-object-literal: error - sonarjs/prefer-single-boolean-return: error - sort-imports: - - error - - ignoreCase: true - ignoreDeclarationSort: true - unicorn/catch-error-name: off - unicorn/consistent-function-scoping: off - unicorn/empty-brace-spaces: off - unicorn/no-fn-reference-in-iterator: off - unicorn/no-hex-escape: off - unicorn/no-null: off - unicorn/no-reduce: off - unicorn/numeric-separators-style: off - unicorn/prefer-add-event-listener: off - unicorn/prefer-flat-map: error - unicorn/prefer-optional-catch-binding: off - unicorn/prefer-node-protocol: off # until we get node 16+ - unicorn/prefer-number-properties: off - unicorn/prefer-string-slice: off - unicorn/prevent-abbreviations: off - # things we'd like to turn on but need fairly extensive code changes: - unicorn/prefer-ternary: off - unicorn/prefer-array-some: off - unicorn/prefer-spread: off - unicorn/no-lonely-if: off - unicorn/no-array-reduce: off - unicorn/prefer-array-flat: off # can't turn off yet without tests blowing up; lodash vs underscore? - unicorn/no-array-callback-reference: off - unicorn/prefer-switch: off - unicorn/no-static-only-class: off - unicorn/no-process-exit: off - unicorn/no-useless-undefined: - - error - - checkArguments: false - 'unused-imports/no-unused-imports': error - '@typescript-eslint/no-empty-function': off - '@typescript-eslint/no-unused-vars': off - '@typescript-eslint/no-explicit-any': off - unicorn/prefer-at: off - unicorn/prefer-negative-index: off -parserOptions: - sourceType: module - ecmaVersion: 2020 -globals: - BigInt: true -settings: - node: - tryExtensions: [.js, .ts] - import/parsers: - '@typescript-eslint/parser': [.ts, .tsx] - import/resolver: 'typescript' diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml index 65ca36307..fec0d0867 100644 --- a/.idea/codeStyles/Project.xml +++ b/.idea/codeStyles/Project.xml @@ -17,6 +17,9 @@ + +