abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 21:11 | Nová verze

    Textový editor Neovim byl vydán ve verzi 0.10 (𝕏). Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 20:55 | Nová verze

    Byla vydána nová verze 6.3 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.15.

    Ladislav Hagara | Komentářů: 0
    dnes 13:33 | IT novinky

    Dnes ve 12:00 byla spuštěna první aukce domén .CZ. Zatím největší zájem je o dro.cz, kachnicka.cz, octavie.cz, uvycepu.cz a vnady.cz [𝕏].

    Ladislav Hagara | Komentářů: 2
    dnes 13:22 | Nová verze

    JackTrip byl vydán ve verzi 2.3.0. Jedná se o multiplatformní open source software umožňující hudebníkům z různých částí světa společné hraní. JackTrip lze instalovat také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Pozvánky

    Patnáctý ročník ne-konference jOpenSpace se koná 4. – 6. října 2024 v Hotelu Antoň v Telči. Pro účast je potřeba vyplnit registrační formulář. Ne-konference neznamená, že se organizátorům nechce připravovat program, ale naopak dává prostor všem pozvaným, aby si program sami složili z toho nejzajímavějšího, čím se v poslední době zabývají nebo co je oslovilo. Obsah, který vytváří všichni účastníci, se skládá z desetiminutových

    … více »
    Zdenek H. | Komentářů: 0
    dnes 03:11 | Nová verze

    Program pro generování 3D lidských postav MakeHuman (Wikipedie, GitHub) byl vydán ve verzi 1.3.0. Hlavní novinkou je výběr tvaru těla (body shapes).

    Ladislav Hagara | Komentářů: 4
    včera 23:11 | Bezpečnostní upozornění

    Intel vydal 41 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20240514 mikrokódů pro své procesory řešící INTEL-SA-01051, INTEL-SA-01052 a INTEL-SA-01036.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | IT novinky

    Společnost Raspberry Pi patřící nadaci Raspberry Pi chystá IPO a vstup na Londýnskou burzu.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | IT novinky

    Google na své vývojářské konferenci Google I/O 2024 představil řadu novinek. Keynote byl věnován umělé inteligenci (DeepMind, Gemini, Responsible AI).

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | Bezpečnostní upozornění

    V Gitu bylo nalezeno 5 zranitelností. Opraveny jsou ve verzích 2.45.1, 2.44.1, 2.43.4, 2.42.2, 2.41.1, 2.40.2 a 2.39.4. Útočník může připravit repozitář tak, že při jeho klonování (git clone) může dojít ke spuštění libovolného kódu.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (74%)
     (5%)
     (10%)
     (10%)
    Celkem 291 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Dotaz: Distribuce python modulů a submodulů

    Bystroushaak avatar 14.11.2012 23:29 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Distribuce python modulů a submodulů
    Přečteno: 183×
    Řeším takový problém spíše filosofického rázu. Napsal jsem pár modulů (S), které mám na githubu jako projekty. Na těchto modulech jsem nyní založil další moduly (M) a na těchto modulech budou založeny aplikace (A).

    Mám tedy schéma:
        A
       / \
      M   M
     / \ / \
    S   S   S
    Distribuce S je jasná, prostě mají vlastní projekt na githubu, v něm vlastní dokumentaci a tak dále. U distribuce M můj problém začíná - měly by být distribuovány s S, nebo bez nich? A co A?

    Má na tohle python nějaký postup? Zatím jsem to řešil takto:
    try:
    	import socks
    except ImportError, e:
    	sys.stderr.write("I do require sock module. You can get it from\n")
    	sys.stderr.write("http://socksipy.sourceforge.net/\n")
    	raise e
    V jednom speciálním případě takto:
    try:
    	from timeout import timeout
    except ImportError, e:
    	import base64, zlib
    
    	f = open("timeout.py", "w")
    	f.write(zlib.decompress(base64.b64decode("""eJx9UsFOhDAQvfcrxnCBzbKYPRmMBw/G
    mOhFvW8qtNCktKSdbuTvLUvZUDDby3Rm3kzfe5DcFc6a4keogqkz9AO2WpEE8l0Ola6FakpwyPOHsUIS
    36kMqwU+QovYl0XRN07UzB4Uw2KaztGhNoLKay46ph3mNOdOVSi0Kojoem0Q7GCvV9EoKgmQSlJr4Xsa
    evmtWD+OpNdbVgIBf/oR5vE14xCeSEM8jXEPvkOdxKy84Be400wk5aE5A/gx3VHT2EV5PdtSVUtm0pGw
    6/bADe3YCj8eQ4VlWx0ZgQiqZT2vhKfgwmEKaci+3l6f3z8/9msKWbwpoKmkpoucyCABNKLxL1yaIBQs
    +2BZpVVto21ohhK2ohieqfREefApQrCLyo3mf7xh6IyaP1DU5sKLkMN25rY1Cxtv2XIfEw48JlVkVeVH
    ssjWv84fYU34lA==""")))
    	f.close()
    
    	try:
    		from timeout import timeout
    	except ImportError, e:
    		sys.stderr.write("Lol, you are fucked. Read only medium? SRSLY?\n")
    		raise e
    Očividné řešení by bylo tam moduly prostě nakopírovat a distribuovat to i s nimi, jenže tím se připravím o updaty a bugfixy. Package v distribuci z nich dělat nehodlám, protože pochybuji, že je používá i někdo jiný než já, navíc by mě to omezilo na jeden jediný OS a prostě se mi to zdá jako zbytečně komplikované řešení.

    Jak podobné problémy řešíte vy?

    <naivní otázka>Neexistuje cosi jako online úložiště balíčků, kam bych specifikoval co se má stáhnout a ono to stáhne a do systému doinstaluje? Nějaký způsob loadování a cacheování modulů z netu?</naivní otázka>

    Řešení dotazu:


    Odpovědi

    15.11.2012 01:10 chrono
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    Ak M/A bude potrebovať nejakú špeciálnu verziu S/M, tak bude asi najrozumnejšie použiť submoduly v git (alebo niečo podobné).

    Inak sa dá použiť setuptools alebo pip v kombinácii so stránkou PyPI, prípadne s vlastnou stránkou. Ak je potom balíček na stránke PyPI, stačí pri jeho inštalovaní poznať názov. Ak je niekde inde, dá sa napr. použiť odkaz na súbor.

    PS: Balíčky s python knižnicami, ktoré sa budú inštalovať pomocou setuptools alebo pip, obsahujú aj závislosti, ktoré sa potom tiež nainštalujú.
    15.11.2012 01:13 chrono
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    A ešte som zabudol na to, že pip vie inštalovať priamo z git repozitára (a zdá sa mi, že aj k setuptools existuje taká možnosť).
    Bystroushaak avatar 15.11.2012 08:55 Bystroushaak | skóre: 36 | blog: Bystroushaakův blog | Praha
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    pip znám, jenže to nefunguje tak úplně jak bych chtěl a je to jen o krok lepší než říct uživateli "tohle si (nějak) nainstaluj", protože mu říkáš "tohle nainstaluj takhle". Lepší by pro mě byl nějaký automatický způsob.
    15.11.2012 10:04 chrono
    Rozbalit Rozbalit vše Re: Distribuce python modulů a submodulů
    Nič viac automatické asi neexistuje, pretože napr. kam by sa to malo inštalovať?

    Aplikácie, ktoré používam to zvyčajne riešia tak, že:
    • je uvedený iba zoznam závislostí
    • je uvedený zoznam závislostí aj s popisom, ako ich nainštalovať (napr. pomocou pip)
    • aplikácia obsahuje súbor, v ktorom sú vypísané všetky závislosti (a ten súbor sa potom použije spolu s pip, aby sa to všetko nainštalovalo)
    Každopádne aktualizácie modulov sa zvyčajne nijako neriešia a vyžadujú zásah používateľa, takže nevidím veľký problém v tom, aby používateľ nainštaloval moduly pri inštalovaní aplikácie (prípadne môže celú aplikáciu nainštalovať pomocou pip).

    A ak to naozaj musí byť automatické, tak je asi najjednoduchšie pridať všetky moduly priamo k aplikácii. Síce sa tým príde o samostatné aktualizácie modulov, ale ak sa tie moduly neaktualizujú automaticky, používateľ to aj tak pravdepodobne robiť nebude. :)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.