Wiki
Clone wikiorange-textable / TODO in branch 3
Remarques
"v1.5.2" fait référence à la version stable actuelle, avant les changements faits dans cette branche. Sont toujours dans cette version (ou presque) toutes les classes des widgets (OWTextable*.py) ainsi que les modules non testés de LTTL (Processor.py et Utils.py). Table.py est entre deux eaux.
LTTL devient un package autonome
Changer les importations en conséquence dans les widgets.
Classe Address intégrée dans Segment
Partout dans le code en v1.5.2, remplacer les appels à:
segment.address.str_index
parsegment.str_index
segment.address.start
parsegment.start
segment.address.end
parsegment.end
Méthodes de Segmenter converties en fonctions
Partout dans le code en v1.5.2, remplacer les choses comme:
from LTTL.Segmenter import Segmenter
segmenter = Segmenter()
output = segmenter.tokenize(parameters)
par quelque chose comme:
import LTTL.Segmenter as Segmenter
output = Segmenter.tokenize(parameters)
Recoder intégré à Segmenter
Partout dans le code en v1.5.2, remplacer les choses comme:
from LTTL.Recoder import Recoder
recoder = Recoder(substitutions=foo, case="lower", remove_accents=True)
output = recoder.apply(segmentation, mode="standard", progress_callback=some_ref)
par quelque chose comme:
import LTTL.Segmenter as Segmenter
output = Segmenter.recode(segmentation, substitutions=foo, case="lower", remove_accents=True, progress_callback=some_ref)
NB: le paramètre mode
n'est plus utilisé (peut normalement être supprimé sans autre dans le code client)
Changements de signature dans Segmenter
- Dans les fonctions qui l'utilisent, le paramètre
auto_numbering_as
a été renomméauto_number_as
. concatenate
: inversion de l'ordre de deux paramètres (auto_numbering_as, sort
=>sort, auto_number_as
)tokenize
: valeur par défaut du paramètremerge_duplicates
changée deTrue
àFalse
; les chaines Tokenize et Split indiquant le mode d'application des regex sont converties en minuscules (tokenize et split)intersect
: les paramètressource
etfiltering
, qui étaient des dictionnaires, ont été remplacés par (dans l'ordre)source
(=source['segmentation']
),filtering
(=filtering['segmentation']
),source_annotation_key
(=source['annotation_key']
) etfiltering_annotation_key
(=filtering['annotation_key']
)import_xml
: valeur par défaut du paramètreremove_markup
changée deTrue
àFalse
; modification de l'ordre de 3 paramètres (remove_markup, auto_numbering_as, merge_duplicates
=>auto_numbering_as, merge_duplicates, remove_markup
)bypass
: renvoyait une 2è valeur de retour inutile (neg_segmentation
), n'en renvoie désormais plus qu'une.
Changements de calcul de progression dans Segmenter
Le nombre total d'appels de progress_callback
(pour barre de progression) a été modifié dans les fonctions suivantes (cf. docstrings des fonctions pour nouvelle valeur):
tokenize
select
threshold
intersect
import_xml
recode
Changement de signature dans Segmentation
Dans la méthode to_string
, le paramètre format
a été renommé formatting
.
Processor.py
Convertir méthodes en fonctions, cf. Segmenter.
Table.py
- La classe est en chantier, pas sûr de l'endroit où je me suis arrêté il y a 2 mois (probablement après from_numpy), les remarques qui suivent ne concernent que le début du code...
- méthode
__init__
: les paramètresheader_row
etheader_col
, qui étaient des dictionnaires, ont été remplacés par (dans l'ordre)header_row_id
(=header_row['id']
),header_row_type
(=header_row['type']
),header_col_id
(=header_col['id']
),header_col_type
(=header_col['type']
) - la méthode
to_orange_table
devra être réimplémentée pour Orange 3 - méthode
to_sorted
: les paramètresrow
etcol
, qui étaient des dictionnaires, ont été remplacés par (dans l'ordre)key_col_id
(=row['key_id']
!),reverse_rows
(=row['reverse']
),key_row_id
(=col['key_id'] !
),reverse_cols
(=col['reverse']
) - plusieurs changements ponctuels dans
to_transposed
etto_weighted_flat
dont les conséquences ne sont pas claires pour le moment (cf. TODO dans ces méthodes)...
Updated