Skip to content

Commit 6f04c01

Browse files
committed
MNT bump to 3.1.1
1 parent f600e7c commit 6f04c01

File tree

23 files changed

+2409
-1209
lines changed

23 files changed

+2409
-1209
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,18 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/), and this
55

66
## [Release candidate] - started 2025-01
77

8+
## [3.1.1] - 2025-01-15
9+
10+
### Fixed
11+
12+
- ValidationError for IntersectResponse in `/api/v0/modification/target/RBP?` (Bed6Record DTO).
13+
- EUFID link in ModificationSiteTable.
14+
15+
### Changed
16+
17+
- dev and tests dependencies
18+
- node/npm version
19+
820
## [3.1.0] - 2025-01-08
921

1022
### Added

TODO.org

Lines changed: 29 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -5,122 +5,56 @@ Draft or long-running issues, WIP, triage, and additional references or context
55

66
* TODO SCIMODOM DRAFT ISSUES
77

8-
** TODO MAINTENANCE [0/1]
8+
** TODO STYLE [0/9]
99

10-
- [ ] ~pre-commit run --all-files~ under server (.pre-commit-config.yaml) runs for all files incl. client.
11-
12-
** TODO STYLE [11/23]
13-
14-
- [ ] DEADLINE: <2024-09-30 Mon> To harmonize style across views, components, and presets (colours, behaviour, dark mode, /etc./).
15-
16-
- [X] CascadeSelect /cf./ [[https://github.com/dieterich-lab/scimodom/issues/103][Cascade truncated.]]
17-
- [X] CascadeSelect "No available options" is not defined, /cf./ TreeSelect or Dropdown. Styling is different.
18-
- [X] In ~ProjectMetadata,vue~, some placeholders are grey, others are black/darker (resp. lighter in dark mode).
19-
- [-] Dark mode (specific issues)
20-
- [ ] Logos are displayed in greyscale in dark mode, as invert also inverts the colors. Otherwise, we may have to use 2 logos,
21-
or create SVGs.
22-
- [X] ~DataTable~: ~stripedRows~ for dark mode.
10+
- [ ] Logos are displayed in ~dark:greyscale~ in dark mode; ~dark:invert~ only inverts the color.
11+
- [ ] Charts do not look great in dark mode.
2312
- [ ] ~VirtualScroll~ not working, see [[https://github.com/primefaces/primevue-tailwind/issues/108][Missing preset for VirtualScroller]] and [[https://github.com/primefaces/primevue-tailwind/issues/168][VirtualScroller not working with DataTabe.]]
24-
As of v4.1.1, the new Tailwind styles have been rewritten using the preprocessor approach with ~@apply~ instead of pass-through.
25-
As a result this issue is not relevant any more. We're using [email protected].0~. Updating to latest version will most likely
26-
break. See also https://tailwind.primevue.org/vite/.
13+
As of v4.1.1, the new Tailwind styles have been rewritten using the preprocessor approach with ~@apply~ instead of pass-through.
14+
We're currently using [email protected].1~ and [email protected]~. Updating to PrimeVue v4.2 will most likely
15+
break the application, /cf./ https://tailwind.primevue.org/vite/.
2716
- [ ] Unpredictable color for ring (dark mode). This is an example of a more general problem.
2817
UiStyle ~inputTextDefaultClasses~ redefines the ring color /e.g./ inside ~InputText~ in ~FormTextInput.vue~, but when
2918
~parent.instance.$name !== 'InputGroup'~ the default preset values somehow overwrite the style, even though the latter is
30-
applied afterwards. When need to use ~:ptOptions="{ mergeProps: true }"~, because we don't want to rewrite the style entirely.
19+
applied afterwards. When need to use ~:ptOptions="{ mergeProps: true }"~ because we don't want to rewrite the style entirely.
3120
Modifying a value in ~ui_style.ts~ works only temporarily or unpredictably, and /e.g./ adding ~!~ does not work, as
3221
it overwrites the ~errorClasses~. See [[https://github.com/tailwindlabs/tailwindcss/discussions/12733][Which bg color should be apply, when multiply bg-color class was appled to the same element?]]
33-
for an explanation and possible ways to solve this.
34-
- [X] Placeholder text color ~TreeSelect~ /vs./ ~MultiSelect~.
35-
- [X] Default preset color is secondary for ~DataTable~, ~Paginator~, and ~tabView~. Why not use a local ~ptOptions~
36-
with ~mergeSections="false"~? Else this has to be documented.
37-
- [ ] Use fill and stroke for svg/icons, instead of text color, see also [[https://github.com/dieterich-lab/scimodom/issues/64][Add icon to InputText not working]].
38-
- [X] Button presets adapted for /primary/ and /secondary/ by redefining the API for severity. Should we redefine the API
39-
or add another option, or just leave it as is?
40-
- [ ] ~DataTable~ filters /e.g./ ~filterMatchModeDropdown~ show a mix of primary and default green colors (where is this
41-
defined in presets? Can we use ~pt~?)
42-
- [-] [[https://github.com/dieterich-lab/scimodom/issues/18][Customize UI components]]: additional items
43-
- [X] ~CardLink~ /vs./ PrimeVue ~Card~.
44-
- [X] Clean ~SectionLayout~.
45-
- [ ] Why ~SectionLayout~ with ~secondary="true"~ in dark mode have a white border at the top?
46-
- [ ] ~TreeSelect~, ~MultiSelect~, and ~Dropdown~ root class shape commented out, using local ~pt~, as I couldn't get it to work,
47-
in particular in grid (Compare), but we should leave this untouched.
48-
- [X] (Browse) ~InputText~ and ~Dialog~ local ~pt~ has no effect with alpha modifier for secondary color using **Wind** preset.
49-
Temporarily removed ~/50~ for ~dialog~ and ~inputtext~ (focus). Local ~pt~ description currently follows the **Lara** preset.
50-
- [X] To harmonize ~DataTable~ header across views.
22+
for an explanation and possible ways to solve this. /cf./ above PrimeVue upgrade.
23+
- [ ] ~DataTable~ filters /e.g./ ~filterMatchModeDropdown~ show a mix of primary and default green colors.
24+
- [ ] Why does ~SectionLayout~ with ~secondary="true"~ has a white border at the top in dark mode?
5125
- [ ] Add p-float-label?
5226
- [ ] ~Divider~ styling, thickness and color.
53-
- [X] Custom style ~FormTextInput~ (class/style binding), incl.secondary colour for sign up.
54-
- [X] Form validation and warnings/messages styling/text for login/sign up/reset components.
55-
- [ ] Large numbers don't show nicely in the Search paginator.
56-
- [X] Outdated presets for Lara. Remove?
57-
- [ ] Add MeterGroup or ProgessBar for upload? See also [[https://github.com/dieterich-lab/scimodom/issues/94][Dataset upload progress]].
58-
59-
** TODO PEP/TYPING [2/2]
60-
61-
- [X] [2024-02-03 Fri] Add missing stubs for flask-cors, requests, /etc./
62-
- [X] [2024-02-03 Fir] ~# type: ignore~ top level does not work for scimodom.api.models. File excluded:
63-
[[file:~/prj/RMapDFGTRR319/repositories/scimodom/server/pyproject.toml::"scimodom.utils.models.py"]]
27+
- [ ] Add ~MeterGroup~ or ~ProgessBar~ for upload? See also [[https://github.com/dieterich-lab/scimodom/issues/94][Dataset upload progress]].
6428

65-
** TODO TESTS [6/8]
29+
** TODO TESTS [1/2]
6630

67-
- [ ] warnings :: freezgun, pydantic
31+
- [X] update :: Warnings and deprecation summary.
32+
- [ ] refactor :: ~test_dataset~ and ~test_validator~ still depend on the importer, /cf./ mock importer in ~test_dataset_api~.
6833

69-
- [X] refactor :: Use tests/fixtures throughout wherever possible. Some tests may still contain redundant locally defined fixtures.
70-
~conftest.py::data_path~ is only used by ~test_import_data~, this should be simplified /cf./ ~tool.pytest.ini_options~.
71-
- [ ] refactor :: ~test_ensembl~ subject to [[https://github.com/dieterich-lab/scimodom/issues/119][Annotation services]]. Currently it is not possible to fully isolate these tests.
72-
73-
- [X] missing :: ~test_dataset~ does not test ~DatasetImportError~, ~SelectionNotFoundError~, ~DatasetExistsError~.
74-
- [X] missing :: Integration tests.
75-
- [X] missing :: Missing models in ~test_bedtools_dto~, ~test_project_dto~, /etc./
76-
- [X] missing :: ~test_bedtools~ has limited scope, some protected methods are not tested (isolation?). Everything
77-
that touches annotation is not really tested (see related tests if testing could be reasonnably divided/isolated).
78-
79-
- [X] EUFID length is not validated? See /e.g./ dataset fixture. Same for random SMIDs...
80-
81-
** TODO GENERAL [1/11]
34+
** TODO GENERAL [1/7]
8235

8336
- [ ] dependencies :: Pandas is used only in ~SetupService~.
8437

85-
- [ ] refactor :: ~FileService~ "mixes" *os* and *pathlib*, and this also causes a number of typing errors; and there are some
86-
methods that should be protected that are not. The "chain file constructor" should go to ~FileService~. Also now
87-
the ~AssemblyFileType~ is problematic (type warnings). This should be addressed with refactoring of [[https://github.com/dieterich-lab/scimodom/issues/119][Annotation services]].
88-
- [ ] refactor :: Setup is not fully sorted: the case of import tables and ~IMPORT_DIR~, /cf./ [[https://github.com/dieterich-lab/scimodom/issues/126][startup]] and [[https://github.com/dieterich-lab/scimodom/issues/116][directory permission]],
89-
is still to be addressed.
90-
91-
- [ ] vars :: Usage of Flask ~SESSION_COOKIE_SAMESITE~. Is ~None~ supposed to be a string or ~None~? And why not use default ~Lax~?
92-
- [ ] vars :: Shouldn't default for ~is_strand~ be ~True~ in [[file:repositories/scimodom/server/src/scimodom/api/dataset.py]]? Also,
93-
how do we handle undefined strand in general /e.g./ in comparisons?
94-
95-
- [X] docs :: Update GitHub installation instructions, /e.g./ add instructions how to create project/data for testing, add dumps for testing,
96-
import tables, /etc/. Some instructions are wrong, for instance the ~pip install~ command misses the "dot". How to mock login (login may be
97-
tricky /e.g./ with google accounts)?
98-
99-
- [ ] validation :: Project or dataset title is a ~VARCHAR(255)~. Form validation is done in the client, but should be systematically implemented
100-
for the API (and include other fields with constraints, see also [[https://github.com/dieterich-lab/scimodom/issues/152][Not all API endpoints are fine]]).
101-
The CLI validates title for dataset, but not for project, metadata, or batch.
102-
103-
- [ ] forms :: When adding more than 1 metadata sheet, the assembly is reset, also resetting the model. This is not critical,
104-
since the user is requested to confirm the assembly as input anyway, but maybe this can be simplified?
105-
- [ ] forms :: Add lazy validation to form fields, in particular for login/sign up? Check also strict, see https://github.com/jquense/yup
106-
- [ ] forms :: Do not load the full ~yup~ package. Customize validation (login /vs./ sign up) and revisit messages. See
107-
/e.g./ https://tailwind.primevue.org/inputtext/#helptext. Classes are wrong, there is no ~p-error~, /etc./
108-
109-
- [ ] store :: Import/use pinia before router. Options /vs./ Composition. Add pinia as argument to router ~beforeEach~. Check =ways-to-use-pinia=.
38+
- [ ] question :: Usage of Flask ~SESSION_COOKIE_SAMESITE~. Is ~None~ supposed to be a string or ~None~? And why not use default ~Lax~?
39+
40+
- [X] Export file naming convention is inconsistent between Search, Browse, and Compare.
41+
- [ ] ~TaxaSelection~ has modification id props and watches it, but it never uses it?
42+
- [ ] The CJS build of Vite's Node API is deprecated, see [[https://vite.dev/guide/troubleshooting.html#vite-cjs-node-api-deprecated][Vite CJS node API deprecated]] for more details.
43+
- [ ] Error handling for data import remains somewhat inconsistent. The interface ~DatasetPostRequest~ defines what information is
44+
transferred to the backend for data upload (management API). The ~source~ for upload is the full path to the temporary ~file_id~.
45+
The ~error_summary~ (~BedImportTooManyErrors~) is defined by the ~TextFileReader.report_error~, and reports the full path to the
46+
~file_id~, which is irrelevant for the user in general. This is also used in Comparison (dataset API), where the actual file name
47+
is available and used as a source, with useful information for the user. In handling other similar errors, the source is never
48+
reported /e.g./ in the case of ~BedImportEmptyFile~, this is not shown in ~user_message~, but in ~message~. I don't know what are the
49+
security implications in all cases.
50+
- [ ] On "auto log out" /e.g./ refresh, accessing URL via address, /etc./, unexpected behavior is sometimes observed, /e.g./ the
51+
dialog box is not systematically showing up. The ~Not logged in.~ message at the top left is awkward.
11052

11153
*** TODO FEATURE REQUEST [0/2]
11254

11355
- [ ] Vueuse (title)
11456
- [ ] Loading bar at the top
11557

116-
117-
* SCIMODOM OPEN ISSUES
118-
119-
** REFERENCES
120-
121-
122-
* SCIMODOM CLOSED ISSUES
123-
12458
* LONG-TERM
12559

12660
** IMPROVEMENTS

0 commit comments

Comments
 (0)