webui-client issueshttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues2022-12-04T12:36:44+01:00https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/92Grammars can't have digits as terminals2022-12-04T12:36:44+01:00Filip GregorGrammars can't have digits as terminalsSee the image
![image](/uploads/10f155a65a3774ec6e520d0e5d35b555/image.png)See the image
![image](/uploads/10f155a65a3774ec6e520d0e5d35b555/image.png)Tomáš PeckaTomáš Pecka2022-12-01https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/91Internal error after Determinize -> Total2022-10-19T21:56:59+02:00Tomáš PeckaInternal error after Determinize -> Totalhttps://alt.fit.cvut.cz/webui/?s=6ABabzH7jr3jIWuDLPlkkjhttps://alt.fit.cvut.cz/webui/?s=6ABabzH7jr3jIWuDLPlkkjTomáš PeckaTomáš Pecka2022-10-19https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/90Automaton/grammar input box: table and string should show the same input when...2022-10-16T14:56:43+02:00Tomáš PeckaAutomaton/grammar input box: table and string should show the same input when switchingIf you write input in the table then it is not persisted in the text area. Let's implement shared state and only fill the data.If you write input in the table then it is not persisted in the text area. Let's implement shared state and only fill the data.Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/89Input box types string and String are confusing2022-10-16T19:35:49+02:00Tomáš PeckaInput box types string and String are confusingStudent did come up with this which is wrong [webui_export.json](/uploads/fbe40c1ecdb3876cce424f1fda76afd5/webui_export.json)
We need to redesign this, it's very confusing because
* string is unparsed but sometimes (when?) this std::st...Student did come up with this which is wrong [webui_export.json](/uploads/fbe40c1ecdb3876cce424f1fda76afd5/webui_export.json)
We need to redesign this, it's very confusing because
* string is unparsed but sometimes (when?) this std::string is lifted to our string::LinearString (String)
* String type is `string::*`, it also needs to delimit symbols with whitespace and for linear string we need to wrap it in quotes (e.g . `"a h o j"`)
cc @bilybranhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/88Input Automaton Table doesn't accept digits as symbols2022-10-04T09:55:31+02:00Filip GregorInput Automaton Table doesn't accept digits as symbols![image](/uploads/86cc4dcbeba99af1c2cf8a70e40ca918/image.png)![image](/uploads/86cc4dcbeba99af1c2cf8a70e40ca918/image.png)Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/87Automaton input - Tab jumps to wrong field2022-10-04T13:19:12+02:00Filip GregorAutomaton input - Tab jumps to wrong fieldWhen using the Input node with type Automaton, Table format, the cursor sometimes dissapears when creating new row.
How to reproduce:
- Create input node, Automaton, Table.
- Write into first row some states and press enter.
- This crea...When using the Input node with type Automaton, Table format, the cursor sometimes dissapears when creating new row.
How to reproduce:
- Create input node, Automaton, Table.
- Write into first row some states and press enter.
- This creates new row, try to write single letter, the cursor should dissapear after that.
- It also happens when you try to write under the delta, when writing one symbol the cursor immediately dissapers. This does not seem to happen when writing under the other columns.
It is particularly annoying when trying to tab to next field.
Tested on Firefox and Chromium.Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/86show measurements2022-05-19T19:11:28+02:00Tomáš Peckashow measurementsWe can run algorithms within measurements frame and report those. We just need an API for measurements, printing the frame report is not enoughWe can run algorithms within measurements frame and report those. We just need an API for measurements, printing the frame report is not enoughhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/85Implement explicit cast node2022-05-19T19:10:21+02:00Tomáš PeckaImplement explicit cast nodeI guess this should work like a node where you select cast target from a dropdown menu (see `casts` from worker definitions).
We can probably filter the targets based on the previous result type but I am not sure how that plays out with...I guess this should work like a node where you select cast target from a dropdown menu (see `casts` from worker definitions).
We can probably filter the targets based on the previous result type but I am not sure how that plays out with the merged result types now.https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/84Drop JMS "load balancer"2022-05-07T13:45:23+02:00Tomáš PeckaDrop JMS "load balancer"Look into implementations of load balancing. Do we really need the middleware API server implementing JMS?
Isn't it enough to just configure API server's nginx to be the load balancer and redirect the requests to one of the (worker) IPs...Look into implementations of load balancing. Do we really need the middleware API server implementing JMS?
Isn't it enough to just configure API server's nginx to be the load balancer and redirect the requests to one of the (worker) IPs? Is this easily scalable? Or do we need to hardcode the IPs into the nginx config?
I'd like this because this means that we can drop the API KTOR server and JMS.
On the other hand, all the workers would be API servers. Also with current state we have a 100% FIFO for requests (once worker finishes, it takes another job). With nginx load balancing we would have N queues that are processed individually. So for instance when there are two queues (A, B) and `len(A) = 10`, len(B) = 5` it can happen that A would be emptied first when B jobs run longer. Or perhaps not? https://guo365.github.io/study/nginx.org/en/docs/admin-guide/HTTP%20load%20balancer.html#maxconnsTomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/83Document how to build and run webui for modified ALT Core2022-05-11T23:37:58+02:00Martin ProkopičDocument how to build and run webui for modified ALT CoreHi, I would like to implement some custom algorithms for ALT and use them from the webui, but I am facing a lack of documentation on the build process. I somehow did it last year for my Bachelor's thesis, but the only thing I remember no...Hi, I would like to implement some custom algorithms for ALT and use them from the webui, but I am facing a lack of documentation on the build process. I somehow did it last year for my Bachelor's thesis, but the only thing I remember now is that it was a mess and took way too long.
I would like step-by-step instructions (commands to copy and paste are enough) how to get from a cloned algorithm-library-toolkit-core repo with modified source to open browser with working webui based on the modified code. The only prerequisite would be installed Docker. It should also allow for incremental builds, so users don't have to wait half an hour after each change.
This should then be added to the README or the website.Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/82Introduce parser generators for ALT formats2022-05-13T12:04:50+02:00Tomáš PeckaIntroduce parser generators for ALT formatsThese handwritten parsers are hard to maintain.
Look e.g. into [peggy.js](https://github.com/peggyjs/peggy), the successor of peg.jsThese handwritten parsers are hard to maintain.
Look e.g. into [peggy.js](https://github.com/peggyjs/peggy), the successor of peg.jsTomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/81Check keys in dialog components2022-10-18T09:31:48+02:00Hana LitavskáCheck keys in dialog componentsCheck prop key in
* input dialog
* input grammar
* output dialog
* output grammar
input automaton table and output automaton table should be ok now.Check prop key in
* input dialog
* input grammar
* output dialog
* output grammar
input automaton table and output automaton table should be ok now.Hana LitavskáHana Litavskáhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/80Let output nodes decide their features from the actual visualized type2022-04-25T17:15:15+02:00Jan TrávníčekLet output nodes decide their features from the actual visualized typehttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/merge_requests/47#note_276115https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/merge_requests/47#note_276115Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/79Can't input CSG in grammar form2022-04-17T10:59:25+02:00Tomáš PeckaCan't input CSG in grammar formi don't know how to input the following grammar using the grammar form:
* CSG
* initial symbol `S`
* rules
* `S -> a`
* `c A B c -> c A A A A A A A c`
Evaluation ends with error `Evaluation of algorithm string::Parse failed. Parse ...i don't know how to input the following grammar using the grammar form:
* CSG
* initial symbol `S`
* rules
* `S -> a`
* `c A B c -> c A A A A A A A c`
Evaluation ends with error `Evaluation of algorithm string::Parse failed. Parse callback not registered.`
Tested on d4d1827289b00de1564385547d640497e86c4dbbHana LitavskáHana Litavskáhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/78Grammar form does not add initial symbol into grammar's alphabet2022-04-17T10:59:25+02:00Tomáš PeckaGrammar form does not add initial symbol into grammar's alphabet![gform](/uploads/9062dcddd6ac144c9f5edd12b2c9df7d/gform.gif)
Tested on: d4d1827289b00de1564385547d640497e86c4dbb
![gform](/uploads/9062dcddd6ac144c9f5edd12b2c9df7d/gform.gif)
Tested on: d4d1827289b00de1564385547d640497e86c4dbb
Hana LitavskáHana Litavskáhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/77Fix grammar form validation for digits2022-04-17T10:59:25+02:00Hana LitavskáFix grammar form validation for digitsSymbol shouldn't start with digit.
When symbol `0b` is input and is submited with DONE button, the snackbar with error is shown but the form will close anyway and must be reopened for correction.Symbol shouldn't start with digit.
When symbol `0b` is input and is submited with DONE button, the snackbar with error is shown but the form will close anyway and must be reopened for correction.https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/76Adapt to changes in Determinize registrations in the core2022-05-14T19:25:38+02:00Tomáš PeckaAdapt to changes in Determinize registrations in the coreCommit https://gitlab.fit.cvut.cz/algorithms-library-toolkit/automata-library/commit/1a4de925c48aace75ff364fbc85dc7d8ffac5924?merge_request_iid=227 in the core merged all the no-op Determinize overloads into one.
This brings two issues....Commit https://gitlab.fit.cvut.cz/algorithms-library-toolkit/automata-library/commit/1a4de925c48aace75ff364fbc85dc7d8ffac5924?merge_request_iid=227 in the core merged all the no-op Determinize overloads into one.
This brings two issues.
First, the edges between boxes report cast issue
```
Type
automaton::DFA<Universal type, unsigned>
is not castable to type
variant<
automaton::DFA<Universal type, Universal type>,
automaton::DFTA<Universal type, Universal type>,
automaton::DPDA<Universal type, Universal type, Universal type>,
automaton::InputDrivenDPDA<Universal type, Universal type, Universal type>,
automaton::OneTapeDTM<Universal type, Universal type>,
automaton::RealTimeHeightDeterministicDPDA<Universal type, Universal type, Universal type>,
automaton::SinglePopDPDA<Universal type, Universal type, Universal type>,
automaton::UnorderedDFTA<Universal type, Universal type>,
automaton::VisiblyPushdownDPDA<Universal type, Universal type, Universal type>
>
```
Second, the overload in the algorithm list now reports this and I have no idea how to report the types of the variants.
![Snímek_z_2022-03-26_09-38-27](/uploads/0b0e5d260f70be57d0bd7240b9e9ad6a/Snímek_z_2022-03-26_09-38-27.png)
cc @travnja3 Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/75Add a form for automaton input2022-05-02T23:07:39+02:00Hana LitavskáAdd a form for automaton inputAdd form for table input. Discussed here https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/issues/51Add form for table input. Discussed here https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/issues/51BPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/74Improve StateMaker usability for drawing automatons2022-03-25T15:53:18+01:00Martin ProkopičImprove StateMaker usability for drawing automatons- save and restore state positions when closing and reopening automaton output
- draw transitions as Bezier curves with ability to move the control points
- export to TikZ directly from StateMaker to preserve the layout- save and restore state positions when closing and reopening automaton output
- draw transitions as Bezier curves with ability to move the control points
- export to TikZ directly from StateMaker to preserve the layouthttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/73Fix height for boxes with more input parameters2022-03-25T15:31:16+01:00Hana LitavskáFix height for boxes with more input parametersFix height resizing ![node](/uploads/7acdba9dda5ef686c92c5c698446be0f/node.png)Fix height resizing ![node](/uploads/7acdba9dda5ef686c92c5c698446be0f/node.png)BP