PhoenicisOrg / scripts

Phoenicis scripts
GNU Lesser General Public License v3.0
64 stars 49 forks source link

Update tahoma and mfc42 verb: use fileExists #1116

Closed ImperatorS79 closed 4 years ago

ImperatorS79 commented 5 years ago

Description

Fix a part of #1107 relating mfc42.

Ready for review

ImperatorS79 commented 5 years ago

@Zemogiter could you test if this fixes your errors with mfc42 and tahoma ?

madoar commented 5 years ago

@ImperatorS79 I would like to wait until #1112 has been merged before we merge this

Zemogiter commented 5 years ago

@ImperatorS79 mfc42 works but in Tahoma we need extra ) in https://github.com/PhoenicisOrg/scripts/blob/d3ab4e24ddb36f4f41b1d1a0e682a1aca03a190b/Engines/Wine/Verbs/Tahoma/script.js#L27

ImperatorS79 commented 5 years ago

@Zemogiter can you test again ?

plata commented 5 years ago

Please fix the PR title before merging.

Zemogiter commented 5 years ago

@ImperatorS79 at the begining of .cab file extraction I get the error saying the fonts directory does not exist but it does

Extracting to: /home/jonasz/.Phoenicis/containers//wineprefix//RimWorld//drive_c/tahoma/
/home/jonasz/.Phoenicis/resources///IELPKTH.CAB: WARNING; possible 5592 extra bytes at end of file.
Extracting cabinet: /home/jonasz/.Phoenicis/resources///IELPKTH.CAB

All done, no errors.
[ERROR] org.phoenicis.multithreading.ControlledThreadPoolExecutorService (l.64) - Path "/home/jonasz/.Phoenicis/containers//wineprefix//RimWorld//drive_c/windows/Fonts" does not exist
    at org.phoenicis.tools.files.FileUtilities.copy(FileUtilities.java:139)
    at <js> cp(Unnamed:56:1251-1284)
    at <js> go(Unnamed:40:1231-1295)
    at <js> install(Unnamed:57:1761-1781)
    at org.graalvm.sdk/org.graalvm.polyglot.Value.invokeMember(Value.java:457)
    at org.phoenicis.engines.VerbsManager.lambda$installVerb$0(VerbsManager.java:71)
    at org.phoenicis.scripts.session.PhoenicisInteractiveScriptSession.eval(PhoenicisInteractiveScriptSession.java:35)
    at org.phoenicis.scripts.interpreter.BackgroundScriptInterpreter.lambda$createInteractiveSession$1(BackgroundScriptInterpreter.java:45)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by host exception: java.lang.IllegalArgumentException: Path "/home/jonasz/.Phoenicis/containers//wineprefix//RimWorld//drive_c/windows/Fonts" does not exist

Exception in thread "pool-3-thread-5" Path "/home/jonasz/.Phoenicis/containers//wineprefix//RimWorld//drive_c/windows/Fonts" does not exist
    at org.phoenicis.tools.files.FileUtilities.copy(FileUtilities.java:139)
    at <js> cp(Unnamed:56:1251-1284)
    at <js> go(Unnamed:40:1231-1295)
    at <js> install(Unnamed:57:1761-1781)
    at org.graalvm.sdk/org.graalvm.polyglot.Value.invokeMember(Value.java:457)
    at org.phoenicis.engines.VerbsManager.lambda$installVerb$0(VerbsManager.java:71)
    at org.phoenicis.scripts.session.PhoenicisInteractiveScriptSession.eval(PhoenicisInteractiveScriptSession.java:35)
    at org.phoenicis.scripts.interpreter.BackgroundScriptInterpreter.lambda$createInteractiveSession$1(BackgroundScriptInterpreter.java:45)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)
Caused by host exception: java.lang.IllegalArgumentException: Path "/home/jonasz/.Phoenicis/containers//wineprefix//RimWorld//drive_c/windows/Fonts" does not exist
ImperatorS79 commented 5 years ago

Yes, I have the same kind of error in other verbs when testing Adobe Photoshop script, that says system32 does not exist. But it was actually that it did not find the file to copy.

I do not know why we have this error.

madoar commented 5 years ago

The error only occurs when a CabExtract is followed by a cp instruction right? If this is the case then maybe CabExtract returns before the filesystem has been updated/refreshed?

Can you try adding a java.lang.Thread.sleep(100); instruction between CabExtract and cp?

Zemogiter commented 5 years ago

@madoar done that, still getting the same error

madoar commented 5 years ago

I'm still confuses from which line in which script this error is thrown... The issue is that the source path/directory in a cp operation does not exist. So which script calls cp(fontDirectory, ...) in line 55? I am unable to even find a script that calls cp(fontDirectory, ...) at all...

plata commented 5 years ago

You can add some log output like

print("1");
// do something
print("2");
// do something more

to figure out where exactly the error is caused.

madoar commented 5 years ago

Are there any updates on this?

Zemogiter commented 4 years ago

Just copied the moded verbs and getting this error durring Sims 3 installation:

org.graalvm.polyglot.PolyglotException: TypeError: <this>.wine.overrideDLL is not a function
    at <js>.go (Unnamed:48)
    at <js>.:anonymous (Unnamed:20)
    at <js>.go (Unnamed:83)
    at com.oracle.truffle.polyglot.ObjectProxyHandler.invoke (HostInteropReflect.java:678)
    at com.sun.proxy.$Proxy64.go (Unknown Source)
    at org.phoenicis.javafx.components.application.skin.ApplicationInformationPanelSkin.lambda$installScript$7 (ApplicationInformationPanelSkin.java:237)
    at org.phoenicis.scripts.session.PhoenicisInteractiveScriptSession.eval (PhoenicisInteractiveScriptSession.java:35)
    at org.phoenicis.scripts.interpreter.BackgroundScriptInterpreter.lambda$createInteractiveSession$1 (BackgroundScriptInterpreter.java:45)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1128)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:628)
    at java.lang.Thread.run (Thread.java:834)

Runing the latest source code and script repo.

madoar commented 4 years ago

Yes the PR needs to be rebased. The changes to the plugins are not included.

Zemogiter commented 4 years ago

@ImperatorS79 please rebase

Zemogiter commented 4 years ago

Too bad we can't use dependabot in non-dependabot PRs to rebase them.

plata commented 4 years ago

https://github.com/cirrus-actions/rebase

Zemogiter commented 4 years ago

@ImperatorS79 please remove trailing spaces

plata commented 4 years ago

If you're interested in having this rebase action, please open an issue regarding it. Then we can discuss.