Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
501 commits
Select commit Hold shift + click to select a range
c88f108
* implement role filter
CalamityC Mar 5, 2026
5a5d2b0
* implement copy in frontend
CalamityC Mar 5, 2026
4bb15f6
* refetch after copy
CalamityC Mar 5, 2026
93163f5
* implement catalog tooltip
CalamityC Mar 6, 2026
eebabb3
* redirect after create and copy
CalamityC Mar 12, 2026
6354b1c
Fix copy action in ProjectViewSet
jochenklar Mar 27, 2026
c1c292b
Fix ProjectViewSet default ordering
jochenklar Mar 27, 2026
028e1c6
Fix strings and translations
jochenklar Mar 27, 2026
f282ed3
Improve style
jochenklar Mar 27, 2026
dedcd95
Rename variables and functions for consistency
jochenklar Mar 27, 2026
6062f2b
Fix minor issues
jochenklar Mar 27, 2026
88760e8
Fix and rename CatalogApi and RoleApi
jochenklar Mar 27, 2026
7cc4fb6
Remove parent from payload if not accessible
CalamityC Mar 27, 2026
58101ab
Undo last commit
CalamityC Mar 27, 2026
2fc61d3
Add new eslint rules and plugin pkg
CalamityC Mar 27, 2026
6dfda47
Fix layout type issues automatically
CalamityC Mar 27, 2026
a6556f9
Fix react/jsx-curly-spacing and react/jsx-wrap-multilines issues auto…
CalamityC Mar 27, 2026
14d88c8
Fix max-len issues in project and projects manually
CalamityC Mar 27, 2026
cda4478
Fix max-len issues in interview manually
CalamityC Mar 27, 2026
2a47261
Fix max-len issues in management manually
CalamityC Mar 27, 2026
fa82f22
Fix max-len issues in core manually
CalamityC Mar 27, 2026
05701c0
Fix formatting manually
jochenklar Mar 28, 2026
4e219ec
Add space-infix-ops and fix automatically
jochenklar Mar 28, 2026
97c0923
Add one-var and fix automatically
jochenklar Mar 28, 2026
aa4ccf9
Add jsx-first-prop-new-line and fix automatically
jochenklar Mar 28, 2026
9290998
Use object-curly-newline without restriction to imports
jochenklar Mar 28, 2026
f5bcae3
Reorder .eslintrc.js and update import rules
jochenklar Mar 28, 2026
7688c48
Use Html component in PageHeadDeleteModal
jochenklar Mar 28, 2026
7602b46
Disable tests
jochenklar Mar 28, 2026
48677e3
Add ancestors to parent related tests
jochenklar Mar 5, 2026
c707cb7
Fix tests
jochenklar Mar 28, 2026
05e7445
Fix format after rebase
jochenklar Mar 28, 2026
d81ce6b
Fix Main component in projects app after rebase
jochenklar Mar 28, 2026
e9ba9c9
Adjust fixtures to fix MySQL tests
jochenklar Mar 28, 2026
e0720af
Fix linting issues
jochenklar Mar 28, 2026
863e5d4
Fix pre-commit config
jochenklar Mar 29, 2026
17e1378
Fix test_package_json_and_pre_commit_versions_match
jochenklar Mar 29, 2026
eec62f4
Fix bootstrap form field
jochenklar Mar 30, 2026
d540335
Add ProjectIssueTaskSerializer and IssueTaskSerializer
jochenklar Apr 27, 2026
bf87f9d
Add task_type and task_area to Task model
jochenklar Apr 27, 2026
66996cc
Use Roboto as main font
jochenklar May 9, 2026
56af93e
Adjust brand in navigation (for now)
jochenklar May 9, 2026
1d645aa
Fix navigation user menu
jochenklar May 9, 2026
89c7a47
Fix base navigation again
jochenklar May 9, 2026
7c5d1c5
Fix export dropdown in management
jochenklar May 9, 2026
3473813
Fix logout when using default Django authentication views
jochenklar May 19, 2026
038a187
Provide copy from project information page
CalamityC May 13, 2026
1422d1f
Rename component and move the button
CalamityC May 19, 2026
d575f61
Add visibility form, api functions, actions, reducer
CalamityC May 13, 2026
2b246c8
reflect settings multisite and groups
CalamityC May 13, 2026
12b9501
Fix perms
CalamityC May 19, 2026
613f094
Fix perms again
CalamityC May 19, 2026
f3c791a
Add template and case for non multisite and non groups settings
CalamityC May 19, 2026
b47b0c8
Tweak display of project.visibility prop
CalamityC May 19, 2026
8b33ac2
Fix fetches in configureStore
CalamityC May 19, 2026
2ec385c
Move sites and groups actions/reducers to core
jochenklar May 21, 2026
728a729
update dashboard and Tile, remove helper component
CalamityC Apr 15, 2026
f0b7e18
change tasks handling
CalamityC Apr 15, 2026
335d171
add card click and invisible tasks
CalamityC Apr 21, 2026
cad0593
add properties to issue serializer
CalamityC May 6, 2026
20a5cc4
extend tests
CalamityC May 6, 2026
d108c95
fix property
CalamityC May 6, 2026
3fa5079
update Dashboard code
CalamityC May 6, 2026
4694662
Use Modal component and add tasks fixtures
CalamityC May 7, 2026
b0c58c9
Extend tests
CalamityC May 7, 2026
23499b6
Limit resolve checks to tasks
CalamityC May 8, 2026
4e86c18
Add render function
CalamityC May 8, 2026
6815f78
Improve sort and status
CalamityC May 11, 2026
fe8f99e
Add update task functionality
CalamityC May 11, 2026
85d98f8
Revert accidentally pushed sync setting
CalamityC May 11, 2026
ea5b50f
Add perms
CalamityC May 11, 2026
26c76dc
Improve step button
CalamityC May 19, 2026
1e401c7
Add questions to ProjectIssueSerializer and IssueSerializer
jochenklar May 19, 2026
0e1f616
Fix e2e test
CalamityC May 19, 2026
17889dc
Remove editors from new tasks fixtures to prevent tests from failing
CalamityC May 19, 2026
9bb9620
Fix questions in issue model
CalamityC May 21, 2026
f362f28
Add questions to frontend display
CalamityC May 21, 2026
8e52939
Extend useFormattedDateTime, tweak questions and date display
CalamityC May 21, 2026
eccb898
Add ProjectIssueTaskConditionSerializer, add attribute field to Proje…
CalamityC Jun 11, 2026
a1f0232
Tweak col display in modal
CalamityC Jun 16, 2026
2c65106
Use models.TextChoices for RelationTypes and fix models and viewets a…
CalamityC Jun 11, 2026
54ccace
Fix typo
CalamityC Jun 15, 2026
edd4462
Fix typo again
CalamityC Jun 15, 2026
53e7c71
Fix test and typo again
CalamityC Jun 15, 2026
27a7e6e
Remove wrong fixes
CalamityC Jun 15, 2026
c5e03ae
Leave constants the same
CalamityC Jun 15, 2026
8636ad3
Add migrations
CalamityC Jun 15, 2026
9b56c9d
Replace lesser_than with less_than
CalamityC Jun 16, 2026
186c60a
Add translation
CalamityC Jun 16, 2026
9ae9315
Add ShowClosedIssues, reduce and rename constants, use classnames, ne…
CalamityC Jun 18, 2026
c13ed25
Add IssueModal, closeLabel prop
CalamityC Jun 18, 2026
aa4235f
Fix package-lock after rebase
jochenklar Jun 20, 2026
20c35c2
Remove tests after rebase
jochenklar Jun 20, 2026
f0a3d37
Fix ruff and eslint issues after rebase
jochenklar Jun 20, 2026
4dd52cf
restore missing constants to handle toggle switch of closed tasks
CalamityC Jun 22, 2026
0857d74
Merge pull request #1647 from rdmorganiser/3.0.0/tasks/fix-toggle-switch
CalamityC Jul 21, 2026
ebba003
Fix console warning when visibility is not set yet
CalamityC Jul 17, 2026
a428d96
Merge pull request #1679 from rdmorganiser/3.0.0/visibility/fix-conso…
CalamityC Jul 21, 2026
07ce675
add date keys for start and end dates of issues
CalamityC Jun 22, 2026
95943ea
Add formatDate function to date util
CalamityC Jun 23, 2026
2ed61cc
Create renderIssueDate util and use it in Dashboard and IssueModal co…
CalamityC Jun 23, 2026
a3140b0
Use correct language import in date.js, add formatDateTime function, …
CalamityC Jun 23, 2026
4193950
Remove useFormattedDateTime and not working lang.js util
CalamityC Jun 23, 2026
d994553
Convert renderIssueDate utility to IssueDate component
CalamityC Jul 22, 2026
02e3388
Use switch/case pattern in getDateTimeFormat function; correct import…
CalamityC Jul 22, 2026
25ae16d
Merge pull request #1651 from rdmorganiser/3.0.0/dashboard/dates
CalamityC Jul 27, 2026
58bb5e9
Render info text and button inside empty snapshot table
CalamityC Jul 24, 2026
712f0c6
Render visibility information in project's sidebar
CalamityC Jul 24, 2026
3edbc4e
Make sure there is visibility in state
CalamityC Jul 24, 2026
7dab34b
Add providers to projects API
jochenklar Jul 28, 2026
f42dafa
Add providers to integration serializers
jochenklar Jul 28, 2026
6b1ebba
Update test_openapi.py
jochenklar Jul 28, 2026
45bef16
Fix integration serializers
jochenklar Jul 30, 2026
417a62b
Move visibility help to ProjectVisibilitySerializer
jochenklar Jul 30, 2026
c8576fd
Remove fetchProjectVisibility from deleteProjectVisibility
jochenklar Jul 30, 2026
710ac3c
Restore visibility_display since it is used in the projects list
jochenklar Jul 30, 2026
f520aed
Refactor visibility in ProjectSerializer again
jochenklar Jul 30, 2026
2140e34
Rename snapshot table function to onCreate
CalamityC Jul 30, 2026
afecd3e
Add permission check
CalamityC Aug 3, 2026
f7bdbf7
Merge pull request #1687 from rdmorganiser/render-info-and-button
CalamityC Aug 4, 2026
3a5976f
Merge pull request #1690 from rdmorganiser/3.0.0/api/integrations
jochenklar Aug 6, 2026
b646336
Merge pull request #1688 from rdmorganiser/show-visibility-info
CalamityC Aug 6, 2026
10e6ddf
Expose project catalog details and disable catalog selection when una…
CalamityC Aug 10, 2026
2a17eb0
Use PATCH to support partial project updates
CalamityC Aug 10, 2026
6f7a93d
Fix some form mode related errors
CalamityC Aug 10, 2026
ccdc05b
Disable only unavailable option not the whole catalog selection
CalamityC Aug 10, 2026
6e429f0
Improve info message
CalamityC Aug 10, 2026
99a244e
Add permission check
CalamityC Aug 10, 2026
1d5e234
Keep unavailable project catalogs visible but disabled
CalamityC Aug 13, 2026
91a5d60
Add separate tests for project object permissions
jochenklar Aug 14, 2026
b9f6bc2
Fix projects rules
jochenklar Aug 14, 2026
1005d99
Update visibility tests
jochenklar Aug 14, 2026
29d1bde
Add permissions to user API
jochenklar Aug 14, 2026
8501efb
Adjust info text, remove comment, change function order, render toolt…
CalamityC Aug 27, 2026
a949368
Accept current unavailable catalog in project updates
CalamityC Aug 27, 2026
a61fe0c
Remove patch function from BaseApi
CalamityC Aug 27, 2026
feb293e
Keep unavailable catalog warning visible after catalog changes, posit…
CalamityC Aug 27, 2026
3eaa4f0
Add CurrentUserSerializer and add permissions only there
jochenklar Aug 27, 2026
887f219
Add test for current user action
jochenklar Aug 27, 2026
0e8d15c
Merge pull request #1709 from rdmorganiser/3.0.0/projects/handle-unav…
CalamityC Aug 27, 2026
5326cd8
Rename Plugins area to Integrations
CalamityC Aug 11, 2026
02d056a
Extend project integration provider serialization and validation
CalamityC Aug 11, 2026
172ea2b
Add project integration management
CalamityC Aug 11, 2026
7ede2ed
Fix test
CalamityC Aug 12, 2026
2572ed8
Add IntegrationsDropdown
CalamityC Aug 13, 2026
7a9054e
Use a shared modal to create and update project integrations
CalamityC Aug 13, 2026
40abe18
Add unique project integration titles
CalamityC Aug 13, 2026
817637c
Remove heading and add help
CalamityC Aug 13, 2026
0b09292
Fix typo
CalamityC Aug 13, 2026
ae58da9
Fix and extend test
CalamityC Aug 14, 2026
dc2af9b
Improve integration secret handling and fix modal request error handling
CalamityC Aug 14, 2026
e2e6752
Validate integration secret replacements and support explicit removal
CalamityC Aug 14, 2026
7ffbaf3
Add comments and refine integration title handling
CalamityC Aug 27, 2026
ab05fb9
Remove unique title validation
CalamityC Aug 27, 2026
0db8baa
Improve integration secret display and editing controls
CalamityC Aug 27, 2026
d73926e
Make provider option errors field errors
CalamityC Aug 28, 2026
3a8df0d
Allow updates to keep configured required secrets
CalamityC Aug 28, 2026
1d2bb42
Centralize integration option validation and collect field errors
CalamityC Aug 28, 2026
6853435
Merge pull request #1713 from rdmorganiser/3.0.0/project/integrations
CalamityC Aug 28, 2026
d12d99c
Fix downloading document for snapshot from tile (#1726)
maklem Aug 26, 2026
648e416
Fix downloading view for snapshot from tile
maklem Aug 31, 2026
5ec11a0
Merge pull request #1729 from rdmorganiser/3.0.0/fix/download-documen…
maklem Sep 4, 2026
316762a
Rename is_site_manager -> is_project_site_manager
jochenklar Sep 4, 2026
0477995
Add can_add_project permission to CurrentUserSerializer
jochenklar Sep 4, 2026
1228f10
Refactor UserViewSet
jochenklar Sep 4, 2026
17c7ff3
Add manager_set method to prevent unnecessary queries
jochenklar Sep 4, 2026
19e07d5
Add separate query performance test for site_manager
jochenklar Sep 4, 2026
d21aaec
Disable group and sites fetch in configureStore
jochenklar Sep 4, 2026
e7703fd
Merge pull request #1715 from rdmorganiser/3.0.0/fix/project-rules
jochenklar Sep 4, 2026
4956f66
Merge pull request #1719 from rdmorganiser/3.0.0/update/permissions
jochenklar Sep 4, 2026
60d3466
Add SendModal component, extend SETTINGS_API, change EMAIL_RECIPIENTS…
CalamityC Jul 1, 2026
2473124
Extend test
CalamityC Jul 1, 2026
0de787f
Extend formData
CalamityC Jul 1, 2026
ff76c21
Add dropdowns
CalamityC Jul 1, 2026
1e0bbcf
Add initialMessage, amall tweaks, remove console logs
CalamityC Jul 1, 2026
84e9f0e
Add TODO comments
CalamityC Jul 1, 2026
7266adb
Rename component, add current to snapshots list
CalamityC Jul 2, 2026
39f2e1c
Fix testfile
CalamityC Jul 2, 2026
46dc1fc
Add new email settings to base.py
CalamityC Jul 2, 2026
7cb2868
Add SendIssueDropdowns component
CalamityC Jul 2, 2026
61730b2
Fix test
CalamityC Jul 2, 2026
4ddff46
Add files endpoint
CalamityC Jul 6, 2026
0c91bf1
Add backend support for files per snapshot
CalamityC Jul 6, 2026
6e168b0
Fetch and select files per snapshot
CalamityC Jul 7, 2026
6b4b0fd
Add todo
CalamityC Jul 8, 2026
0ee8279
Add templates
CalamityC Jul 10, 2026
21e3f19
Adjust form elements
CalamityC Jul 10, 2026
48a9191
Use div
CalamityC Jul 15, 2026
d8d01be
Add TODO implement questions download
CalamityC Jul 23, 2026
762bf07
Fix var names in btn-outline-primary
CalamityC Jul 24, 2026
63501c3
Add is_sendable property, check if true and can_change_issue perm for…
CalamityC Jul 27, 2026
abb96cb
Create a SendIssueButton component
CalamityC Jul 27, 2026
b467806
Extend tests
CalamityC Jul 27, 2026
7d7c739
Remove old comments, make booleans null safe
CalamityC Jul 28, 2026
4afe6f9
fix n_path in api test
CalamityC Aug 6, 2026
a3f7540
Use is_sendable instead of sendable
jochenklar Sep 4, 2026
253f6ba
Use EMAIL_RECIPIENTS_CHOICES instead of EMAIL_RECIPIENTS
jochenklar Sep 4, 2026
a3b4d58
Gardening
jochenklar Sep 4, 2026
2dea2d9
Merge pull request #1667 from rdmorganiser/3.0.0/dashboard/send-tasks
jochenklar Sep 4, 2026
b1dfbc3
Remove views, forms, mixins and corresponding tests from projects app
jochenklar Sep 4, 2026
1a63ecc
Add asserts to test_viewset_project_invite.py
jochenklar Sep 4, 2026
45c607f
Add test_viewset_project_invite_multisite.py
jochenklar Sep 4, 2026
17a7c1e
Add asserts to test_viewset_project.py
jochenklar Sep 4, 2026
1942d2d
Remove bs53 directories, refactor templates and assets and add home e…
jochenklar Sep 5, 2026
89116b7
Update .gitignore
jochenklar Sep 5, 2026
089f559
Remove compressor from settings
jochenklar Sep 5, 2026
9957534
Remove project templates
jochenklar Sep 5, 2026
b1762b8
Remove project templatetags
jochenklar Sep 5, 2026
2d49e41
Remove overlays
jochenklar Sep 5, 2026
e4ed349
Fix webpack.config.js
jochenklar Sep 5, 2026
70066b0
Remove back_to_project_link
jochenklar Sep 10, 2026
a7a5024
Fix project_interview.html
jochenklar Sep 10, 2026
a55b256
Render Integrations entry in sidebar only if providers are present
CalamityC Sep 16, 2026
a53abac
Remove console.log
CalamityC Sep 16, 2026
9b320b4
Render Link conditionally
CalamityC Sep 17, 2026
bfe7a77
Remove . from pythonpath for pytest and add --import-mode=importlib
jochenklar Sep 17, 2026
55c320f
Use pytest rootpath in pandoc tests
jochenklar Sep 17, 2026
6b9cd7f
Fix coverage configuration
jochenklar Sep 17, 2026
3c6a12d
Merge pull request #1775 from rdmorganiser/3.0.0/cleanup-v2+pytest-co…
jochenklar Sep 18, 2026
8fe76e2
Merge pull request #1757 from rdmorganiser/3.0.0/cleanup-v2
jochenklar Sep 18, 2026
c9db6c5
Add e2e package diagnosis in ci and pytest
MyPyDavid Sep 18, 2026
e002b34
Merge pull request #1769 from rdmorganiser/3.0.0/integrations/sidebar
CalamityC Sep 18, 2026
8274f6a
Use user pems to determine if sites and groups are to be fetched
CalamityC Sep 16, 2026
581b9dd
Use different display in visibility form component for site manager
CalamityC Sep 16, 2026
e83ccf3
Remove console.log
CalamityC Sep 16, 2026
103d549
Simplify update and delete actions
CalamityC Sep 17, 2026
91ee411
Change some booleans
CalamityC Sep 17, 2026
7b6a3ea
Guard site visibility controls and improve translatable labels
CalamityC Sep 17, 2026
7e8f3ea
Improve project visibility permissions and submission state handling
CalamityC Sep 17, 2026
588eebb
Expose site and group view permissions in the current user serializer…
CalamityC Sep 17, 2026
bcbf0e6
Fix multisite add visibility bug for site admins and add test
CalamityC Sep 18, 2026
e22e604
Represent unrestricted visibility as all sites and groups selected in UI
CalamityC Sep 18, 2026
23c6cb6
Fetch sites and groups only if settings exist
CalamityC Sep 18, 2026
a9aea93
Improve pending handling
CalamityC Sep 18, 2026
754e270
Fix perms
CalamityC Sep 18, 2026
f8c81f7
Refactor ci-specific test for verifying installed package
MyPyDavid Sep 21, 2026
ccce23d
Merge pull request #1773 from rdmorganiser/3.0.0/refactor-visibility
CalamityC Sep 22, 2026
940b428
Merge pull request #1776 from rdmorganiser/3.0.0/cleanup-v2+pytest-co…
MyPyDavid Sep 22, 2026
e6d1840
Add utility function and hook for combining user and project perms
CalamityC Sep 16, 2026
64e67fe
Use combined user and project permissions in frontend components
CalamityC Sep 16, 2026
00a2113
Remove can_leave_project from user permissions
CalamityC Sep 18, 2026
b2786d3
Add comments
CalamityC Sep 22, 2026
6b4bcd4
Rename utility function and hook
CalamityC Sep 22, 2026
783e946
Use combined permissions in configureStore
CalamityC Sep 22, 2026
2298722
Merge pull request #1774 from rdmorganiser/3.0.0/permissions
CalamityC Sep 22, 2026
db09f49
Add separate navigationActions
jochenklar Sep 22, 2026
4147b3e
Merge pull request #1785 from rdmorganiser/3.0.0/navigation-actions
jochenklar Sep 24, 2026
7aaff2c
Add EmptyTableRow component and use it in projects and snapshots tables
CalamityC Oct 1, 2026
f9ae819
Rename EmptyTableRow props
CalamityC Oct 6, 2026
6298887
Merge pull request #1798 from rdmorganiser/empty-projects-list
CalamityC Oct 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
109 changes: 101 additions & 8 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,24 +22,117 @@ module.exports = {
'sourceType': 'module'
},
'plugins': [
'simple-import-sort',
'react'
],
'ignorePatterns': ['**/static/**/*.js'],
'rules': {
'indent': 'off',
// Disable unused rules
'no-empty-pattern': 'off',
'linebreak-style': [

// Unix linebreaks only
'linebreak-style': ['error', 'unix'],

// Single quotes, allow double to avoid escaping
'quotes': [
'error',
'unix'
'single',
{ 'avoidEscape': true }
],
'quotes': [

// No semicolons
'semi': ['error', 'never'],

// Maximum line length of 120 characters
'max-len': [
'error',
{
'code': 120,
'ignoreUrls': true,
'ignoreRegExpLiterals': true
}
],

// Indent by 2 spaces
'indent': ['error', 2, {
'SwitchCase': 1,
}],

// Enforce spaces around =, +, ==, ?, :, etc.
'space-infix-ops': 'error',

// Enforce separate const declarations
'one-var': ['error', 'never'],

// Ensure spaces after commas
'comma-spacing': ['error', { before: false, after: true }],

// Disallow newlines between the operands of a ternary expression
'multiline-ternary': ['error', 'never'],

// Ensure correct multiline imports
'object-curly-newline': ['error', {
multiline: true,
consistent: true
}],

// Import order
'simple-import-sort/imports': ['error', {
groups: [
// external imports in the given order
['^react$', '^prop-types$', '^react', '^redux', '^[a-z]', '^lodash'],
// rdmo imports: lowercase first, then capitalized components
['^rdmo/.*\\/[a-z]'],
['^rdmo/.*\\/[A-Z]'],
// parent imports: lowercase first, then capitalized components
['^\\.\\..*\\/[a-z]'],
['^\\.\\..*\\/[A-Z]'],
// sibling imports: lowercase first, then capitalized components
['^\\./.*\\/[a-z]'],
['^\\./.*\\/[A-Z]'],
],
}],

// Export order
'simple-import-sort/exports': 'error',

// JSX: require a newline before the first prop when the JSX spans multiple lines and there is more than one prop
'react/jsx-first-prop-new-line': ['error', 'multiline-multiprop'],

// JSX: wrap multiline expressions in parens, opening paren on a new line
'react/jsx-wrap-multilines': [
'error',
'single'
{
'declaration': 'parens-new-line',
'assignment': 'parens-new-line',
'return': 'parens-new-line',
'arrow': 'parens-new-line',
'condition': 'parens-new-line',
'logical': 'parens-new-line',
'prop': 'parens-new-line'
}
],
'semi': [

// JSX curly braces: require newlines inside for multiline expressions
'react/jsx-curly-newline': [
'error',
'never'
]
{
'multiline': 'require',
'singleline': 'consistent'
}
],

// JSX curly brace spacing: no spaces inside { }
'react/jsx-curly-spacing': [
'error',
{
'when': 'never',
'children': true
}
],

// JSX double quotes for props
'jsx-quotes': ['error', 'prefer-double'],
},
'settings': {
'react': {
Expand Down
14 changes: 13 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,20 @@ jobs:
- run: mkdir screenshots
- name: Collect static files into static root (only required if rdmo is installed from wheel)
run: python testing/manage.py collectstatic --noinput
- name: Verify installed wheel package and asset origins for CI
continue-on-error: true
run: |
python -I -c 'import rdmo; print("isolated Python:", rdmo.__file__)'
python testing/manage.py shell -c 'import rdmo; print("manage.py:", rdmo.__file__)'
pytest rdmo/*/tests -m ci \
-p randomly -p no:cacheprovider -s -q --nomigrations
env:
DJANGO_DEBUG: True
GITHUB_DB_BACKEND: ${{ matrix.db-backend }}
- name: Run end-to-end tests
run: pytest -p randomly -p no:cacheprovider --reuse-db --numprocesses=auto --dist=loadscope -m e2e --nomigrations
run: |
pytest -p randomly -p no:cacheprovider --reuse-db --numprocesses=auto --dist=loadscope \
-m e2e --nomigrations
env:
DJANGO_DEBUG: True
GITHUB_DB_BACKEND: ${{ matrix.db-backend }}
Expand Down
14 changes: 2 additions & 12 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,8 @@ dist
.ruff_cache
.on-save.json

rdmo/core/static
rdmo/management/static
rdmo/projects/static

rdmo/core/static/core/js/base.js
rdmo/core/static/core/js/base.js.LICENSE.txt
rdmo/core/static/core/css/base.css
rdmo/core/static/core/fonts

rdmo/projects/static/projects/css/interview.css
rdmo/projects/static/projects/css/projects.css
rdmo/projects/static/projects/fonts/
rdmo/projects/static/projects/js/interview.js
rdmo/projects/static/projects/js/interview.js.LICENSE.txt
rdmo/projects/static/projects/js/projects.js
rdmo/projects/static/projects/js/projects.js.LICENSE.txt
screenshots
1 change: 1 addition & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ repos:
additional_dependencies:
- eslint@8.56.0
- eslint-plugin-react@7.37.0
- eslint-plugin-simple-import-sort@12.1.1
- react@18.3.1
- repo: https://github.com/crate-ci/typos
rev: 37bb98842b0d8c4ffebdb75301a13db0267cef89 # frozen: v1.47.2
Expand Down
2 changes: 1 addition & 1 deletion conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ def fixtures():
'domain',
'groups',
'options',
'overlays',
'projects',
'questions',
'sites',
Expand All @@ -41,6 +40,7 @@ def django_db_setup(django_db_setup, django_db_blocker, fixtures):
"""Populate database with test data from fixtures directories."""
with django_db_blocker.unblock():
call_command('loaddata', *fixtures)
call_command('rebuild_mptt')
set_group_permissions()


Expand Down
79 changes: 79 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 6 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"build:prod": "webpack --config webpack.config.js --mode production",
"build": "webpack --config webpack.config.js --mode development",
"watch": "webpack --config webpack.config.js --mode development --watch",
"lint": "eslint --ext .js rdmo/"
"lint": "eslint rdmo/**/*.js"
},
"author": "RDMO Arbeitsgemeinschaft <rdmorganiser.github.io>",
"license": "Apache-2.0",
Expand All @@ -20,7 +20,11 @@
"dependencies": {
"@codemirror/lang-html": "^6.4.2",
"@codemirror/lang-javascript": "^6.2.2",
"@fontsource/roboto": "^5.2.10",
"@fontsource/roboto-slab": "^5.2.6",
"@uiw/react-codemirror": "^4.25.1",
"bootstrap": "^5.3.3",
"bootstrap-icons": "^1.11.3",
"bootstrap-sass": "^3.4.1",
"classnames": "^2.5.1",
"date-fns": "^4.4.0",
Expand Down Expand Up @@ -56,6 +60,7 @@
"css-loader": "^7.1.1",
"eslint": "^8.56.0",
"eslint-plugin-react": "^7.37.2",
"eslint-plugin-simple-import-sort": "^12.1.1",
"file-loader": "^6.2.0",
"mini-css-extract-plugin": "^2.10.2",
"sass": "^1.99.0",
Expand Down
16 changes: 11 additions & 5 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,8 @@ dependencies = [
"defusedxml>=0.7.1,<1.0",
"django>=5.2.8,<6.0",
"django-cleanup>=8.0,<10.0",
"django-compressor>=4.4,<5.0",
"django-extensions>=3.2,<5.0",
"django-filter>=23.2,<26.0",
"django-libsass>=0.9,<1.0",
"django-mathfilters>=1.0,<2.0",
"django-mptt>=0.16.0,<1.0.0",
"django-settings-export>=1.2,<2.0",
Expand Down Expand Up @@ -200,9 +198,10 @@ parametrize-names-type = "csv"
strict = true
DJANGO_SETTINGS_MODULE = "config.settings"
testpaths = ["rdmo/*/tests"]
pythonpath = [".", "testing"]
addopts = ["-ra", "-p no:randomly", "-m", "not e2e"]
pythonpath = ["testing"]
addopts = ["-ra", "-p no:randomly", "-m", "not e2e and not ci", "--import-mode=importlib"]
markers = [
"ci: marks tests that run only in CI",
"e2e: marks tests as end-to-end tests using playwright (deselect with '-m \"not e2e\"')",
"performance: marks query-count regression tests",
]
Expand All @@ -215,10 +214,16 @@ filterwarnings = [
]

[tool.coverage.run]
source = ["rdmo"]
source_pkgs = ["rdmo"]
branch = true
parallel = true

[tool.coverage.paths]
source = [
"rdmo/",
"*/site-packages/rdmo/",
]

[tool.coverage.report]
omit = [
"*/management/commands/*",
Expand All @@ -234,6 +239,7 @@ default.extend-ignore-re = [
"(?Rm)^.*(#|//)\\s*spellchecker:disable-line$", # for .py files
"(?Rm)^.*<!-- spellchecker:disable-line -->$", # for .html files
]
files.extend-exclude = ["rdmo/core/templates/core/home.html"]

[tool.check-wheel-contents] # Ref: https://github.com/jwodder/check-wheel-contents
ignore = [
Expand Down
Loading