Archive pour le ‘Développement’ catégorie

Hack : python setup.py uninstall

7 septembre 2010

Si vous programmez avec python, et voulez distribuer votre jolie petite application toute fraîche, vous avez dut faire un fichier setup.py utilisant la bibliothèque distutils ou encore setuptools, qui permet l’installation de votre application grâce à :

1
python setup.py install

(En utilisant sudo si nécessaire.)

Mais si vous tapez python setup.py uninstall vous aurez cette erreur :

1
2
3
4
5
6
7
8
# python setup.py uninstall
--prefix=/usr/local
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
or: setup.py --help [cmd1 cmd2 ...]
or: setup.py --help-commands
or: setup.py cmd --help

error: invalid command 'uninstall'

» En lire plus:Hack : python setup.py uninstall

TextMate + Cucumber : Formater vos features pour plus de clarté

1 septembre 2010

Si vous utilisez des features en Gherkin[en] (avec cucumber par exemple) pour faire du Behavior Driven Development, voici une petite macro écrite par mon collègue Greg (avec qui je bosse en pair)  qui va corriger les espaces manquants qui permettent à TextMate de découper votre fichier en sections rétractables !

» En lire plus:TextMate + Cucumber : Formater vos features pour plus de clarté

Launchpad PPA : Publier une application ou bibliothèque

28 août 2010

Finalement, j’ai enfin pris le taureau par les cornes et étudié comment créer un dépôt PPA que Launchpad.net (créé par Canonical, la société à l’origine d’Ubuntu) met à disposition de ses membres.

Ça va me permettre de distribuer mes applications telles que TuXtremSplit très simplement, grâce à l’utilisation d’apt, et de add-apt-repository !

» En lire plus:Launchpad PPA : Publier une application ou bibliothèque

Développer en agile

27 août 2010

Ce mois-ci au boulot, il y a eu quelques petits changements dans les méthodes de travail : L’intégration de plus de méthodes Agiles.

» En lire plus:Développer en agile

Svn Stash: Contribuer à un projet en lecture seule

18 août 2010

Je viens d’être confronté au problème suivant:

  • Je désire contribuer à un projet qui utilise un dépôt subversion en lecture seule.
  • Mes modifications ne se font pas en 1 journée.
  • Je ne doit pas perdre mes modifications.
  • Je doit avoir le tout dernier code au fur et à mesure.

Comment faire sans pouvoir faire de commit ?

» En lire plus:Svn Stash: Contribuer à un projet en lecture seule

TuXtremSplit v3: Premier apercu

11 août 2010

Voici un premier aperçu de la fenêtre dite d’action, qui affiche ce qui se passe.

» En lire plus:TuXtremSplit v3: Premier apercu

TuXtremSplit v3 est en route !

10 août 2010

Vous devez vous dire « Encore une nouvelle version alors que la 2.x n’est pas fini ?? » :)

En effet, j’ai commencé la fin de semaine dernière la ré-écriture de TuXtremSplit[sur Launchpad], mon clone d’Xtremsplit !

» En lire plus:TuXtremSplit v3 est en route !

Git + Rails: Détecter des nouvelles migrations (Mise à jours)

6 août 2010

Suite à mon précédent poste où je présente un script bash qui permet de détecté les nouveaux fichiers de migration rails apparut après un git pull par exemple, je vous présente une mise à jours corrigeant le petit bug qui créait un fichier avec comme nom le nombre de migration détecté.

Je vous invite donc à remplacer le script par sa nouvelle version que vous trouverez ici: http://svn.zedroot.org/Guillaume%27s%20bundle.tmbundle/scripts/git_check_rails_migration.sh

PlayOnLinux: Black & White 2

5 août 2010

Peut-être avez vous remarqué ma page Scripts PlayOnLinux où je publie mes contribution au projet PlayOnLinux qui pour rappelle est un outils qui permet la gestion de multiple environnement Wine[Wikipedia]. Ce qui permet de configurer une instance de Wine spécifiquement pour tel application/jeu.

» En lire plus:PlayOnLinux: Black & White 2

Yml2Sql: Convertir une fixture yml en fichier sql

29 avril 2010

Je devais utiliser une fixture au format YAML[Wikipedia] (.yml) pour peupler ma db PostgreSql[Wikipedia] mais apparemment c’est pas trop faisable directement avec rake ou autres.

Google ne me satisfaisant pas .. j’ai écrit un script ruby[Wikipedia] (à l’arrache !) qui convertis un fichier YML en SQL qui puisse être utilisé par psql pour importer les données.

Le voici :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/env ruby
require "yaml"

def show_usage
    puts "Usage: #{$0} YML-FILE-PATH [DESTINATION]"
    puts
end

def isNumeric(s)
    begin
        Float(s)
    rescue
        false # not numeric
    else
        true # numeric
    end
end

unless ARGV.size == 2
    show_usage
else
    begin
        output = File.open(ARGV.last, 'w')
        YAML::load(IO.read(ARGV.first)).each do |yml_line|
            table_name = yml_line[0].sub(/\d+/, "").chop
            sql_query = "INSERT INTO #{table_name} "
            sql_query_columns_name = "("
            sql_query_columns_value = "("
           
            yml_line[1].each_with_index do |table_column, index|
                if index > 0
                    sql_query_columns_name += ", "
                    sql_query_columns_value += ", "
                end
               
                sql_query_columns_name += table_column[0]
               
                sql_query_columns_value += "'" unless isNumeric(table_column[1])
                sql_query_columns_value += table_column[1].gsub(/.*'.*/, "''") if table_column[1] != ""
                sql_query_columns_value += "'
" unless isNumeric(table_column[1])
            end
            sql_query_columns_name += "
)"
            sql_query_columns_value += "
)"
           
            output.write sql_query + sql_query_columns_name + "
VALUES " + sql_query_columns_value + ";\n"
        end
    rescue SystemCallError
        puts "
IO failed: " + $!
    else
        puts "
Unknow error"
    end
end