Brak wyjątku przy błędach Django compilemessages [v1.4]

Zauważyłem, że compilemessages nie rzuca wyjątków przy błędach msgfmt. Jest to typowe wyciszenie błędu przez brak sprawdzania returncode. To praktyka naruszająca Zen of Python, tj. regułę "Errors should never pass silently".

Przed zgłoszeniem ticketa warto sprawdzić, czy ktoś już tego nie raportował. Okazuje się, że zgłoszenie już jest od dwóch miesięcy, ale uwaga! Jest już poprawka zamieniającą os.system() na subprocess.Popen()!

W przeciwieństwie do ticketów otwartych od wielu lat to na prawdę szybka reakcja. Jestem mile zaskoczony!

https://code.djangoproject.com/ticket/19584

Czytaj więcej : komentarze (0) : Marzec 6, 2013

jQuery Tools DateInput - nie używać, grozi utratą zdrowia

Ostatnio walczę z jQuery Tools DateInput, i to dosłownie. Początkowo sprawia dobre wrażenie, ale jest to kawał skopanego i źle prowadzonego softu:

Straciłem cały dzień na łataniu i dorabianiu brakujących funkcji (to jest dosyć proste, jeśli wiemy co należy zrobić), ale co trochę wychodzą nowe błędy.

Zatem jeśli planujesz użyć kalendarza w sposób bardziej zaawansowany niż tylko podpięcie go pod input, to stanowczo odradzam ten pakiet.

Czytaj więcej : komentarze (0) : Lut. 20, 2013

Django NoDB Test Runner - czyli czuję zapach świeżej mogiły

A tak se wstawiłem, a co...

Developerzy Django swego czasu nie potrafili wyobrazić sobie, że może istnieć w naszym niemałym programistycznym świecie potrzeba odpalania testów bez bazy (baz) danych. Minęły trzy lata i zaserwowali nam w końcu (1.2) możliwość zdefiniowania własnego test runnera w prosty sposób (class based).

Prymitywny test runner bez bazy danych:

class NoDbTestRunner(DjangoTestSuiteRunner):
  """ A test runner to test without database creation """

  def setup_databases(self, **kwargs):
    """ Override the database creation defined in parent class """
    pass

  def teardown_databases(self, old_config, **kwargs):
    """ Override the database teardown defined in parent class """
    pass

który podpina się w settings równie trywialnie:

TEST_RUNNER = 'testrunner.NoDbTestRunner'

Pal sześć, że potrzebuję suite do testów z bazą równocześnie z suite bez niej, i żeby to osiągnąć będę musiał się jeszcze sporo napocić dorabiając najlepiej wykrywanie potrzeby użycia testowych baz. Najgorsze jednak w tym wszystkim jest to, że połączenia testowe tworzone są przez defaultowy test runner, który właśnie wywaliliśmy w kosmos. Jeśli myślicie, że brak jego odpalenia będzie skutkował brakiem zdefiniowanych połączeń i wyjątkami, to jesteście w błędzie. Oryginalny test runner ZAMIENIA parametry definicji ISTNIEJĄCYCH połączeń.

Skutkiem tego jest uruchamianie testów na ustawieniach defaultowych. A czy wiecie co robi Django przy wczytwaniu fixturek do testów? Flush DB. Dziękuję Ci, Django. Mam nadzieję, że teraz nie odpalicie NoDbTests na swoich serwerach live.

Fatalny ORM i, jak się okazuje, fatalne rozwiązanie frameworka testowego w Django zaczynają przekonywać mnie do skierowania się w stronę innego produktu, szczególnie gdy realizuje się systemy większe niż "przeciętny blogasek".

Czytaj więcej : komentarze (0) : Lut. 13, 2013

Torque 3D - Game development na linuksie

GarageGames uwolniło źródła Torque3D na licencji MIT (https://github.com/GarageGames/Torque3D)

Bardzo szybko powstał fork silnika dla linuksa, ale GG chcą przenieść całe środowisko developerskie.

W tym celu uruchomiono projekt na zasadach crowdfoundingu (finansowanie przez społeczność) - http://www.indiegogo.com/torque3d-for-linux.

Jest to ogromna szansa na powstanie profesjonalnego narzędzia na platformy linuksowe. Wszystko w naszych rękach.

IndieGoGo - Torque 3D from GarageGames on Vimeo.

Czytaj więcej : komentarze (0) : Gru. 23, 2012

Zmarł John Hunter, twórca matplotlib

John Hunter, twórca bezpłatnej i wyśmienitej biblioteki matplotlib, zmarł na raka 28 sierpnia 2012r w wieku 44 lat. Przez wiele lat aktywnie wspierał społeczność związaną z Pythonem.

Utworzono fundusz, z którego środki będą przeznaczone na pomoc jego rodzinie, głównie na edukację jego dzieci. Każdy, kto docenia jego pracę i chciałby mu podziękować za jego wkład w naszą społeczność, może wpłacić dowolną sumę za pośrednictwem PayPal: http://numfocus.org/johnhunter/

Czytaj więcej : komentarze (0) : Wrz. 10, 2012