Re: [Python] Come scrivere uno script da installare in /usr/bin con setup.py?
On Sun, Mar 20, 2011 at 09:44:14PM +0100, Marco Giusti wrote: On Sun, Mar 20, 2011 at 09:15:56PM +0100, Alessandro Dentella wrote: [...] nel link della documentazione in [2] l'esempio è: setup( # other arguments here... entry_points = { 'console_scripts': [ 'foo = my_package.some_module:main_func', 'bar = other_module:some_func', ], 'gui_scripts': [ 'baz = my_package_gui.start_func', ] } ) dove c'è una differenza che non capisco se è voluta o meno. Nelle console_scripts usa :main_func, mentre in gui_scripts usa .start_func (ovvero con . invece che :). A me funziona solo se metto ':'. credo che sia un errore. leggi di seguito... volendo effettivamente cambiare la configurazione di setup.py per usare entry_points ho questo dubbio: Nella attuale configurazione ho grossolaneamente: sqlkit/ |-- bin |-- demo | |-- layout | `-- sql | |-- images | `-- model |-- sqlkit | |-- misc | `-- widgets | |-- common | |-- mask | `-- table `-- test `-- doctest la script da mettere in entry_points è in 'bin', e mi piace che stia lì per visibilità. Così facendo però succede che se metto in setup.py: entry_points = { 'gui_scripts': [ 'sqledit = bin.sqledit:main', ] } mi viene installato anche un *package* bin, cosa che chiaramente voglio evitare. L'unica soluzione che vedo è di nascondere sqledit all'interno della struttura esistente 'sqlkit', cosa che non mi pare particolarmente corretta, è normale avere le scripts o in bin o in scripts. Suggeriementi/commenti? sandro *:-) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Come scrivere uno script da installare in /usr/bin con setup.py?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Il 21/03/2011 12:55, Alessandro Dentella ha scritto: [...] Nella attuale configurazione ho grossolaneamente: sqlkit/ |-- bin |-- demo | |-- layout | `-- sql | |-- images | `-- model |-- sqlkit | |-- misc | `-- widgets | |-- common | |-- mask | `-- table `-- test `-- doctest la script da mettere in entry_points è in 'bin', e mi piace che stia lì per visibilità. Allora ti conviene usare il parametro `scripts`, nel setup. Utilizzando gli entry point di setuptool, devi avere una funzione, il cui modulo deve ovviamente essere installato. Se vuoi usare gli entry point (comodo perchè ti crea un eseguibile .exe per Windows), ti conviene aggiungere un sottopackage tipo: sqlkit/sqlkit/ui in cui inserire i vari moduli; oppure semplicemente aggiungere un modulo ui all'interno del package sqlkit. Ciao Manlio -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk2HSHkACgkQscQJ24LbaUR3gACeIMHwPb8KrwnDrcE7FM+KMWSM E/cAn3jyTmNaEWnGdNk53dZa2NVXvzZ2 =wQaw -END PGP SIGNATURE- ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] ANN: rilasciata psutil (python process utilities) 0.2.1
Salute a tutti, sono lieto di annunciare il rilascio della versione 0.2.1 di psutil: http://code.google.com/p/psutil === About === psutil è un modulo che permette di ottenere informazioni riguardo i processi in esecuzione e il sistema operativo (CPU, memoria) tramite Python, implementando diverse funzionalità offerte da tools da linea di comando quali ps, top, lsof e netstat. psutil supporta Linux, Windows, OS X e FreeBSD, sia 32-bit che 64-bit, su Python da 2.4 a 3.2 utilizzando un'unica code-base. === Nuove features === * process I/O counters * process wait() (aspetta che un processo termini e ritorna l'exit code) * process get_threads() informazioni (id, user and kernel times) riguardo i thread aperti dal processo * process uids/gids (saved, real e effective) * process niceness (priorità, get e set) * stato dei processi (running, stopped etc...) * process I/O niceness (priorità I/O) * psutil.Popen, una nuova classe che offre un'interfaccia più conveniente di subprocess.Popen === Esempio delle nuove features === p = psutil.Process(7055) p.name 'python' str(p.status) 'running' p.uids user(real=1000, effective=1000, saved=1000) p.gids group(real=1000, effective=1000, saved=1000) p.nice 0 p.nice = 10 # cambia priorità p.nice 10 p.get_ionice() ionice(ioclass=0, value=0) p.set_ionice(psutil.IOPRIO_CLASS_IDLE) # cambia priorità I/O p.get_ionice() ionice(ioclass=3, value=0) p.get_io_counters() io(read_count=478001, write_count=59371, read_bytes=700416, write_bytes=69632) p.get_threads() [thread(id=5234, user_time=22.5, system_time=9.2891), thread(id=5235, user_time=0.0, system_time=0.0), thread(id=5236, user_time=0.0, system_time=0.0), thread(id=5237, user_time=0.0707, system_time=1.2)] p.terminate() p.wait(timeout=3) 0 = psutil.Popen = import psutil from subprocess import PIPE p = psutil.Popen([/usr/bin/python, -c, print 'hi'], stdout=PIPE) p.name 'python' p.uids user(real=1000, effective=1000, saved=1000) p.username 'giampaolo' p.communicate() ('hi\n', None) p.terminate() p.wait(timeout=2) 0 === Links === * Home page: http://code.google.com/p/psutil * Mailing list: http://groups.google.com/group/psutil/topics * Sorgenti: http://psutil.googlecode.com/files/psutil-0.2.1.tar.gz * Documentazione: http://code.google.com/p/psutil/wiki/Documentation --- Giampaolo Rodola' http://code.google.com/p/pyftpdlib http://code.google.com/p/psutil/ ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] ANN: rilasciata psutil (python process utilities) 0.2.1
Concordo, mi potrebbe tornare molto utile per certi controlli che devo fare su alcuni processi in esecuzione nei server. Lo provero' senz'altro :) Il 21 marzo 2011 14:49, Mefrio mefri...@gmail.com ha scritto: Sembra interessante. Grazie per la segnalazione Mario Inviato da iPhone Il giorno 21/mar/2011, alle ore 13:46, Giampaolo Rodolà g.rod...@gmail.com ha scritto: Salute a tutti, sono lieto di annunciare il rilascio della versione 0.2.1 di psutil: http://code.google.com/p/psutil === About === psutil è un modulo che permette di ottenere informazioni riguardo i processi in esecuzione e il sistema operativo (CPU, memoria) tramite Python, implementando diverse funzionalità offerte da tools da linea di comando quali ps, top, lsof e netstat. psutil supporta Linux, Windows, OS X e FreeBSD, sia 32-bit che 64-bit, su Python da 2.4 a 3.2 utilizzando un'unica code-base. === Nuove features === * process I/O counters * process wait() (aspetta che un processo termini e ritorna l'exit code) * process get_threads() informazioni (id, user and kernel times) riguardo i thread aperti dal processo * process uids/gids (saved, real e effective) * process niceness (priorità, get e set) * stato dei processi (running, stopped etc...) * process I/O niceness (priorità I/O) * psutil.Popen, una nuova classe che offre un'interfaccia più conveniente di subprocess.Popen === Esempio delle nuove features === p = psutil.Process(7055) p.name 'python' str(p.status) 'running' p.uids user(real=1000, effective=1000, saved=1000) p.gids group(real=1000, effective=1000, saved=1000) p.nice 0 p.nice = 10 # cambia priorità p.nice 10 p.get_ionice() ionice(ioclass=0, value=0) p.set_ionice(psutil.IOPRIO_CLASS_IDLE) # cambia priorità I/O p.get_ionice() ionice(ioclass=3, value=0) p.get_io_counters() io(read_count=478001, write_count=59371, read_bytes=700416, write_bytes=69632) p.get_threads() [thread(id=5234, user_time=22.5, system_time=9.2891), thread(id=5235, user_time=0.0, system_time=0.0), thread(id=5236, user_time=0.0, system_time=0.0), thread(id=5237, user_time=0.0707, system_time=1.2)] p.terminate() p.wait(timeout=3) 0 = psutil.Popen = import psutil from subprocess import PIPE p = psutil.Popen([/usr/bin/python, -c, print 'hi'], stdout=PIPE) p.name 'python' p.uids user(real=1000, effective=1000, saved=1000) p.username 'giampaolo' p.communicate() ('hi\n', None) p.terminate() p.wait(timeout=2) 0 === Links === * Home page: http://code.google.com/p/psutil * Mailing list: http://groups.google.com/group/psutil/topics * Sorgenti: http://psutil.googlecode.com/files/psutil-0.2.1.tar.gz * Documentazione: http://code.google.com/p/psutil/wiki/Documentation --- Giampaolo Rodola' http://code.google.com/p/pyftpdlib http://code.google.com/p/psutil/ ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python