the-carlisle-group / Acre-Desktop

A simple Dyalog APL IDE plugin that introduces "projects" and allows you to keep your source code in Unicode text files.
MIT License
11 stars 1 forks source link

v14.0 matrix variable RANK ERROR #235

Closed norberturkiewicz closed 2 years ago

norberturkiewicz commented 3 years ago

@PhilLast Should this work in 14.0?

]acRE.createproject c:\temp\testprod test

.test.test

.test.test.Federal←⊃(2010 'sadf' 'sadf' 0 )(2011 'one' 'two' 1)

.test.test.Federal

2010 sadf sadf 0 2011 one two 1 ]setchanged #.test.test.Federal

.test.test.Federal

PhilLast commented 3 years ago

I don't know what's causing your error but I don't even get that far. I get

      ]createproject acreprojects/testprod test
* Command Execution Failed: FILE NAME ERROR

It seems that the File System Object function CreateFolder requires that the parent folder has to exist so it can't create testprod/APLSource until testprod exists. I don't know why this only shows up now unless no-one has actually created a project in 14.0 for a very long time. I guess that before I replaced all the file stuff with the new system functions I had an iterative call to CreateFolder and forgot to do the same for the emulator.

Nor do I understand why you get #.test.test created when you specify test in the argument. If I do this in later interpreters it creates #.test as I'd expect.

aplteam commented 3 years ago

I think Norberts report is lacking two initial lines:

'test'⎕ns'' )cs test

Only then does it make sense

PhilLast commented 3 years ago

Yes. With that it correctly attempts to set the project in #.test.test in v18.0 but still it doesn't get far enough to hit Norbert's error in v14.0.

PhilLast commented 3 years ago

I guess no-one has created a project in any version recently because the recent fix to the JSON emulator to correct a temporary Dyalog bug in importing JSON introduces an acre bug in exporting it.

aplteam commented 3 years ago

There should be a test case for that.

On Tue, 8 Dec 2020 at 13:26, PhilLast notifications@github.com wrote:

I guess no-one has created a project in any version recently because the recent fix to the JSON emulator to correct a temporary Dyalog bug in importing JSON introduces an acre bug in exporting it.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/the-carlisle-group/Acre-Desktop/issues/235#issuecomment-740589643, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD5XJHMULNKMWJWDA6D5IX3STYLO5ANCNFSM4URBINXA .

PhilLast commented 3 years ago

Actually there was. Anything that called CreateProject would fail because in trying to write the config file it was misinterpreting the config namespace as an array. The JSON emulator was only written to handle objects so we ended up with a strange blend of JSON object and APLAN array.

[⋄{⋄"CaseCode": false,⋄"Dependencies": "",⋄"KeepHistory": false,⋄"ProjectSpace": "#.test",⋄"StartUp": ""⋄}⋄]

that obviously won't evaluate under any encoding.

My mistake. I seem to have omitted the running of the tests prior to committing the very minor change and haven't changed anything since until yesterday. This was fixed by commit yesterday and reported in #236