pronto.ee

Tomorrow will be cancelled due to lack of interest

SUPEE-11155: Hunk #1 FAILED at 483

Magento

While applying SUPEE-11155 to Magento 1.x there’s a good chance that you will run into something like this one:

checking file js/tiny_mce/plugins/media/js/media.js
Hunk #1 FAILED at 483 (different line endings).
1 out of 1 hunk FAILED

Inspecting both the file mentioned and the relevant diff inside the patch leaves impression that everything is OK, however the problem still persists. Wtf?

This problem is almost certainly caused by Git replacing Windows line endings (\r\n) with the ones used by pretty much the rest of the world (\n). Tiny MCE media.js file for some reason uses Windows line endings (unlike other parts of Magento) and the patch expect it to be like this. However quite often Git systems are configured to convert line endings and thus the patching will fail with the message above.

Easiest way to to fix it is to use vim. Open patch file with vim and find the diff used to update media.js. To do it type (slash means search):

/media.js  

Once there enter:

:set list

This command enables displaying of whitespace characters. You will notice that media.js rows in patch file end with ^M (Carriage Return). Remove those, save and run the patch again. Everything should work just fine now.

Upgrading to Magento 1.9.4.0, PHP 7.2 compatibility problem

Magento
Magento

Magento 1.9.4.0 should support PHP 7.2 and fortunately it mostly does. However there’s an upgrade script from older Magento versions which, lets say, has room for improvements.

When your original Magento is old enough (I tested it on Magento 1.7.0.2) the process will throw following error message:

Fatal error: Uncaught Error: [] operator not supported for strings in /magento-path/app/code/core/Mage/Usa/sql/usa_setup/upgrade-1.6.0.1-1.6.0.2.php on line 93
( ! ) Error: [] operator not supported for strings in /magento-path/app/code/core/Mage/Usa/sql/usa_setup/upgrade-1.6.0.1-1.6.0.2.php on line 93

The culprit of the message above is here:

    $newValue = '';
    if (stripos($oldValue['path'], 'free_method') && isset($oldToNewMethodCodesMap[$oldValue['value']])) {
        $newValue = $oldToNewMethodCodesMap[$oldValue['value']];
    } else if (stripos($oldValue['path'], 'allowed_methods')) {
        foreach (explode(',', $oldValue['value']) as $shippingMethod) {
            if (isset($oldToNewMethodCodesMap[$shippingMethod])) {
                $newValue[] = $oldToNewMethodCodesMap[$shippingMethod];
            }
        }
        $newValue = implode($newValue, ',');
    } else {
        continue;
    }

As you can see $newValue is declared as a string and almost immediately expected to be an array (provided that conditions are right). No good. Simplest way to resolve it is to redeclare it as an array when it happens:

    $newValue = '';
    if (stripos($oldValue['path'], 'free_method') && isset($oldToNewMethodCodesMap[$oldValue['value']])) {
        $newValue = $oldToNewMethodCodesMap[$oldValue['value']];
    } else if (stripos($oldValue['path'], 'allowed_methods')) {
        $newValue = [];
        foreach (explode(',', $oldValue['value']) as $shippingMethod) {
            if (isset($oldToNewMethodCodesMap[$shippingMethod])) {
                $newValue[] = $oldToNewMethodCodesMap[$shippingMethod];
            }
        }
        $newValue = implode($newValue, ',');
    } else {
        continue;
    }

Sekeldused Ragusas, üheteistkümnes osa

Tegemist on meie rollimängugrupi selle hooaja kolmeteistkümnenda mängu teise poole ülevaatega segatuna neljateistkümnenda ja viieteistkümnenda korra sündmustega. Eelmise osa reisikirjast leiab siit.

Selles osas: “Rändurid jõuavad metsa. Heitlus ämblikutega. Matt ja Forrest vaaguvad hinge. Tünnist leitakse laps. Ämblikud röövivad Forresti. Öine päästeoperatsioon. Punasulgede teetõke. Jõutakse New Velarisse.”

Forrest ärkas võpatades kellegi hõikumise peale: “Hommik on käes, aeg on tõusta!”. Päike piilus juba horisondi tagant ning laagriplatsi ümbritsevat niitu kattis rõske udulaam.

Lible, kes oli esimesena magama läinud ja kelle valvekord oli vahetult enne hommikut jalutas reipalt ringi ning kolistas oma katelokiga: “Maast lahti unekotid, aeg on teele asuda.”

Read More

Sekeldused Ragusas, kümnes osa

Tegemist on meie rollimängugrupi selle hooaja kolmetestkümnenda mängu esimese poolega. Eelmise mängu ülevaate leiab siit.

Selles osas: “Punasuled võtavad linnas võimust. Vahitorni Vanem ja Matt leiavad ühise keele. Lible mahitusel võetakse ette reis New Velarisse.”

Vahitorni pealik sammus närviliselt oma kabinetis edasi tagasi sellal kui kogu ülejäänud seltskond istus kannatlikult tema ees toolidel ja ootas.

Midagi oli teoksil, isegi Forrest oli sellest praeguseks juba aru saanud: kõik meelelahutused kaasa arvatud hukkamised ja gladiaatorite heitlused olid määramatuks ajaks edasi lükatud, Ragusa asisemate kodanike iganädalased nõupidamised raekojas olid tühistatud, väravaid hoiti lahti vaid mõni tund hommikul ning iga teine vastutulija tundus kandvat punaste sulgedega kiivrit.

Midagi oli ilma igasuguse kahtluseta teoksil.

Read More

Joe Abercrombie: Before They Are Hanged

“We should forgive our enemies, but not before they are hanged” – Heinrich Heine

Kui ma peaksin välja pakkuma mõne teise autori raamatu millega seda lugu võrrelda, siis pakuksin ma välja Neil Stephensoni “Cryptonomiconi”: mõlemad on paksud raamatud, kus justkui midagi ei toimu ja ometigi on mõlemat raske enne viimase leheni jõudmist käest panna.

Oma olemuselt jätkab see eelmises raamatus, “The Blade Itself” toimuvat. Varem mööda ilma laiali pillutatud tegelased on nüüd jagatud kolme rühma: praeguseks koloneliks ülendatud Collem West ja Dogman tegelevad Uniooni vaenlastega põhjas, Sand dan Glokta lõunas ning kolm ülejäänud põhitegelast (Üheksa Sõrmega Logen, Ferro Maljinn ja Jezal dan Luthar) suunduvad maailmas serva kõiki probleeme lahendavat hõbekuuli tooma.

Tegelastest tõenäoliselt suurima arengu teeb oodatult läbi Jezal, ülejäänud jätkavad laias laastus oma esialgset liini: Glokta on naiivne, paranoiline ja küüniline ning samal ajal kulissidetaguse nööritõmbaja jaoks sobiv mees sobivas kohas. Ferro on endiselt ksenofoobne võõramaalane, kellel on raskusi enam-vähem kõige mõistmisega, West teeb Anglandis kõige kiuste karjääri ning Logen ja Dogman on endiselt Logen ja Dogman.

Kui jätta kõrvale mõned veidrad tööõnnetused (näiteks paistab, et kirjanikuhärra arvates vibud “tulistavad”) siis torkab selles raamatus nagu eelmiseski silma autori oskus maailma värvikalt lugejani tuua minetamata samas huumoritaju. Ühte või teistpidi on hindeks kindel viis koos tõdemusega, et Abercrombie on oma debüütromaanist alates kindlustanud ennast fantaasiakirjanduse elavate klassikute nimistus ning see raamat ei tee midagi mis seaks selle väite kahtluse alla.

2019 veebruarikuu Digi

Järgmise kuu Digi Tuleviku rubriik sisaldab järgnevaid teemasi:

  • Mis saab mobiilidest edasi?
  • Telefon ja häälkäsklused. Mida selles valdkonnas oodata on.
  • Uut tüüpi audiosüsteem telerite ja arvutite jaoks.
  • Kuidas OLED autotööstuses väiksemat sorti revolutsiooni võib korraldada.

Muudes rubriikides on põnevaid lugusi veel, aga need pole enam minu kirjutatud.

Heinrich Weinberg: “Tõrkeotsing”

Heinrich Weinberg: "Tõrkeotsing"

John Scalzi ütles ühes intervjuus, et ulmehuvilised ei loe kahjuks midagi muud kui ulmet. Ka need huvilised, kes ulmet kirjutavad ning sestap kipub olema, et kasutatud sõnavara, lauseehitus ja eriti dialoogid on koopiad koopiates mis on omakorda veel millegi koopiad. Ehk siis need on luitunud, ebamäärased ja halva sõnastusega. Kahjuks on “Tõrkeotsing” klassikaline näide sellest.

Kuid ärgem tõtakem sündmustest ette. Selles raamatus on midagi mis seda lugema sunnib — tal on tõeliselt hea süda, rütm ning autoril on ilma igasuguse kahtluseta potentsiaali jutuvestjana. Ma vaagisin päris pikalt kas lugu väärib hinnet kolm või neli ja otsustasin siis lõpuks nelja kasuks — pika miinusega kuid ikkagi neli.

Lugu ise leiab aset alternatiivses lähituleviku Eestis mis on tükk maad suurem kui praegune. Tõsi, seal ümber on mingi ajaloo udujutt millest proovitakse kõikide aset leidvatele sündmustele justkui selgitust leida, kuid paraku on see kohati nii ebausutav, et teeb haiget. Õnneks paistab autor oma nõrkusest ajaloolasena ka ise aru saavat ja sellel pikemalt ei peatu.

Esialgu tundub, et tegemist on paljulubava tehnotrillerina, mis läheb millegipärast pisitasa enne lõppu üle üsnagi keskpäraseks kriminulliks. Kuigi nagu ma ennist mainisin on Weinberg osavalt suutnud sündmuste arengu kaasahaaravana hoida (Eesti kirjanduses on see väga kõva pluss ja kaalub üle terve kuhja miinuseid — sellest ka neli) olen ma natuke pettunud — ta oleks justkui keset lugu otsustanud, et ta tahaks hoopis teist raamatut kirjutada ja jätab sellest tingituna alustatud teemapüstitused ripakile. Osa neist jäävadki lõpuni lahendamata, osale leitakse lahendus vahetult enne lõppu kuidagi ülejala, kiirustades. Isegi raamatu nimi, “Tõrkeotsing”, on üks nendest.

Teine asi, mis raamatu juures häirib on keelekasutus: see on lihtsakoeline, puine ning ebaloomulik. Keset jutuvada on võimatu aru saada kes täpselt mida ütleb (peale Alvini sisemise hääle, kes räägib teistsuguse šriftiga). Asjale ei aita teps mitte kaasa ka see, et osa raamatut on kirjutatud minaformaadis ja osa on piiratud temavormis (tavaliselt ühe uurija silmade läbi). Kuna kõik tegelased mõtlevad, räägivad ja toimetavad täpselt identselt, raske on vahet teha kes täpselt mida parasjagu teeb ning sõnavalik kriibib samuti kõrva.

Viimase suure veana tooksin välja, et autor unustab aega-ajalt jutuvestmise (milles ta tegelikult on tugev) ja hakkab lihtsalt infot edastama. Sellised infolõigud, mida jagu pea igale teisele lehel on igavad, liigsed ning need oleks toimetaja võinud lasta lihtsalt välja rookida. Kui autori arvates on lugejal mingit teavet vaja, tuleks see edastada jutuvoo sees.

Mis toob meid tagasi narratiivi juurde. Narratiiv on hea ja tundub, et loo edenedes areneb ka autor kirjanikuna, mis on samuti hea. Lisaks jätab raamat lõpuks nõnda palju teemasi lahtiseks, et sinna poleks mingi probleem jätk kirjutada. Sellise, mis seletaks lahti miks selle loo nimi ikkagi on “Tõrkeotsing” ja mitte näiteks “Lugu Alvini raskest kuid sündmusterohkest elust”.

PS. Asi oleks ilmselt palju põnevam olnud kui oleks selgunud, et vähemalt üks Alvinitest oli tegelikult kloon.

Kellele kuulub sisu?

K: Mis teie koduleht on?
V: Aga meil ei olegi kodulehte, meil on Facebooki grupp.

Kas tuleb tuttav ette? Kui tuleb, siis tasub natuke mõelda selle küsimuse ja vastuse üle. Mis juhtub siis kui Facebooki enam ei ole? Kui selle asemele on tulnud mingi muu, põnevam, keskkond? Või kui Facebook on kellegi poliitiliste või majanduslike mahhinatsioonide tõttu kokku vajunud / oluliselt muutunud? Või kui mingitel põhjustel su Facebooki grupp lihtsalt kinni pannakse? Mis saab siis?

Facebook on praeguseks pisut rohkem kui kaksteist aastat vana ja oma algusaastatel oli ta Google analoogse teenuse Orkut väike vend. Aga kas te teate, et Orkut oli vaid aasta vanem kui Facebook? Kas te teate, mis Orkutist praegult on saanud?

Facebook on tore, kuid Facebookis oled sa piisake meres, Facebookis on kõik praegu, ilma mineviku ja tulevikuta. Facebookis on sul sõbrad, kes on kunagi oma “laigiga” ennast sinu grupi külge sidunud, aga nad on sõbrad ainult siis kui sa oled nende ajavoo ülemises otsas. Niipea kui sa oled allapoole liikunud oled sa jälle eikeegi, piisake meres.

Kui Facebook kinni pannakse, siis kellele jääb sisu? Ja mis saab silmapaaridest mis seda Facebooki vahendusel lugesid? Kas nad leiavad sind pärast seda ikka ülesse? Kust?

Intervjuu

Eelmise aasta lõpus tegi Andres Kütt minuga intervjuu teemal Eesti infotehnoloogiamaastiku ajalugu enne ja pärast taasiseseisvumist. See on nüüd SoundCloudis üleval ja paar korda asukohta vahetanud.

Ma soovitan asjale kõrva peale visata.

Panen siia igaks juhuks ka lingi: https://soundcloud.com/memcpy_podcast/memcpy-1-pronto/

Sekeldused Ragusas, üheksas osa

Tegemist on meie rollimängugrupi selle hooaja kaheteistkümnenda mänguga. Eelmise mängu ülevaate leiab siit.

“Lõpuks ometi!” nähvas Matt kui Lible tuppa tagasi astus. “Mida sa teada said?”

Hommikul oli Vahitorni käskjalg kogu seltskonna vooditest välja kupatanud: öösel olid tundmatud kurjategijad Valitsejate Liidu ühte Ragusa vaheladudest sisse murtud, kõik mis põranda külge naelutatud polnud oli väidetavalt kaasa viidud ja nelja tuule poole laiali kantud. Omanikud oli sellest teavitanud vahimehi kes omakorda oli palli edasi veeretanud Forresti meeskonna väravasse. See paistis olevat seotud tema poolt läbiviidava uurimisega.

Lible vaatas kogu seltskonna üle: Matt oli ennast laoülema kabinetis laua taha mõnusalt istuma sättinud, Porru toetus seistes sama laua vastu ja Manfred oli nahaga kaetud klienditooli lähemale tõmmanud ning vaatas nüüd sellel troonides üle õla ukse poole. Forrest ise seisis sissepääsu kõrval oma tavalises peaaegu valvelseisangus.

Read More
Pages:1234567...143