Re: [Python] python SQL?

2014-02-16 Per discussione enrico franchi
2014-02-16 19:49 GMT+00:00 Diego Barrera :


> Se le cose funzionano veramente cosi', certo.
>>
> Questo gia' potrebbe bastare :D


Eh, ma non ci conterei... quello e' il fatto.


-- 
.
..: -enrico-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Diego Barrera

On 16/02/2014 20:10, enrico franchi wrote:


Se le cose funzionano veramente cosi', certo.

Questo gia' potrebbe bastare :D

Dalla strada arrivano notizie di tutti i tipi. C'e' twitter che 
riscrive tutto in Scala da Ruby. Ci sono quelli che invece falliscono 
perche' un competitor, sebbene arrivato secondo sul mercato, ci arriva 
con un prodotto che funziona *anche* sotto scala e gli utenti migrano 
in massa. Ci sono quelli che vanno avanti a zoppicare per anni e 
nessuno dice nulla.

Spero di essere dell'ultimo tipo ;)

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Carlos Catucci
2014-02-16 20:15 GMT+01:00 enrico franchi :

> Poi niente da dire, ci sono molti casi d'uso in cui il modello relazionale
> non e' particolarmente indicato. Diciamo che di solito le cose "semplici"
> spesso nascondono la complessita' da qualche altra parte.


Sintesi perfetta.

C'e' da dire che come economia di scala io viaggio in ordini di grandezza
di certo abbatsanza piccoli da non dover scalare molto o spesso.

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione enrico franchi
2014-02-16 14:27 GMT+00:00 Carlos Catucci :

>
> A dire il vero ultimamente mi sono trovato con diversi progetti dove il
> problema era proprio il modello relazionale. Va detto che si tratta di un
> campione neppure lontanamente rappresentativo. Voglio dire anche se negli
> ulltmi 4 progetti 3 venivano meglio con dei NoSql (piu' naturali le
> costruzioni delle basi dati, piu' naturale usarle, aggiornarle, recuperare
> i dati rapidamente etc.) 4 progetti non bastano per dire che nel 75% dei
> casi sia cosi'. Facile che i prossimi 100 (se avro' la fortuna di lavorare
> a tanti) potrenbbero essere meglio con il relazionale.
>
> La tentazione di usare una struttura piu' nested come quella di MongoDb
> per fare certe cose e' sempre forte. Poi da vedere se paga o meno.
>
>
Che dire... non sapendo le specifiche e' difficile parlarne. Il fatto e'
che su molti nosql e' semplicemente piu' facile vomitare dati nella base di
dati e tirarli fuori. Tutto questo e' molto semplice (perche' quasi non ti
preoccupi del design della parte di persistenza). Poi quando le cose
cominciano a rompersi, e' un flagello. Quando cominciano a finire dentro
dati fatti troppo male e tu lo scopri qualche mese dopo, generalmente
quando hai rimosso i log che ti avrebbero detto perche', e tipicamente alle
quattro di mattina di sabato, quando ti suona il pager, e tu hai un
hangover terrificante...

Poi niente da dire, ci sono molti casi d'uso in cui il modello relazionale
non e' particolarmente indicato. Diciamo che di solito le cose "semplici"
spesso nascondono la complessita' da qualche altra parte.


-- 
.
..: -enrico-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione enrico franchi
2014-02-16 12:33 GMT+00:00 Diego Barrera :

> On 16/02/2014 12:40, enrico franchi wrote:
>
>>
>> L'architettura del db deve essere *sempre* il piu' efficiente possibile.
>> Se no, non ja fa. E si, sharda, cazzi e mazzi, per carita'.
>>
>>  Alla luce di questo e avendo in mente che devo andare in produzione il
> prima possibile,
> (leggi per ora mi interessa poco scalare, ma mi server avere una killer
> app per vedere come va)
> che succede se opero in questo modo:
>
> 1. creo model e tutta app con l'orm;
> 2. l'app funziona e ho tanti clienti: primi problemi a scalare
> 3. ottimizzo sql e impostazioni specifiche dbms
>
> Mi sembra un buon compromesso.
>
>
Se le cose funzionano veramente cosi', certo. Solo che nella pratica non
succede cosi'.
Succede che fra il punto 2 e il punto 3 ci sono anche le nuove features, i
bug fix, vari cazzi architetturali non previsti, tutta quella parte di
operations che non sapevi che esistesse e che ti devi inventare, cominciare
a mettere su team di risposta alle emergenze...

Quindi tipicamente quello che fai al posto del 3 e' infilare un po' di
patch, fare un po' di porcate con memcache etc etc etc.

Dalla strada arrivano notizie di tutti i tipi. C'e' twitter che riscrive
tutto in Scala da Ruby. Ci sono quelli che invece falliscono perche' un
competitor, sebbene arrivato secondo sul mercato, ci arriva con un prodotto
che funziona *anche* sotto scala e gli utenti migrano in massa. Ci sono
quelli che vanno avanti a zoppicare per anni e nessuno dice nulla.


-- 
.
..: -enrico-
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Nicola Larosa
Piergiuliano Bossi wrote:
> Comunque un WTF tonante ci scappa per questa roba qua...

Assolutamente.

Purtroppo la comunità Python non sempre è riuscita a far prevalere la
semplicità sulla tendenza alla sovraingegnerizzazione di alcuni, e
conseguenti complicazioni inutili.

La saga pluriennale dei vari distutils/setuptools/distribute/pip e
compagnia ne è un esempio. In tutti questi anni non ho trovato la forza,
né la necessità per fortuna, di approfondire veramente l'argomento.

Un altro esempio è la programmazione web. Ci sono voluti anni per
districarsi dall'abbraccio mortale di Zope 2, Zope 3 e Plone.

Un altro ancora è la concorrenza. Ci sono voluti anni di asyncore,
Twisted e Tornado, e finalmente l'interesse diretto del BDFL, per avere
un supporto decente agli eventi asincroni nella libreria standard. Ma
questo è un caso diverso dagli altri, probabilmente.

-- 
Nicola Larosa - http://www.tekNico.net/

You can't take life that seriously. Life is here to serve you,
and you are here to serve life. And if you are unhappy,
what's the point? What's the point of having a life?
 - Erin Pavlina, 2009

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Enrico Bianchi

On 02/16/2014 02:50 PM, Perini Matteo wrote:
Tutti i controlli verranno fatti via sw appoggiandomi ad un db (sto 
propendendo per mongodb... ma non sono ancora sicuro)


Te lo sconsiglio, non tanto per la mole dei dati (irrisoria, stiamo 
parlando di una decina di Mb all'anno), ma perche` non ti da nessun 
vantaggio evidente rispetto ad un RDBMS


Ho visto un po' di differenze tra db relazionali e documentali e penso 
che per il mio caso non faccia molta differenza quale uso. (il numero 
di campi sarà fisso)


Non e` la variabilita` dei campi a fare la differenza, ma la mappatura 
fra di loro. In un RDBMS e` fissa, in un Document Store e` variabile


Non mi è invece molto chiaro come posso immagazzinare tutte le 
date/ora degli ingressi e uscite? suggerimenti?


I RDBMS usano tipi di dati ad hoc, che ti permettono anche di eseguire 
operazioni su di loro. In alternativa, converti tutto in epoch e salvali 
in quel formato



Come facilità d'uso cosa mi consigliate? mongodb? SQLite?


Posto che "facilita` d'uso" in questo caso e` altamente improprio, ti 
consiglio di rimanere su PostgreSQL o su Firebird, in virtu` di come 
intendi procedere (e.g. su PostgreSQL hai piu` funzionalita`, su 
Firebird hai la manutenzione tendente allo zero)


Dimenticavo... l'accesso al db avverrà sempre dallo stesso sw ma in 
due modi distinti, tramite la gui con richiesta dell'utente e, in 
automatico quando un utente "passa" la tessera con l'RFID, servirà 
prevedere thread per questo? 


Secondo me devi necessariamente prevedere due applicativi distinti, uno 
in ascolto costantemente sul db (ci sono delle metodologie su PostgreSQL 
che ti permettono di farlo senza fare polling continuo), l'altro che si 
connette solo quando serve (ovvero quando apro la gui)


Enrico
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Carlos Catucci
2014-02-16 18:39 GMT+01:00 Enrico Bianchi :

> 'Sta cosa poteva avere senso prima del 2012, ovvero prima dell'avvento di
> PostgreSQL 9.2, dove per la prima volta sono comparsi i campi JSON. Ad
> oggi, nessuno ti vieta di avere una tabella con un solo campo JSON e
> navigarla cosi`:
>
> SELECT json->"accessi" FROM tabella WHERE json->>"uid" = 1
>

Vero, infatti mi hanno detto che PG abbia anche prestazioni superiori. Ah,
poter avere tempo di studiare a fondo tutto.

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Enrico Bianchi

On 02/16/2014 05:42 PM, Carlos Catucci wrote:
Io trovo comoda la struttura json delle tabelle e il fatto che non 
abbia tabelle rigide.
'Sta cosa poteva avere senso prima del 2012, ovvero prima dell'avvento 
di PostgreSQL 9.2, dove per la prima volta sono comparsi i campi JSON. 
Ad oggi, nessuno ti vieta di avere una tabella con un solo campo JSON e 
navigarla cosi`:


SELECT json->"accessi" FROM tabella WHERE json->>"uid" = 1

Enrico
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Carlos Catucci
2014-02-16 17:39 GMT+01:00 Enrico Bianchi :

> Dalla mia esperienza, non riesco a capire quale sia l'esatta collocazione
> di MongoDB. E questo perche`, sempre nell'ottica di fargli gestire grosse
> moli di dati, devi avere una configurazione che richiede almeno 9 (nove!)
> nodi del database NoSQL. Di contro, con PostgreSQL mi basta una istanza per
> avere prestazioni com


Io trovo comoda la struttura json delle tabelle e il fatto che non abbia
tabelle rigide. Per certi progetti ovvio. Ma non sono un esperto.

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Enrico Bianchi

On 02/16/2014 03:41 PM, Carlos Catucci wrote:
Io sapevo (ma posso sbagliarmi) che Mongo Db (che ribadisco quanto 
detto altrove trovo MLTO carino) era pensato per grosse moli di dati. 


Dalla mia esperienza, non riesco a capire quale sia l'esatta 
collocazione di MongoDB. E questo perche`, sempre nell'ottica di fargli 
gestire grosse moli di dati, devi avere una configurazione che richiede 
almeno 9 (nove!) nodi del database NoSQL. Di contro, con PostgreSQL mi 
basta una istanza per avere prestazioni comparabili


Enrico
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Daniele Tricoli
On Sunday 16 February 2014 10:24:35 Piergiuliano Bossi wrote:
> Vedi
> http://docs.python.org/2/distutils/examples.html#pure-python-distribution-by
> -module
> 
> Sono io che ho capito male, la documentazione e' sbagliata, o c'e' un bug?

Hai ragione, era da un po' che non rileggevo il tutto! Uhm, prima di segnalare
il bug (con tanto di relativo rant :D) dovresti però provare ad usare distutils
nel tuo setup.py.

Adesso setuptools dovrebbe esser migliorato, soprattutto dopo il merge di
distribute[¹], in genere cerco sempre di utilizzare distutils a cui la
documentazione che abbiamo guardato fa riferimento.

Ed in effetti, e mi spiace non averci badato stamane (ma la domenica sono
in modalità relax, soprattutto la mattina) questa sarebbe una PR migliore:

eriol@mornie:~/tmp/simpyple$ git diff
diff --git a/setup.py b/setup.py
index aa31bb7..866338e 100644
--- a/setup.py
+++ b/setup.py
@@ -1,4 +1,4 @@
-from setuptools import setup
+from distutils.core import setup
 import os
 import re

Il commit log lo lascio a te, magari poi andrò a darvi un'occhiata su github! ;)

Quindi, sì, forse è un bug, ma di setuptools: nella sua documentazione non trovo
un riferimento al quel tipo di layout, ma ho cercato velocemente. Quindi non ho
idea se è qualcosa di supportato o meno. Del resto da setuptools ho sempre visto
importare find_package() (o un nome simile).

[Daniele Tricoli]
> > può non sembrare il massimo, ed anche a me ogni tanto viene da pensarci,
> > ma
> > poi mi dico che non vale la pena complicarsi la vita.
> 
> Si' infatti non mi entusiasmava proprio quella struttura. Boh, ci penso, se
> salta fuori qualche altra gabola causata dalla struttura certo che non ne
> vale proprio la pena.

In effetti usando distutils non dovrebbe spuntare imprevisti.
Stavo ripensando al layout, ed in effetti in genere metto anche la 
documentazione
nella root del repository (in genere una directory docs) ed avere la directory
docs in mezzo al package principale non mi piace. Grazie per lo spunto di 
riflessione
però, magari arriverò ad un layout migliore!

Saluti,

[¹] Per farti un'idea:
http://python-notes.curiousefficiency.org/en/latest/pep_ideas/core_packaging_api.html
 
che rimanda a
https://python-packaging-user-guide.readthedocs.org/en/latest/future.html


-- 
 Daniele Tricoli 'Eriol'
 http://mornie.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Carlos Catucci
2014-02-16 16:26 GMT+01:00 Piergiuliano Bossi :

> Penso che ci sarebbe un potenziale enorme per una piadineria decente a
> Toronto. Ho trovato un paio di buone pizzerie, ma piadine ciccia. Potrei
> vendere un figlio per una piadina buona, saranno 10 anni che non ne mangio
> una...


Purtroppo non sono da quelle parti. Pero' farsela a casa no?
Scusate l'OT, ma come dissero Aldo, Giovanni e Giacomo: Il cibo degli dei,
la piaDEIna ;)

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Piergiuliano Bossi
On Sun, Feb 16, 2014 at 3:04 AM, Carlos Catucci wrote:

>
> 2014-02-14 22:47 GMT+01:00 Piergiuliano Bossi :
>
>> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file
>
>
> A naso pero' 
>
> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file
>
> ANIFEST? Non e' che manca una M all'inizio da qualche parte?
>
>
C'avevo pensato anch'io, ma niente, non e' quello. E comunque vedi la
risposta (santa) di Daniele Tricoli. Comunque un WTF tonante ci scappa per
questa roba qua...

Ciao,
Giuliano



-- 
Piergiuliano Bossi
Blog: http://thinkingbox.wordpress.com/
Twitter: http://twitter.com/thinkingbox (English)
Twitter: http://twitter.com/scatolapensante (Italiano)
Google+: https://plus.google.com/u/0/108187981162465525118
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Piergiuliano Bossi
2014-02-16 3:03 GMT-05:00 Carlos Catucci :

>
> 2014-02-14 22:47 GMT+01:00 Piergiuliano Bossi :
>
>> Cosa sto sbagliando? Professione? Meglio dedicarmi alle pizze?
>
>
> Guarda se kl amettiamo sul guadagnare di piu' ti dico che io da tempo
> sogno di mettermi a fare il piadinaro, pero' sai com'e', come dice il detto:
>

Penso che ci sarebbe un potenziale enorme per una piadineria decente a
Toronto. Ho trovato un paio di buone pizzerie, ma piadine ciccia. Potrei
vendere un figlio per una piadina buona, saranno 10 anni che non ne mangio
una...


>
> "Si e' vero, sono un informatico, ma e' sempre meglio che lavorare". ;)
> Mi spiace solo di non essere in grado di aiutarti per la cosa, pero'. La
> cosa inteso come la libreria, non le pizze.
>
>
Eh eh :)

Ciao,
Giuliano


-- 
Piergiuliano Bossi
Blog: http://thinkingbox.wordpress.com/
Twitter: http://twitter.com/thinkingbox (English)
Twitter: http://twitter.com/scatolapensante (Italiano)
Google+: https://plus.google.com/u/0/108187981162465525118
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Piergiuliano Bossi
2014-02-16 4:05 GMT-05:00 Daniele Tricoli :

> [...]
> Premesso che non ho indagato a fondo anche perché in genere cerco di
> evitare
> setuptools, quindi non ti so dire perché MANIFEST.in diventi ANIFEST.in
> però
> ho notato una cosa.
>
> Nel tuo setup.py scrivi:
>
> [...]
> packages=['simpyple'],
> [...]
>
> Cioè stai dicendo che esisterà simpyple/__init__.py, ma il layout del tuo
> progetto è diverso in quanto il tuo package è nella stessa directory di
> setup.py, per cui al posto di package_dir={'simpyple': ''}, in effetti
> dovresti dare package_dir={'simpyple': '.'},
>
> Infatti con (non ti mando una PR, ma ti incollo qui la diff):
> [...]
>

Ma sei MERAVIGLIOSO!!! :D

Pero' qui dovrebbe scattare un rant. Leggendo la documentazione, quando
parla di un progetto strutturato come il mio, dice:

> (The empty string also stands for the current directory.)


Vedi
http://docs.python.org/2/distutils/examples.html#pure-python-distribution-by-module

Sono io che ho capito male, la documentazione e' sbagliata, o c'e' un bug?


> [...]
> (Scusa il wordwrap, ma il log penso renda l'idea).
>
>
Si' si', perfetto grazie.


> Trovi informazioni dettagliate sulla cosa qui:
> http://docs.python.org/2/distutils/setupscript.html


Eh, ma vedi sopra: li' avevo attinto le mie informazioni.


> Forse ti conviene utilizzare un layout più convenzionale sia per evitare
> sorprese del genere, ma anche per seguire il POLA, in effetti pure non ho
> notato a colpo d'occhio che il package si trovava allo stesso livello di
> setup.py.
> È vero, avere il repository col path del package
>
> simpyple/simpyple/__init__.py
> ...
> setup.py
>
> può non sembrare il massimo, ed anche a me ogni tanto viene da pensarci, ma
> poi mi dico che non vale la pena complicarsi la vita.
>

Si' infatti non mi entusiasmava proprio quella struttura. Boh, ci penso, se
salta fuori qualche altra gabola causata dalla struttura certo che non ne
vale proprio la pena.


>
> Ah, magari vuoi impostare il tuo editor in modo che rimuova i trailing
> space:
> ci sono un paio di righe nel setup.py che contengono solo uno spazio... per
> fortuna nel mio vimrc non uso uso l'impostazione "mostrami le lacrime di
> sangue al posto dei trailing space" come usa(va) fare Marco Beri! ;-)
>
>
Si', anche se... "the question is: who cares?" :)
Non sono di certo un purista del pep8, soprattutto quando si tratta di
linee vuote a trailing spaces, ma vabbeh.

HTH,
>
>
Molto. :)

Grazie e ciao
Giuliano


-- 
Piergiuliano Bossi
Blog: http://thinkingbox.wordpress.com/
Twitter: http://twitter.com/thinkingbox (English)
Twitter: http://twitter.com/scatolapensante (Italiano)
Google+: https://plus.google.com/u/0/108187981162465525118
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Massimiliano Pippi
2014-02-16 16:16 GMT+01:00 Carlos Catucci :
> Sebbene molti ORM supportino dei NoSql (Django almeno mi sembra
> lo faccia con MongoDb)
>
No, l'ORM di Django non lo supporta ma c'è un fork che lo fa:
http://django-nonrel.org/

Ciao

-- 
M.

http://2014.djangovillage.it/ :: http://tinkergarage.it/
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Carlos Catucci
2014-02-16 16:01 GMT+01:00 Manlio Perillo :

> Nulla di male, ma ORM significa Object *Relational* Mapper :)
>
> Quindi sospetto tu abbia quotato la parte sbagliata del mio messaggio.
>

Perdonami, avevo deviato, dall'ORM in se ai modelli in generale, discorso
ripreso poi. Sebbene molti ORM supportino dei NoSql (Django almeno mi
sembra lo faccia con MongoDb)

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Manlio Perillo

On 16/02/2014 15:27, Carlos Catucci wrote:


2014-02-16 14:04 GMT+01:00 Manlio Perillo mailto:manlio.peri...@gmail.com>>:

Riguardo i gusti personali, gli ORM poi non mi piacciono perchè li
reputo una astrazione "sbagliata" sopra il modello relazionale.


A dire il vero ultimamente mi sono trovato con diversi progetti dove il
problema era proprio il modello relazionale.


Nulla di male, ma ORM significa Object *Relational* Mapper :)

Quindi sospetto tu abbia quotato la parte sbagliata del mio messaggio.


Ciao  Manlio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Carlos Catucci
2014-02-16 14:50 GMT+01:00 Perini Matteo :

> sto seguendo con interesse ma il livello si è alzato un po' ;)
>

Sai come finiscono ste cose, uno fa una domanda innocente (la mia sugli
orm) e ne viene fuori una tavola rotonda.

Pero' fa sempre bene ascoltare chi ne sa di piu', pure se, come mi sta
accdendo in qualche passaggio, devi prima googlare un poco solo per avere
idea vaga di cosa stiano dicendo ;)


> Cerco di spiegarvi cosa vorrei fare.
> Per adesso si tratta di una piccola  applicazione  per tener traccia di
> accessi e pagamenti per una associazione.
>
> Scenario:
> Qualche centinaio di utenti avranno una carta RFID (codice univoco) con la
> quale potranno accedere alla sala dell'associazione.
> Ad ogni codice nel db corrisponderà l'anagrafica, numeri di telefono ecc,
> una decina di cose specifiche dell'associazione.
> Oltre a questo, ogni ingresso/uscita andrebbe immagazzinato da qualche
> parte.
> All'ingresso vi sarà anche un controllo se l'utente è in regola con i
> pagamenti delle quote associative.
> Gli utenti possono essere di vario tipo (studenti/Adulti/pensionati) con
> vari tipi di possibile associazione (mensile/annuale/n°di ingressi).
> Tutti i controlli verranno fatti via sw appoggiandomi ad un db (sto
> propendendo per mongodb... ma non sono ancora sicuro)
>

Io sapevo (ma posso sbagliarmi) che Mongo Db (che ribadisco quanto detto
altrove trovo MLTO carino) era pensato per grosse moli di dati.

>
> Ho visto un po' di differenze tra db relazionali e documentali e penso che
> per il mio caso non faccia molta differenza quale uso. (il numero di campi
> sarà fisso)
>

Cosa che porta piu' verso il relazionale, o meglio, che e' caratteristica
buona per un relazionale (*).


> Anche i tempi delle varie query penso siano insignificanti in entrambi i
> casi visto che si parla di qualche migliaio di dati.
> Non mi è invece molto chiaro come posso immagazzinare tutte le date/ora
> degli ingressi e uscite? suggerimenti?
>

Campi appositi di tipo date/time? (magari adesso mi darai del'idiota, ma
possibile che non abbia capito bene la domanda).

Come facilità d'uso cosa mi consigliate? mongodb? SQLite?
>

Sono tutti facili e tutti difficili. Il mio consiglio, basato sulla mia
teoria che il miglior editor/ide/linguaggio/db/etc. e' quello con cui ti
trovi meglio) e' di provare entrambi, giocarci un poco e poi decidere.


> Dimenticavo... l'accesso al db avverrà sempre dallo stesso sw ma in due
> modi distinti, tramite la gui con richiesta dell'utente e, in automatico
> quando un utente "passa" la tessera con l'RFID, servirà prevedere thread
> per questo?
>

Dipende da quanti user contemporaneamente accedono.


> Grazie dell'aiuto (anche di domenica)
>

la domenica e' un giorno come gli altri se non sei un fanatico religioso. ;)


* Per un progetto (che dorme nel cassetto da anni) avevo necessita' di
tabelle che potevano avere un numero di campi variabili. Volevo pero'
evitare una tabella correlata "1 a molti" per motivi di performance. Ed ero
ricorso ad una tabella a 4 campi (va beh, tra id autoincrementale e altri
accessori erano di piu' ma quelli importanti erano 4) e per la precisione

identificatore della transazione (raggruppamento)
tipologia dell'oggetto
nome dell'oggetto
valore dell'oggetto

Si tratta di una applicazione per immobiliari, il primo campo era riferito
alla proposta immobiliare, il secondo mi diceva se si trattava di prezzi,
tipologie di transazione, descrizione di accessori, etc, il terzo era il
nome dell'oggetto in se e l'ultimo il suo valore.

Con un dirty trick riuscivo ad cercare proposte immobiliari variegate
(esempio offerte in affitto di appartamenti con 3 camere, 2 bagni, posto
auto, riscaldamento autonomo, tra il 2ndo ed il 4to piano, non attici, in
una data zona e ad un prezzo massimo di x) ma era davvero una query poco
ortodossa (una sommatoria di variabili messe a 1 se caratteristica
presente).

Poi ho scoperto MongoDb e tutto e' stato rivisitato in maniera naturale.
Pero' e' un caso specifico dove la stessa proprieta' immobiliare puo'
presentare un range di caratteristiche di cui alcune comuni (prezzo,
indirizzo, tipologia), altre specifiche del tipo (un garage non avra'
ascensore o giardino) ed altre ancora magari presenti solo per quella
proposta (un appartamento con giardino pensile per dire).

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Carlos Catucci
2014-02-16 14:04 GMT+01:00 Manlio Perillo :

> Riguardo i gusti personali, gli ORM poi non mi piacciono perchè li reputo
> una astrazione "sbagliata" sopra il modello relazionale.


A dire il vero ultimamente mi sono trovato con diversi progetti dove il
problema era proprio il modello relazionale. Va detto che si tratta di un
campione neppure lontanamente rappresentativo. Voglio dire anche se negli
ulltmi 4 progetti 3 venivano meglio con dei NoSql (piu' naturali le
costruzioni delle basi dati, piu' naturale usarle, aggiornarle, recuperare
i dati rapidamente etc.) 4 progetti non bastano per dire che nel 75% dei
casi sia cosi'. Facile che i prossimi 100 (se avro' la fortuna di lavorare
a tanti) potrenbbero essere meglio con il relazionale.

La tentazione di usare una struttura piu' nested come quella di MongoDb per
fare certe cose e' sempre forte. Poi da vedere se paga o meno.

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Manlio Perillo

On 16/02/2014 14:50, Perini Matteo wrote:

Il 16/02/2014 14:04, Manlio Perillo ha scritto:

Perchè, in questo caso specifico, un ORM è una bestia molto complessa,
e consigliarlo ad uno che adesso sta cominciando con i database
relazionali non è una buona cosa.

Ciao,
sto seguendo con interesse ma il livello si è alzato un po' ;)



Puoi tranquillamente ignorare i punti più complessi ;)


Cerco di spiegarvi cosa vorrei fare.
Per adesso si tratta di una piccola  applicazione  per tener traccia di
accessi e pagamenti per una associazione.

Scenario:
Qualche centinaio di utenti avranno una carta RFID (codice univoco) con
la quale potranno accedere alla sala dell'associazione.
Ad ogni codice nel db corrisponderà l'anagrafica, numeri di telefono
ecc, una decina di cose specifiche dell'associazione.
Oltre a questo, ogni ingresso/uscita andrebbe immagazzinato da qualche
parte.
[...]

Ho visto un po' di differenze tra db relazionali e documentali e penso
che per il mio caso non faccia molta differenza quale uso. (il numero di
campi sarà fisso)
Anche i tempi delle varie query penso siano insignificanti in entrambi i
casi visto che si parla di qualche migliaio di dati.


Un database server come PostgreSQL offre molta flessibilità.
Semplicemente lo installi su un server (magari separato da quello dove 
si trova il client, e gestito in modo da avere una buona sicurezza e 
backup); questo è uno dei vantaggi rispetto ad esempio ad SQLite.


Personalmente mi allontanerei dal modello relazionale *solo* se fa 
differenza quale modello uso.



Non mi è invece molto chiaro come posso immagazzinare tutte le date/ora
degli ingressi e uscite? suggerimenti?



Non mi sembra complesso.  Quale problema vedi?


Come facilità d'uso cosa mi consigliate? mongodb? SQLite?



Devi innanzitutto distinguere tra modelli di dati.
mongodb e SQLite usano modelli di dati differenti.

Per una differenza tra i vari modelli, vedi le pagine di wikipedia per 
mongodb e PostgreSQL, in particolare:

http://en.wikipedia.org/wiki/Document-oriented_database
http://en.wikipedia.org/wiki/Relational_database

Sono argomenti abbastanza ampi, inizia a documentarti e magari se hai 
dubbi chiedi.  Tieni presente che sto assumendo tu voglia imparare ad 
usare un database.  In alternativa puoi anche iniziare leggendo la parte 
introduttiva della documentazione di PostgreSQL o mongodb.


Se ti va bene il modello relazionale, SQLite è sicuramente più semplice 
di PostgreSQL (e lo hai incluso in Python), ma ha diverse limitazioni.



Dimenticavo... l'accesso al db avverrà sempre dallo stesso sw ma in due
modi distinti, tramite la gui con richiesta dell'utente e, in automatico
quando un utente "passa" la tessera con l'RFID, servirà prevedere thread
per questo?



Cosa intendi?

> [...]


Ciao  Manlio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Perini Matteo

Il 16/02/2014 14:04, Manlio Perillo ha scritto:
Perchè, in questo caso specifico, un ORM è una bestia molto complessa, 
e consigliarlo ad uno che adesso sta cominciando con i database 
relazionali non è una buona cosa.

Ciao,
sto seguendo con interesse ma il livello si è alzato un po' ;)

Cerco di spiegarvi cosa vorrei fare.
Per adesso si tratta di una piccola  applicazione  per tener traccia di 
accessi e pagamenti per una associazione.


Scenario:
Qualche centinaio di utenti avranno una carta RFID (codice univoco) con 
la quale potranno accedere alla sala dell'associazione.
Ad ogni codice nel db corrisponderà l'anagrafica, numeri di telefono 
ecc, una decina di cose specifiche dell'associazione.
Oltre a questo, ogni ingresso/uscita andrebbe immagazzinato da qualche 
parte.
All'ingresso vi sarà anche un controllo se l'utente è in regola con i 
pagamenti delle quote associative.
Gli utenti possono essere di vario tipo (studenti/Adulti/pensionati) con 
vari tipi di possibile associazione (mensile/annuale/n°di ingressi).
Tutti i controlli verranno fatti via sw appoggiandomi ad un db (sto 
propendendo per mongodb... ma non sono ancora sicuro)


Ho visto un po' di differenze tra db relazionali e documentali e penso 
che per il mio caso non faccia molta differenza quale uso. (il numero di 
campi sarà fisso)
Anche i tempi delle varie query penso siano insignificanti in entrambi i 
casi visto che si parla di qualche migliaio di dati.
Non mi è invece molto chiaro come posso immagazzinare tutte le date/ora 
degli ingressi e uscite? suggerimenti?


Come facilità d'uso cosa mi consigliate? mongodb? SQLite?

Dimenticavo... l'accesso al db avverrà sempre dallo stesso sw ma in due 
modi distinti, tramite la gui con richiesta dell'utente e, in automatico 
quando un utente "passa" la tessera con l'RFID, servirà prevedere thread 
per questo?


Scusate se non ho chiarito prima questi punti che avrebbero potuto 
aiutarvi ad aiutarmi ma da non avevo proprio idea di come partire.


Grazie dell'aiuto (anche di domenica)
Ciao
M.


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Manlio Perillo

On 15/02/2014 20:55, Carlos Catucci wrote:


2014-02-15 19:56 GMT+01:00 Manlio Perillo mailto:manlio.peri...@gmail.com>>:

ma senza l'ORM, solo sqlalchemy.sql


Per curiosita' da ignorante, ma perche' non l'ORM? Non ti piaciono gli
orm o e' un qualcosa di SQLAllchemy in particolare che non va?



Perchè, in questo caso specifico, un ORM è una bestia molto complessa, e 
consigliarlo ad uno che adesso sta cominciando con i database 
relazionali non è una buona cosa.


Riguardo i gusti personali, gli ORM poi non mi piacciono perchè li 
reputo una astrazione "sbagliata" sopra il modello relazionale.


> [...]


Ciao   Manlio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Riccardo mancuso
per cose piccole, SQLite


Il giorno 16 febbraio 2014 13:33, Diego Barrera
ha scritto:

> On 16/02/2014 12:40, enrico franchi wrote:
>
>>
>> L'architettura del db deve essere *sempre* il piu' efficiente possibile.
>> Se no, non ja fa. E si, sharda, cazzi e mazzi, per carita'.
>>
>>  Alla luce di questo e avendo in mente che devo andare in produzione il
> prima possibile,
> (leggi per ora mi interessa poco scalare, ma mi server avere una killer
> app per vedere come va)
> che succede se opero in questo modo:
>
> 1. creo model e tutta app con l'orm;
> 2. l'app funziona e ho tanti clienti: primi problemi a scalare
> 3. ottimizzo sql e impostazioni specifiche dbms
>
> Mi sembra un buon compromesso.
>
> ___
> 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


Re: [Python] python SQL?

2014-02-16 Per discussione Diego Barrera

On 16/02/2014 12:40, enrico franchi wrote:


L'architettura del db deve essere *sempre* il piu' efficiente 
possibile. Se no, non ja fa. E si, sharda, cazzi e mazzi, per carita'.


Alla luce di questo e avendo in mente che devo andare in produzione il 
prima possibile,
(leggi per ora mi interessa poco scalare, ma mi server avere una killer 
app per vedere come va)

che succede se opero in questo modo:

1. creo model e tutta app con l'orm;
2. l'app funziona e ho tanti clienti: primi problemi a scalare
3. ottimizzo sql e impostazioni specifiche dbms

Mi sembra un buon compromesso.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione enrico franchi
2014-02-16 7:51 GMT+00:00 Carlos Catucci :

>
> De gustibus non disputandum est.
>

Sulle cose tecniche di solito non e' questione di *gusti*.

Ci sono due questioni principali. Una completamente filosofica:

1. Ci sono un botto di pattern architetturali per fare ORM. I piu' popolari
fuori da casa ms sono active record e data mapper. Guarda caso, nessuno dei
due e' perfetto. Il motivo e' che il problema di mappare il modello
relazionale sul modello ad oggetti e' vagamente ill-defined per vari motivi
(fra cui il fatto che il modello ad oggetti e' un pochetto ill-defined di
suo e soprattutto tende ad ammettere piu' soluzioni ad uno stesso problema
con differenti trade-offs). Per cui anche a livello teorico si hanno vari
compromessi... e.g., il design di active record e' molto leaky, data mapper
e' relativamente complesso concettualmente.

Ma poi proprio semplicemente ci sono cose molto naturali nel mondo ad
oggetti che si mappano malissimo nel mondo relazionale e viceversa. E per
queste situazioni l'orm non e' che puo' fare davvero molto...

La seconda molto pratica: quello che e' un ORM e' un oggetto appiccicato
sopra uno dei colli di bottiglia tipici delle applicazioni. Il che vuole
dire che e' veramente molto sensibile alle performance. E semplifica molto
la scrittura di query inefficienti. Ora, come si puo' notare dalla
permanenza in una qualunque lista come questa, se le persone hanno una
feature vagamente comoda da usare, ne abuseranno inconsapevolmente,
insegneranno ad altri il loro trucco e poi si lamenteranno che tutto va
piano (appena i dati crescono). Siccome sono clueless, ovviamente non
avranno idea di quello che e' successo e risolveranno in vari modi
(prendendo un consulente, generalmente per un altro linguaggio, cambieranno
database, riscriveranno tutto, andranno avanti a lamentarsi senza fare
nulla, dando la colpa a componenti casuali dell'architettura). Ora in tutto
questo non e' che ci sia nulla di male, semplicemente il fatto e' che cose
facili da fare e drammaticamente inefficienti saranno fatte
*inconsapevolmente*.

Il punto chiave e' che la gente pensa architetture varie ad oggetti e
sfruttera' la flessibilita' dell'orm per martellarci dentro il pattern di
accesso ai dati che piu' gli pare, non necessariamente uno buono.

Su tutto questo, si infila il problemino tipico dei linguaggi ad oggetti: i
dati occupano quintali di memoria non necessaria perche' sono pesantemente
nested. E avere un sistema comodo per generare una comoda interfaccia ad
oggetti vuole dire che le cose saranno fatte cosi'.

E voglio dire... ricordati che i dati nel db sono, auspicabilmente univoci.
tipicamente hai un db per applicazione, dentro cui hai i dati. un db
logico: potrebbe essere shardato, auspicabilmente e' replicato, etc etc
etc. I dati sono li e non danno fastidio.

Poi scopri che hai una piccola flotta di server. Ciascuno di questi tira su
un po' di worker. Ed ecco che le query che ti tirano su x MB di oggetti, in
realta' finisce che ti tirano su x00 MB *globalmente*. E cominci ad avere
problemi. E si, memcache, orpelli, cazzi e mazzi.

Oh, poi voglio dire, se hai un magazzino con duemila oggetti, chissene. Se
devi fare il payroll per duecento dipendenti, chissene. Se devi fare il
blog, il forum e chissene... il problema e' che non scala. Non scala. Non
ci sono cazzi.



> Io personalmente li trovo comodi. Il non dover impazzire tra dialetti, il
> poter svilupppare in locale, per dire, su Sqlite e poi andare in produzione
> con Postgres, cosa che mi facilita di molto le cose (per dirne una se
> aggiungo dati di test alla base dati un push sul repo condiviso (*) rende
> disponibile la cosa a tutti i coinvolti nel progetto senza dover eseguire
> un dump da allegare e un db_restore dopo un pull) senza impazzire sui
> dialetti e sulle varie differenze (sacrosante, ciascun Db ha il suo motivo
> di esistere, di essere specializzato in qualcosa, tranne forse un paio).
>

Comodo, forse. Stiamo pero' contando *molto* che l'astrazione sia perfetta
e non si stia nascondendo un baco che ti comparira' sulle macchine di test
o addirittura in produzione. Vuole anche dire che non puoi usare nulla di
specifico di PostgreSQL, che, sebbene accettabile, e' comunque una forte
limitazione.

Poi ovvio che se devo fare una query particolarmente incasinata (e accade
> SOLO se lavoro su basi dati esistenti, in caso contrario se e' roba mia
> parto dal presupposto di avere sbagliato l'architettura e riprogetto di
> conseguenza) posso usrae una raw, ma deve essere davvero un caso limite
> dove l'ORM non ce la fa.
>

L'architettura del db deve essere *sempre* il piu' efficiente possibile. Se
no, non ja fa. E si, sharda, cazzi e mazzi, per carita'.

Il problema e' che anche su query relativamente semplici succedono cose.


>
> Lo so, mi direte che l'ORM non ottimizza come puo' fare una query scritta
> ad hoc, ma a volte la flessibilita' conta piu' delle prestazioni.
>

Non nel mio caso. Aggiungere host non necessari cessa di scalar

Re: [Python] python SQL?

2014-02-16 Per discussione Daniele Tricoli
On Sunday 16 February 2014 10:35:51 Carlos Catucci wrote:
> Beh che vuoi, nessuno e' perfetto ;)

Mai detto il contrario! :-)
 
> Comunque posso fare una macchina di test uguale a quella di produzione da
> subito e fare le prove, pero' per il quotidiano se il progetto e'
> condiviso, aiuta.

Sì certo, il mio pensiero, appunto è che bisogna comunque conoscere il 
tradeoff che si fa utilizzando una determinata soluzione, soprattutto visto 
che l'OP si sta affacciando per la prima volta su questo specifico argomento.

L'ORM ti dà flessibilità, ma ti "nasconde" feature specifiche di un 
determinato database, e la domanda da porsi, IMHO, è: quanto costa tale 
flessibilità? E quanto senso ha accettare tale costo?
Per la maggior parte dei progetti il costo sarà anche nullo (anche in termini 
di debito tecnologico), ma non possiamo escludere che in alcuni casi la 
flessibilità di poter cambiare database di produzione è una feature che non 
verrà mai sfruttata. :-)

Per quanto riguarda il testing, nel caso in cui lavorassimo ad un progetto 
insieme ti proporrei, al posto di un database SQLite da condividere, di usare 
un ORM (così si fa in fretta :D) per creare delle testsuite al volo (da poi 
integrare correttamente però) per poter dire cose del tipo:

«Carlos, dai un'occhiata a sandobox/eriol/test_for_1234.py?»

Dove test_for_1234.py andrebbe a mettere in evidenza il problema creando da 
zero il database e riempiendolo[¹]. Uno dei vantaggi che mi viene subito in 
mente è che nel caso in cui stessimo indagando problemi diversi che impattano 
la stessa parte del database, possiamo condividere il problema senza dover 
condividere due db SQLite, ad esempio.

Ma la parte più importante è l'essersi messi d'accordo tra noi su come fare il 
testing condiviso! :-)

Buona domenica,

[¹] niente fixture please ;-)

--
 Daniele Tricoli 'Eriol'
 http://mornie.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Carlos Catucci
2014-02-16 10:15 GMT+01:00 Daniele Tricoli :

> ... e ti fa attendere il deploy sullo staging server per scoprire eventuali
> problemi legati all'uso di un database diverso da quello di produzione! :-)
>

Beh che vuoi, nessuno e' perfetto ;)

Comunque posso fare una macchina di test uguale a quella di produzione da
subito e fare le prove, pero' per il quotidiano se il progetto e'
condiviso, aiuta.

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Marco Beri
On 16 Feb 2014 10:05, "Daniele Tricoli"  wrote:
> per fortuna nel mio vimrc non uso uso l'impostazione "mostrami le lacrime
di
> sangue al posto dei trailing space" come usa(va) fare Marco Beri! ;-)

Veramente lo faccio ancora... :-)

Ciao.
Marco.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] python SQL?

2014-02-16 Per discussione Daniele Tricoli
Ciao Carlos,

On Sunday 16 February 2014 08:51:36 Carlos Catucci wrote:
> il poter svilupppare in locale, per dire, su
> Sqlite e poi andare in produzione con Postgres, cosa che mi facilita di
> molto le cose

... e ti fa attendere il deploy sullo staging server per scoprire eventuali 
problemi legati all'uso di un database diverso da quello di produzione! :-)



-- 
 Daniele Tricoli 'Eriol'
 http://mornie.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Daniele Tricoli
Ciao Piergiuliano,

On Friday 14 February 2014 16:47:35 Piergiuliano Bossi wrote:
> Mi sto spaccando le corna su una cosa che immagino essere stupida e banale
> e mi fara' sentire piccolo e misero di fronte all'universo.

No dai, può capitare a tutti! Il bello di liste come questa è appunto poter 
discutere con altri che hanno la stessa tua passione anche su cose 
apparentemente incomprensibili come questa! :)

[CUT output of $ python setup.py bdist]
> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file
> 
> Inoltre, se uno prova a installare il sorgente (attualmente pubblicato) con
> pip install ottiene lo stesso errore.

Premesso che non ho indagato a fondo anche perché in genere cerco di evitare 
setuptools, quindi non ti so dire perché MANIFEST.in diventi ANIFEST.in però 
ho notato una cosa.

Nel tuo setup.py scrivi:

[...]
packages=['simpyple'],
[...]

Cioè stai dicendo che esisterà simpyple/__init__.py, ma il layout del tuo 
progetto è diverso in quanto il tuo package è nella stessa directory di 
setup.py, per cui al posto di package_dir={'simpyple': ''}, in effetti 
dovresti dare package_dir={'simpyple': '.'},

Infatti con (non ti mando una PR, ma ti incollo qui la diff):

eriol@mornie:~/tmp/simpyple$ git diff
diff --git a/setup.py b/setup.py
index aa31bb7..9faddff 100644
--- a/setup.py
+++ b/setup.py
@@ -45,7 +45,7 @@ setup(
 author_email='',
 url='https://github.com/thinkingbox/simpyple',
 license='',
-package_dir={'simpyple': ''},
+package_dir={'simpyple': '.'},
 packages=['simpyple'],
 include_package_data=True,
 zip_safe=False,

eriol@mornie:~/tmp/simpyple$ python setup.py bdist
running bdist
running bdist_dumb
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
creating build/lib.linux-x86_64-2.7/simpyple
copying ./schedule.py -> build/lib.linux-x86_64-2.7/simpyple
copying ./__init__.py -> build/lib.linux-x86_64-2.7/simpyple
running egg_info
creating simpyple.egg-info
writing requirements to simpyple.egg-info/requires.txt
writing simpyple.egg-info/PKG-INFO
writing top-level names to simpyple.egg-info/top_level.txt
writing dependency_links to simpyple.egg-info/dependency_links.txt
writing manifest file 'simpyple.egg-info/SOURCES.txt'
reading manifest file 'simpyple.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'simpyple.egg-info/SOURCES.txt'
installing to build/bdist.linux-x86_64/dumb
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/dumb
creating build/bdist.linux-x86_64/dumb/usr
creating build/bdist.linux-x86_64/dumb/usr/local
creating build/bdist.linux-x86_64/dumb/usr/local/lib
creating build/bdist.linux-x86_64/dumb/usr/local/lib/python2.7
creating build/bdist.linux-x86_64/dumb/usr/local/lib/python2.7/dist-packages
creating build/bdist.linux-x86_64/dumb/usr/local/lib/python2.7/dist-
packages/simpyple
copying build/lib.linux-x86_64-2.7/simpyple/schedule.py -> build/bdist.linux-
x86_64/dumb/usr/local/lib/python2.7/dist-packages/simpyple
copying build/lib.linux-x86_64-2.7/simpyple/__init__.py -> build/bdist.linux-
x86_64/dumb/usr/local/lib/python2.7/dist-packages/simpyple
byte-compiling build/bdist.linux-x86_64/dumb/usr/local/lib/python2.7/dist-
packages/simpyple/schedule.py to schedule.pyc
byte-compiling build/bdist.linux-x86_64/dumb/usr/local/lib/python2.7/dist-
packages/simpyple/__init__.py to __init__.pyc
running install_egg_info
Copying simpyple.egg-info to build/bdist.linux-
x86_64/dumb/usr/local/lib/python2.7/dist-packages/simpyple-0.1.2.egg-info
running install_scripts
creating /home/eriol/tmp/simpyple/dist
Creating tar archive
removing 'build/bdist.linux-x86_64/dumb' (and everything under it)

(Scusa il wordwrap, ma il log penso renda l'idea).

Trovi informazioni dettagliate sulla cosa qui:
http://docs.python.org/2/distutils/setupscript.html

Forse ti conviene utilizzare un layout più convenzionale sia per evitare 
sorprese del genere, ma anche per seguire il POLA, in effetti pure non ho 
notato a colpo d'occhio che il package si trovava allo stesso livello di 
setup.py.
È vero, avere il repository col path del package

simpyple/simpyple/__init__.py
...
setup.py

può non sembrare il massimo, ed anche a me ogni tanto viene da pensarci, ma 
poi mi dico che non vale la pena complicarsi la vita.

Ah, magari vuoi impostare il tuo editor in modo che rimuova i trailing space: 
ci sono un paio di righe nel setup.py che contengono solo uno spazio... per 
fortuna nel mio vimrc non uso uso l'impostazione "mostrami le lacrime di 
sangue al posto dei trailing space" come usa(va) fare Marco Beri! ;-)

HTH,

-- 
 Daniele Tricoli 'Eriol'
 http://mornie.org
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Django pycharm e virtualenv

2014-02-16 Per discussione Diego Barrera

On 15/02/2014 18:03, Gollum1 wrote:


Ciao lista,

Ho finito di leggere il libro di Marco su Django, ora comincia  il 
momento della rilettura e della sperimentazione effettiva.


La prima cosa che sto sperimentando è virtualenv.

E dopo diversi tentativi sono riuscito a creare il mio ambiente 
virtuale con Python 3 come base. Con pip ho installato django 
all'ultima versione (mentre in Debian stable c'è una versione più 
vecchia). Se non ho capito male, viene copiato l'eseguibile 
dell'installazione che ho sulla macchina, ma i packages (a parte 
quelli che installo esplicitamente) sono quelli del sistema linkati, 
oppure vengono copiati anche loro? Cosa avviene quando sul sistema 
viene aggiornato Python? Presumo che l'eseguibile nell'ambiente 
virtuale rimanga lo stesso, e anche i packages se non sono linkati, 
quindi non dovrebbero esserci problemi... È comunque possibile 
aggiornare anche la versione di Python virtualizzata?


Virtualenv, e ti consiglio anche virtualenvwrapper, dovrebbe gestire 
tutto in questo modo:
quando richiami un'applicazione, questa viene cercata prima dentro il 
tuo env; se non viene trovata, viene cercata nel sistema "host". Questo 
ti permette di avere un ambiente di lavoro quasi indipendente.

Indispensabile

$ pip freeze > requirements.txt

che ti fa l'elenco dei pacchetti installati nel tuo env e 
successivamente di creare un nuovo env (magari su un'altra macchina) con 
il comando


$ pip install -r requirements.txt

Di virtualenvwrapper hanno parlato qualche tempo fa in questa lista.

Ho notato che pycharm mi permette di gestire nel progetto anche l'uso 
di questi ambienti virtualizzati, ma la versione community, pur 
vedendo il package di django, non mi permette di creare un progetto 
esplicitamente django. Qualcuno di voi ha provato ad usare la versione 
community per gestire comunque un progetto django (creato quindi a 
priori da linea di comando)?


Io sto usando la versione community.. quello che faccio e' configurare 
l'interprete giusto: nel mio caso e' quello dentro un virtualenv, poi 
lui si becca tutte le librerie ed i pacchetti installati. Per i comandi 
django, vai di shell; i template li gestisce abbastanza bene; javascript 
no.. comunque non ci ho perso tanto tempo.


Ciao


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Carlos Catucci
2014-02-14 22:47 GMT+01:00 Piergiuliano Bossi :

> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file


A naso pero' 

error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

ANIFEST? Non e' che manca una M all'inizio da qualche parte?

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] setup bdist ==> error: can't copy 'ANIFEST.in': doesn't exist or not a regular file

2014-02-16 Per discussione Carlos Catucci
2014-02-14 22:47 GMT+01:00 Piergiuliano Bossi :

> Cosa sto sbagliando? Professione? Meglio dedicarmi alle pizze?


Guarda se kl amettiamo sul guadagnare di piu' ti dico che io da tempo sogno
di mettermi a fare il piadinaro, pero' sai com'e', come dice il detto:

"Si e' vero, sono un informatico, ma e' sempre meglio che lavorare". ;)
Mi spiace solo di non essere in grado di aiutarti per la cosa, pero'. La
cosa inteso come la libreria, non le pizze.

Carlos
-- 
Je suis marxiste, de tendance Groucho.
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python