Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
75 commits
Select commit Hold shift + click to select a range
a67e33b
fix: remove dependency on Max's personal eslint config
g1rly-c0d3r Sep 1, 2026
b467a64
fix: remove dependency on Max's personal eslint-react config
g1rly-c0d3r Sep 1, 2026
0df69bc
fix: remove dependency on Max's prettier config
g1rly-c0d3r Sep 1, 2026
117a6d7
fix: remove dependency on Max's personal dotfiles from `package.json`
g1rly-c0d3r Sep 1, 2026
0bc5269
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 2, 2026
a9883f8
Merge branch 'main' into issue-8490
g1rly-c0d3r Sep 2, 2026
8bd7d95
Merge branch 'issue-8490' of github.com:specify/specify7 into issue-8490
g1rly-c0d3r Sep 2, 2026
efeffb9
fix: change static string in base config to recommended object
g1rly-c0d3r Sep 2, 2026
3898ea7
fix: typos and deprecated options
g1rly-c0d3r Sep 2, 2026
70179df
fix: address coderabbit comments
g1rly-c0d3r Sep 2, 2026
ba79515
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 2, 2026
9a44713
fix: source eslint config in CI
g1rly-c0d3r Sep 2, 2026
765f94e
Merge branch 'issue-8490' of github.com:specify/specify7 into issue-8490
g1rly-c0d3r Sep 2, 2026
6307ad3
fix: remove unused imports
g1rly-c0d3r Sep 2, 2026
d7298ca
fix: coderabbit comments
g1rly-c0d3r Sep 2, 2026
fba0b03
fix: add sonarjs as a pluggin
g1rly-c0d3r Sep 2, 2026
2f374dc
fix: add react lints back
g1rly-c0d3r Sep 2, 2026
92cbf40
fix: eslint is no longer crashing
g1rly-c0d3r Sep 23, 2026
c3dc1d4
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 23, 2026
879658b
fix: remove dependency on Max's stylelint config
g1rly-c0d3r Sep 24, 2026
a3fa2b4
Merge branch 'main' into issue-8490
g1rly-c0d3r Sep 24, 2026
a73d527
fix: expect result.current instead of result
g1rly-c0d3r Sep 24, 2026
dfa231f
fix: remove unused imports and duplicate rules
g1rly-c0d3r Sep 24, 2026
c70cc18
fix: merge overrides in package.json
g1rly-c0d3r Sep 24, 2026
6a21987
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 24, 2026
b7352ab
fix: remove depricated stylelint rules
g1rly-c0d3r Sep 24, 2026
aa200d3
fix: move testing lint rules to apply to test files only
g1rly-c0d3r Sep 24, 2026
52368cf
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 24, 2026
fc817d4
fix: remove depricated stylelint rules
g1rly-c0d3r Sep 25, 2026
26d4011
fix: anchor valid keyframe regex
g1rly-c0d3r Sep 29, 2026
35a85f5
Merge branch 'main' into issue-8490
g1rly-c0d3r Sep 29, 2026
9230aaf
fix:typo
g1rly-c0d3r Sep 29, 2026
b86ea57
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 29, 2026
a389b99
fix: state `@eslint/js` explicitly
g1rly-c0d3r Sep 29, 2026
a4b1c80
Merge branch 'issue-8490' of github.com:specify/specify7 into issue-8490
g1rly-c0d3r Sep 29, 2026
da5387d
fix: bound dependency versions
g1rly-c0d3r Sep 29, 2026
1329160
fix: state stylelint as an explicit dependency
g1rly-c0d3r Sep 29, 2026
a21d1ba
fix: pin brace-expansion version to be in line with our dependencies
g1rly-c0d3r Sep 29, 2026
ac5b423
Merge branch 'main' into issue-8490
g1rly-c0d3r Sep 29, 2026
9d2dec2
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 29, 2026
d959d46
fix: un-pin brace-expansion so that glob does not break
g1rly-c0d3r Sep 29, 2026
623f625
Lint code with ESLint and Prettier
g1rly-c0d3r Sep 29, 2026
18f9df4
Merge branch 'main' into issue-8490
g1rly-c0d3r Oct 23, 2026
3b0812c
fix: resolve merge conflicts
g1rly-c0d3r Oct 23, 2026
c01ef52
Lint code with ESLint and Prettier
g1rly-c0d3r Oct 23, 2026
1f9d8d8
fix: pin version in override so will not throw an error
g1rly-c0d3r Oct 26, 2026
c0f3863
Merge branch 'main' into issue-8490
g1rly-c0d3r Oct 26, 2026
2aff1ab
Lint code with ESLint and Prettier
g1rly-c0d3r Oct 26, 2026
0d72736
fix: add `@eslint/js` as an explicit dev dependency
g1rly-c0d3r Oct 27, 2026
5284fb2
Merge branch 'main' into issue-8490
g1rly-c0d3r Oct 27, 2026
c0d29ec
fix: update function name in test
g1rly-c0d3r Oct 27, 2026
49feac5
fix: remove Class selector from no-restricted-syntax rule
g1rly-c0d3r Oct 27, 2026
132d2e3
chore: sync irrelevent files with `main`
g1rly-c0d3r Oct 27, 2026
98c4225
fix: add async token to async tests
g1rly-c0d3r Oct 27, 2026
a046b45
Lint code with ESLint and Prettier
g1rly-c0d3r Oct 27, 2026
1da3e69
fix: await for test results so they do not finish prematurely
g1rly-c0d3r Oct 27, 2026
3ffa9d2
Merge branch 'issue-8490' of github.com:specify/specify7 into issue-8490
g1rly-c0d3r Oct 27, 2026
aaefc03
fix: refactor tests to account for async results
g1rly-c0d3r Oct 27, 2026
de99f77
fix: filter frontend files to lint only what changed
g1rly-c0d3r Oct 27, 2026
ceb2db1
fix: revert eslint changes for files that have not changed
g1rly-c0d3r Oct 27, 2026
f0a151d
fix: await async tests
g1rly-c0d3r Oct 27, 2026
58df4a9
Lint code with ESLint and Prettier
g1rly-c0d3r Oct 27, 2026
f8e0f1b
fix: turn off prefer-find-by so our tests don't break
g1rly-c0d3r Oct 27, 2026
4276868
fix: revert de99f77a
g1rly-c0d3r Oct 27, 2026
61d61d7
Merge branch 'issue-8490' of github.com:specify/specify7 into issue-8490
g1rly-c0d3r Oct 27, 2026
3e750ab
fix: revert eslint "fix" that breaks this test
g1rly-c0d3r Oct 27, 2026
fa56512
chore: apply eslint autofixes in a way that doesn't break our tests
g1rly-c0d3r Oct 28, 2026
b974ac6
fix: disable eslint rules that cause auto-fixes to make tests fail
g1rly-c0d3r Oct 28, 2026
d469a80
Merge branch 'main' into issue-8490
g1rly-c0d3r Oct 28, 2026
3b41802
Lint code with ESLint and Prettier
g1rly-c0d3r Oct 28, 2026
e527451
fix: revert breaking CI change for prettier formatting
g1rly-c0d3r Oct 28, 2026
c1efb27
fix: update brace-expansion override to move out of the window of kno…
g1rly-c0d3r Oct 29, 2026
c1fa0ef
fix: remove depricated stylelint package
g1rly-c0d3r Oct 29, 2026
b92337d
Merge branch 'main' into issue-8490
g1rly-c0d3r Oct 29, 2026
7f39285
Lint code with ESLint and Prettier
g1rly-c0d3r Oct 29, 2026
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
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@ jobs:
run: |
# TODO: Once most errors are fixed remove "set +e" to not ignore errors
set +e
npx eslint --fix --color `echo "${{steps.changed.outputs.changed}}" | tr " " "\n"`
ESLINT_USE_FLAT_CONFIG=true npx eslint --fix --color `echo "${{steps.changed.outputs.changed}}" | tr " " "\n"`
Comment thread
g1rly-c0d3r marked this conversation as resolved.
set -e

- name: Reformat all code with Prettier
Expand Down
120 changes: 111 additions & 9 deletions specifyweb/frontend/js_src/.stylelintrc.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,116 @@
'use strict';

module.exports = {
extends: '@maxxxxxdlp/stylelint-config',
export default {
extends: ['stylelint-config-standard'], // Don't need stylelint-config-prettier after version 15
rules: {
// Some rules are disabled as they conflict with `prettier`
// They should be enabled if you don't use `prettier`

'color-no-invalid-hex': true,
'font-family-no-duplicate-names': true,
'font-family-no-missing-generic-family-keyword': true,
//'named-grid-areas-no-invalid': true, // seems to not exist
'function-calc-no-unspaced-operator': true,
'function-linear-gradient-no-nonstandard-direction': true,
'string-no-newline': true,
'unit-no-unknown': true,
'property-no-unknown': true,
'keyframe-declaration-no-important': true,
'declaration-block-no-duplicate-properties': true,
'declaration-block-no-shorthand-property-overrides': true,
'block-no-empty': true,
'selector-pseudo-class-no-unknown': true,
'selector-pseudo-element-no-unknown': true,
'selector-type-no-unknown': true,
'media-feature-name-no-unknown': true,
'comment-no-empty': true,
'no-descending-specificity': true,
'no-duplicate-at-import-rules': true,
'no-duplicate-selectors': true,
'no-empty-source': true,
//'no-extra-semicolons': true,
'no-invalid-double-slash-comments': true,
'alpha-value-notation': 'number',
'hue-degree-notation': 'angle',
'color-function-notation': 'modern',
'color-named': 'never',
'length-zero-no-unit': true,
'font-weight-notation': 'numeric',
'function-url-scheme-allowed-list': ['https', 'data'],
'keyframes-name-pattern': '^[a-z]+(-[a-z]+)*$',
'number-max-precision': 2,
'shorthand-property-no-redundant-values': true,
'custom-property-pattern': '[a-z]+(-[a-z]+)*',
'declaration-block-single-line-max-declarations': 1,
'selector-class-pattern': '[a-z]+(-[a-z]+)*',
'selector-id-pattern': '[a-z]+(-[a-z]+)*',
//'selector-max-empty-lines': 0,
'selector-pseudo-element-colon-notation': 'double',
'comment-word-disallowed-list': ['FIXME:'],
'no-unknown-animations': true,
//'color-hex-case': 'lower',
'font-family-name-quotes': 'always-unless-keyword',
//'function-comma-space-after': 'always',
//'function-comma-space-before': 'never',
//'function-max-empty-lines': 0,
'function-name-case': 'lower',
'function-url-quotes': 'always',
//'number-leading-zero': 'always',
//'number-no-trailing-zeros': true,
//'string-quotes': 'double',
//'unit-case': 'lower',
'value-keyword-case': 'lower',
//'value-list-comma-space-after': true,
//'value-list-comma-space-before': false,
//'value-list-max-empty-lines': 0,
'custom-property-empty-line-before': 'never',
//'property-case': 'lower',
//'declaration-colon-space-after': 'always',
//'declaration-colon-space-before': 'never',
'declaration-empty-line-before': 'never',
//'declaration-block-semicolon-newline-after': 'always',
//'declaration-block-semicolon-newline-before': 'never',
//'declaration-block-semicolon-space-after': 'always-single-line',
//'declaration-block-semicolon-space-before': 'never',
//'declaration-block-trailing-semicolon': 'always',
//'block-closing-brace-newline-after': 'always',
//'block-closing-brace-newline-before': 'always',
//'block-closing-brace-space-after': 'always-single-line',
//'block-closing-brace-space-before': 'always-single-line',
//'block-opening-brace-newline-after': 'always',
//'block-opening-brace-space-after': 'always',
//'block-opening-brace-space-before': 'always-single-line',
'selector-attribute-quotes': 'always',
//'selector-combinator-space-after': 'always',
//'selector-combinator-space-before': 'always',
//'selector-descendant-combinator-no-non-space': true,
//'selector-pseudo-class-case': 'lower',
//'selector-pseudo-element-case': 'lower',
'selector-type-case': 'lower',
//'selector-list-comma-newline-after': 'always',
//'selector-list-comma-newline-before': 'never-multi-line',
//'selector-list-comma-space-before': 'never',
//'rule-empty-line-before': 'always',
//'media-feature-name-case': 'lower',
//'media-query-list-comma-newline-after': 'always',
//'media-query-list-comma-newline-before': 'never-multi-line',
//'at-rule-empty-line-before': 'always',
//'at-rule-name-case': 'lower',
//'at-rule-name-newline-after': 'never',
//'at-rule-semicolon-newline-after': 'always',
'comment-whitespace-inside': 'always',
//'indentation': 2,
//'linebreaks': 'unix',
//'max-empty-lines': 4,
//'max-line-length': [
// 72,
// {
// 'ignore': 'non-comments',
// },
//],
//'no-eol-whitespace': true,
//'no-missing-end-of-source-newline': true,
//'no-empty-first-line': true,
'at-rule-no-unknown': [
true,
{
Expand All @@ -17,11 +125,5 @@ module.exports = {
},
],
},
overrides: [
{
files: ['**/*.ts', '**/*.tsx', '**/*.js', '**/*.jsx'],
customSyntax: '@stylelint/postcss-css-in-js',
},
],
ignoreFiles: ['**/*.md'],
ignoreFiles: ['**/*.md', '**/*.ts', '**/*.tsx', '**/*.js', '**/*.jsx']
};
Loading
Loading