Automation a ruby plugin

Hlášení chyb a problémů programu Altap Salamander. Buďte, prosím, ve svých popisech co nejpodrobnější a vytvořte pro každý incident nový příspěvek. Nevkládejte programem generovaná hlášení o pádu programu, pošlete je e-mailem.
User avatar
tukanos
Posts: 410
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos »

.. Původní logika v Automation byla taková, že v konkrétním případě Ruby enginu vůbec v důsledku nedošlo k jeho spuštění, proto se Vám to jeví, že v Salamanderu nejdou skripty spustit a nic se nestane. ...
Tušil jsem, že tam nedojde k nějaké inicializace nebo to skáče někam jinam v nějaké větvi. Zajímavé je, že ve WindowsXP se to spustí, asi používají trochu jinou logiku.
... Bohužel i tato drobná změna může rozbít jiné enginy (Python, Perl, PHP), kvůli kterým Automation obsahuje spoustu hacků (naproti tomu "Microsoftí" JScript a VBScript jsou v pohodě)...
Ano tak tomu obyčejně bývá, že "nativní" scriptovací stroje jsou preferovány a hlavně odladěny. Právě jsem si říkal, že ty střeva Automation asi budou hodně oháčkovaná.
...a druhé straně ale tato změna zavádí do inicializace enginu stejnou logiku, jakou používá WScript/CScript, což by mělo kompatibilitu zlepšit pro všechny enginy celkově.
S tou vzájemnou slučiteností mezi M$ JScript a VBScript a ostatními minoritními jazyky je to samozřejmě dobře. Aspoň dovyvinu některé věci, až to bude chodit. Zkouknu také registry pro nové verze 2.4 ruby od Artona a podívám se na otisk registrů, kouknu jaké změny tam provádí a možná zkusím i něco vylepšit (o to se tu podělím).
Tato úprava bude zahrnuta v příští verzi Salamandera
Hmm škoda, že jsme nestihli teď vydanou verzi 3.08, další verze asi bude nějakou dobu trvat.

EDIT: Nemohl byste sem nahrat aktualizovanou knihovnu, kterou bych mohl prespat nynejsi verzi Automation, abych to mohl odzkouset? diky
manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison »

Po domluvě s Petrem z Altapu jsme připravili testovací verzi pluginu. Vyzkoušejte ji a dejte mi vědět, zda pro Vás řeší problém se spuštěním Ruby skriptu. Momentálně se mi s touto verzí skript spustí, ale po jeho skončení dojde k chybě v knihovně RScript22, která s sebou vezme celého Salamandera.

Zajímalo by mě:
  • jakou používáte verzi Windows, RScript a AS (včetně zda se jedná o x86 nebo x64)
  • zda Vám jde s upravenou verzí pluginu spustit Ruby skript
  • zda po skončení skriptu havaruje AS
  • jak reaguje déle běžící skript na přerušení (tlačítko Abort/Stop na paletce)
  • úprava skriptu large_files.rb (problémy s viditelností globálního objektu Salamander)
  • nynější chování s dříve popsaným problémem s Unicode
Jan Rysavy
ALTAP Staff
ALTAP Staff
Posts: 5229
Joined: 08 Dec 2005, 06:34
Location: Novy Bor, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by Jan Rysavy »

Také bych se přimlouval neladit problémy ve Windows XP. Kód řešící podporu pro W2K, XP a Vistu jsme ze Salamandera 4 odstranili. Pro chod bude vyžadovat minimálně Windows 7.
User avatar
tukanos
Posts: 410
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos »

manison wrote:Po domluvě s Petrem z Altapu jsme připravili testovací verzi pluginu. Vyzkoušejte ji a dejte mi vědět, zda pro Vás řeší problém se spuštěním Ruby skriptu. Momentálně se mi s touto verzí skript spustí, ale po jeho skončení dojde k chybě v knihovně RScript22, která s sebou vezme celého Salamandera.

Zajímalo by mě:
  • jakou používáte verzi Windows, RScript a AS (včetně zda se jedná o x86 nebo x64)
  • zda Vám jde s upravenou verzí pluginu spustit Ruby skript
  • zda po skončení skriptu havaruje AS
  • jak reaguje déle běžící skript na přerušení (tlačítko Abort/Stop na paletce)
  • úprava skriptu large_files.rb (problémy s viditelností globálního objektu Salamander)
  • nynější chování s dříve popsaným problémem s Unicode
  • Díky moc! Prozkoušel jsem vše co jste napsal i trochu navíc .).
  • jakou používáte verzi Windows, RScript a AS (včetně zda se jedná o x86 nebo x64)
    - Verzi windows zkouším pouze Windows 7 SP1 x64.
    - AS zkouším rozhodit x64, zde je můj primární zájem, a až tam to bude chodit mohu zkoušet x86 (pro zajímavost jsem vyzkoušel i AS x86 a ten správně ukázal, že není script host pro x86)
    - Rscript používám Asr 2.4, když už je ta novější verze k dispozici tak jsem aktualizoval - udělal jsem si na to skriptík WSH (mohu nasdílet pokud by byl o něj zájem)
    WScript_host_ruby.png
    WScript_host_ruby.png (34.43 KiB) Viewed 12672 times
  • zda Vám jde s upravenou verzí pluginu spustit Ruby skript
    - Ano lze pustit Ruby script pro verzi x64, pro verzi x86 plugin ohlásí správně, že nemám Ruby ScriptEngine pro x86 nalinkovaný v registrech - nemělo by být tak složité opravit, ale teď se chci soustředit na x64.
  • zda po skončení skriptu havaruje AS
    - Ano po skončení havaruje celé AS, zkoušel jsem i variantu s přerušením abort než jsem odklepl Ok tlačítko a i to zatuhlo AS a okno tam stále "viselo".
  • jak reaguje déle běžící skript na přerušení (tlačítko Abort/Stop na paletce)
    - Zatuhne AS i okno Abort Script a vše přestane reagovat, ale instance stále běží jenom na nic nereaguje a musí se zabít.
  • úprava skriptu large_files.rb (problémy s viditelností globálního objektu Salamander)
    - přikládám opravenou verzi,
    largest_files_in_progress.rar
    (3.72 KiB) Downloaded 288 times
    která funguje v AS x64 (respektivě doběhne ukáže výsledek v dočasném souboru a pak to celé spadne, dočasný soubor zůstane zachován a AS se ptá co s ním má udělat, takže si výsledek lze prohlédnout a skript pokud tam není unicode název tak doběhne se správným výsledkem.
  • nynější chování s dříve popsaným problémem s Unicode
    - script selže na souboru s unicode stejně jako předtím (je to vidět, že ty unicode znaky jsou zpitvořené.)
    unicode_error_automation_ruby.png
    unicode_error_automation_ruby.png (22.13 KiB) Viewed 12672 times
Udělal jsem si i drobnou úpravu, aby šlo jednoznačně identifikovat rubyscript, narozdíl od regulerních ruby (ty nechci spouštět pomocí WScript). Přidal jsem si do registrů koncovku .rbs a namapoval na rubyscript a funguje i to perfektně (úpravu registrů pak nasdílím, až to bude vše bude fungovat, abych to do toho nepletl.) i když AS x64 padá úplně stejně jako s koncovkou .rb.

Vyzkoušel jsem pro zajímavost i mě starší skripty, které používají cscript funkcionalitu a tu jsem tedy musel zpouštět jako cscript nějaký_ruby_script.rbs a potom to krásně fungovalo (na přímé souštění z příkazového řádku to nefungovalo, ale podle mě by tahle skutečnost na nic vliv mít neměla.) WScript funguje normálně na dvojklik.
Jan Rysavy wrote:Také bych se přimlouval neladit problémy ve Windows XP. Kód řešící podporu pro W2K, XP a Vistu jsme ze Salamandera 4 odstranili. Pro chod bude vyžadovat minimálně Windows 7.
Windows XP jsem dříve použil kvůli tomu, že jsem je měl už hovové virtualizované a konfigurované a jako ukázku problému. Můj primární zájem a vše zkouším nyní jenom na windows 7 SP1 (x64) a novější až win10 (win8 nebudu používat pravděpodobně nikdy).
manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison »

K tomu padání po skončení skriptu jsem vytvořil pro autora enginu bugreport.
manison
Plugin Developer
Plugin Developer
Posts: 216
Joined: 09 Dec 2005, 23:23
Location: Ceske Budejovice, Czech Republic
Contact:

Re: Automation a ruby plugin

Post by manison »

Další bugreport k problémům s přerušením běžícího skriptu.
User avatar
tukanos
Posts: 410
Joined: 21 Dec 2005, 19:14

Re: Automation a ruby plugin

Post by tukanos »

manison wrote:K tomu padání po skončení skriptu jsem vytvořil pro autora enginu bugreport.
manison wrote:K tomu padání po skončení skriptu jsem vytvořil pro autora enginu bugreport.
Perfektni nahlaseni obou chyb. Arton se venuje dlouho vytvareni tohoto Actionscript ruby a je velmi napomocen, takze pokud by se delsi dobu nic nedelo tak ho mohu kontaktovat naprimo a zeptat se ho.
Post Reply