nakala-releases-notes.md 15.1 KB
Newer Older
1
# Dernière mise à jour de Nakala (API et Front)
Hélène Jouguet's avatar
Hélène Jouguet committed
2

Sara Tandar's avatar
Sara Tandar committed
3
## 7 juillet 2022 (API V3.3.0 - FRONT V3.1.0)
4
5

### Nouveautés
6

7
#### Chantier de nettoyage des métadonnées (amélioration de la qualité) :
Sara Tandar's avatar
Sara Tandar committed
8
9
Dans le cadre d'un chantier d'amélioration de la qualité des descriptions des données dans Nakala, 32 encodages ont été retirés de la liste disponible. Cette décision a été guidée par une analyse de leur pertinence dans le contexte de l'entrepôt NAKALA et du constat d'une absence totale d'utilisation par les déposants. 
Un deuxième lot d'encodages non pertinents sera prochainement retiré. Les déposants qui les auraient utilisés seront contactés afin de leur proposer des corrections et des alternatives.
10

11
Liste des encodages supprimés de Nakala : 
12

13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
- http://purl.org/dc/terms/DDC
- http://purl.org/dc/terms/UDC
- http://purl.org/dc/terms/NLM
- http://purl.org/dc/terms/RFC1766
- http://purl.org/dc/terms/RFC4646
- http://www.w3.org/1999/02/22-rdf-syntax-ns#JSON 
- http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral 
- http://www.w3.org/2001/XMLSchema#ENTITIES 
- http://www.w3.org/2001/XMLSchema#IDREFS 
- http://www.w3.org/2001/XMLSchema#NCName 
- http://www.w3.org/2001/XMLSchema#NMTOKEN 
- http://www.w3.org/2001/XMLSchema#NMTOKENS 
- http://www.w3.org/2001/XMLSchema#NOTATION 
- http://www.w3.org/2001/XMLSchema#QName 
- http://www.w3.org/2001/XMLSchema#boolean 
- http://www.w3.org/2001/XMLSchema#decimal 
- http://www.w3.org/2001/XMLSchema#double 
- http://www.w3.org/2001/XMLSchema#float 
- http://www.w3.org/2001/XMLSchema#gDay 
- http://www.w3.org/2001/XMLSchema#gMonth 
- http://www.w3.org/2001/XMLSchema#gMonthDay 
- http://www.w3.org/2001/XMLSchema#int  
- http://www.w3.org/2001/XMLSchema#negativeInteger 
- http://www.w3.org/2001/XMLSchema#nonNegativeInteger 
- http://www.w3.org/2001/XMLSchema#nonPositiveInteger 
- http://www.w3.org/2001/XMLSchema#positiveInteger 
- http://www.w3.org/2001/XMLSchema#short 
- http://www.w3.org/2001/XMLSchema#token 
- http://www.w3.org/2001/XMLSchema#unsignedByte 
- http://www.w3.org/2001/XMLSchema#unsignedInt 
- http://www.w3.org/2001/XMLSchema#unsignedLong 
- http://www.w3.org/2001/XMLSchema#unsignedShort
45

46
Dans le même objectif d'amélioration de la qualité des descriptions, 4 propriétés ont également été supprimées : 
47

Sara Tandar's avatar
Sara Tandar committed
48
- owl:sameAs
49
50
- foaf:page
- foaf:theme
Sara Tandar's avatar
Sara Tandar committed
51
- foaf:publications
52

53
## Corrections
54
#### API : Ajustement du moteur de recherche pour prendre en compte la notion de langue (recherche sur le champ titre)
Sara Tandar's avatar
Sara Tandar committed
55
Ajout de titleSearchLang permettant au moteur de recherche de prendre en compte la langue.
56
57
58

# Historique des mises à jour

Sara Tandar's avatar
Sara Tandar committed
59
## 30 mai 2022 (API V3.2.0 - Front V3.0.0)
60

Hélène Jouguet's avatar
Hélène Jouguet committed
61
### Nouveautés
62

Sara Tandar's avatar
Sara Tandar committed
63
64
65
66
#### Modification de configuration de la visionneuse de fichiers .csv 
La visionneuse pour les fichiers .csv permet d'afficher des fichiers, même s'ils comportent des anomalies.
Cependant, leur affichage pourra possiblement être perturbé.
Dans ces cas, la visionneuse signale tout de même l'anomalie : "Le fichier CSV contient des erreurs. Il peut ne pas être bien formé." 
Hélène Jouguet's avatar
Hélène Jouguet committed
67
68

### Corrections
Sara Tandar's avatar
Sara Tandar committed
69
Sur Nakala_Press : amélioration de la gestion des sessions d'identification pour corriger un bug de perte de session.
Hélène Jouguet's avatar
Hélène Jouguet committed
70

Sara Tandar's avatar
Sara Tandar committed
71
## 14 février 2022 (API V3.1.0)
Hélène Jouguet's avatar
Hélène Jouguet committed
72

73
### Amélioration du moteur de recherche sur les données publiées
74
75
Le champ de recherche dans NAKALA permet d'utiliser les opérateurs booléens AND, OR et NOT et les caractères génériques : *, ?, (),"

Sara Tandar's avatar
Sara Tandar committed
76
La recherche sur des propriétés particulières est aussi possible en préfixant un terme de recherche par title, abstract, keyword ou str_dcterms_bibliographicCitation (liste non exhaustive) suivi du caractère ":".
77
78

### Modifications dans la gestion des collections sur une donnée
79
- Sur l'interface de présentation de la gestion des collections : révision du formulaire pour associer une donnée à une collection afin de le rendre plus ergonomique.
80
- Sur l'API datas (gestion des données), ajout d'une nouvelle requête PUT /datas/{id}/collection permettant le remplacement de l'ensemble des collections d'une donnée. 
81

Sara Tandar's avatar
Sara Tandar committed
82
### Ajout de vérifications sur les ORCID
83
Lorsque l'ORCID d'un auteur est renseigné, ajout d'une vérification sur la syntaxe de l'ORCID : https://orcid.org/{4chiffres}-{4chiffres}-{4chiffres}-{3 chiffres et (1 'X' ou un chiffre)}
Hélène Jouguet's avatar
Hélène Jouguet committed
84

85
86
`pattern : "/^\d{4}-\d{4}-\d{4}-\d{3}(\d|X)$/"`

87
### Possibilité d'accès direct à un fichier spécifique sur la page de présentation d'une donnée
88
89
Lorsqu'une donnée est constituée de plusieurs fichiers, vous pouvez ouvrir la page de présentation de cette donnée (landing page) sur un fichier en particulier, en ajoutant l'identifiant du fichier (le sha1) comme ancre, dans l'URL.

Sara Tandar's avatar
Sara Tandar committed
90
L'URL se présente ainsi : https://nakala.fr/{identifiant}#{fileID}
Hélène Jouguet's avatar
Hélène Jouguet committed
91

92
### Correction des URI retournées par l'API
Sara Tandar's avatar
Sara Tandar committed
93
Seules les données publiées sont déclarées auprès de Datacite et résolues par [doi.org](https://www.doi.org/).
94
95
96

Les autres URIs sont propres à Nakala.

Sara Tandar's avatar
Sara Tandar committed
97
L'API a été corrigée en conséquence :
98

99
100
- collections : https://nakala.fr/collection/{identifiant}
- donnée déposée non publiée : https://nakala.fr/{identifiant}
Hélène Jouguet's avatar
Hélène Jouguet committed
101

Sara Tandar's avatar
Sara Tandar committed
102
103
### Ajout d'un menu pour naviguer dans les versions d'une donnée
Il est désormais possible de parcourir les différentes versions d'une donnée depuis sa page de présentation (landing page) sur l'interface web. 
104
105

Sur l'API datas (gestion des données), ajout d'une nouvelle requête GET /datas/{id}/versions permettant la récupération de la liste des versions d'une donnée.
106
L'accès à la version spécifique d'une donnée ne se fait plus via un paramètre de requête (ex: ?version=2), mais en ajoutant à la fin de l'identifiant de la donnée un numéro de version.
Sara Tandar's avatar
Sara Tandar committed
107

108
Exemple : 10.34847/nkl.eabbbf68.v2 donne accès à la version 2 de la donnée 10.34847/nkl.eabbbf68
Hélène Jouguet's avatar
Hélène Jouguet committed
109
110

### Divers
Sara Tandar's avatar
Sara Tandar committed
111
112
113
- Les requêtes "GET /collections/{id}/datas" et "GET /datas/{id}/collections" retournent maintenant les résultats triés par ordre décroissant sur la date de création des données ou des collections.
- Lors de la création d'une nouvelle version d'une donnée, cette version a maintenant pour date de création, la date du jour. Elle n'hérite pas de la date de création de la version 1.
- Lorsqu'on supprime une donnée ayant des relations avec d'autres données, toutes ses relations ainsi que les relations inverses sont bien supprimées.
Hélène Jouguet's avatar
Hélène Jouguet committed
114

Sara Tandar's avatar
Sara Tandar committed
115
## 12 janvier 2022 (API V3.0.4)
116
117

### Prise en charge de nouveaux formats archives par la visionneuse
Sara Tandar's avatar
Sara Tandar committed
118
La visionneuse de NAKALA peut désormais afficher l'arborescence des dossiers et des fichiers contenue dans les archives au format suivant : .zip, .rar, .phar, .tar, .tgz, .gz, .bz2.
Hélène Jouguet's avatar
Hélène Jouguet committed
119

Sara Tandar's avatar
Sara Tandar committed
120
## 15 décembre 2021 (API V3.0.3)
121

122
### Ordre des fichiers d'une donnée
Sara Tandar's avatar
Sara Tandar committed
123
Ajout de la possibilité d'ordonner les fichiers d'une donnée suivant son choix. L'ordre modifié est conservé lors de la consultation de la donnée.
124

125
### Ajout d'un nouveau rôle (administrateur) pour les listes d'utilisateurs
Sara Tandar's avatar
Sara Tandar committed
126
Ajout de la possibilité de déléguer l'administration d'une liste d'utilisateurs à d'autres membres de la liste en leur attribuant le rôle "administrateur" de la liste.
127
128

Afin prendre en compte cette nouvelle fonctionnalité, les modèles suivants ont changé au niveau de l'API :
129

130
131
132
133
POST /groups et PUT /groups/{id}

Au lieu de ce contenu en JSON :

134
```
135
136
137
138
139
140
141
142
{
    "name": "HUMA-NUM",
    "users": [
        "pdupont",
        "jdubois",
        "lmartin"
    ]
}
143
144
```

145
146
147

Vous devez maintenant renseigner ceci :

148
```
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
{
    "name": "HUMA-NUM",
    "users": [
        {
            "username": "pdupont",
            "role": "ROLE_OWNER"
        },
        {
            "username": "jdubois",
            "role": "ROLE_ADMIN"
        },
        {
            "username": "pmartin",
            "role": "ROLE_USER"
        }
    ]
}
166
```
167
168
169
170
171

GET /groups/search

Au lieu de ce contenu en JSON :

172
```
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
[
    {
        "id": "b55e770c-849b-11ea-87ea-0242ac1b0003",
        "type": "user",
        "username": "pdupont",
        "name": "Pierre Dupont",
        "photo": null,
        "datemodify": "2020-05-10T10:18:24+00:00"
    },
    {
        "id": "g67e770c-349b-33ea-a2ea-1243ac1b0007",
        "name": "HUMA-NUM",
        "type": "group",
        "users": [
            {
                "username": "jdubois",
                "fullname": "Jacques Dubois",
                "photo": null
            },
            {
                "username": "lmartin",
                "fullname": "Laure Martin",
                "photo": null
            }
        ],
        "datemodify": "2020-04-28T09:39:34+00:00"
    }
]
201
202
```

203
204
205

L'API vous retourne désormais ce contenu :

206
```
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
[
    {
        "id": "b55e770c-849b-11ea-87ea-0242ac1b0003",
        "type": "user",
        "username": "pdupont",
        "name": "Pierre Dupont",
        "photo": null,
        "datemodify": "2020-05-10T10:18:24+00:00"
    },
    {
        "id": "g67e770c-349b-33ea-a2ea-1243ac1b0007",
        "name": "HUMA-NUM",
        "type": "group",
        "users": [
            {
                "username": "jdubois",
                "fullname": "Jacques Dubois",
                "photo": null,
                "role": "ROLE_OWNER"
            },
            {
                "username": "lmartin",
                "fullname": "Laure Martin",
                "photo": null,
                "role": "ROLE_ADMIN"
            }
        ],
        "datemodify": "2020-04-28T09:39:34+00:00",
        "isOwner": false,
        "isAdmin": false,
        "isMember": false
    }
]
240
```
241
242
243
244

GET /groups/{id}

Au lieu de ce contenu en JSON :
245
246

```
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
{
    "id": "g67e770c-349b-33ea-a2ea-1243ac1b0007",
    "name": "HUMA-NUM",
    "type": "group",
    "owner": {
        "username": "jdubois",
        "photo": null,
        "fullname": "Jacques Dubois"
    },
    "users": [
        {
            "username": "jdubois",
            "fullname": "Jacques Dubois",
            "photo": null
        },
        {
            "username": "lmartin",
            "fullname": "Laure Martin",
            "photo": null
        }
    ],
    "datemodify": "2020-04-28T09:39:34+00:00"
}
270
271
```

272
273
L'API vous retourne désormais ce contenu :

274
```
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
{
    "id": "g67e770c-349b-33ea-a2ea-1243ac1b0007",
    "name": "HUMA-NUM",
    "type": "group",
    "users": [
        {
            "username": "jdubois",
            "fullname": "Jacques Dubois",
            "photo": null,
            "role": "ROLE_OWNER"
        },
        {
            "username": "lmartin",
            "fullname": "Laure Martin",
            "photo": null,
            "role": "ROLE_ADMIN"
        }
     ],
    "datemodify": "2020-04-28T09:39:34+00:00",
    "isOwner": false,
    "isAdmin": false,
    "isMember": false
}
298
299
```

300

Sara Tandar's avatar
Sara Tandar committed
301
## 4 novembre 2021 (API V3.0.2)
302

Sara Tandar's avatar
Sara Tandar committed
303
304
305
### Ajout d'un champ de métadonnée permettant de signaler le lien entre deux données publiées dans Nakala
- Le champ "Relation vers d'autres données publiées dans Nakala" permet de déclarer le lien entre deux données
- Les relations disponibles sont celles de Datacite
306

307
308
309
310
311
312
#### Les requêtes suivantes ont été ajoutées à l'API de NAKALA :
    - GET /datas/{identifier}/relations : Récupération de liste des relations d'une donnée
    - POST /datas/{identifier}/relations : Ajout de relations sur une donnée
    - PATCH /datas/{identifier}/relations : Modification du commentaire d'une relation
    - DELETE /datas/{identifier}/relations : Suppression des relations d'une donnée
    - Les relations d'une donnée sont également accessibles depuis GET /datas/{identifier} et modifiables depuis PUT /datas/{identifier}.
313
314

### Les bugs suivants ont été corrigés :
315
316
    - Suppression ou remplacement d'un fichier d'une donnée "déposée" (pending)
    - Upload d'un fichier depuis NAKALA_PRESS
Sara Tandar's avatar
Sara Tandar committed
317
    - Visionneuse des fichiers .CSV
318

Sara Tandar's avatar
Sara Tandar committed
319
## 8 juillet 2021 (API V3.0.1)
320
321

### Ajout d'un rôle déposant
322
323
324
Un nouveau ROLE_DEPOSITOR est introduit avec cette version de l'API. Il désigne le déposant d'une donnée ou d'une collection. Ce rôle est attribué automatiquement à l'utilisateur authentifié au moment du dépôt et ne peut pas être modifié. Il n'y a pas de droit spécifique associé au ROLE_DEPOSITOR. Par défaut, le déposant d'une donnée est aussi le propriétaire.

Il est maintenant possible d'associer le ROLE_OWNER à un groupe d'utilisateurs lorsque l'on souhaite déposer une donnée ou une collection pour le compte d'un laboratoire ou d'un projet. Seuls les propriétaires d'une donnée ou d'une collection peuvent éditer le ROLE_OWNER. Il n'est pas possible de transmettre le ROLE_OWNER sans passer par un groupe d'utilisateurs.
325
326

### Affichage des droits
Sara Tandar's avatar
Sara Tandar committed
327
328
329
Uniformisation de l'affichage des droits sur une donnée ou une collection dans les réponses à l'API GET /search. 

Au lieu de :
330

331
```
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
"rights": [
    {
        "role": "ROLE_OWNER",
        "group": {
            "users": [
                {
                    "username": "mdupuis",
                    "givenname": "Marie",
                    "surname": "Dupuis"
                }
            ]
        }
    },
    {
        "role": "ROLE_ADMIN",
        "group": {
            "users": [
                {
                    "username": "pdupont",
                    "givenname": "Pierre",
                    "surname": "Dupont"
                }
            ]
        }
    }
]
358
```
359
360
361

L'API retourne maintenant les droits selon ce modèle :

362
```
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
"rights": [
    {
        "role": "ROLE_DEPOSITOR",
        "id": "01abcf299-ac17-11eb-ab7d-0242ac120009",
        "name": "Marie Dupuis",
        "type": "user",
        "username": "mdupuis",
        "givenname": "Marie",
        "surname": "Depuis"
    },
    {
        "role": "ROLE_OWNER",
        "id": "01abcf299-ac17-11eb-ab7d-0242ac120009",
        "name": "Marie Dupuis",
        "type": "user",
        "username": "mdupuis",
        "givenname": "Marie",
        "surname": "Depuis"
    },
    {
        "role": "ROLE_ADMIN",
        "id": "1a2gfh299-dc18-a1eg-e37c-1232gcf21004",
        "name": "Pierre Dupont",
        "type": "user",
        "username": "pdupont",
        "givenname": "Pierre",
        "surname": "Dupont"
    }
]
392
```
393
394
395

Dans le cas d'un groupe d'utilisateurs, le modèle est le suivant :

396
```
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
"rights": [
    ...,
    {
        "role": "ROLE_ADMIN",
        "id": "1110b97a-ad9c-11eb-94b4-0242ac120003",
        "name": "HUMA-NUM",
        "type": "group",
        "users": [
            {
                "username": "lcapelli",
                "givenname": "Laurent",
                "surname": "Capelli",
                "fullname": "Laurent Capelli"
            },
            {
                "username": "adesseigne",
                "givenname": "Adrien",
                "surname": "Desseigne",
                "fullname": "Adrien Desseigne"
            },
            ...
        ]
    }
]
421
```
422

Sara Tandar's avatar
Sara Tandar committed
423
## 18 décembre 2020 (API V3.0.0) (FRONT V3.0.0)
424
# Mise en production de la nouvelle API et des nouvelles interfaces web de NAKALA
425
426
La nouvelle version des API comprend :
 
427
428
429
430
431
432
    - créer, gérer et administrer vos dépôts 
    - un moteur de recherche 
    - un entrepôt OAI-PMH
    - un accès à l'API Image de IIIF 
    - une visionneuse pour les fichiers deposées 

Sara Tandar's avatar
Sara Tandar committed
433
Nouvelle API : [https://api.nakala.fr/](https://api.nakala.fr/)
434

435
La nouvelle interface est refondue pour faciliter le dépôt. Elle a été conçue selon les principes de l'UX design.
436

Sara Tandar's avatar
Sara Tandar committed
437
Nouvelles interfaces web : [https://nakala.fr/](https://nakala.fr/).
438