cwclientlibjs issueshttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues2024-02-16T16:17:09Zhttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/10[idea] Add an ORM (object-relational mapping)2024-02-16T16:17:09ZNicola Spanti[idea] Add an ORM (object-relational mapping)- API reference: https://forge.extranet.logilab.fr/cubicweb/cubicweb/-/issues/289
- Implementation in Python: https://forge.extranet.logilab.fr/cubicweb/cwclientlib/-/merge_requests/15- API reference: https://forge.extranet.logilab.fr/cubicweb/cubicweb/-/issues/289
- Implementation in Python: https://forge.extranet.logilab.fr/cubicweb/cwclientlib/-/merge_requests/15https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/11adapt to changes in CubicWeb 3.322021-07-29T08:46:58ZCarine Dengleradapt to changes in CubicWeb 3.32https://cubicweb.pages.logilab.fr/cubicweb/book/security/csrf.html#csrf-protectionhttps://cubicweb.pages.logilab.fr/cubicweb/book/security/csrf.html#csrf-protectionCarine DenglerCarine Denglerhttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/9Add a method to get permission2024-02-22T14:26:33ZNicola SpantiAdd a method to get permissionIn CubicWeb, there is method `cw_has_perm` on an entity. It is useful to know a permission with an eid. It would be useful to have this also in an encapsulated way in this library (in fact it even seems not possible to get the info with ...In CubicWeb, there is method `cw_has_perm` on an entity. It is useful to know a permission with an eid. It would be useful to have this also in an encapsulated way in this library (in fact it even seems not possible to get the info with RQL).https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/3Ajouter une API pour supporter le système de Workflow de cubicweb2021-02-24T09:37:09ZGuillaume VandeveldeAjouter une API pour supporter le système de Workflow de cubicwebIl n'y a actuellement aucun moyen de gérer les transitions d'états des entités Workflowable de cubicweb via cwclientlibjs.
Deux méthodes sont possibles:
- Ajouter une pview sur le cube cubicweb_rqlcontroller pour qu'il puisse recevoir ...Il n'y a actuellement aucun moyen de gérer les transitions d'états des entités Workflowable de cubicweb via cwclientlibjs.
Deux méthodes sont possibles:
- Ajouter une pview sur le cube cubicweb_rqlcontroller pour qu'il puisse recevoir un signal du client et gérer la transition dans le backend.
- Adapter la librairie cwclientlibjs pour qu'elle puisse directement gérer ces transitions via des RQL de la même manière que ce que fait cubicweb.
Le besoin minimal immédiat serait de pouvoir via le client de cwclientlibjs avoir une méthode permettant d'exécuter le même processus que la methode `fire_transition` disponible sur cubicweb pour gérer l'état des entités workflowable.
Voir le code source de cubicweb qui gère ces transitions dans les liens suivants:
- https://hg.logilab.org/master/cubicweb/file/e86d65ac2666/cubicweb/entities/wfobjs.py#l533
- https://hg.logilab.org/master/cubicweb/file/e86d65ac2666/cubicweb/entities/wfobjs.py#l511Frank BessouFrank Bessouhttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/7Allow strong typing of the schema and make it instance independent2022-06-24T10:04:48ZFrank BessouAllow strong typing of the schema and make it instance independentCurrently, the schema type definition is loosely typed and each part of the schema (etype/attribute/relation schema) contains several eids. I think that we should "standardize" the way the schema is represented in ts/js. This single repr...Currently, the schema type definition is loosely typed and each part of the schema (etype/attribute/relation schema) contains several eids. I think that we should "standardize" the way the schema is represented in ts/js. This single representation should be supported by the following tools:
- cwclientlibjs
- cubicweb-tsgen
- rqlcontroller schema's holder
- cwelements
- rqlbrowser
- ra-cubicweb
I think that the `Schema` type definition and its associated utils should be located in cwclientlibjs.Release 2.0.0Frank BessouFrank Bessouhttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/13Extra slash on HEAD for schema2024-02-22T16:48:17ZLaurent WoutersExtra slash on HEAD for schemaAn extra / is added to the request URL for getting a schema hash using the HEAD verb.An extra / is added to the request URL for getting a schema hash using the HEAD verb.Laurent WoutersLaurent Woutershttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/2Follow-up from "Topic/default/better schema handling"2020-05-20T12:25:07ZFabien Amargerfabien.amarger@logilab.frFollow-up from "Topic/default/better schema handling"The following discussion from !12 should be addressed:
- [ ] @famarger started a [discussion](https://forge.extranet.logilab.fr/open-source/cwclientlibjs/merge_requests/12#note_22359):
> This `HttpClient` interface could definitiv...The following discussion from !12 should be addressed:
- [ ] @famarger started a [discussion](https://forge.extranet.logilab.fr/open-source/cwclientlibjs/merge_requests/12#note_22359):
> This `HttpClient` interface could definitively be simplified. This is not really convenient to add all this "default" parameters for a simple `GET` to fetch JSON.https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/12Make tests works with CubicWeb version 3.33 or more2024-02-29T15:59:00ZNicola SpantiMake tests works with CubicWeb version 3.33 or moreAvec CubicWeb 3.33 dans Docker, on a un problème (cf. !26 et [log.txt](/uploads/c896d99ae3c7b8dc350bb28449520e2b/log.txt)).Avec CubicWeb 3.33 dans Docker, on a un problème (cf. !26 et [log.txt](/uploads/c896d99ae3c7b8dc350bb28449520e2b/log.txt)).https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/14Mettre à jour crypto-js en 4.2.0 ou plus et faire une version avec2024-03-05T16:53:53ZNicola SpantiMettre à jour crypto-js en 4.2.0 ou plus et faire une version avec## Raison
https://security.snyk.io/vuln/SNYK-JS-CRYPTOJS-6028119
## Suite
https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/15## Raison
https://security.snyk.io/vuln/SNYK-JS-CRYPTOJS-6028119
## Suite
https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/15https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/17Mettre à jour le README vis-à-vis de SonarQube2024-02-29T15:58:46ZNicola SpantiMettre à jour le README vis-à-vis de SonarQubeÇa dépendra de la réponse des administrateurs systèmes : https://forge.extranet.logilab.fr/logilab/infra/sysadmin/-/issues/2147Ça dépendra de la réponse des administrateurs systèmes : https://forge.extranet.logilab.fr/logilab/infra/sysadmin/-/issues/2147https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/5Move cli to a new package2021-02-24T10:10:58ZFrank BessouMove cli to a new packageRelease 2.0.0https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/16Ne plus gérer MD52024-02-08T17:26:27ZNicola SpantiNe plus gérer MD5[MD5 est cassé depuis 2004](https://fr.wikipedia.org/wiki/MD5#Cryptanalyse). La version 1.3.0, publiée en décembre 2021, gère MD5 et SHA512. Elle assure donc la rétro-compatibilité. La version 1.4 ne devrait plus gérer MD5. D'ailleurs, [...[MD5 est cassé depuis 2004](https://fr.wikipedia.org/wiki/MD5#Cryptanalyse). La version 1.3.0, publiée en décembre 2021, gère MD5 et SHA512. Elle assure donc la rétro-compatibilité. La version 1.4 ne devrait plus gérer MD5. D'ailleurs, [ça a déjà été viré du cube `signedrequest`](https://forge.extranet.logilab.fr/cubicweb/cubes/signedrequest/-/commit/6c88a5ef83f2d74bcf6bcd3ba1e1874dfe4d92f2) et [c'est effectif depuis la version 0.5.2](https://forge.extranet.logilab.fr/cubicweb/cubes/signedrequest/-/commit/7e36fa7d204afb6e2404e2d6c387263e74ea6ea1).https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/15Remplacer crypto-js par ce qu'il y a maintenant dans la bibliothèque standard2024-02-23T09:56:05ZNicola SpantiRemplacer crypto-js par ce qu'il y a maintenant dans la bibliothèque standard## Raison
https://www.npmjs.com/package/crypto-js
> Active development of CryptoJS has been discontinued. This library is no longer maintained.
>
> Nowadays, NodeJS and modern browsers have a native Crypto module. The latest version o...## Raison
https://www.npmjs.com/package/crypto-js
> Active development of CryptoJS has been discontinued. This library is no longer maintained.
>
> Nowadays, NodeJS and modern browsers have a native Crypto module. The latest version of CryptoJS already uses the native Crypto module for random number generation, since `Math.random()` is not crypto-safe. Further development of CryptoJS would result in it only being a wrapper of native Crypto. Therefore, development and maintenance has been discontinued, it is time to go for the native crypto module.
## Préalable
Il faudrait commencer par [passer la bibliothèque à sa dernière version](https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/14), car elle a un problème de sécurité qu'il faudrait donc vite régler. De plus, la dernière version serait plus proche de la bibliothèque standard et donc gérer la dernière version nous rapproche de son remplacement.https://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/6Should we rename @logilab/cwclientlibjs into @cubicweb/client ?2023-12-22T20:06:57ZFrank BessouShould we rename @logilab/cwclientlibjs into @cubicweb/client ?The advantage I see with the `@cubicweb` scope:
- `@logilab/cwclientlibjs` is not as clear as `@cubicweb/client` and it contains two acronyms.
- in V2 with #4 client codes will have to import files using their full path in order to avoid...The advantage I see with the `@cubicweb` scope:
- `@logilab/cwclientlibjs` is not as clear as `@cubicweb/client` and it contains two acronyms.
- in V2 with #4 client codes will have to import files using their full path in order to avoid including the whole library, `@cubicweb/client/EntityProvider` would be shorter to type than `@logilab/cwclientlibjs/EntityProvider`
- we could put the existing cli into a `@cubicweb/cli` package (versus `@logilab/cwcli`) and cwelements into `@cubicweb/elements` (versus `@logilab/cwelements`)
What do you think about that @ethieblin, @famarger, @gvandevelde ?
This would have the side effect of removing the "Logilab" brand from the scope so I think that @nchauvat should take the final decision.
I also think that we should move this project to the https://forge.extranet.logilab.fr/cubicweb groupRelease 2.0.0Nicolas Chauvatnicolas.chauvat@logilab.frNicolas Chauvatnicolas.chauvat@logilab.frhttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/8The CI should run the test with cube installed2021-09-14T13:43:02ZNoé GaumontThe CI should run the test with cube installedhttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/4Use tsc to compile files and stop bundling with webpack2022-06-24T10:05:49ZFrank BessouUse tsc to compile files and stop bundling with webpackUse tsc to build the library. I think it could be done without introducing a breaking change by keeping the webpack build alongside BUT I don't think it is a good idea because each symbol/interface/type would be exported twice:
- once in...Use tsc to build the library. I think it could be done without introducing a breaking change by keeping the webpack build alongside BUT I don't think it is a good idea because each symbol/interface/type would be exported twice:
- once in the bundle (`import {client} from "@logilab/cwclientlibjs"`)
- and once in the transpiled file (`import client from "@logilab/cwclientlibjs/client"`)
I don't think it would cause any problem with interfaces, which use structural typing, but for classes, which commonly use nominal typing, I think it could cause hard to debug errors (which could happen when combining the two imports mode):
```ts
// lib1.d.ts
import {client} from "@logilab/cwclientlibjs/client"
export declare function dataFetcher(rqlClient: client.CwRqlClient) : any
// MyApplication.ts
import {dataFetcher} from "lib1";
import {client} from "@logilab/cwclientlibjs"
const rqlClient = new client.CwRqlClient(...);
dataFetcher(rqlClient) // Probable compile error here
```
That's why I think we should choose to introduce this change in rql v2.Release 2.0.0Frank BessouFrank Bessouhttps://forge.extranet.logilab.fr/open-source/cwclientlibjs/-/issues/1Écrire README2020-04-27T08:08:18ZElodie ThiéblinÉcrire READMEElodie ThiéblinElodie Thiéblin