SE - generování PDF - není čeština #8

Open
opened 2017-09-18 16:02:26 +02:00 by Podhorecky · 23 comments
Podhorecky commented 2017-09-18 16:02:26 +02:00 (Migrated from git.spotter.cz)

kdekoliv se generuje PDF, je špatně čeština, místo znaků černé tečky

Steps to reproduce

  1. výpis z DB, např. https://dasm.dasm.cz:8443/eden/transport/border_crossing
  2. kliknout na ikonu PDF
  3. stáhne se PDF

Expected behaviour

české znaky

Observed behaviour

nejsou české znaky

Additional data (ticket URL, log, timestamp, stack trace etc.)

asi by stačilo přidat do definice nějaký unicode font,
tohle by stálo zato udělat jako issue, nebo pull request, týká se celé Sahany

Pozn.
úprava exportovaného PDF je celá odfláknutá.
když je příliš údajů ve výpisu, tak se strana dělí na více stránek a výpis je pak nečitelný.

Takže úkolem pro budoucího programátora bude ošetřit exporty dat do PDF (případně jiných datových formátů) a předělat exportní šablonu pro PDF aby tp mělo lepší úroveň ke svému účelu použití.
Vpodstatě si představuji úpravu tak, aby šla použít jak pro okamžité vytištění, tak pro nějakou dokumentaci, nebo jako přílohu projektu... tedy logo autora, Záhlaví s identifikací, datum exportu, úprava obsahu na šíři stránky, licence...

Nyní asi stačí ten font.

Report_2017-09-18_15-51-10.pdf

kdekoliv se generuje PDF, je špatně čeština, místo znaků černé tečky ### Steps to reproduce 1. výpis z DB, např. https://dasm.dasm.cz:8443/eden/transport/border_crossing 2. kliknout na ikonu PDF 3. stáhne se PDF ### Expected behaviour české znaky ### Observed behaviour nejsou české znaky ### Additional data (ticket URL, log, timestamp, stack trace etc.) asi by stačilo přidat do definice nějaký unicode font, tohle by stálo zato udělat jako issue, nebo pull request, týká se celé Sahany Pozn. úprava exportovaného PDF je celá odfláknutá. když je příliš údajů ve výpisu, tak se strana dělí na více stránek a výpis je pak nečitelný. Takže úkolem pro budoucího programátora bude ošetřit exporty dat do PDF (případně jiných datových formátů) a předělat exportní šablonu pro PDF aby tp mělo lepší úroveň ke svému účelu použití. Vpodstatě si představuji úpravu tak, aby šla použít jak pro okamžité vytištění, tak pro nějakou dokumentaci, nebo jako přílohu projektu... tedy logo autora, Záhlaví s identifikací, datum exportu, úprava obsahu na šíři stránky, licence... **Nyní asi stačí ten font.** [Report_2017-09-18_15-51-10.pdf](/uploads/c79d0edefdf6ad436f0ca2d44d2fddf5/Report_2017-09-18_15-51-10.pdf)
Podhorecky commented 2017-09-18 16:05:37 +02:00 (Migrated from git.spotter.cz)

changed the description

changed the description
Disassembler commented 2017-09-18 18:51:42 +02:00 (Migrated from git.spotter.cz)

added ~9 label

added ~9 label
Disassembler commented 2017-09-18 22:32:21 +02:00 (Migrated from git.spotter.cz)

closed via commit f3fd928977

closed via commit f3fd9289776f84113675ca3fc5a021b56a12296c
Disassembler commented 2017-09-18 22:37:06 +02:00 (Migrated from git.spotter.cz)

Pull requestu netřeba. Existuje důkladně utajená konfigurační direktiva settings.L10n.pdf_export_font skrze kterou je možno font nastavit. Takže jsem Sahaně posunul jediný patkový font, který v základní instalaci Debianu existuje.

Zbytek úprav bude na programátora, nicméně mám obavu, že Vaše představa bude nesplnitelná, protože generování PDF skrze pythonovské moduly je poměrně primitivní. To, co byste chtěl, by se nejspíše dalo řešit nějakým TeX preprocesorem, ale triviální to určitě nebude.

Pull requestu netřeba. Existuje důkladně utajená konfigurační direktiva `settings.L10n.pdf_export_font` skrze kterou je možno font nastavit. Takže jsem Sahaně posunul jediný patkový font, který v základní instalaci Debianu existuje. Zbytek úprav bude na programátora, nicméně mám obavu, že Vaše představa bude nesplnitelná, protože generování PDF skrze pythonovské moduly je poměrně primitivní. To, co byste chtěl, by se nejspíše dalo řešit nějakým TeX preprocesorem, ale triviální to určitě nebude.
Podhorecky commented 2017-09-18 23:16:26 +02:00 (Migrated from git.spotter.cz)

ok, díky,
... já myslim že to je řešitelné už se o tom víckrát diskutovalo
https://groups.google.com/d/msg/sahana-eden/O3dab_gD1W4/lnyYNbUlBwAJ

ok, díky, ... já myslim že to je řešitelné už se o tom víckrát diskutovalo https://groups.google.com/d/msg/sahana-eden/O3dab_gD1W4/lnyYNbUlBwAJ
Podhorecky commented 2017-09-18 23:16:26 +02:00 (Migrated from git.spotter.cz)

reopened

reopened
Podhorecky commented 2017-09-18 23:16:34 +02:00 (Migrated from git.spotter.cz)

closed

closed
Disassembler commented 2017-09-18 23:26:43 +02:00 (Migrated from git.spotter.cz)

V odkazované diskusi je přesně ten problém, na který narážím. Sahana renderuje PDF z HTML. Ale v HTML neexistuje nic jako konce stránek, záhlaví, zápatí atd. Takže se buď může vyladit každý pixel tak, aby z HTML lezly krásná PDFka pokud je použit přesně konkrétní řez a velikost písma, řádek má maximální počet znaků, stránka maximální počet řádků, nejsou v ní vložena žádná data s neznámou výškou atd. Anebo se použije systém, který řeší sazbu a data si umí přebrat po svém. Taky jsem za svých studijních let programoval PDF výstupy přes HTML, takže vím, co to obnáší. Ještě dneska bych si za to naliskal. Neříkám, že to není řešitelné. Říkám, že je to obtížné a tím pádem drahé :)

V odkazované diskusi je přesně ten problém, na který narážím. Sahana renderuje PDF z HTML. Ale v HTML neexistuje nic jako konce stránek, záhlaví, zápatí atd. Takže se buď může vyladit každý pixel tak, aby z HTML lezly krásná PDFka pokud je použit přesně konkrétní řez a velikost písma, řádek má maximální počet znaků, stránka maximální počet řádků, nejsou v ní vložena žádná data s neznámou výškou atd. Anebo se použije systém, který řeší sazbu a data si umí přebrat po svém. Taky jsem za svých studijních let programoval PDF výstupy přes HTML, takže vím, co to obnáší. Ještě dneska bych si za to naliskal. Neříkám, že to není řešitelné. Říkám, že je to obtížné a tím pádem drahé :)
Podhorecky commented 2018-03-14 22:57:42 +01:00 (Migrated from git.spotter.cz)

changed milestone to %2

changed milestone to %2
Podhorecky commented 2019-01-16 23:38:14 +01:00 (Migrated from git.spotter.cz)

trochu poladili formátování v PDF a4858dc996

trochu poladili formátování v PDF https://github.com/sahana/eden/commit/a4858dc996bb09f3f003163d46dcffba0523550f
Podhorecky commented 2019-03-26 14:11:18 +01:00 (Migrated from git.spotter.cz)

už ti kokoti zas změnili font, takže zas čeština neni.
to je furt dokola :(

Report_2019-03-26_13_08_25.pdf

už ti kokoti zas změnili font, takže zas čeština neni. to je furt dokola :( [Report_2019-03-26_13_08_25.pdf](/uploads/3dd536f42f04a0301aa5e1554a14f349/Report_2019-03-26_13_08_25.pdf)
Podhorecky commented 2019-03-26 14:11:18 +01:00 (Migrated from git.spotter.cz)

reopened

reopened
Disassembler commented 2019-04-13 20:51:15 +02:00 (Migrated from git.spotter.cz)

closed via commit 13153d341b

closed via commit 13153d341b2a2d03e2adb1083d0ca75229943fed
Disassembler commented 2019-04-13 21:00:03 +02:00 (Migrated from git.spotter.cz)

Sice existuje konfigurační nastavení settings.L10n.pdf_export_font, které má nastavovat font v PDF, ale na spoustě míst je natvrdo nastavený název fontu na Helvetica. Takže workaround, který jsem teď commitnul je, že vezmeme font, který obsahuje české znaky, pojmenujeme jej jako Helvetica, ať už se původně jmenuje jakkoliv a explicitně jej nastavíme v konfiguraci. I přesto, že se Helvetica bere jako výchozí font, explicitní nastavení způsobí, že se námi dodané soubory skutečně načtou a nepoužije se místo toho ten podivný výchozí font, které má údajně má být Helvetica, ale které chybí diakritika.

Otevřu na to issue, protože jsem si celkem jist, že to takhle fungovat nemá. Zároveň se ale bojím, že se tu vývoje nedočkáme, protože ta Helvetica je natvrdo nacpaná na vážně hodně místech. Uvidíme.

Sice existuje konfigurační nastavení `settings.L10n.pdf_export_font`, které má nastavovat font v PDF, ale na spoustě míst je natvrdo nastavený název fontu na *Helvetica*. Takže workaround, který jsem teď commitnul je, že vezmeme font, který obsahuje české znaky, pojmenujeme jej jako *Helvetica*, ať už se původně jmenuje jakkoliv a explicitně jej nastavíme v konfiguraci. I přesto, že se *Helvetica* bere jako výchozí font, explicitní nastavení způsobí, že se námi dodané soubory skutečně načtou a nepoužije se místo toho ten podivný výchozí font, které má údajně má být Helvetica, ale které chybí diakritika. Otevřu na to issue, protože jsem si celkem jist, že to takhle fungovat nemá. Zároveň se ale bojím, že se tu vývoje nedočkáme, protože ta *Helvetica* je natvrdo nacpaná na vážně hodně místech. Uvidíme.
Disassembler commented 2019-04-13 21:46:28 +02:00 (Migrated from git.spotter.cz)

Otevřeno issue #1498 v upstreamu.

Otevřeno [issue #1498](https://github.com/sahana/eden/issues/1498) v upstreamu.
Podhorecky commented 2019-04-13 23:36:53 +02:00 (Migrated from git.spotter.cz)

zareagoval rychle :D

zareagoval rychle :D
Disassembler commented 2019-04-14 09:06:55 +02:00 (Migrated from git.spotter.cz)

Jo, tak tohle je přesně ten důvod proč mám ze Sahany deprese. Mají tam tři různé soubory, které dělají úplně to samé, v různých stádiích rozkladu. Něco refaktorují, ale starý kód tam nechají. Já se tu pak 4 hodiny hrabu v kódu plném duplicitních funkcí, introspekce a zpětných volání a když už nevím jak dál a vytvořím ticket, zjistím, že je oprava na jeden řádek na místě, kde by mě to vůbec nenapadlo.

Ten workaround tam stejně nechám, protože vyhledávání výrazu Helvetica v kódu serverové části Sahany najde 28 výskytů v 7 souborech a po tomhle extempore nemám nejmenší chuť zjišťovat, zda jsou skutečně použity nebo zda zas jen koukám na nějaký informační skanzen.

Jo, tak tohle je přesně ten důvod proč mám ze Sahany deprese. Mají tam tři různé soubory, které dělají úplně to samé, v různých stádiích rozkladu. Něco refaktorují, ale starý kód tam nechají. Já se tu pak 4 hodiny hrabu v kódu plném duplicitních funkcí, introspekce a zpětných volání a když už nevím jak dál a vytvořím ticket, zjistím, že je oprava na jeden řádek na místě, kde by mě to vůbec nenapadlo. Ten workaround tam stejně nechám, protože vyhledávání výrazu *Helvetica* v kódu serverové části Sahany najde 28 výskytů v 7 souborech a po tomhle extempore nemám nejmenší chuť zjišťovat, zda jsou skutečně použity nebo zda zas jen koukám na nějaký informační skanzen.
Podhorecky commented 2019-04-14 09:36:05 +02:00 (Migrated from git.spotter.cz)

jasný, chápu. Příště jim prostě nejdřív vyjádřete chybu a položte dotaz jak a kdo to bude řešit. Mě by to taky naštvalo

jasný, chápu. Příště jim prostě nejdřív vyjádřete chybu a položte dotaz jak a kdo to bude řešit. Mě by to taky naštvalo
Podhorecky commented 2020-04-20 00:42:54 +02:00 (Migrated from git.spotter.cz)

tak jsem si myslel že už s češtinou v PDF nebudu obtěžovat, ale v Demo instanci se generování do PDF opět vyskytuje s podivnými znaky. viz příloha.

Report_2020-04-19_22_31_38.pdf

Zdá se, že situace je složitější:

v instanci Spotter to generování PDF někde funguje a dokonce s češtinou OK.

Ale na tabulce Organizace to místo PDF rovnou vytvoří ticket:

Traceback (most recent call last):
  File "/srv/web2py/gluon/restricted.py", line 219, in restricted
    exec(ccode, environment)
  File "/srv/web2py/applications/eden/controllers/org.py", line 511, in <module>
  File "/srv/web2py/gluon/globals.py", line 421, in <lambda>
    self._caller = lambda f: f()
  File "/srv/web2py/applications/eden/controllers/org.py", line 175, in organisation
    return s3db.org_organisation_controller()
  File "/srv/web2py/applications/eden/modules/s3db/org.py", line 6872, in org_organisation_controller
    output = current.rest_controller("org", "organisation",
  File "/srv/web2py/applications/eden/models/00_utils.py", line 245, in s3_rest_controller
    output = r(**attr)
  File "/srv/web2py/applications/eden/modules/s3/s3rest.py", line 691, in __call__
    output = self.resource.crud(self, **attr)
  File "/srv/web2py/applications/eden/modules/s3/s3rest.py", line 1775, in __call__
    output = self.apply_method(r, **attr)
  File "/srv/web2py/applications/eden/modules/s3/s3crud.py", line 113, in apply_method
    output = self.select(r, **attr)
  File "/srv/web2py/applications/eden/modules/s3/s3crud.py", line 1375, in select
    return exporter(resource,
  File "/srv/web2py/applications/eden/modules/s3/s3export.py", line 220, in pdf
    return codec(*args, **kwargs)
  File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 320, in encode
    body_flowable = self.get_resource_flowable(resource, doc)
  File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 433, in get_resource_flowable
    output = S3PDFTable(doc,
  File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 1159, in build
    self.parts = self.calc(data, style)
  File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 1310, in calc
    para = main_doc.addParagraph(item,
  File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 684, in addParagraph
    para = Paragraph(text, style)
  File "/usr/lib/python3.8/site-packages/reportlab/platypus/paragraph.py", line 1541, in __init__
    self._setup(text, style, bulletText or getattr(style,'bulletText',None), frags, cleanBlockQuotedText)
  File "/usr/lib/python3.8/site-packages/reportlab/platypus/paragraph.py", line 1563, in _setup
    style, frags, bulletTextFrags = _parser.parse(text,style)
  File "/usr/lib/python3.8/site-packages/reportlab/platypus/paraparser.py", line 3225, in parse
    return self._complete_parse()
  File "/usr/lib/python3.8/site-packages/reportlab/platypus/paraparser.py", line 3159, in _complete_parse
    self._syntax_error('parse ended with %d unclosed tags\n %s' % (len(self._stack),'\n '.join((x.__tag__ for x in reversed(self._stack)))))
  File "/usr/lib/python3.8/site-packages/reportlab/platypus/paraparser.py", line 2792, in _syntax_error
    raise ValueError('paraparser: syntax error: %s' % message)
ValueError: paraparser: syntax error: parse ended with 1 unclosed tags
 para
tak jsem si myslel že už s češtinou v PDF nebudu obtěžovat, ale v Demo instanci se generování do PDF opět vyskytuje s podivnými znaky. viz příloha. [Report_2020-04-19_22_31_38.pdf](/uploads/3d129283388359e1453b20732347391e/Report_2020-04-19_22_31_38.pdf) Zdá se, že situace je složitější: v instanci Spotter to generování PDF někde funguje a dokonce s češtinou OK. Ale na tabulce Organizace to místo PDF rovnou vytvoří ticket: ``` Traceback (most recent call last): File "/srv/web2py/gluon/restricted.py", line 219, in restricted exec(ccode, environment) File "/srv/web2py/applications/eden/controllers/org.py", line 511, in <module> File "/srv/web2py/gluon/globals.py", line 421, in <lambda> self._caller = lambda f: f() File "/srv/web2py/applications/eden/controllers/org.py", line 175, in organisation return s3db.org_organisation_controller() File "/srv/web2py/applications/eden/modules/s3db/org.py", line 6872, in org_organisation_controller output = current.rest_controller("org", "organisation", File "/srv/web2py/applications/eden/models/00_utils.py", line 245, in s3_rest_controller output = r(**attr) File "/srv/web2py/applications/eden/modules/s3/s3rest.py", line 691, in __call__ output = self.resource.crud(self, **attr) File "/srv/web2py/applications/eden/modules/s3/s3rest.py", line 1775, in __call__ output = self.apply_method(r, **attr) File "/srv/web2py/applications/eden/modules/s3/s3crud.py", line 113, in apply_method output = self.select(r, **attr) File "/srv/web2py/applications/eden/modules/s3/s3crud.py", line 1375, in select return exporter(resource, File "/srv/web2py/applications/eden/modules/s3/s3export.py", line 220, in pdf return codec(*args, **kwargs) File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 320, in encode body_flowable = self.get_resource_flowable(resource, doc) File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 433, in get_resource_flowable output = S3PDFTable(doc, File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 1159, in build self.parts = self.calc(data, style) File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 1310, in calc para = main_doc.addParagraph(item, File "/srv/web2py/applications/eden/modules/s3/codecs/pdf.py", line 684, in addParagraph para = Paragraph(text, style) File "/usr/lib/python3.8/site-packages/reportlab/platypus/paragraph.py", line 1541, in __init__ self._setup(text, style, bulletText or getattr(style,'bulletText',None), frags, cleanBlockQuotedText) File "/usr/lib/python3.8/site-packages/reportlab/platypus/paragraph.py", line 1563, in _setup style, frags, bulletTextFrags = _parser.parse(text,style) File "/usr/lib/python3.8/site-packages/reportlab/platypus/paraparser.py", line 3225, in parse return self._complete_parse() File "/usr/lib/python3.8/site-packages/reportlab/platypus/paraparser.py", line 3159, in _complete_parse self._syntax_error('parse ended with %d unclosed tags\n %s' % (len(self._stack),'\n '.join((x.__tag__ for x in reversed(self._stack))))) File "/usr/lib/python3.8/site-packages/reportlab/platypus/paraparser.py", line 2792, in _syntax_error raise ValueError('paraparser: syntax error: %s' % message) ValueError: paraparser: syntax error: parse ended with 1 unclosed tags para ```
Podhorecky commented 2020-04-20 00:42:54 +02:00 (Migrated from git.spotter.cz)

reopened

reopened
Podhorecky commented 2020-04-20 00:54:45 +02:00 (Migrated from git.spotter.cz)

aha, tak v instanci Demo také při stlačení tlačítka PDF vznikají tickety, tento je z modulu Warehouse. Byl to výpis, kde nebyl žádný český znak a plno polí mělo pomlčky. Problém bych tedy šacoval na složitější a možná že souvisí s tím vyplňováním prázdných polí (?)

Traceback (most recent call last):
  File "/srv/web2py/gluon/restricted.py", line 219, in restricted
    exec(ccode, environment)
  File "/srv/web2py/applications/eden/controllers/inv.py", line 1785, in <module>
  File "/srv/web2py/gluon/globals.py", line 421, in <lambda>
    self._caller = lambda f: f()
  File "/srv/web2py/applications/eden/controllers/inv.py", line 415, in warehouse
    output = s3_rest_controller(module, resourcename,
  File "/srv/web2py/applications/eden/models/00_utils.py", line 245, in s3_rest_controller
    output = r(**attr)
  File "/srv/web2py/applications/eden/modules/s3/s3rest.py", line 697, in __call__
    output = postprocess(self, output)
  File "/srv/web2py/applications/eden/controllers/inv.py", line 397, in postp
    if "add_btn" in output:
TypeError: a bytes-like object is required, not 'str'
aha, tak v instanci Demo také při stlačení tlačítka PDF vznikají tickety, tento je z modulu Warehouse. Byl to výpis, kde nebyl žádný český znak a plno polí mělo pomlčky. Problém bych tedy šacoval na složitější a možná že souvisí s tím vyplňováním prázdných polí (?) ``` Traceback (most recent call last): File "/srv/web2py/gluon/restricted.py", line 219, in restricted exec(ccode, environment) File "/srv/web2py/applications/eden/controllers/inv.py", line 1785, in <module> File "/srv/web2py/gluon/globals.py", line 421, in <lambda> self._caller = lambda f: f() File "/srv/web2py/applications/eden/controllers/inv.py", line 415, in warehouse output = s3_rest_controller(module, resourcename, File "/srv/web2py/applications/eden/models/00_utils.py", line 245, in s3_rest_controller output = r(**attr) File "/srv/web2py/applications/eden/modules/s3/s3rest.py", line 697, in __call__ output = postprocess(self, output) File "/srv/web2py/applications/eden/controllers/inv.py", line 397, in postp if "add_btn" in output: TypeError: a bytes-like object is required, not 'str' ```
Disassembler commented 2020-04-22 19:19:34 +02:00 (Migrated from git.spotter.cz)

tak jsem si myslel že už s češtinou v PDF nebudu obtěžovat, ale v Demo instanci se generování do PDF opět vyskytuje s podivnými znaky

V Demo instanci je to očekávané, protože používá vše ve výchozím stavu, tudíž nezná češtinu a nemá definováno, že pro ni má v PDF použít jiný font. Nicméně jsem ve Franově zázračení v 1c48a9db37 objevil, že si Sahana umí sama stáhnout a použít Unifont, což jsem doteď nevěděl a ve Spotter instanci místo toho lámal přes koleno použití Helveticy, takže tohle ještě prozkoumám a příležitostně teda napatchuju i na Demo instanci.

Chybám, které jste objevil a jejichž tracebacky napostoval, se budu věnovat pak. Je dost možné, že některá z těch čerstvých oprav problém již řeší. Bylo tam toho dost kolem překladatelského rozhraní a polštiny, která má taky všelijaká nabodeníčka.

> tak jsem si myslel že už s češtinou v PDF nebudu obtěžovat, ale v Demo instanci se generování do PDF opět vyskytuje s podivnými znaky V Demo instanci je to očekávané, protože používá vše ve výchozím stavu, tudíž nezná češtinu a nemá definováno, že pro ni má v PDF použít jiný font. Nicméně jsem ve Franově zázračení v https://github.com/sahana/eden/commit/1c48a9db37c0f5c01f94fcbf7884773040f5611c objevil, že si Sahana umí sama stáhnout a použít Unifont, což jsem doteď nevěděl a ve Spotter instanci místo toho lámal přes koleno použití Helveticy, takže tohle ještě prozkoumám a příležitostně teda napatchuju i na Demo instanci. Chybám, které jste objevil a jejichž tracebacky napostoval, se budu věnovat pak. Je dost možné, že některá z těch čerstvých oprav problém již řeší. Bylo tam toho dost kolem překladatelského rozhraní a polštiny, která má taky všelijaká nabodeníčka.
Podhorecky commented 2020-04-24 23:18:05 +02:00 (Migrated from git.spotter.cz)

ano, pozoruji, že někdo z Polska se pustil do boje s Covidem přes Sahanu. Právě na dodávky a objednávky by to v nějaké ideální inkarnaci asi mohlo pomoct. No, v tomto stavu jim držím palce, ať se jim podaří dosáhnout cíle.

ano, pozoruji, že někdo z Polska se pustil do boje s Covidem přes Sahanu. Právě na dodávky a objednávky by to v nějaké ideální inkarnaci asi mohlo pomoct. No, v tomto stavu jim držím palce, ať se jim podaří dosáhnout cíle.
Sign in to join this conversation.
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: Disassembler/Spotter-VM#8
No description provided.