cubes issueshttps://forge.extranet.logilab.fr/groups/cubicweb/cubes/-/issues2023-12-20T22:53:29Zhttps://forge.extranet.logilab.fr/cubicweb/cubes/web/-/issues/6[views]: missing « see them all » in right boxes2023-12-20T22:53:29ZSimon Chabot[views]: missing « see them all » in right boxesSimon ChabotSimon Chabothttps://forge.extranet.logilab.fr/cubicweb/cubes/web/-/issues/5[views]: url in urlattr are escaped2023-12-12T11:43:10ZSimon Chabot[views]: url in urlattr are escapedSimon ChabotSimon Chabothttps://forge.extranet.logilab.fr/cubicweb/cubes/web/-/issues/4[indexview] bad init for dict2024-01-02T14:05:36ZNicolas Chauvatnicolas.chauvat@logilab.fr[indexview] bad init for dictindexview_etype_section.init takes schema as argument => make sure the keys of the dict are the names of the entity types, not the type classes themselves.indexview_etype_section.init takes schema as argument => make sure the keys of the dict are the names of the entity types, not the type classes themselves.https://forge.extranet.logilab.fr/cubicweb/cubes/elasticsearch/-/issues/8[es] add an option for indexing numeric fields (Float, Int)2023-12-11T14:03:32ZKatia Saurfelt[es] add an option for indexing numeric fields (Float, Int)1.1.0https://forge.extranet.logilab.fr/cubicweb/cubes/rodolf/-/issues/1Définition des fonctionnalités de base2023-12-13T14:52:58ZFabien Amargerfabien.amarger@logilab.frDéfinition des fonctionnalités de baseTout d'abord nous proposons de mettre en place une application de suivi de publication des données. Cette application sera le point d'entrée pour la publication des données
des institutions membres de l'association.
Chaque organisme pub...Tout d'abord nous proposons de mettre en place une application de suivi de publication des données. Cette application sera le point d'entrée pour la publication des données
des institutions membres de l'association.
Chaque organisme publiant des données pourra créer un compte et avoir accès à une interface pour définir les informations
nécessaires à la récupération des données de l'institution. Ces informations se limiteront à une URL où récupérer les données et la fréquence de mise à jour des données.
De cette manière, l'application de publication pourra récupérer périodiquement les données de l'institution. Chaque récupération sera associée à un rapport de validité,
qui contiendra des statistiques basiques sur ce qui a été importé (par exemple nombre d'instances importées par classe), les erreurs de validation de données s'il y en a
et la date à laquelle les données ont été collectées. De cette manière, il est possible, pour l'institution, de suivre ce qui a été publié.
L'application de suivi de production devra permettre de spécifier l'ontologie et les règles de validations (SHACL) que doivent respecter
les données des différentes institutions. Ces informations devront être définies dans une interface d'administration générale à toute
l'application et non pour une institution seulement.
De plus, l'application permetra de tester un jeu de données pour avoir un rapport d'erreurs rapidement afin de savoir si l'export effectué correspond à ce qui est attendu.
Une fois les données collectées, l'application de suivi de production des données RDF mettra à jour les données d'un entrepôt SPARQL, unique à toutes les institutions. Il
sera alors possible d'interroger l'intégralité des données des différentes institutions sur un seul et même entrepôt et ce en garantissant un maximum d'autonomie.
## liste des tâches à réaliser (à spécifier)
* Authentification
* Interface de saisi des informations de récupération des données
* Interface de saisi de l'ontologie et des règles de validation
* Script de récupération périodiques des données
* Validation des données (shape SHACL)
* Génération du rapport d'erreurs et de statistiques
* Service de tests rapide des données
* Déploiement d'un entrepôt SPARQL
* Mise à jour des donnéeshttps://forge.extranet.logilab.fr/cubicweb/cubes/web/-/issues/3[reledit] : bug dans le calcul des permissions pour les relations pour l'affi...2023-12-08T15:46:37ZViet-Hung Nhu[reledit] : bug dans le calcul des permissions pour les relations pour l'affichage actionbox_appearsin_addmenuLes permissions sur l'ajout des entités peuvent être complexes, cette complexité n'est pas prise en compte dans le calcul des permissions
P.ex dans le cas de némo, la permission sur l'ajout d'un objet peut impliquer le sujet, ce qui n'e...Les permissions sur l'ajout des entités peuvent être complexes, cette complexité n'est pas prise en compte dans le calcul des permissions
P.ex dans le cas de némo, la permission sur l'ajout d'un objet peut impliquer le sujet, ce qui n'est pas pris en compte dans la méthode AddRelatedActions.add_related_schemashttps://forge.extranet.logilab.fr/cubicweb/cubes/jsonschema/-/issues/3Errors in site_cubicweb.py2023-12-07T13:23:59ZKatia SaurfeltErrors in site_cubicweb.py1.
``` File "/home/katia/.virtualenvs/siaf4.2/lib/python3.9/site-packages/cubicweb_jsonschema/site_cubicweb.py", line 60, in <module>
add_mappers_to_cube_appobject_path()
File "/home/katia/.virtualenvs/siaf4.2/lib/python3.9/site-p...1.
``` File "/home/katia/.virtualenvs/siaf4.2/lib/python3.9/site-packages/cubicweb_jsonschema/site_cubicweb.py", line 60, in <module>
add_mappers_to_cube_appobject_path()
File "/home/katia/.virtualenvs/siaf4.2/lib/python3.9/site-packages/cubicweb_jsonschema/site_cubicweb.py", line 52, in add_mappers_to_cube_appobject_path
LOGGER.warning(
Message: 'failed to import %s.%s, "mappers" appobjects will not loaded for this configuration'
```
2.
```
File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 790, in exec_module
File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
File "/home/katia/src/siafcw28/jsonschema/cubicweb_jsonschema/site_cubicweb.py", line 59, in <module>
add_mappers_to_cube_appobject_path()
File "/home/katia/src/siafcw28/jsonschema/cubicweb_jsonschema/site_cubicweb.py", line 51, in add_mappers_to_cube_appobject_path
LOGGER.warning(
Message: 'failed to import %s.%s, "mappers" appobjects will not loaded for this configuration'
Arguments: (('cubicweb.server.serverconfig', 'ServerConfiguration'),)
```1.7.2Katia SaurfeltKatia Saurfelthttps://forge.extranet.logilab.fr/cubicweb/cubes/elasticsearch/-/issues/7Upgrade elasticsearch and elasticsearch-dsl2023-11-24T10:42:25ZKatia SaurfeltUpgrade elasticsearch and elasticsearch-dslUpgrade elasticsearch and elasticsearch-dsl versions to ">=8.0.0,<9.0.0"Upgrade elasticsearch and elasticsearch-dsl versions to ">=8.0.0,<9.0.0"1.1.0Katia SaurfeltKatia Saurfelthttps://forge.extranet.logilab.fr/cubicweb/cubes/elasticsearch/-/issues/6Common terms query is no longer supported in ES 8.X2023-10-31T18:03:00ZKatia SaurfeltCommon terms query is no longer supported in ES 8.X[deprecation.elasticsearch][CRITICAL] Deprecated field [common] used, replaced by [[match] query which can efficiently skip blocks of documents if the total number of hits is not tracked][deprecation.elasticsearch][CRITICAL] Deprecated field [common] used, replaced by [[match] query which can efficiently skip blocks of documents if the total number of hits is not tracked]1.1.0https://forge.extranet.logilab.fr/cubicweb/cubes/elasticsearch/-/issues/5Specifying types in requests is no longer supported2023-11-24T10:42:26ZKatia SaurfeltSpecifying types in requests is no longer supportedRemove `doc_types` argument from requestsRemove `doc_types` argument from requests1.1.0Katia SaurfeltKatia Saurfelthttps://forge.extranet.logilab.fr/cubicweb/cubes/elasticsearch/-/issues/4Update to ES 8.X2023-11-03T14:14:59ZKatia SaurfeltUpdate to ES 8.XUpdate to the latest (8.10) ElasticSearc versionUpdate to the latest (8.10) ElasticSearc version1.1.0Katia SaurfeltKatia Saurfelthttps://forge.extranet.logilab.fr/cubicweb/cubes/web/-/issues/2Ignorer les vues abstraites dans le système de sélection automatique des vues2023-10-31T13:35:03ZNicola SpantiIgnorer les vues abstraites dans le système de sélection automatique des vues## Problème
Si une vue CubicWeb a un `__select__`, elle semble toujours tentée. La nom de la classe a beau avoir un nom commençant par un underscore et avoir `__abstract__ = True`, il est tout de même tenté de la sélectionner.
## Exemp...## Problème
Si une vue CubicWeb a un `__select__`, elle semble toujours tentée. La nom de la classe a beau avoir un nom commençant par un underscore et avoir `__abstract__ = True`, il est tout de même tenté de la sélectionner.
## Exemple
```
from cubicweb_web import action
class _DownloadExecutableFileResult(action.Action):
__abstract__ = True
submenu = _('download results')
vid = 'nemo.bytes-attribute-download'
class _DownloadExecutableErrors(_DownloadExecutableFileResult):
__abstract__ = True
__regid__ = 'nemo.download_fcast_calibration_errors'
__select__ = (is_in_state('wfs_finished', 'wfs_failed')
& score_entity(lambda e: e.has_errors_file))
```
## Souhait
On souhaite qu'un underscore au début du nom de la classe ou `__abstract__ = True` fasse que la classe soit ignorée dans le mécanisme de sélection. Cela ne doit pas valoir pour la ou les classes qui en héritent et qui n'ont pas l'une de ses propriétés.
## Notes
### Pile d'appels incomplète
```
../../.virtualenvs/nemo/lib/python3.9/site-packages/cubicweb/cwvreg.py:278: in possible_actions
actions = rset.possible_actions(**kwargs) # cached implementation
../../.virtualenvs/nemo/lib/python3.9/site-packages/cubicweb/rset.py:104: in possible_actions
actions = self.req.vreg["actions"].poss_visible_objects(
../../.virtualenvs/nemo/lib/python3.9/site-packages/cubicweb/cwvreg.py:272: in poss_visible_objects
return sorted(self.possible_objects(*args, **kwargs), key=lambda x: x.order)
../../.virtualenvs/nemo/lib/python3.9/site-packages/logilab/common/registry.py:669: in possible_objects
obj = self._select_best(objects, *args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/logilab/common/registry.py:714: in _select_best
objectscore = obj.__select__(obj, *args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/logilab/common/registry.py:1255: in traced
ret = selector(cls, *args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/logilab/common/registry.py:275: in __call__
partscore = selector(cls, *args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/logilab/common/registry.py:1255: in traced
ret = selector(cls, *args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/logilab/common/registry.py:1255: in traced
ret = selector(cls, *args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/logilab/common/registry.py:1255: in traced
ret = selector(cls, *args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/cubicweb/predicates.py:196: in __call__
escore = self.score(req, rset, row, col)
../../.virtualenvs/nemo/lib/python3.9/site-packages/cubicweb/predicates.py:211: in score
return self.score_entity(rset.get_entity(row, col))
../../.virtualenvs/nemo/lib/python3.9/site-packages/cubicweb/predicates.py:721: in intscore
score = scorefunc(*args, **kwargs)
../../.virtualenvs/nemo/lib/python3.9/site-packages/cubicweb/predicates.py:1138: in score
return self._score(adapted)
```
### Tentative de recherche de l'origine
```
# logilab/common/registry.py
class RegistryStore(dict):
@classmethod
def is_registrable(cls, obj: Any) -> bool:
[some code]
if obj.__dict__.get("__abstract__", False):
return False
```
Malgré ça, le problème se pose.https://forge.extranet.logilab.fr/cubicweb/cubes/intranet/-/issues/4deploy with helm2023-12-11T15:40:31ZNicolas Chauvatnicolas.chauvat@logilab.frdeploy with helm- [ ] https://forge.extranet.logilab.fr/logilab/infra/sysadmin/-/issues/2065- [ ] https://forge.extranet.logilab.fr/logilab/infra/sysadmin/-/issues/2065https://forge.extranet.logilab.fr/cubicweb/cubes/intranet/-/issues/3upgrade to cubicweb 42023-12-11T13:42:57ZNicolas Chauvatnicolas.chauvat@logilab.frupgrade to cubicweb 4https://forge.extranet.logilab.fr/cubicweb/cubes/fresh/-/issues/7migrer à cubicweb 42023-10-25T21:44:00ZNicolas Chauvatnicolas.chauvat@logilab.frmigrer à cubicweb 4- [x] code migré- [x] code migréhttps://forge.extranet.logilab.fr/cubicweb/cubes/fresh/-/issues/6déployer avec helm2023-11-23T09:11:29ZNicolas Chauvatnicolas.chauvat@logilab.frdéployer avec helmhttps://forge.extranet.logilab.fr/cubicweb/cubes/fresh/-/issues/5Pour les lignes de dépense, enlever de "pour le compte [de]" les gens désactivés2023-10-12T14:51:13ZNicola SpantiPour les lignes de dépense, enlever de "pour le compte [de]" les gens désactivés## Situation actuelle
Quand on ajoute ou modifie une ligne de dépense (`ExpenseLine`), il y a un champ "pour le compte [de]" (`paid_for`). Pour ce champ, l'interface web propose une liste, avec des trucs généraux de la boite et une lign...## Situation actuelle
Quand on ajoute ou modifie une ligne de dépense (`ExpenseLine`), il y a un champ "pour le compte [de]" (`paid_for`). Pour ce champ, l'interface web propose une liste, avec des trucs généraux de la boite et une ligne par employé·e. C'est pratique, mais cette liste ne fait que grossir, car les ex-salarié·e·s sont toujours dedans, alors qu'illes ne vont évidemment plus faire la moindre note de frais auprès de Logilab.
## Interface graphique
![Capture_d_écran_2023-10-12_16-41-57](/uploads/aea10537cd7c37b23d122b60ad79ca54/Capture_d_écran_2023-10-12_16-41-57.png)
## Souhait
On voudrait que la liste ne contienne pas les ex-salarié·e·s, du moins pour les nouvelles lignes de dépense et l'édition de celles plus récentes que le départ de 'ex-salarié·e.https://forge.extranet.logilab.fr/cubicweb/cubes/timesheet/-/issues/2ajout affectation2023-10-20T09:47:32ZNicolas Chauvatnicolas.chauvat@logilab.frajout affectationajouter au modèle une entité `Affectation` avec les attributs `duration`, `begin_date` et `end_date` qui est liée aux entités `WorkOrder` et `Resource`.
pour un `WorkOrder todo_by Resource` l'utilisateur correspondant peut rajouter une ...ajouter au modèle une entité `Affectation` avec les attributs `duration`, `begin_date` et `end_date` qui est liée aux entités `WorkOrder` et `Resource`.
pour un `WorkOrder todo_by Resource` l'utilisateur correspondant peut rajouter une `Affectation` liée à ce `Workorder` et cette `Resource`. La somme des `duration` des `Affectation` doit être inférieure ou égale à la `duration` du `WorkOrder` et les dates de l'affectation doivent être comprises dans les dates du WorkOrder.
on pourra ensuite afficher les affectations dans le calendrier pour servir de prévision.https://forge.extranet.logilab.fr/cubicweb/cubes/person/-/issues/1Testing2023-09-14T12:42:41ZElodie ThiéblinTestinghttps://forge.extranet.logilab.fr/cubicweb/cubes/web/-/issues/1Static data failed to be served when `datadir-url` is specified.2023-09-05T08:53:23ZSimon ChabotStatic data failed to be served when `datadir-url` is specified.When the datadir-url is specified, the static files url are not well redirected and then fail to be resolved.
For instance, setting `datadir-url="http:/localhost:8080/foo/bar/baz/` leads to http://wilson:8080/foobar/baz/eb93a70adb8b9670...When the datadir-url is specified, the static files url are not well redirected and then fail to be resolved.
For instance, setting `datadir-url="http:/localhost:8080/foo/bar/baz/` leads to http://wilson:8080/foobar/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/r/baz/eb93a70adb8b96705ddb7aec558e12bd/my_great_style.css
:warning: solving this issue should not break the handling of custom `base-url`.