Project

General

Profile

Activity

From 02/26/2014 to 03/27/2014

03/27/2014

05:12 PM Feature #1811: implement the AJAX client driver
Code Review 0326a - Part 2
I have finished going through all the code. It is really impressive.
4. It seems ...
Greg Shah
02:43 PM Feature #2252: implement GUI client support
This is an interesting comment in the Colors and Fonts chapter of the Programming Interfaces book:
> In Windows, t...
Greg Shah
11:00 AM Feature #2252: implement GUI client support
> Do you mean font names or ordinals? If ordinals, see below.
I mean both, really.
I understand that the configurat...
Greg Shah

03/26/2014

06:25 PM Feature #2252: implement GUI client support
Greg Shah wrote:
> * How does the 4GL determine the list of fonts that are available?
Do you mean font names or ord...
Constantin Asofiei
05:19 PM Feature #1811: implement the AJAX client driver
Code Review 0326a - Part 1
I am splitting this into multiple parts because I don't have time to finish the entire ...
Greg Shah
03:55 PM Feature #1811: implement the AJAX client driver
Please document how interactive child process support works on Windows (in the 4GL). When you are running a ChUI 4GL... Greg Shah
02:29 PM Feature #1811: implement the AJAX client driver
I implemented the interactive process for Swing ChUI client.
When a Linux OS command is executed from the converted ...
Marius Gligor
02:34 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Vadim Gindin wrote:
> # Yes, Constantin. I really skipped this case. In your example @dynamicDown=0@ indeed. The pro...
Constantin Asofiei
02:10 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Vadim Gindin wrote:
> I forgot to add, that your short test case shows the problem @dynamicDown=0@ in another aspect...
Constantin Asofiei

03/25/2014

06:08 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
I forgot to add, that your short test case shows the problem @dynamicDown=0@ in another aspect. This wrong behavior l... Vadim Gindin
02:47 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
# Yes, Constantin. I really skipped this case. In your example @dynamicDown=0@ indeed. The problem appears when @disp... Vadim Gindin
04:47 AM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Vadim, about 0324a.zip: @GenericFrame@ and other files don't have the proper history number (is the same as the previ... Constantin Asofiei
04:10 PM Feature #1811: implement the AJAX client driver
> I'm struggle to understand the current implementation on interactive process for native ChUI client.
We don't n...
Greg Shah
06:02 AM Feature #1811: implement the AJAX client driver
Add code to synchronize with child process exit. Marius Gligor

03/24/2014

07:04 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Constantin Asofiei wrote:
> ..
> # check the shared frame cases: I suspect the current-iteration will be inherited ...
Vadim Gindin
05:53 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
I've fixed almost all your remarks. Here are to moments:
# GenericFrame imports couldn't become simpler because of p...
Vadim Gindin
09:15 AM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Vadim, good work getting the algorithms implemented. See bellow for the code review for 0322a.zip and the next steps... Constantin Asofiei
03:24 PM Feature #2252: implement GUI client support
Some initial thoughts based on reviewing basic 4GL GUI examples:
1. Fonts
* By default the GUI uses the Windows...
Greg Shah
02:58 PM Feature #2252: implement GUI client support
The following is some early planning that was done (at my request) by Sergey Yevtushenko in 2011:
> -------- Origi...
Greg Shah
02:53 PM Feature #2252: implement GUI client support
Upon additional consideration of our implementation approaches in note 2, I think it makes the most sense to implemen... Greg Shah
02:44 PM Feature #2252: implement GUI client support
We will be implementing configurable control over all fonts, colors and other standard GUI configuration via our dire... Greg Shah
02:39 PM Feature #2252: implement GUI client support
Greg Shah wrote:
> We will NOT be implementing using a native control approach. This means we will not support the ...
Constantin Asofiei
02:32 PM Feature #2252: implement GUI client support
> I couldn't find a way to make the created windows modal. So, this allows multiple windows to be active, with all th... Greg Shah
02:30 PM Feature #2252: implement GUI client support
It is my understanding that all Progress GUI widgets have a backing native Windows control as the implementation. Th... Greg Shah
01:53 PM Feature #2252: implement GUI client support
Some initial findings about how 4GL implements the GUI interfaces:
# the @MESSAGE ... VIEW-AS ALERT-BOX@ statements ...
Constantin Asofiei
02:23 PM Feature #2264 (Closed): analyze how the GUI interface is implemented in 4GL
Constantin Asofiei
01:21 PM Feature #1811: implement the AJAX client driver
I fixed a minor bug when using colors.
We have to add 1 to FG and BG because according to the current P2J implement...
Marius Gligor
12:33 PM Feature #1811: implement the AJAX client driver
Here is the RC (release candidate) of VT-100 emulator. It is an implementation of DEC VT 100 video terminal specifica... Marius Gligor

03/22/2014

05:53 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Well It happens! I finished the implementation. At this moment all steps are supported. This implementation passed al... Vadim Gindin

03/19/2014

06:46 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
You are right. I made needed corrections and now it works for case "-1". At this moment I'm fixing another border cas... Vadim Gindin

03/18/2014

12:51 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
OK, I guess this test tries to predict which field-group will be next, after a UP/DOWN call? I think your problem is ... Constantin Asofiei
12:20 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Constantin Asofiei wrote:
> ..
> I need the exact setup of the bp_mixedupdow1.p used to capture the intermediate sc...
Vadim Gindin
05:10 AM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Vadim, when posting test scenarios, please make sure the bzr test is setup exactly the same way you used to produce t... Constantin Asofiei

03/17/2014

02:25 PM Feature #1811: implement the AJAX client driver
OK, go ahead and write our own vt100 emulation layer, from scratch. Of course, it is OK to look at the other project... Greg Shah
02:16 PM Feature #1811: implement the AJAX client driver
I didn't found any native library that could be used in our P2J interactive client.
Each application which need a te...
Marius Gligor
11:11 AM Feature #1811: implement the AJAX client driver
1. I don't know I have to check if such libraries exists.
2. Screen is writen in C and YES he provide also a VT 10...
Marius Gligor
10:37 AM Feature #1811: implement the AJAX client driver
> The VT 100 emulator could be designed by getting some code from JCTerm project and adapt to our needs.
> Also we c...
Greg Shah
09:52 AM Feature #1811: implement the AJAX client driver
The attached examples are form projects which implements SSH standalone clients.
Those projects use the same inter...
Marius Gligor

03/16/2014

11:53 AM Feature #1811: implement the AJAX client driver
> None of the existing Java VT 100 emulators can be used as they are.
Please provide more details.
* What are...
Greg Shah

03/14/2014

04:26 PM Feature #1811: implement the AJAX client driver
None of the existing Java VT 100 emulators can be used as they are.
We have to create a derivative work if license a...
Marius Gligor
01:58 PM Feature #1811: implement the AJAX client driver
A couple of quick points:
> The VT 100 terminal emulator should be a Java implementation. Searching on Internet I ...
Greg Shah
12:23 PM Feature #1811: implement the AJAX client driver
1. The interactive client on Linux/Unix could be implemented using a pseudo terminal.
A pseudo terminal (PTY) is ass...
Marius Gligor

03/13/2014

06:12 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Next update works for almost all up/down cases including different step sizes (not only 1). Here are two remained unc... Vadim Gindin
10:57 AM Feature #2247 (WIP): interactive child process support
Marius Gligor
10:56 AM Feature #1811: implement the AJAX client driver
0312c.zip Integrate spawn.c changes into winspawn.c ref. #2243
Passed regression tests. Committed revision 10492.
Marius Gligor

03/12/2014

02:19 PM Feature #1811: implement the AJAX client driver
OK, then go ahead and get this runtime regression tested. Greg Shah
02:06 PM Feature #1811: implement the AJAX client driver
No. I have no other changes to do. Marius Gligor
01:18 PM Feature #1811: implement the AJAX client driver
Code Review 0312c
I'm fine with the code.
Is there anything left to do for #2243?
Greg Shah
12:04 PM Feature #1811: implement the AJAX client driver
The encryption use is now optional. By default no encryption is used just clear-text.
In order to use encryption a c...
Marius Gligor
10:09 AM Feature #1811: implement the AJAX client driver
I like the idea.
Some issues:
# We can't use encryption keys that are hard coded in our source code. We provide...
Greg Shah
09:13 AM Feature #1811: implement the AJAX client driver
Here is my implementation for password encryption.
For Windows OS we have to keep the systemPassword in clear-text i...
Marius Gligor
09:08 AM Feature #1811: implement the AJAX client driver
Code Review 0312a
The code looks fine. What is left to do with this task?
Greg Shah
09:03 AM Feature #1811: implement the AJAX client driver
Normally, I would absolutely want to do this.
Can the encoding be easily reversed? It seems like it must be rever...
Greg Shah
08:52 AM Feature #1811: implement the AJAX client driver
Today I designed and tested a simple algorithm in C code to encode/decode the password on Windows OS.
I think that i...
Marius Gligor
08:48 AM Feature #1811: implement the AJAX client driver
> Since the redirection of STDOUT or STDIN for chui_native clients make no sense I think that is better to keep the o... Greg Shah
03:24 AM Feature #1811: implement the AJAX client driver
1. The code inside terminal_win.c is the native implementation of chui_native screen driver for Windows OS using cons... Marius Gligor

03/11/2014

04:10 PM Feature #1811: implement the AJAX client driver
Code Review 0311b
The code changes make sense.
My only questions are in regard to the terminal_win.c change:
...
Greg Shah
12:57 PM Feature #1811: implement the AJAX client driver
I found the problem. I fixed my bug and now it works properly. What was missing is the last argument client:driver:ba... Marius Gligor
12:10 PM Feature #1811: implement the AJAX client driver
The STDOUT redirection is implemented for Windows OS at high level but not at low level.
So my changes in terminal_w...
Marius Gligor
11:18 AM Feature #1811: implement the AJAX client driver
> the redirection of STDOUT is not yet implemented in screen drivers code for Windows OS.
> Maybe I should check the...
Greg Shah
11:14 AM Feature #1811: implement the AJAX client driver
OK. I understood. Is about appserver agents running in batch mode. The appserver agents implementation is to spawn cl... Marius Gligor
11:02 AM Feature #1811: implement the AJAX client driver
There is no batch mode for the ServerDriver because there is no concept of a real server in the 4GL. All 4GL session... Greg Shah
10:45 AM Feature #1811: implement the AJAX client driver
> 1. I'm using a command like: com.goldencode.p2j.main.ServerDriver -b p2j_proc
> This is not a batch mode?
Until...
Eugenie Lyzenko
10:34 AM Feature #1811: implement the AJAX client driver
Some time ago I worked to implements the STDOUT redirection in spawn.c for Linux/Unix OS (see note 434).
Now I'm wor...
Marius Gligor
10:09 AM Feature #1811: implement the AJAX client driver
1. I'm using a command like: com.goldencode.p2j.main.ServerDriver -b p2j_proc
This is not a batch mode?
2. The re...
Marius Gligor
08:43 AM Feature #1811: implement the AJAX client driver
> It is my understanding that batch most is mostly implemented for Windows. I think an exception is the support for m... Eugenie Lyzenko
08:20 AM Feature #1811: implement the AJAX client driver
It is my understanding that batch most *is* mostly implemented for Windows. I think an exception is the support for ... Greg Shah
05:18 AM Feature #1811: implement the AJAX client driver
On console initialization STDIN and STDOUT are checked for redirection.
If STDOUT is redirected the redirected handl...
Marius Gligor

03/10/2014

12:58 PM Feature #1811: implement the AJAX client driver
Regarding to STDOUT redirection in terminal_win.c it seems that we have to do more changes here.
On init console we ...
Marius Gligor
12:10 PM Feature #1811: implement the AJAX client driver
Here are the winspawn.c changes that I did in order to integrate the code from Linux spawn.c version.

1. In order...
Marius Gligor

03/07/2014

08:34 AM Bug #2244 (Closed): web client performance
Greg Shah
04:10 AM Feature #1811: implement the AJAX client driver
ChUI web client improvements ref. #2244
Passed regression tests. Committed revision 10487.
Marius Gligor

03/06/2014

11:38 AM Feature #1811: implement the AJAX client driver
Greg Shah wrote:
> I guess we will have to store the OS password for such accounts in our directory.
This can work,...
Constantin Asofiei
11:18 AM Feature #1811: implement the AJAX client driver
Constantin: How does the 4GL handle this for appserver launching? Does it always assume everything runs in the same ... Greg Shah
11:15 AM Feature #1811: implement the AJAX client driver
> We must provide both user name and password. Without credentials we can create processes only for the account on wh... Greg Shah
10:48 AM Feature #1811: implement the AJAX client driver
OK. I started the regression tests on devsrv01.
Regarding #2243 if I understood better we could encounter a problem....
Marius Gligor
10:30 AM Feature #1811: implement the AJAX client driver
I'm fine with the code in 0306a. Go ahead with runtime regression testing.
This should close off #2244, right?
...
Greg Shah
08:48 AM Feature #1811: implement the AJAX client driver
Here are the changes after your last code review.
In the mean time I prepared the testing environment by doing a co...
Marius Gligor
10:38 AM Bug #2244 (Review): web client performance
Marius Gligor
06:23 AM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Here is the next update that works some way. Vadim Gindin

03/05/2014

04:46 PM Feature #2252: implement GUI client support
The client will need significant changes to implement GUI support.
One important change that is necessary is to ...
Greg Shah
03:02 PM Feature #2252: implement GUI client support
This task is meant to be the parent task for the GUI implementation. Please place task history here instead of in th... Greg Shah
03:01 PM Feature #2252 (Closed): implement GUI client support
Greg Shah
04:14 PM Feature #2255: replace non-UI code that has direct dependencies on the UI with dependence on an a...
Provide an abstract interface for UI services used by code in p2j/util/ et al. For example, the TransactionManager, ... Greg Shah
03:36 PM Feature #2255 (New): replace non-UI code that has direct dependencies on the UI with dependence o...
Greg Shah
04:12 PM Feature #2253: eliminate listener/event model
From a conversation between SIY and GES on November 15, 2010:
> Although I agree with the goal, I must admit that ...
Greg Shah
03:27 PM Feature #2253: eliminate listener/event model
The original ChUI support was written using CHARVA. CHARVA provided a library of widgets and UI functionality mapped... Greg Shah
03:19 PM Feature #2253 (New): eliminate listener/event model
Greg Shah
03:34 PM Feature #2254: eliminate the logic in the Config* classes and make them simple containers with pu...
The current approach of having a parallel set of Config classes for each widget type is overcomplicated. In particul... Greg Shah
03:28 PM Feature #2254 (Closed): eliminate the logic in the Config* classes and make them simple container...
Greg Shah
01:23 PM Feature #1811: implement the AJAX client driver
If your testing is not showing any noticeable performance differences between Majic in the browser and Majic in the t... Greg Shah
01:20 PM Feature #1811: implement the AJAX client driver
Code Review 0305b
1. In ChuiWebPageHandler, please use @*@ for imports.
2. Please remove the reference to "Maji...
Greg Shah
12:56 PM Feature #1811: implement the AJAX client driver
1. Done. HtmlResourceHandler the base class of ChuiWebPageHandler is used to load other pages like the admin page whi... Marius Gligor
09:16 AM Feature #1811: implement the AJAX client driver
> a) Supposing that client is authenticated and the application is loaded and running into the iframe.
> When the us...
Greg Shah
09:06 AM Feature #1811: implement the AJAX client driver
Code Review 0305a
1. In @HtmlResourceHandler@, in what case will @isAuthorized()@ find that @authorizationToken@ i...
Greg Shah
07:15 AM Feature #1811: implement the AJAX client driver
1. I found and fixed the issue related to Majic login plug-in.
When Majic plug-in run within ThinClient using system...
Marius Gligor

03/04/2014

11:02 AM Feature #1811: implement the AJAX client driver
> Also is possible to open a new window (pop-up) to load the page from server C.
Please avoid pop-ups. Just make ...
Greg Shah
10:58 AM Feature #1811: implement the AJAX client driver
> What's strange is that happen only when the p2j Majic plug-in refresh. After Majic login everything works fine.
> ...
Greg Shah
10:37 AM Feature #1811: implement the AJAX client driver
1. Today I did many tests and investigations regarding the "Refresh" button on web browser so far unfortunately witho... Marius Gligor

03/03/2014

06:15 PM Feature #1811: implement the AJAX client driver
Code Review 0303a
1. About the authorization approach:
I agree, we cannot reuse the spawn UUID. As I noted in ...
Greg Shah
01:19 PM Feature #1811: implement the AJAX client driver
Marius Gligor wrote:
> A SHA message digest is generated from the random UUID and used as an authorization token.
...
Constantin Asofiei
11:51 AM Feature #1811: implement the AJAX client driver
1. During this weekend I did a lot of tests on Linux and Windows OS. Defining clip rectangles when drawing text lines... Marius Gligor
02:24 AM Feature #1811: implement the AJAX client driver
Marius, the changes in 0228b.zip look good to me. Greg: please take a look too. Constantin Asofiei

02/28/2014

01:10 PM Feature #1811: implement the AJAX client driver
Just a minor change. Use \u2501 (-) character to measure the width of a cell.
Character \u2501 should be the largest...
Marius Gligor
11:16 AM Feature #1811: implement the AJAX client driver
Here are my last cahanges after Majic tests on devsrv01.
- I added character \u2502 (|) to measure the height of ...
Marius Gligor

02/27/2014

10:15 AM Feature #1811: implement the AJAX client driver
Implements STDOUT and STDERR redirection for spawner Ref. #2124
Passed regression tests. Committed to revision 10483
Marius Gligor
09:02 AM Feature #1811: implement the AJAX client driver
Implements rectangle detection on screen cells that should be update on JS code.
With a few extra computation in Jav...
Marius Gligor
07:25 AM Feature #1811: implement the AJAX client driver
Marius Gligor wrote:
> Please do some tests using this changes and let me know your results.
I'm using Firefox 26.0...
Constantin Asofiei
08:22 AM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Vadim:
# there is no @IterableResource@ file in the update
# @CommonFrame@: as is extending @IterableResource@, the...
Constantin Asofiei
07:15 PM Feature #1787: implement batch mode support
Committed in bzr as 10482. Eugenie Lyzenko

02/26/2014

06:35 PM Feature #2162: add support for CURRENT-ITERATION attribute (for widget objects)
Here is some update. Could you look at it. It is not working. Several questions.
1. We need separate widgets lists f...
Vadim Gindin
06:33 PM Feature #1787: implement batch mode support
Check in and distribute the change. Greg Shah
06:22 PM Feature #1787: implement batch mode support
The CTRL-C part has been passed without regressions. The servers are now stopped. Eugenie Lyzenko
04:33 PM Feature #1787: implement batch mode support
The main part of testing has been passed without regressions. Running the CTRL-C part. Expect to finish today later. Eugenie Lyzenko
08:39 AM Feature #1787: implement batch mode support
> I'm not sure what problem you see: checking the MAJIC login screen from my instance on devsrv01 (with latest rev) a... Eugenie Lyzenko
05:19 AM Feature #1787: implement batch mode support
Eugenie Lyzenko wrote:
> The testing is in progress.
>
> BTW, nave you noted the underline attribute for fill-in ...
Constantin Asofiei
05:04 AM Feature #1787: implement batch mode support
The testing is in progress.
BTW, nave you noted the underline attribute for fill-in fields is not drawing. The exa...
Eugenie Lyzenko
01:30 AM Feature #1787: implement batch mode support
Eugenie, the changes in 0225a.zip are OK - go ahead with regression testing. Constantin Asofiei
01:10 PM Feature #1811: implement the AJAX client driver
The package was send just for testing purposes. Please do not code review. Marius Gligor
01:01 PM Feature #1811: implement the AJAX client driver
Here are the changes containing the fixed bug. You can use JS console to see the order of the packages.
This part wi...
Marius Gligor
12:49 PM Feature #1811: implement the AJAX client driver
Sorry I think that is my fault. I found a serious bug inside my code which is the cause of describe bevaviour.
By mi...
Marius Gligor
12:18 PM Feature #1811: implement the AJAX client driver
>Also, if the JS is not processing the requests fast enough (i.e. consider my drawing stress test) and the >queue fil... Hynek Cihlar
11:30 AM Feature #1811: implement the AJAX client driver
TCP has nothing to do with it. I agree that the entire message will be received before it is delivered and if that m... Greg Shah
11:19 AM Feature #1811: implement the AJAX client driver
WebSockets is built on TCP. TCP guarantees delivery and ordering of packets. In addition, unlike TCP, WebSockets is m... Marius Gligor
10:33 AM Feature #1811: implement the AJAX client driver
> is there any reason for the PushMessagesWorker not wait until is notified by the JS that it finished drawing?
I ...
Greg Shah
10:26 AM Feature #1811: implement the AJAX client driver
If we don't sequence the drawings, what I'm worried about is that the screen can end up in the wrong state: i.e. if m... Constantin Asofiei
09:55 AM Feature #1811: implement the AJAX client driver
What you ask me to do I'm afraid that is impossible in JS.
Unlike Java the JS is a very simple programming language ...
Marius Gligor
09:38 AM Feature #1811: implement the AJAX client driver
Greg Shah wrote:
> If I understand the problem, we just need to make sure to always apply the screen changes IN ORDE...
Constantin Asofiei
09:22 AM Feature #1811: implement the AJAX client driver
> did you change the sockets on the JS side to be async in the mean time?
JS is single threaded (unless worker thr...
Greg Shah
07:57 AM Feature #1811: implement the AJAX client driver
Marius, remember the stress drawing test on note 408? Well, I've ran it with your 0224a.zip update and it broke the b... Constantin Asofiei
07:06 AM Feature #1811: implement the AJAX client driver
Marius, the update is OK. Please put the @ProcessBuilderOptions.getProcess@ together with the other public methods. Y... Constantin Asofiei
06:17 AM Feature #1811: implement the AJAX client driver
Here are the latest changes and the results of my tests with and without STDOUT redirected to a file.
The STDERR is ...
Marius Gligor
04:29 AM Feature #1811: implement the AJAX client driver
Marius Gligor wrote:
> The outputToFile parameter is an optional command line parameter. In the future it is possibl...
Constantin Asofiei
04:26 AM Feature #1811: implement the AJAX client driver
The outputToFile parameter is an optional command line parameter. In the future it is possible to add more optional p... Marius Gligor
 

Also available in: Atom