gristlabs_grist-core/sandbox/grist
Dmitry S 48ca124f23 (core) Render unmarshallable values as non-errors, using their repr() strings.
Summary:
- Instead of sending an "UnmarshallableError" as an exception, introduce an
  "Unmarshallable" type of value, represented as ['U', repr(value)]
- Unmarshallable values are rendered using a bluish text color, no longer a
  pink background.
- Factor out ErrorDom to be simpler and cleaner.
- Add GristObjCode enum, and simplify related helpers.
- Use safe_repr() for when repr() itself fails
- Handle conversion errors using safe_repr() when str() fails

Test Plan: Added a test case based on a fixture covering a bunch of cases.

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D2584
2020-08-14 11:33:29 -04:00
..
functions (core) Implement RECORD function that converts Records to Python dictionaries 2020-08-12 13:31:57 -04:00
imports (core) move data engine code to core 2020-07-29 08:57:25 -04:00
acl.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
action_obj.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
actions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
codebuilder.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
column.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
csv_patch.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
depend.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
docactions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
docmodel.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
engine.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
gencode.py (core) Filter out gristHelper columns from the code listing in CodeEditor 2020-07-30 23:18:19 -04:00
gpath.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
grist.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
identifiers.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
import_actions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
logger.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
lookup.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
main.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
match_counter.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
migrations.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
moment_parse.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
moment.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
objtypes.py (core) Render unmarshallable values as non-errors, using their repr() strings. 2020-08-14 11:33:29 -04:00
records.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
relabeling.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
relation.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
repl.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
runtests.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
sandbox.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
schema.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
summary.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
table_data_set.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
table.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_acl.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_actions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_codebuilder.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_column_actions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_completion.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_derived.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_display_cols.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_docmodel.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_engine.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_find_col.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_formula_error.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_functions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_gencode.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_gpath.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_import_actions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_import_transform.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_logger.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_lookups.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_match_counter.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_migrations.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_moment.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_record_func.py (core) Implement RECORD function that converts Records to Python dictionaries 2020-08-12 13:31:57 -04:00
test_relabeling.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_renames2.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_renames.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_side_effects.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_summary2.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_summary.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_table_actions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_table_data_set.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_textbuilder.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_treeview.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_twowaymap.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_types.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
test_useractions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
testsamples.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
testscript.json (core) move data engine code to core 2020-07-29 08:57:25 -04:00
testutil.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
textbuilder.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
treeview.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
twowaymap.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
tzdata.data (core) move data engine code to core 2020-07-29 08:57:25 -04:00
useractions.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
usercode.py (core) move data engine code to core 2020-07-29 08:57:25 -04:00
usertypes.py (core) Render unmarshallable values as non-errors, using their repr() strings. 2020-08-14 11:33:29 -04:00