<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.phobos-net.fr/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.phobos-net.fr/feed.php">
        <title>wikinotes</title>
        <description></description>
        <link>https://wiki.phobos-net.fr/</link>
        <image rdf:resource="https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-05-06T16:33:42+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/module_et_paquetage?rev=1730644855&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/ecrire_un_module_en_go?rev=1691316809&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_chaines_de_caracteres?rev=1701508391&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/introduction?rev=1740669954&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/javascript/core/fondamentaux?rev=1728818667&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/tuples?rev=1701542132&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/gcc?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_migrate?rev=1757509654&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_dictionnaire?rev=1701511791&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/start?rev=1695128712&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/templates?rev=1775801399&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/serveur-audio?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/demarrer_en_go?rev=1690984059&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/listes?rev=1701270506&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pip?rev=1638106066&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/gerer-zone-index?rev=1732028219&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-bibliotheques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_formulaires_wtforms?rev=1775989580&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/parametres?rev=1693165821&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/manipulation-de-fichiers?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/routage?rev=1775809342&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/branches?rev=1694795728&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/debogage?rev=1751211477&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/debogage_des_scripts?rev=1688464707&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/structures_de_controle?rev=1687522079&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/structures_de_controle?rev=1753634674&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/toolchains/esp-wroom-32?rev=1617552076&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/activer-contraintes-fk-sqlite-avec-flask-sqlachemy?rev=1756631453&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/signer_son_travail?rev=1637674280&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/types_numeriques?rev=1701508457&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/depot-distant?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/tag?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/environnements_virtuels?rev=1753090988&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/deplacer_pointeur_head?rev=1643144497&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/installation?rev=1697973858&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/authentification-utilisateur-via-flask-login?rev=1756406298&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/pointeurs?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/configuration?rev=1755692957&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/difference?rev=1617012799&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/workflow?rev=1695300487&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/ecrire_un_module_powershell?rev=1693139123&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/fonction_et_module?rev=1692702838&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/installation_jupyter_via_docker?rev=1630235390&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/agencement-widgets?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/shields/encodeur-rotatif?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/joystick?rev=1659271663&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/git_log_gestion_historique?rev=1695119856&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/crosstool?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/eldk?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/caracteres-et-encodage?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/snmp?rev=1641573614&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/unites_et_conversions?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/micropython?rev=1617526396&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arm/distribution-linux-minimale?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/install-debian?rev=1776249503&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/projet-minimal?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/esp32/utiliser_convertisseur_analogique_numerique?rev=1618764547&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/deplacer_les_fichier_caches?rev=1696704515&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/alias?rev=1761642728&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/documentation_du_code?rev=1672788575&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/executer_commande_systeme?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/logging?rev=1729000987&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/py-yamal?rev=1639521971&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/type-dictionnaire?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/rust/installer_rust?rev=1726834538&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/traitements_sur_chaines_de_caracteres?rev=1687290560&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_sqlalchemy?rev=1756406120&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/debogage?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/linux-from-scratch?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tests_unitaires_via_pytest?rev=1753628163&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/install?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/generation-des-logs?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/debogage?rev=1669211307&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/integration_aide?rev=1693178005&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/table_de_hachage?rev=1693052703&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/manipulation-du-temps?rev=1671980764&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/maths-fonction-polynome?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/installer?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/installer_interpreteurs?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_ensemble?rev=1701334991&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/definir_commande_cli?rev=1775393751&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tutoriel/webstore?rev=1733180890&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/frameworks/flask/integrer-documentation-sphinx-dans-application-flask?rev=1759660420&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/redirection_stdin_stdout_stderr?rev=1674134635&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/web/chameleon?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/redirections?rev=1775538587&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/installer-android-studio?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/profilage-code?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/make/start?rev=1679579719&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/syntaxes-if?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/charger_donnees_depuis_fichier?rev=1688052416&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/tableaux?rev=1687346188&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/bonnes-pratiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/ide-arduino/buildchain-esp32?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/creer-projet?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flash_firmware_esp_at_idf?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flasher_firmware_espressif?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/exceptions?rev=1729182573&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/architecture_projet_flask?rev=1775376548&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pytest/tester_une_sortie_console?rev=1700333331&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/buildroot?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/tests-unitaires/cunit/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/widgets/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/preprocesseur?rev=1618743790&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/pyflakes?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/esp/esp8266/connexion-a-un-reseau-wifi?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/encodage_base64?rev=1685373477&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/recuperer_adresse_mac?rev=1638102458&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/aide_manuel?rev=1667302803&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/arguments_et_options_de_script?rev=1676049820&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_colonne_en_ligne?rev=1622208888&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/indirection?rev=1619377414&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/generer-archive?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/installer_go_et_visual_studio_code_sur_windows?rev=1690904748&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/installer_go_sur_gnu_linux?rev=1718218855&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/alias?rev=1686328714&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/elevation_des_privileges?rev=1688136754&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/gestion_des_modules?rev=1692799581&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/annotations?rev=1672674892&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/generer-binaire-autonome?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-arguments?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/operateur-etoile?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/operation-modulo?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/suivi_de_projets_python_avec_git?rev=1639660143&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/venv_script_activate_absent?rev=1728923557&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/tests-unitaires/boost?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/deplacer-modif-vers-nouvelle-branche?rev=1695204147&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/lister-branches-fusionnees?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/reorganiser_historique_avec_rebase?rev=1643151418&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/communication_serie_via_minicom?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/esptools/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/exemples/getstr?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/exemples/ncurses-attron?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/modifier_temp_utilisateur?rev=1686703169&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/convention_nommage_variables?rev=1753097887&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/execution_programme_python_depuis_environnement_virtuel?rev=1753103016&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_booleen?rev=1701422851&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/version_interpreteur?rev=1698680373&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/demarrer_application?rev=1753608365&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/unittest/start?rev=1658346668&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/fichiers-statiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_maintenance?rev=1758366183&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_one-to-many?rev=1754217789&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/checkout?rev=1635947212&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/qemu?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_definition_variable?rev=1674053185&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_bytes?rev=1685365314&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/creer_type_exception?rev=1672234857&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/tester_existance_fichier?rev=1729167885&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bonnes-pratiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/yaml?rev=1640083372&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/envoyer-par-udp?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/nouveau-projet-eclipse?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/bashdb?rev=1669201343&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/changer-base?rev=1638009353&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/generer_nombre_aleatoire?rev=1619346491&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/usage_guillemets?rev=1669242629&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/annuler-modifs-non-commit?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/depot-nu?rev=1695109338&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/modifier-commit?rev=1643150858&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/html/favicon?rev=1731151907&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/outils/gdb?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/argument_whatif?rev=1693141715&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/lecture_entrees_utilisateur?rev=1688056302&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/classes?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/connexion-mysql?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/environnement_virtuel_avec_git?rev=1753090397&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/generer_des_qr_codes?rev=1698945918&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/import?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/mqtt?rev=1671580474&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy?rev=1733182283&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/anatomie-projet?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/temperature-ds18b20?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/ide-arduino/start?rev=1634934718&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno/configurer-entrees-sorties?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/templates?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/annuler-dernier-commit?rev=1635764331&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/modifier_dernier_commit?rev=1693069607&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/cannot-re-assign-auto-global?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/troubleshooting/definir-charset-connexion-mysql?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/litteraux?rev=1685365314&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/tables_de_hash?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/types?rev=1729257449&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/variables_environnement?rev=1753023789&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/modifier_fichier_docx?rev=1728943531&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_gestion_des_configurations?rev=1753535392&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/telechargement_de_fichier?rev=1730838981&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/start?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy/installation?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/regex/exemples/minuscules_sans_carateres_speciaux?rev=1711214867&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/notes?rev=1775392258&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_agregation?rev=1753198299&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask-sqlalchemy/afficher-les-requetes?rev=1756406120&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/installation_police_jetbrains?rev=1639508956&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/configurer-eclipse?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/interruptions?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/installer_godoc?rev=1718210081&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/utilisation-de-git?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/temperature-lm35?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/exemples/passage-a-niveau?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_mode_execution_interactif?rev=1674119325&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_permissions_via_stat?rev=1674031048&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/programmation-multitache?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/demande_identifiants_depuis_interpreteur?rev=1688134677&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/identifier_processus_consommateur_cpu?rev=1685712419&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/transmettre_objets_python_au_javascript?rev=1732198017&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/reutiliser-des-variables-du-fichier-conf?rev=1759652835&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/expression-rationnelle?rev=1728748968&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/mesurer_consommation_energetique_app?rev=1659793638&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/i2c-attiny85?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/icsp-et-bootloader?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/port-serie?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno-programmateur-isp?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/afficher_les_separateurs_arguments?rev=1699788743&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/classes_de_caracteres?rev=1652523512&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_saut_de_ligne_en_espace?rev=1619374216&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/rechercher-chaine-dans-plusieurs-fichiers?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-case?rev=1676626932&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-if?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/principaux-usages-gcc?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/git/afficher_details_commit?rev=1695236176&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/go/installer_vim-go?rev=1692014710&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/fenetres?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/ncurses/menus?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/parametre_courant_verbose?rev=1693482195&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/calculer-distance-via-coordonnees?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/callable?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/entetes_de_scripts?rev=1701194606&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/generation-graphiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/generer-nombres-aleatoire?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/ipython?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/occupation_memoire?rev=1626425932&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/rust/visualiser_arborescence_modules?rev=1725179948&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/sfml/sprites?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/web/balise_-audio?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/web/entites_html?rev=1718267624&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/erreur-mise-a-jour?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/capteur_angle_wcmcu-103?rev=1626116929&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/shield-memoire/montage?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno/entrees-analogiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/entrees-analogiques?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/presentation?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/routage?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flasher_firmware_nodemcu?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/deprecated-constructor?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-mb_strtolower?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/warning_strtotime?rev=1636914222&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/calculer_temps_execution?rev=1687300773&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/ecrire_dan_un_fichier?rev=1687956737&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/classe_abstraite?rev=1775554309&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/echappement_accolades_f-strings?rev=1670977171&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/mots_cles?rev=1753633859&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/sequences?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/core/serialisation_json?rev=1732206470&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/conversion_unite_temperature?rev=1658824450&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/charger_fichier_csv?rev=1619185181&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/internationalisation?rev=1672680602&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/exemples/serveur-udp?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/lua/opentx/exmples/hello-world?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_composition?rev=1754250594&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/programmation-evenementielle?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/test-unitaire?rev=1757327491&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/android/definition-des-onclicklisteners?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/arduino/communications-sans-fil?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/bash/recommandations?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/js/zoom-et-deplacement-map-svg?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/rust/edi_rust?rev=1726907609&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/sql/delete?rev=1730828853&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/web/ajax?rev=1740498614&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/css/framework/bulma?rev=1755709111&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/css/framework/liste?rev=1755708515&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/pwm?rev=1618901949&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-dl?rev=1612216289&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/lister_fichiers?rev=1728925602&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/recherche_interactive?rev=1754902306&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico">
        <title>wikinotes</title>
        <link>https://wiki.phobos-net.fr/</link>
        <url>https://wiki.phobos-net.fr/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/module_et_paquetage?rev=1730644855&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-03T14:40:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:module_et_paquetage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/module_et_paquetage?rev=1730644855&amp;do=diff</link>
        <description>dev python module package

:TODO_DOCUPDATE:

Python : module et package

Généralités à propos des modules Python

Il y a 3 types de modules que l&#039;on peut d&#039;intégrer à son code :

	*  Un module écrit en Python ;
	*  Un module écrit en C et chargé dynamiquement comme le module</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/ecrire_un_module_en_go?rev=1691316809&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-06T10:13:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:tutoriels:ecrire_un_module_en_go</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/ecrire_un_module_en_go?rev=1691316809&amp;do=diff</link>
        <description>dev module tutoriel go

Écrire un module en Go

Ce tutoriel propose de créer deux modules:

	*  Le premier sera une bibliothèque prévue pour être importée par d&#039;autres bibliothèques ou applications ;
	*  Le second est une application appelante utilisant le premier.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_chaines_de_caracteres?rev=1701508391&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-02T09:13:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:type_chaines_de_caracteres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/type_chaines_de_caracteres?rev=1701508391&amp;do=diff</link>
        <description>dev python caracteres

:TODO_DOCUPDATE:

Python: Les chaînes de caractères

En python caractère et chaîne de caractères sont des objets de type str. Les chaînes de caractères sont des objets immuables: une fois crées elles ne peuvent plus être modifiées. Les méthodes permettant d&#039;altérer les chaînes retournent donc un nouvel objet str.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/introduction?rev=1740669954&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-27T15:25:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:introduction</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/introduction?rev=1740669954&amp;do=diff</link>
        <description>dev python sphinx documentation

Sphinx : Générer de la documentation

Sphinx est un programme dédié à la génération de tout type de documentation associée à un projet:

	*  La documentation de référence du code (documentation des modules, classes et APIs);
	*  les tutoriaux (documentation à objectifs pédagogiques);</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/start?rev=1612216289&amp;do=diff</link>
        <description>dev python

Python: introduction

Quelques notes à propos des spécificités du langage Python basées sur mes écueils.

Python a été conçu avec l&#039;objectif d&#039;être lisible, compréhensible faciitant son accès et les échanges de codes. Les choix de conceptions ont été guidés par pragmatisme et non par dogmatisme.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/javascript/core/fondamentaux?rev=1728818667&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-13T11:24:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:javascript:core:fondamentaux</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/javascript/core/fondamentaux?rev=1728818667&amp;do=diff</link>
        <description>dev javascript js code

:TODO_DOCUPDATE:

Javascript : Fondamentaux

Javascript a été conçu pour rendre les pages web dynamiques. Il s&#039;intègre et permet d&#039;interagir avec les documents HTML et le CSS.

Un script peut être introduit dans n&#039;importe quelle partie du document</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/tuples?rev=1701542132&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-02T18:35:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:tuples</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/tuples?rev=1701542132&amp;do=diff</link>
        <description>dev python

Python: le type tuple

le tuple (traduit couple ou n-uplets) est un type builtin très proche de la liste mais immuable: c&#039;est une séquence, on peut donc y appliquer les opérations telles que:

	*  Accéder aux éléments avec l’opérateur d&#039;indexation</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/gcc?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:outils:gcc</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/gcc?rev=1612216289&amp;do=diff</link>
        <description>dev c compilation gcc

GCC

Initialement appelé Gnu C Compiler, il a été renommé Gnu Compiler Collection puisqu&#039;il permet de compiler divers langages tels que:

	*  C/C++
	*  Objective C
	*  Ada
	*  Java
	*  VHDL
	*  etc

Gnu Compiler Collection est l&#039;outil généraliste de compilation du projet GNU. Il s&#039;articule autour de plusieurs outils:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_migrate?rev=1757509654&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-10T13:07:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:flask_migrate</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_migrate?rev=1757509654&amp;do=diff</link>
        <description>dev python flask extension db migrate migration

Flask : Gérer les migrations avec l&#039;extension Flask-Migrate

Présentation

Flask-Migrate s&#039;appuie sur Alembic pour gérer les migrations de la base de données gérée par l&#039;ORM (SQLAlchemy). Ainsi le modèle de données définit dans l&#039;application Flask peut être amendé/corrigé, c&#039;est l&#039;extension Flask-Migrate qui se chargera de créer les script de migrations capables de modifier le schéma de la base de données préexistante pour que le nouveau modèle de…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_dictionnaire?rev=1701511791&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-02T10:09:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:type_dictionnaire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/type_dictionnaire?rev=1701511791&amp;do=diff</link>
        <description>dev cours python dictionnaire

Python: le type dictionnaire

Les dictionnaires sont des tables de hash, la principale caractéristique de cette structure de données est que les opérations (telles que l&#039;insertion ou le test d&#039;appartenance) sont indépendantes du nombre d&#039; éléments.

	*  Les dictionnaires sont des objets mutables, ils peuvent être modifiés en place.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/start?rev=1695128712&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-19T13:05:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/start?rev=1695128712&amp;do=diff</link>
        <description>git dev

Git

Git est un outil de suivi de version ou gestionnaire de révisions. Contrairement à certains outils centralisés du même type comme svn, Git est distribué, ce  qui le rend très réactif, plus didactique car aucun serveur n&#039;est nécessaire pour apprendre à travailler avec Git.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/templates?rev=1775801399&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-10T06:09:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:templates</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/templates?rev=1775801399&amp;do=diff</link>
        <description>dev python flask templates jinja2

Flask : Utilisation des templates

Généralités

Grossièrement, le template est une page web à trous. Il contient des sections invariantes en HTML/javascript directement interprétables par le navigateur web et des sections dynamiques ou non remplies désignées</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/serveur-audio?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:serveur-audio</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/serveur-audio?rev=1612216289&amp;do=diff</link>
        <description>Serveur de son

Utiliser le raspberry en tant que serveur de son grâce au serveur Pulseaudio. Le raspberry sera connecté à la chaine Hifi. Tous les postes du réseau pourront rediriger leurs flux audios sur le serveur pulseaudio du raspberry afin que le son soit joué sur la chaine.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/demarrer_en_go?rev=1690984059&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-02T13:47:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:tutoriels:demarrer_en_go</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/tutoriels/demarrer_en_go?rev=1690984059&amp;do=diff</link>
        <description>dev go tutoriel

Tutoriel : Introduction au langage Go

Ce tutoriel est une introduction rapide au langage Go. On y aborde :

	*  L&#039;installation de Go ;
	*  La création d&#039;un programme simple de type “Hello World” ;
	*  L&#039;utilisation de la commande go pour exécuter le code ;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/listes?rev=1701270506&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-29T15:08:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:listes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/listes?rev=1701270506&amp;do=diff</link>
        <description>dev python liste

Les listes en python

Une liste est un ensemble ordonné d&#039;objets. On parle de structure de données de type séquence car chaque élément est accessible via son index.

La liste peut être vue comme une généralisation des chaînes de caractères : là où la chaîne est une séquence de caractères, la liste peut contenir des valeurs de tous types : n’importe quelle valeur peut être contenue dans une liste.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pip?rev=1638106066&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-28T13:27:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pip</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pip?rev=1638106066&amp;do=diff</link>
        <description>dev python pip

pip

pip est un outil de gestion des bibliothèques externes Python. Il permet:

	*  Installer les bibliothèques et les dépendances.
	*  Mettre à jour/downgrader les versions.
	*  Facilite le déploiement d&#039;une application en générant un listing des bibliothèques utilisées et leurs versions</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/gerer-zone-index?rev=1732028219&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-19T14:56:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:gerer-zone-index</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/gerer-zone-index?rev=1732028219&amp;do=diff</link>
        <description>dev git index commit

Gestion de la zone d&#039;index git

Un commit est un instantané de la zone d&#039;index ou zone d&#039;assemblage (staging area). La zone d&#039;index est hors du répertoire de travail. Seuls les fichiers et dossiers présents dans la zone d&#039;index seront enregistrés en l’état lors du commit.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-bibliotheques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:gestion-des-bibliotheques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-bibliotheques?rev=1612216289&amp;do=diff</link>
        <description>dev python paquetage bibliotheque package library

Gestion des bibliothèques avec pip

Les nombreuses bibliothèques Python sont centralisées et accessibles sur un dépôt en ligne répondant au doux nom de PyPI (Python Package Index). Les opérations de téléchargement, d&#039;installation, de mises à jour ou de suppression des bibliothèques se font via l&#039;outil</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_formulaires_wtforms?rev=1775989580&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-12T10:26:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask_formulaires_wtforms</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_formulaires_wtforms?rev=1775989580&amp;do=diff</link>
        <description>dev python flask web formulaire

:TODO_DOCUPDATE:

Flask : Créer des formulaires via Flask-WTF

WTForms est une bibliothèque Python permettant de gérer des formulaires web via des Classes et objets en POO.

Ici on utilise le paquet Flask-WTF qui intègre la bibliothèque WTForms au micro framework Flask.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/parametres?rev=1693165821&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-27T19:50:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:parametres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/parametres?rev=1693165821&amp;do=diff</link>
        <description>dev powershell

PowerShell : Utiliser des paramètres nommés

Pour plus de flexibilité, les scripts et les fonctions peuvent accepter des paramètres nommés.

On déclare les paramètres nommés en début de script ou de fonction avec le bloc Param():


# Début de script aScript.ps1
Param (
  $FirstParam,
  $SecondParam,
  $ThirdParam
)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/manipulation-de-fichiers?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:manipulation-de-fichiers</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/manipulation-de-fichiers?rev=1612216289&amp;do=diff</link>
        <description>dev python fichier file

Manipulation des fichiers en python

Pour manipuler aisément les fichiers il faut avoir abordé 3 notions:

	*  l&#039;encodage
	*  l&#039;itération
	*  le context manager

Écrire du texte dans un fichier

Pour lire et écrire du texte dans les fichiers, il faut spécifier correctement l&#039;encodage. L&#039;objet fichier est créé avec la fonction built-in open(), il se chargera d&#039;encoder/décoder les caractères en fonction de l&#039;encodage choisit:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/routage?rev=1775809342&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-10T08:22:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:routage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/routage?rev=1775809342&amp;do=diff</link>
        <description>dev python flask routes

Flask : routage

A propos des routes

Définir une URL ayant un sens pour l&#039;utilisateur est préférable en général. Les deux URL ci-dessous peuvent produire le même résultat :

	*  &lt;https://www.example.com/script?action=33257&gt;
	*  &lt;https://www.example.com/create/user&gt;

Dans le second cas, on peut directement comprendre le sens de l&#039;action à la lecture de l&#039;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/branches?rev=1694795728&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-15T16:35:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:branches</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/branches?rev=1694795728&amp;do=diff</link>
        <description>git dev branches todo

Gestion des branches avec git

Le HEAD est le pointeur sur le dernier commit de la branche courante. La commande git branch liste les branches existantes et marque d&#039;une astérisque la branche courante:


# lister les branches
git branch

# Afficher seulement le nom de la branche courante
git branch --show-current

# lister les branches non fusionnées
# avec la branche courante
git branch --no-merged

# lister les branches fusionnées avec
# avec la branche courante
git bran…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/debogage?rev=1751211477&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-06-29T15:37:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:debogage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/debogage?rev=1751211477&amp;do=diff</link>
        <description>dev php

:TODO_DOCUPDATE:

A propos du débogage en PHP

vérifier la syntaxe d&#039;un script depuis la ligne de commande:


php -l mon_script.php


Afficher les fichiers de configuration chargés par la CLI :


# 
php --ini


Afficher les modules actifs :


php -m</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/debogage_des_scripts?rev=1688464707&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-07-04T09:58:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:debogage_des_scripts</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/debogage_des_scripts?rev=1688464707&amp;do=diff</link>
        <description>dev powershell debogage

PowerShell : Débogage des scripts

Généralités

Lorsque des erreurs se produisent, elles sont stockées dans le tableau $Error. Quand une nouvelle erreur est générée, elle est insérée à $Error[0], et l’index des autres erreurs est augmenté d’une unité.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/structures_de_controle?rev=1687522079&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-23T12:07:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:structures_de_controle</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/structures_de_controle?rev=1687522079&amp;do=diff</link>
        <description>dev powershell

PowerShell : Les structures de contrôle

Les boucles

ForEach

La boucle ForEach permet de traiter chaque éléments d&#039;un tableau ou plus généralement d&#039;un objet itérable :


ForEach ($user in $users) {
     Set-ADUser $user -Department &quot;Marketing&quot;
}</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/structures_de_controle?rev=1753634674&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-27T16:44:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:structures_de_controle</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/structures_de_controle?rev=1753634674&amp;do=diff</link>
        <description>dev python

Structures de contrôle

Structures conditionnelles

if


if a_condition:
    # bloc a exécuter lorsque a_condition est vraie
elif other_condition:
    # bloc a exécuter lorsque a condition est fausse
    # et other_condition est vraie
else:
    # bloc a exécuter si les conditions précédentes sont fausses.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/toolchains/esp-wroom-32?rev=1617552076&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-04T16:01:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:riot:toolchains:esp-wroom-32</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/riot/toolchains/esp-wroom-32?rev=1617552076&amp;do=diff</link>
        <description>dev riot riot-os toolchain esp32 iot

RIOT-OS: Installation de la toolchain pour ESP-WROOM-32

Une image docker proposée par défaut intègre un ensemble de toolchains vers diverses cibles. Les notes proposée ci-dessous permettent de recréer une image docker de taille réduite (passant de 8 Go à 2 Go) intégrant les chaines de compilation vers les cibles ESP8266 et ESP32.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/activer-contraintes-fk-sqlite-avec-flask-sqlachemy?rev=1756631453&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-31T09:10:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:activer-contraintes-fk-sqlite-avec-flask-sqlachemy</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/activer-contraintes-fk-sqlite-avec-flask-sqlachemy?rev=1756631453&amp;do=diff</link>
        <description>dev python web flask sqlalchemy flas-sqlachemy

Flask-SQLAlchemy : Forcer la vérification des contraintes sur une base SQLite3

Notes concernant l&#039;activation des contraintes sur clé étrangère (FK) sur les bases de type SQLite3 utilisées en backend via Flask-SQLAlchemy.

Problématique

Une contrainte de type</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/signer_son_travail?rev=1637674280&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-23T13:31:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:signer_son_travail</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/signer_son_travail?rev=1637674280&amp;do=diff</link>
        <description>git dev signature securite gpg gpg2

Git : Signer ses travaux

Confère le wiki  configuration de git pour la mise en place du paramétrage nécessaire à la signature. Pour signer les travaux git utilise gpg ou gpg2.

Pour activer la signature systématique des commits, ici l&#039;option de portée --global permet de le définir pour tous les dépôts de l’utilisateur courant:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/types_numeriques?rev=1701508457&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-02T09:14:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:types_numeriques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/types_numeriques?rev=1701508457&amp;do=diff</link>
        <description>dev python types

Python: Types numériques

Les types numériques en python comprennent:

	*  Nombres entiers type int de précision illimité
	*  Les décimaux type float
	*  Les nombres complexes
	*  Les booléens type bool

Usages simples

Priorités

:TODO_DOCUPDATE:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/depot-distant?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:depot-distant</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/depot-distant?rev=1612216289&amp;do=diff</link>
        <description>git dev depot

Les dépôts distants

Git est un gestionnaire de révision distribué. Il intègre donc des mécanismes de synchronisation entre dépots. Un même projet peut être lié à plusieurs dépôts distants, ce sont d&#039;autre version du même projet disponible sur le réseau/Internet. Collaborer avec d&#039;autre personne consiste à gérer ces dépôts distants.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/tag?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:tag</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/tag?rev=1612216289&amp;do=diff</link>
        <description>git dev tag etiquette

Gestion des étiquettes avec git

Les étiquettes (tags) sont des références supplémentaires. Elles permettent de marquer un état particulier du projet. git propose deux types de tags:

	*  L&#039;étiquette simple
	*  L&#039;étiquette annotée

L’étiquette annotée possède un auteur, une somme de contrôle sur la révision et un message de commit.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/environnements_virtuels?rev=1753090988&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T09:43:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:environnements_virtuels</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/environnements_virtuels?rev=1753090988&amp;do=diff</link>
        <description>dev python virtualenv venv environnement virtuel

Environnements virtuels en Python

Plusieurs solutions existent. Depuis python 3.3 la bibliothèque venv est intégrée, c&#039;est la solution recommandée avec Python3, l&#039;usage de virtualenv est déprécié ou réservé à des besoins spécifiques.

virtualenv</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/deplacer_pointeur_head?rev=1643144497&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-25T21:01:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:cas-pratiques:deplacer_pointeur_head</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/deplacer_pointeur_head?rev=1643144497&amp;do=diff</link>
        <description>dev git supprimer blob commit

Git : Déplacer le pointeur HEAD


Pour déplacer le pointeur HEAD sur un commit identifié par son SHA (pour l&#039;exemple 0cb5c64):


git reset --hard 0cb5c64


Le blob précédemment pointé par le HEAD n&#039;est alors plus référencé mais il est conservé dans le dépôt. Git conserve un moment les données pour permettre à l&#039;utilisateur de rattraper d&#039;éventuelles erreurs de manipulation.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/installation?rev=1697973858&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-22T11:24:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:installation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/installation?rev=1697973858&amp;do=diff</link>
        <description>dev python documentation sphinx

Sphinx : Installation

Sphinx utilise Python et make pour construire la documentation:


sudo apt install build-essential python3 python3-pip python3-venv


Créer et activer l&#039;environnement virtuel du projet et on installe les modules via pip3. Ici en plus du module sphinx on installe le thème</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/authentification-utilisateur-via-flask-login?rev=1756406298&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-28T18:38:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:authentification-utilisateur-via-flask-login</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/authentification-utilisateur-via-flask-login?rev=1756406298&amp;do=diff</link>
        <description>dev python flask authentification

:TODO:

Flask : Gérer l&#039;authentification avec Flask-Login

Charger l&#039;environnement virtuel Python du projet et installer le paquetage Flask-Login :


pip install Flask-Login


Création d&#039;un Blueprint

On va s&#039;appuyer sur le système de Blueprint de Flask afin de pouvoir regrouper les ressources et fonctionnalités liées à l&#039;authentification. De cette manière les templates, routes, modèles, formulaires etc peuvent être regroupés au sein d&#039;un package Python puis fa…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/pointeurs?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:c-cpp:pointeurs</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/c-cpp/pointeurs?rev=1612216289&amp;do=diff</link>
        <description>dev c pointeurs tableaux

pointeurs et tableaux

Un pointeur est une variable dont la taille est adaptée au stockage de l&#039;adresse d&#039;une autre variable. On déclare un pointeur via l&#039;opérateur * suffixé par le type pointé.


// Déclaration d&#039;une variable de type pointeur sur entier ayant le label ptr_int
int* ptr_int;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/configuration?rev=1755692957&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-20T12:29:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:configuration</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/configuration?rev=1755692957&amp;do=diff</link>
        <description>git dev config configuration

Configuration des dépots Git

La commande git config permet de personnaliser/spécifier le comportement par défaut de git

Afficher la configuration

Pour lister la configuration actuellement définie:


git config --list


Portée des définitions</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/difference?rev=1617012799&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-03-29T10:13:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:difference</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/difference?rev=1617012799&amp;do=diff</link>
        <description>dev git

Afficher les différences sous git

La commande git diff permet d&#039;afficher les différences introduites:

	*  entre deux commits,
	*  entre l&#039;espace de travail et un commit
	*  etc.

Utilisée sans argument, la commande compare l&#039;index (zone d&#039;assemblage pour le prochain commit) et le répertoire de travail. Si une divergence apparaît, la sortie de la commande git diff l&#039;affiche:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/workflow?rev=1695300487&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-21T12:48:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:workflow</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/workflow?rev=1695300487&amp;do=diff</link>
        <description>dev git worflow

:TODO_DOCUPDATE:

Workflow avec git

Création du dépôt nu

Créer un dépôt nu sur le serveur, le dossier mon-projet.git conteneur du projet sera créé automatiquement après validation de la commande suivante:


$ git init --bare mon-projet.git</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/ecrire_un_module_powershell?rev=1693139123&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-27T12:25:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:ecrire_un_module_powershell</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/ecrire_un_module_powershell?rev=1693139123&amp;do=diff</link>
        <description>dev powershell module

Powershell : Créer un module

Le fichier Manifest

Le fichier manifeste de module est un fichier de données PowerShell avec l&#039;extension .psd1. Il contient une simple table de hachage. Les paires clé-valeur dans la table de hachage permettent de :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/fonction_et_module?rev=1692702838&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-22T11:13:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:fonction_et_module</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/fonction_et_module?rev=1692702838&amp;do=diff</link>
        <description>dev powershell fonction

PowerShell : Fonctions et modules

Lorsqu&#039;on produit du code on peut avoir envie ou besoin de :

	*  Réutiliser une même séquence d&#039; instructions plusieurs fois dans un script ;
	*  Réutiliser des traitements dans un autre contexte.

Les fonctions</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/installation_jupyter_via_docker?rev=1630235390&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-08-29T11:09:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:jupyter-notebook:installation_jupyter_via_docker</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/installation_jupyter_via_docker?rev=1630235390&amp;do=diff</link>
        <description>software python jupyter jupyterlab notebook install docker todo

Installer Jupyter via Docker

Il existe plusieurs images, la version scipy-notebook inclus des packages populaires de l&#039;écosystème scientifique Python:


docker pull jupyter/scipy-notebook:python-3.9.6
docker run --rm -p 10000:8888 -e JUPYTER_ENABLE_LAB=yes -v &quot;${PWD}&quot;:/home/jovyan/work jupyter/scipy-notebook:python-3.9.6</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/agencement-widgets?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pygtk:agencement-widgets</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/agencement-widgets?rev=1612216289&amp;do=diff</link>
        <description>dev pygtk widget conteneur

Agencer les widgets

Pour organiser les différents composants de l&#039;interface graphique (widgets) PyGTK propose un système de boites (box) qui sont des conteneurs invisibles à l’intérieur desquels on insère les widgets. Il existe deux familles: les conteneurs verticaux et les horizontaux. Dans un conteneur horizontal, les objets insérés sont placés les un à la suite des autres en file indienne. Dans un conteneur vertical, les objets seront disposés verticalement les un…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/shields/encodeur-rotatif?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:shields:encodeur-rotatif</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/shields/encodeur-rotatif?rev=1612216289&amp;do=diff</link>
        <description>electronique shield arduino

Encodeur rotatif Snootlab

Installer la bibliothèque disponible sur le github. L&#039;installation d&#039;une nouvelle bibliothèque dans l&#039;IDE Arduino est détaillée ici

Le fonctionnement correct du shield repose sur l&#039;activation et la gestion des interruptions. Le fichier</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pygtk:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/start?rev=1612216289&amp;do=diff</link>
        <description>du boot, pc rendu a Nathalie Barret. Pas de retour utilisateur. Fermeture ticket.

dev python ihm pygtk

IHM pour python avec PyGTK

Présentation générale de la conception d&#039;une application Python utilisant une IHM GTK

	*  Les classes Python modélisent les données métier et intègrent les traitements.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/joystick?rev=1659271663&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-31T12:47:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:joystick</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/joystick?rev=1659271663&amp;do=diff</link>
        <description>dev arduino joystick usb hid

Arduino: Joystick

Il est possible de modifier le firmware de la puce de communication FTDI présente sur la carte Arduino pour qu&#039;elle soit reconnue comme un périphérique USB HID de type joystick. C&#039;est ce que permet de faire le projet UnoJoy d&#039; Alan Chatham.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/git_log_gestion_historique?rev=1695119856&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-19T10:37:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:git_log_gestion_historique</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/git_log_gestion_historique?rev=1695119856&amp;do=diff</link>
        <description>git log historique

:TODO_DOCUPDATE:

Historique git

Git est un gestionnaire de révision ou CVS, son principal objectif est de conserver l&#039;historique des modifications apportées à un projet. C&#039;est en consultant cet historique qu&#039;on sera en mesure par exemple :

	*  De savoir qui à contribuer à quoi ;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/crosstool?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:outils:crosstool</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/crosstool?rev=1612216289&amp;do=diff</link>
        <description>Crosstool

Crosstool est un outil libre écrit par Dan Kegel et placé sous licence GPLv2. Il regroupe un ensemble de scripts permettant de construire une chaine de compilation croisée. Plus complexe à prendre en main qu&#039;une chaine fournie sous forme de binaire telle que ELDK, crosstool apporte cependant plus de souplesse en s&#039;adaptant aux cibles les plus spécifiques, en permettant au developpeur de choisir les versions du compilateur, des bibliothèques et du noyau avec lesquels la chaine sera con…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/eldk?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:outils:eldk</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/eldk?rev=1612216289&amp;do=diff</link>
        <description>ELDK

Embeded Linux Development Kit est un ensemble de chaines de compilation croisées directement disponibles sous formes de binaires sous licence GPL. Créées par la société DENX Software Engineering, la version actuelle est la v5.3. Ces versions précompilées sont donc facilement installables sur la machine de développement. Cela permet d&#039;éviter l&#039;étape complexe de compilation de la chaine elle-même. Autre point fort ELDK inclus un certain nombre de bibliothèques usuelles précompilées et des im…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/caracteres-et-encodage?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:caracteres-et-encodage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/caracteres-et-encodage?rev=1612216289&amp;do=diff</link>
        <description>dev python charset caracteres encodage encoding

Jeux de caractères et encodage avec python

Le PEP 263 détaille les problématiques liées à l&#039;encodage de caractères en Python et la directive coding.

Encodage par défaut

Il est possible de récupérer l&#039;encodage par défaut utilisé par le système courant via le module</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/snmp?rev=1641573614&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-07T16:40:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:snmp</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/snmp?rev=1641573614&amp;do=diff</link>
        <description>dev python snmp get

Python : Interroger un agent SNMP

PySNMP est un module open-source Python prenant en charge toutes les versions du protocole SNMP et permettant d&#039;agir autant comme manager que comme agent.

Installation

Méthode standard, depuis l&#039;environnement virtuel on utilise pip:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/unites_et_conversions?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:unites_et_conversions</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/unites_et_conversions?rev=1612216289&amp;do=diff</link>
        <description>dev python unit conversion

Python: unités et conversions

Installer le module pint dans l&#039;environnement virtuel ou sur le système:


pip3 install pint


Avant de pouvoir utiliser pint, initialiser:


from pint import UnitRegistry
ureg = UnitRegistry()


Occupation disque

Définir une quantité à partir d&#039;une chaine de caractère:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/micropython?rev=1617526396&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-04T08:53:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:esp:esp32:micropython</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/micropython?rev=1617526396&amp;do=diff</link>
        <description>dev esp32 micropython todo

ESP32: Micropython

MicroPython est une implémentation légère et compacte de l&#039; interpréteur Python 3. Il inclus un petit sous ensemble de la bibliothèque standard Python et est optimisé pour s&#039;exécuter sur microcontrôleur ( tel qu&#039;un ESP32) ou en environnement contraint (en ressources matérielles). Le cœur Micropython utilise 256Ko d&#039;espace en flash et 16 Ko de RAM.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arm/distribution-linux-minimale?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arm:distribution-linux-minimale</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arm/distribution-linux-minimale?rev=1612216289&amp;do=diff</link>
        <description>Construction d&#039;une distribution Linux minimale

Nous cherchons ici a construire une distribution GNU/Linux minimale pour une platerforme ARM9 (Versatile). Ce type de plateforme est bien connue, cela nous permettra de l&#039;émuler facilement.

Une distribution GNU/Linux minimale s&#039;articule autour:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/install-debian?rev=1776249503&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-15T10:38:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:install-debian</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/install-debian?rev=1776249503&amp;do=diff</link>
        <description>raspberry pi raspbian

:ARCHIVE:

Raspbian
RaspbianRaspberry Pi OSRaspberry Pi Imager

Une version de Debian compilée pour le Raspberry Pi est disponible sur le site officiel. L&#039;image peut être téléchargée à cette adresse: &lt;http://www.raspberrypi.org/downloads&gt;

L&#039;installation se fait simplement par copie de l&#039;image du système sur la carte SD.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/projet-minimal?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:tutoriaux:projet-minimal</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/projet-minimal?rev=1612216289&amp;do=diff</link>
        <description>dev pyramid framework web tutos

Application Pyramid minimale

La plupart des développements modernes en Python s&#039;appuient sur les paquetages. Ce tutoriel reprend le script hello_world.py et l’intègre dans un  paquetage python au sein d&#039;un projet minimal Pyramid.

A propos des packages le wiki</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/esp32/utiliser_convertisseur_analogique_numerique?rev=1618764547&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-18T16:49:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:riot:esp32:utiliser_convertisseur_analogique_numerique</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/riot/esp32/utiliser_convertisseur_analogique_numerique?rev=1618764547&amp;do=diff</link>
        <description>riot esp esp32 can adc

Utiliser le pilote ADC de RIOt avec l&#039;ESP32

RIOT propose une abstraction simple pour utiliser les convertisseurs analogiques numériques (CAN ou ADC) intégrés dans la plupart des MCU: le pilote ADC (periph/adc). Cette interface de périphérique est construite autour du concept de lignes (ADC LINES).</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/deplacer_les_fichier_caches?rev=1696704515&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-07T18:48:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:deplacer_les_fichier_caches</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/deplacer_les_fichier_caches?rev=1696704515&amp;do=diff</link>
        <description>dev bash shell move deplacer

Déplacer les fichiers cachés avec mv

Lors de la phase de globbing, l’interpréteur remplace les métacaractères tels que * par les noms de fichiers. Par défaut ce développement n&#039;inclus pas les fichiers cachés :


# Le dossier courant contient 3 fichiers
# dont 1 est caché
tree -a .
.
├── fileA.txt
├── fileB.txt
└── .hidden_file.txt

0 directories, 3 files

# Afficher les valeurs après développement de &#039;*&#039;
echo *
fileA.txt fileB.txt</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/alias?rev=1761642728&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-28T09:12:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:alias</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/alias?rev=1761642728&amp;do=diff</link>
        <description>git dev alias

Les alias sous git

Les alias permettent de définir de nouvelles commandes git à partir de commandes existantes accompagnées des options souhaitées ou en appelant des commandes externes à git.

Créer un alias

Dans l&#039;exemple ci-dessous on définit un alias en modifiant la configuration globale via l&#039;argument</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/documentation_du_code?rev=1672788575&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-03T23:29:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:documentation_du_code</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/documentation_du_code?rev=1672788575&amp;do=diff</link>
        <description>dev python code documentation

:TODO_DOCUPDATE:

Python : Génération de la documentation

La documentation embarquée dans le code (les docstrings) peut être extraite et mise en forme par le module pydoc.

Les conventions d&#039;écriture des docstring sont abordées dans la PEP 257.

Les annotations de types (type hinting) participent également à la lisibilité et la documentation du code.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/executer_commande_systeme?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:executer_commande_systeme</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/executer_commande_systeme?rev=1612216289&amp;do=diff</link>
        <description>dev python command sysadmin

Python: Invoquer une commande

Pour invoquer une commande depuis un script, si les valeurs retournées sur stdout et stderr n&#039;ont pas d&#039;importance, le plus simple:


from os import system as run_command

# La commande a exécuter
cmd=r&#039;whereis snmpget&#039;

# res sauvegarde la valeur de retour de la commande 
res = run_command(cmd)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/logging?rev=1729000987&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-15T14:03:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:logging</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/logging?rev=1729000987&amp;do=diff</link>
        <description>Les logs en Python

La bibliothèque standard python intègre un module simple et flexible pour générer ses logs. 

Lorsqu&#039;on utilise directement les fonctions au niveau du module, on utilise en fait le logger par défaut root qui est configuré pour écrire sur la sortie erreur standard.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/py-yamal?rev=1639521971&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-14T22:46:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:py-yamal</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/py-yamal?rev=1639521971&amp;do=diff</link>
        <description>dev python yaml

pyYAML

La bibliothèque pyYAML permet d&#039;utiliser le formalise YAML dans les applications Python.

Installation

pip3


# Crééer/activer l&#039;environnement virtuel
source &quot;./env/bin/activate&quot;

# Installer le module via pip
pip3 install pyyaml


tarball</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/type-dictionnaire?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:type-dictionnaire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/type-dictionnaire?rev=1612216289&amp;do=diff</link>
        <description>python dictionnaire

Traitements sur dictionnaire

Définir une variable de type dictionnaire:


dico_vide= {}
mon_dico = {&#039;prenom&#039;: &#039;yoann&#039;, &#039;age&#039;: 32, }


Ajout/suppression de clés

Pour supprimer le couple (clé,valeur):


del mon_dico[&#039;cle&#039;]


Pour ajouter une nouvelle clé à un dictionnaire existant:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/rust/installer_rust?rev=1726834538&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-20T12:15:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:rust:installer_rust</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/rust/installer_rust?rev=1726834538&amp;do=diff</link>
        <description>dev rust installation

Installer Rust

Installation sous Debian like

Rust s&#039;installe en espace utilisateur, la solution recommandée consiste à exécuter le script disponible en ligne.

Pour une machine sous GNU/Linux :


curl --proto &#039;=https&#039; --tlsv1.2 -sSf https://sh.rustup.rs | sh</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/traitements_sur_chaines_de_caracteres?rev=1687290560&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-20T19:49:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:exemples:traitements_sur_chaines_de_caracteres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/traitements_sur_chaines_de_caracteres?rev=1687290560&amp;do=diff</link>
        <description>dev powershell string

:TODO:

PowerShell : Traitement sur chaînes de caractères

Une chaine de caractère à une longueur :


$aStr = &quot;Ma chaine.&quot;
$aStr.Length
10



# Enregistre la saisie de l&#039;utilisateur convertie en minuscules
 $userFirstName = [System.String] (Read-Host -Prompt &quot;Saisissez votre prénom&quot;).ToLower()</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_sqlalchemy?rev=1756406120&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-28T18:35:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask_sqlalchemy</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_sqlalchemy?rev=1756406120&amp;do=diff</link>
        <description>dev python orm flask sqlachemy

:TODO_DOCUPDATE:

L&#039;extension Flask-SQLAlchemy

A propos de SQLAlchemy

SQLAlchemy est un ORM (Object-Relational Mapping) il permet de traduire les objets Python en données pouvant être enregistrées dans un SGBD externe. 

Installation

Pour pouvoir utiliser l&#039;extension, installer le module</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/debogage?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:debogage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/debogage?rev=1612216289&amp;do=diff</link>
        <description>dev python debug debogage

Outils de débogage avec python

Outils d&#039;analyse statique

Analysent le script/module et détectent les anomalies

	*  pylint
	*  pychecker
	*  pyflakes
	*  pep8
	*  flake8
	*  mypy: outil standard d&#039;analyse statique du typage

pyflakes

pyflakes est un outil simple capable de détecter les erreurs de syntaxe, les fautes de frappe notamment dans les noms de variables, les imports manquants ou inutilisés. Il peut être intégré à l&#039;EDI notamment à Vim :)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/linux-from-scratch?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:linux-from-scratch</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/linux-from-scratch?rev=1612216289&amp;do=diff</link>
        <description>LFS (Linux From Scratch) pour Raspberry Pi

On cherche à générer un système GNU/Linux complet pour une Raspberry Pi à partir des fichiers sources seulement. Les bénéfices sont multiples:

	*  Comprendre les étapes de la compilation.
	*  Mieux connaitre l&#039;architecture des systèmes GNU/Linux.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tests_unitaires_via_pytest?rev=1753628163&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-27T14:56:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:tests_unitaires_via_pytest</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/tests_unitaires_via_pytest?rev=1753628163&amp;do=diff</link>
        <description>dev python test pytest

:TODO_DOCUPDATE:

Flask : tests unitaires avec pytest

Flask s&#039;appuie sur le framework pytest pour créer et exécuter les tests.

Nomenclature

Par défaut les tests sont regroupés dans le dossier ./tests du projet. Les tests sont des fonctions dont le nom commence par</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/install?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:jupyter-notebook:install</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/install?rev=1612216289&amp;do=diff</link>
        <description>dev python jupyter notebook

Jupyter Notebook

Un notebook est un environnement web interactif proposant un mélange de texte et de code pouvant être évalué en direct par un moteur ou interpréteur (Julia, Python, R etc).

Installation

Création d&#039;un environnement virtuel:


python -m venv jupyter-notebook</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/generation-des-logs?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:generation-des-logs</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/generation-des-logs?rev=1612216289&amp;do=diff</link>
        <description>dev android log logcat

Générer des logs

Sous Android Studio, logcat permet de visualiser les logs générés par le système ou les applications. Pour générer des messages depuis l&#039;application quelques étapes sont nécessaires:

Configuration

Sur les émulateurs cette fonction est active par défaut, par contre sur un périphérique physique, pour que le débogage puisse être utilisé, il faut qu&#039;il soit activé:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/debogage?rev=1669211307&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T13:48:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:debogage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/debogage?rev=1669211307&amp;do=diff</link>
        <description>dev shell bash debug

Débogage de scripts shell

Avant toute exécution, on peut vouloir valider la syntaxe d&#039;un fichier de script. Pour cela on peut invoquer un shell avec l&#039;option -n (noexec) et le scrit à vérifier en paramètre:


bash -n monscript.sh


Le shell Bash peut être invoqué avec l&#039;option</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/integration_aide?rev=1693178005&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-27T23:13:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:integration_aide</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/integration_aide?rev=1693178005&amp;do=diff</link>
        <description>dev powershell aide

PowerShell : Intégrer l&#039;aide au code

La cmdlet Get-Help peut extraire les commentaires présents dans les scripts (module et les fonctions) et générer / mettre en forme l&#039;aide. La documentation officielle désigne cela par aide basée sur les commentaires</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/table_de_hachage?rev=1693052703&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-26T12:25:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:table_de_hachage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/table_de_hachage?rev=1693052703&amp;do=diff</link>
        <description>dev powershell

PowerShell : table de hachage

La table de hachage est proche du tableau à l&#039;usage : elle permet de stocker un ensemble d&#039;éléments. Cependant au lieu d&#039;accéder aux éléments par un index, on utilise une clé : une chaîne de caractère unique associée à la valeur.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/manipulation-du-temps?rev=1671980764&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-25T15:06:04+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:manipulation-du-temps</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/manipulation-du-temps?rev=1671980764&amp;do=diff</link>
        <description>dev python temps date

Manipulation du temps en python

Plusieurs modules permettent de manipuler le temps en Python:

	*  datetime
	*  time
	*  calendar

Module time


import time
help(time)


Le temps est représenté via le tuple time_struct:


now = time.gmtime()
type(now)
  time.struct_time
print(now)
  time.struct_time(tm_year=2018, tm_mon=5, tm_mday=1, tm_hour=9, tm_min=10, tm_sec=35, tm_wday=1, tm_yday=121, tm_isdst=0)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/maths-fonction-polynome?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:maths-fonction-polynome</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/maths-fonction-polynome?rev=1612216289&amp;do=diff</link>
        <description>Maths avec python

Représenter et résoudre une fonction polynôme du second degré avec python. Ici nous allons représenter et résoudre la fonction polynome de second degré f(x) = 2x2 +5x +3 

Installer les modules


$ sudo apt-get install python-numpy ipython</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/installer?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:installer</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/installer?rev=1612216289&amp;do=diff</link>
        <description>dev framework python pyramid install

Installation de Pyramid

Pour pouvoir fonctionner Pyramid a besoin de plusieurs outils répandus dans les environnements de développement Python: Python, venv, pip, setuptool.


$ sudo apt-get install python-virtualenv python-pip python-setuptools</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/installer_interpreteurs?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:installer_interpreteurs</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/installer_interpreteurs?rev=1612216289&amp;do=diff</link>
        <description>dev python

Python: Installer différents interpréteurs

Depuis la version 3.3 de Python le module venv permet de construire un environnement virtuel. Cependant chaque version de l&#039;interpreteur construit 

L&#039; interpréteur de la distribution

Le gestionnaire de paquets de la distribution permet d&#039;installer un interpréteur près-compilé. Il est possible d&#039;afficher le détail des options de configuration utilisées lors de la compilation depuis l&#039;interpréteur:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_ensemble?rev=1701334991&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-30T09:03:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:type_ensemble</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/type_ensemble?rev=1701334991&amp;do=diff</link>
        <description>dev python set ensemble

Python: les ensembles ou sets

Les sets ou ensembles sont très proches des dictionnaires. Ils sont mutables mais à la différence des dictionnaires les sets ne stockent que des clés mais pas de valeurs.
Le set a été créé et optimisé pour des opérations spécifiques.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/definir_commande_cli?rev=1775393751&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T12:55:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:definir_commande_cli</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/definir_commande_cli?rev=1775393751&amp;do=diff</link>
        <description>dev python flask cli commande

Flask : Définir une commande CLI

Le framework Flask s&#039;appuie sur le paquetage Python Click pour la gestion de la ligne de commande.

On utilise les décorateurs pour déclarer une commande. Ci-dessous un exemple simple de commande sans argument :


from flask import Flask

app = Flask(__name__)

@app.cli.command(&quot;version&quot;)
def version():
  &quot;&quot;&quot;Show application version.&quot;&quot;&quot; 
  print(&quot;0.0.1&quot;)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/tutoriel/webstore?rev=1733180890&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-02T23:08:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:tutoriel:webstore</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/tutoriel/webstore?rev=1733180890&amp;do=diff</link>
        <description>dev python flask sqlalchemy tutoriel

Exemple d&#039;Application web avec Flask et le module flask_sqlalchemy

On crée une petite application web “webstore” qui stocke des articles dans différents magasins

Initialisation du projet, création d&#039;un dépôt et d&#039;un environnement virtuel


cd ~/dev
git init webstore

cd ~/dev/webstore
python3 -m venv .venv</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/frameworks/flask/integrer-documentation-sphinx-dans-application-flask?rev=1759660420&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-05T10:33:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:frameworks:flask:integrer-documentation-sphinx-dans-application-flask</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/frameworks/flask/integrer-documentation-sphinx-dans-application-flask?rev=1759660420&amp;do=diff</link>
        <description>dev python framework sphinx flask documentation

Intégrer une documentation générée par Sphinx à l&#039;application Flask

:TODO:

Sphinx permet de générer de la documentation dans différents formats. Ici on souhaite produire de la documentation au format HTML et la servir via l&#039;application Flask.

Pour que Flask soit en mesure de servir les fichiers, on configurera Sphinx pour qu&#039;il génère les fichiers de documentation dans un sous-répertoire du dossier</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/redirection_stdin_stdout_stderr?rev=1674134635&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-19T13:23:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:redirection_stdin_stdout_stderr</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/redirection_stdin_stdout_stderr?rev=1674134635&amp;do=diff</link>
        <description>dev bash code redirection

Bash : redirection des entrées/sorties

Pour un shell interactif l&#039;entrée standard (stdin), la sortie standard (stdout) et la sortie erreur standard (stderr) sont toutes les trois associées au terminal de l&#039;utilisateur.

Cela peut être visualisé en listant le contenu de</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/web/chameleon?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:web:chameleon</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/web/chameleon?rev=1612216289&amp;do=diff</link>
        <description>web python template chameleon pyramid

Moteur de template Chameleon

Chameleon est un moteur de template Python. Il permet de générer des documents textes formatés par des balises(XML/HTML) à partir de modèles (les templates). Chameleon accepte en entrée des documents XML/HTML bien formés (le modèle ou template) et via un système d&#039;attributs (les déclarations ou statements) il génère un fichier texte XML qui n&#039;est pas nécessairement bien formé.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/redirections?rev=1775538587&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-07T05:09:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:exemples:redirections</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/redirections?rev=1775538587&amp;do=diff</link>
        <description>dev python flask redirection

Flask : redirections

Le framework Flask propose la fonction redirect(). Pour les redirections internes, on l&#039;utilise conjointement à la fonction url_for() :


from flask import Flask, redirect, url_for

app = Flask(__name__)

@app.route(&#039;/&#039;)
def home():
    return &#039;Welcome to Home Page&#039;

# Redirection externe
@app.route(&#039;/goto/sponsor/example_dot_com&#039;)
def external_redirect():
    return redirect(&#039;https://www.example.com&#039;)

# Redirection interne
@app.route(&#039;/test-p…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/installer-android-studio?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:installer-android-studio</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/installer-android-studio?rev=1612216289&amp;do=diff</link>
        <description>dev android ide

Installer Android Studio

prérequis

Les prérequis sont listés pour chaque sur la page de téléchargement de l&#039;IDE &lt;https://developer.android.com/studio/?utm_source=android-studio&gt; dans la section “System requirements”. Dans le cas de GNU/Linux, pour la version 3.4 d&#039;android Studio:

	*  GNOME or KDE desktop (Tested on Ubuntu® 14.04 LTS, Trusty Tahr (64-bit distribution capable of running 32-bit applications)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/profilage-code?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:c-cpp:profilage-code</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/c-cpp/profilage-code?rev=1612216289&amp;do=diff</link>
        <description>dev c cpp profilage

Profilage du code avec grpof

Des programmes sont dédiés à l&#039;optimisation du code on parle de profilage du code.

Dans quels cas optimiser?

	*  Si le programme est instable
	*  Si le programme apparaît comme trop lent
	*  pour la beauté du geste, la compréhension, la curiosité</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/make/start?rev=1679579719&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-03-23T13:55:19+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:make:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/make/start?rev=1679579719&amp;do=diff</link>
        <description>dev c make makefile compilation

make

make est un programme permettant d&#039;automatiser les différentes étapes de compilation permettant d&#039;aboutir à la création de fichiers binaires exécutables.

Installation

Via le gestionnaire de paquets:


sudo apt-get install make


Makefile</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:ncurses:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/start?rev=1612216289&amp;do=diff</link>
        <description>dev c ncurses

ncurses

ncurses pour new curses et curses pour cursor optimization. C&#039;est une bibliothèque de fonctions C permettant une gestion avancée des entrées/sorties sur un terminal en ligne de commandes (CLI). ncurses se charge de détecter les capacités du terminal et envoi les caractères de contrôles adaptés.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/syntaxes-if?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:syntaxes-if</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/syntaxes-if?rev=1612216289&amp;do=diff</link>
        <description>dev php syntaxe

Syntaxes if

Au sein d&#039;un script PHP la syntaxe standard:


if(expression_conditionnelle)
{
   instructions;
}
elseif(condition)
{
   instructions;
}
else
{
   instructions;
}



La notation condensée


expression_conditionnelle ? instructionSiVrai : instructionSiFaux;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/charger_donnees_depuis_fichier?rev=1688052416&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-29T15:26:56+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:charger_donnees_depuis_fichier</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/charger_donnees_depuis_fichier?rev=1688052416&amp;do=diff</link>
        <description>dev powershell

PowerShell : Charger ou importer des données

Les données exportées dans des fichiers textes au format brut, CSV ou JSON peuvent être relues et chargées en mémoire dans des objets accessibles par les scripts PowerShell.

La cmdlet Get-Content permet de relire un fichier texte et d&#039;obtenir un tableau. Chaque élément du tableau correspond à une ligne du fichier.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/tableaux?rev=1687346188&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-21T11:16:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:tableaux</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/tableaux?rev=1687346188&amp;do=diff</link>
        <description>dev powershell tableau array

PowerShell : Les tableaux

Les tableaux (Array) sont des variables permettant de stocker des valeurs de même type.

Créer une variable tableau


# Le type tableau est déterminé lors de l&#039;affectation
# Les éléments sont séparés par la virgule
$computers = &quot;NODE-ADC1&quot;,&quot;NODE-2F03&quot;,&quot;NODE-AA4E&quot;
$numbers = 33,806,10

# Un tableau a le type &#039;&#039;System.Array&#039;&#039; cette information
# est retournée par la méthode GetType()
# Créer un tableau d&#039;un seul élément en spécifiant le type…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/bonnes-pratiques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:bonnes-pratiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/bonnes-pratiques?rev=1612216289&amp;do=diff</link>
        <description>Bonnes pratiques

Duck typing

La l&#039;oie du canard: If it looks like a duck and quacks like a duck, it must be a duck.

Dans la majorité des cas il importe peu que l&#039;objet soit une instance d&#039;un type particulier, on cherche à savoir s&#039;il a le bon comportement. On privilégiera donc l&#039;emploie de</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/ide-arduino/buildchain-esp32?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:ide-arduino:buildchain-esp32</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/ide-arduino/buildchain-esp32?rev=1612216289&amp;do=diff</link>
        <description>dev esp esp32 buildchain

Installer la buildchain pour ESP32 dans l&#039;IDE Arduino

Ivan Grokhotkov, le contributeur qui a permis le succès du module ESP8286 sous l&#039; IDE Arduino a rejoint Espressif le constructeur de ESP32. Le constructeur propose ainsi un module pour ESP32 sous l&#039;IDE Arduino.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/creer-projet?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:creer-projet</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/creer-projet?rev=1612216289&amp;do=diff</link>
        <description>dev python framework pyramid

Création d&#039;un projet avec Pyramid

Environnement

Sur le système hote, installer python et

	*  Créer l&#039;environnement virtuel python.
	*  Installer le framework Pyramid dans l&#039;environnement virtuel

Création d&#039;un projet PyraTest utilisant la structure (staffold) starter:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flash_firmware_esp_at_idf?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:esp8266:flash_firmware_esp_at_idf</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flash_firmware_esp_at_idf?rev=1612216289&amp;do=diff</link>
        <description>dev iot esp8266 flash firmware at

ESP8266: flasher le firmware AT

Récupérer le firmware:


wget http://download.espressif.com/esp_at/firmware/ESP8266/ESP8266-IDF-AT_V2.1.0.0.zip
unzip ESP8266-IDF-AT_V2.1.0.0.zip



Modifier le fichier download.config, remplacer les retours à la ligne par des espaces.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flasher_firmware_espressif?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:esp8266:flasher_firmware_espressif</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flasher_firmware_espressif?rev=1612216289&amp;do=diff</link>
        <description>dev esp8266 devkit flash firmware

DevKit ESP8266: Flasher firmware Espressif

Les firmwares pré-compilés par Espressif sont disponibles sur la page du constructeur:

	*  &lt;https://www.espressif.com/en/products/socs/esp8266ex/resources&gt;

	*  Télécharger et décompresser la version souhaitée. Ici on récupère ESP8266 NonOS AT Bin V1.7.4.
	*  Brancher la carte (Devkit) sur un port USB, et relever le nom du port dans les journaux système:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/exceptions?rev=1729182573&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-17T16:29:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:exceptions</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/exceptions?rev=1729182573&amp;do=diff</link>
        <description>dev python exceptions

Python: les exceptions

	*  Une exception n&#039;est pas une fatalité, c&#039;est un mécanisme de communication d&#039;erreur tout à fait normal dans un programme et on est capable de la capturer et d&#039;y réagir.
	*  Les exceptions fournissent de l&#039;information sur l&#039;erreur qui se produit, c&#039;est donc un mécanisme de notification d&#039;erreur très utile.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/architecture_projet_flask?rev=1775376548&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T08:09:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:architecture_projet_flask</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/architecture_projet_flask?rev=1775376548&amp;do=diff</link>
        <description>dev python flask web api

Flask

:TODO_DOCUPDATE:

Flask n&#039;impose aucune arborescence, selon les besoins on peut opter pour une application monolithique ou modulaire.

Application monolithique

Pour les petit projets, les tests ou les tutoriaux, on utilise généralement un simple module Python qui se charge d&#039; instancier directement l&#039;objet Flask. Cette approche monolithique permet de coder rapidement une preuve de concept (PoC), un prototype par exemple.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pytest/tester_une_sortie_console?rev=1700333331&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-18T18:48:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pytest:tester_une_sortie_console</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pytest/tester_une_sortie_console?rev=1700333331&amp;do=diff</link>
        <description>dev python test-unitaire console cli

Python : Tester une sortie sur la console avec Pytest

On souhaite écrire un test unitaire pour vérifier la sortie produite sur le terminal par la méthode Writer.hello_user(). La classe est définie dans le fichier parts.py


myapp/
├── __init__.py
└── models
    ├── __init__.py
    └── parts.py</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/buildroot?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:raspberry:cross-toolchain:buildroot</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/raspberry/cross-toolchain/buildroot?rev=1612216289&amp;do=diff</link>
        <description>Buildroot

Buildroot facilite la compilation d&#039;un système GNU/Linux embarqué complet. C&#039;est un ensemble de Makefiles et de patchs.

Principales caractéristiques:

	*  Il peut contrôler toutes les étapes de construction du système embarqué: chaine de compilation croisée, fichier système racine, chargeur et images noyaux.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/tests-unitaires/cunit/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:c-cpp:tests-unitaires:cunit:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/c-cpp/tests-unitaires/cunit/start?rev=1612216289&amp;do=diff</link>
        <description>dev c tests-unitaires

CUnit

CUnit est un framework de tests unitaires pour les programmes en C. Étapes générales:

	*  Définir les fonctions de test en s’appuyant sur les fonctions et les structures de la bibliothèque CUnit.
	*  Initialiser le catalogue (registry)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/widgets/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pygtk:widgets:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pygtk/widgets/start?rev=1612216289&amp;do=diff</link>
        <description>pygtk widget

Widgets

Présentation sommaire de widgets usuels.

Button

Il existe plusieurs types de boutons. Un bouton basique a un simple label définit lors de l&#039;instanciation ou via l&#039;appel de la méthode set_label(). 


bouton1= gtk.Button(&quot;Valider&quot;)
box.pack_end(bouton1, expand=False)
bouton1.show()</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/preprocesseur?rev=1618743790&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-18T11:03:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:c-cpp:preprocesseur</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/c-cpp/preprocesseur?rev=1618743790&amp;do=diff</link>
        <description>dev c cpp todo

Le préprocesseur

Le préprocesseur (de texte) est un programme s’exécutant avant la compilation. Il parcours le fichier source à la recherche de directives de précompilation (introduites par le caractères &#039;#&#039;) qu&#039;il traite et remplace.

Directive include</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/pyflakes?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:pyflakes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/pyflakes?rev=1612216289&amp;do=diff</link>
        <description>pyflakes

Installation


$ pip install --upgrade pyflakes


Utilisation

Pour vérifier le code, il suffit d&#039;invoquer pyflakes avec en argument le script a vérifier. Il retourne sur la sortie standard les anomalies détectées:


$ pyflakes ./mon-script.py</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/esp/esp8266/connexion-a-un-reseau-wifi?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:esp:esp8266:connexion-a-un-reseau-wifi</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/esp/esp8266/connexion-a-un-reseau-wifi?rev=1612216289&amp;do=diff</link>
        <description>dev esp8266 todo

Connexion au réseau wifi

Dans l&#039;exemple ci dessous, l&#039;ESP se connecte au réseau et écrit sur le port série


#include &lt;ESP8266WiFi.h&gt;


void setup()
{
  //Initialisation du port série
  Serial.begin(115200);
  Serial.println();

  //Connexion de l&#039;ESP au réseau 
  WiFi.begin(&quot;SSID&quot;, &quot;MonMotDePasse&quot;);

  Serial.print(&quot;Connecting&quot;);
  while (WiFi.status() != WL_CONNECTED)
  {
    delay(500);
    Serial.print(&quot;.&quot;);
  }
  Serial.println();

  //la fonction printDiag permet d&#039;obten…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/encodage_base64?rev=1685373477&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-29T15:17:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:encodage_base64</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/encodage_base64?rev=1685373477&amp;do=diff</link>
        <description>dev python code extrait snippet base64

Python : encodage base64

Utiliser l&#039;encodage en base64 avec Python



import base64                                                          

# Décoder produit une séquence d&#039;octets à partir d&#039;une chaine
&gt;&gt;&gt; a = base64.b64decode(&#039;3q2+7w==&#039;)                                       
&gt;&gt;&gt; type(a)                                                                
bytes

&gt;&gt;&gt; len(a)                                                                 
4

# Afficher les v…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/recuperer_adresse_mac?rev=1638102458&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-28T12:27:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:recuperer_adresse_mac</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/recuperer_adresse_mac?rev=1638102458&amp;do=diff</link>
        <description>dev python3 mac

Python3 : Récupérer l&#039;adresse MAC

Plusieurs exemples de codes permettant de récupérer l&#039;adresse MAC ou adresse matériel de l’hôte.

Module getmac

On installe le module au sein d&#039;un environnement virtuel:


# creation de l&#039; environnement virtuel
python3 -m venv py_mac_test

# charger l&#039;environnement virtuel
cd py_mac_test
source bin/activate

# mise à jour de pip
python3 -m pip install --upgrade pip

# installation du module getmac
pip3 install get-mac</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/aide_manuel?rev=1667302803&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-01T11:40:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:aide_manuel</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/aide_manuel?rev=1667302803&amp;do=diff</link>
        <description>dev bash aide manuel man todo

:TODO_DOCUPDATE:

Aide et manuel depuis le bash

La commande apropos permet de rechercher un terme dans l&#039;ensemble des sections du manuel (équivaut à man -k).


apt-get install man-db manpages


Les pages du manuel sont installées sous /usr/share/man</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/arguments_et_options_de_script?rev=1676049820&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-02-10T17:23:40+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:arguments_et_options_de_script</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/arguments_et_options_de_script?rev=1676049820&amp;do=diff</link>
        <description>dev bash script option argument

Gestion des options et arguments dans les scripts Bash

Les arguments transmis au script bash courant sont accessibles via les variables $1 à $n. La variable $@ désigne l&#039;ensemble des arguments.

getopts et getopt sont deux moyens similaires mais non identiques pour gérer de façon avancée les options et les arguments passés aux scripts.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_colonne_en_ligne?rev=1622208888&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-05-28T13:34:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:convertir_colonne_en_ligne</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_colonne_en_ligne?rev=1622208888&amp;do=diff</link>
        <description>dev bash convertion column colonne row

Bash: convertir une colonne en ligne

On cherche à reformater des données présentées d&#039;une colonne vers une ligne.

echo

La commande echo lorsqu&#039;elle reçoit en argument une chaîne de caractères contenant des LF ne les interprète pas, elle peut donc être utilisée pour convertir des données présentées en colonne:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/indirection?rev=1619377414&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-25T19:03:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:indirection</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/indirection?rev=1619377414&amp;do=diff</link>
        <description>dev bash shell

Bash: Accès par indirection

L&#039;accès à une valeur par indirection est possible en shell. Pour cela il faut procéder à deux substitutions de variable l’une après l’autre. Le détail de la substitution de variable est abordé dans le wiki etapes_de_substitution . Pour relancer une phase de substitution on utilisera la commande</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/generer-archive?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:generer-archive</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/generer-archive?rev=1612216289&amp;do=diff</link>
        <description>dev git archive zip tgz

Générer une archive avec Git

Git est en mesure de générer des archives dans différents formats. Pour lister les formats disponibles:


$ git archive --list


Ceci permet de distribuer simplement le projet dans une révision particulière, par exemple celle marquée du tag</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/installer_go_et_visual_studio_code_sur_windows?rev=1690904748&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-01T15:45:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:installer_go_et_visual_studio_code_sur_windows</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/installer_go_et_visual_studio_code_sur_windows?rev=1690904748&amp;do=diff</link>
        <description>dev go vscode

Go : Démarrer avec l&#039;EDI Visual Studio Code

L&#039;instalalation du langage Go se fait sans difficulté sous Microsoft Windows via les installateurs de type MSI. Différents binaires d&#039;installation pour Go sont disponibles à l&#039;adresse &lt;https://go.dev/dl/&gt;

Une fois l&#039;installation du langage de programmation Go terminée, ouvrir une console et vérifier la version :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/installer_go_sur_gnu_linux?rev=1718218855&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-12T19:00:55+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:installer_go_sur_gnu_linux</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/installer_go_sur_gnu_linux?rev=1718218855&amp;do=diff</link>
        <description>dev go install

Installer GO sur une distribution GNU/Linux

Les distributions peuvent intégrer GO a leur système de paquetage. On s’intéresse ici à l&#039;installation via l&#039;archive disponible sur le site officiel du langage Go.
/usr/local/go


# On récupère l&#039;archive 
cd /tmp
wget &quot;https://go.dev/dl/go1.20.6.linux-amd64.tar.gz&quot;

# On décompresse l&#039;archive dans /usr/local
sudo tar -C /usr/local/ -xvf go1.20.6.linux-amd64.tar.gz

# On modifier le PATH pour y inclure les binaires de /usr/local/go/bin
…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/alias?rev=1686328714&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-09T16:38:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:alias</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/alias?rev=1686328714&amp;do=diff</link>
        <description>dev powershell alias

Powershell : Alias


Lister les alias


Get-Alias


Pour déterminer quel applet est appelé par l&#039;alias “gwmi”


Get-Alias -Name gwmi

# equivalent
Get-Alias gwmi


Pour connaître le ou les alias définis sur l&#039; applet “Get-WmiObject” :


Get-Alias -Definition Get-WmiObject

# L&#039; affichage de la documentation détaillée liste également les alias
Help -Detailed Get-WmiObject</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/elevation_des_privileges?rev=1688136754&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-30T14:52:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:elevation_des_privileges</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/elevation_des_privileges?rev=1688136754&amp;do=diff</link>
        <description>dev sysadmin powershell

PowerShell : Elévation des privilèges

L&#039;option “Exécuter en tant qu&#039;administrateur” positionnée au lancement de l’interpréteur ou du script PowerShell permet d&#039;élever les privilèges sur l&#039;ensemble du processus : toutes les commandes s’exécutent alors avec un niveau de privilèges élevé.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/gestion_des_modules?rev=1692799581&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-23T14:06:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:gestion_des_modules</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/gestion_des_modules?rev=1692799581&amp;do=diff</link>
        <description>dev powershell module

Powershell : Gestion des modules

Lister les modules

Pour Lister les modules actifs / disponibles dans le shell courant :


Get-Module


Importer un module

Pour charger/importer un module dans le shell courant : 


Import-Module .\My.Module.Name.psd1</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/annotations?rev=1672674892&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-02T15:54:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:annotations</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/annotations?rev=1672674892&amp;do=diff</link>
        <description>dev python

Python: Annotations de type

Les annotations de type (type hinting) fournissent des méta-informations sur le type d&#039;un paramètre dans la définition d&#039;une fonction ou d&#039;une méthode en Python.

	*  L&#039;annotation est optionnelle
	*  L&#039;annotation doit être une expression Python valide. Elle est évaluée une seule fois au chargement du module, le résultat est accessible via l&#039;attribut</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/generer-binaire-autonome?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:generer-binaire-autonome</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/generer-binaire-autonome?rev=1612216289&amp;do=diff</link>
        <description>dev python standalone

Générer un binaire autonome

Il existe  plusieurs outils permettant de générer un fichier exécutable indépendant à partir d&#039;un script python. L&#039;outil recommandé car simple et cross-plateforme est pyinstaller. Les principaux outils cités:

	*</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-arguments?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:gestion-des-arguments</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/gestion-des-arguments?rev=1612216289&amp;do=diff</link>
        <description>dev python argument option

Python: Gestion des arguments d&#039;appel de script

Le module argparse fait partit de la bibliothèque standard python. Il contient tout ce qu&#039;il faut pour gérer les arguments passés au script via la ligne de commande. Il remplace l&#039;ancien module optparse</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/operateur-etoile?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:operateur-etoile</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/operateur-etoile?rev=1612216289&amp;do=diff</link>
        <description>dev python splat etoile

Opérateur étoile avec Python

Unpacking des paramètres effectifs

Lorsque l&#039;opérateur est placé devant un argument effectif sur un appel de fonction, chaque valeur de la variable est passé à un paramètre différent de la fonction. Il doit y avoir correspondance entre le nombre d&#039;éléments de la variables et le nombre de paramètres de la fonction:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/operation-modulo?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:operation-modulo</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/operation-modulo?rev=1612216289&amp;do=diff</link>
        <description>dev python modulo

Python: opération modulo

L&#039;opération modulo est une opération binaire qui associe à deux entiers naturels le reste de la division euclidienne du premier par le second.

a,b E N et b &lt;&gt; 0. En python:


a mod b = a%b


Cas des entiers relatifs

Selon les langages, le résultat de l&#039;opération modulo appliquée aux entiers relatifs n&#039;est pas identique. Python respecte la définition mathématique de l&#039;opération:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/suivi_de_projets_python_avec_git?rev=1639660143&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-16T13:09:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:suivi_de_projets_python_avec_git</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/suivi_de_projets_python_avec_git?rev=1639660143&amp;do=diff</link>
        <description>dev git python todo

Configurer Git pour suivre un projet Python

Environnements virtuels

Le wiki détaille l

.gitignore


__pycache__
*.py[cod]
*$py.class

# Distribution / packaging 
.Python build/ 
develop-eggs/ 
dist/ 
downloads/ 
eggs/ 
.eggs/ 
lib/ 
lib64/ 
parts/ 
sdist/ 
var/ 
wheels/ 
*.egg-info/ 
.installed.cfg 
*.egg 
*.manifest 
*.spec 

# Log files
pip-log.txt
pip-delete-this-directory.txt
*.log

# Unit test / coverage reports 
htmlcov/ 
.tox/ 
.coverage 
.coverage.* 
.cache 
.pyte…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/venv_script_activate_absent?rev=1728923557&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-14T16:32:37+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:venv_script_activate_absent</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/venv_script_activate_absent?rev=1728923557&amp;do=diff</link>
        <description>dev python ubuntu venv activate depannage troubleshooting

Python3 : Script activate absent

Le dossier racine de l&#039;environnement est créé mais le script ./env/bin/activate est absent.
Lors de la création de l&#039;environnement un message est affiché :


The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

    apt install python3.12-venv

You may need to use sudo …</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/tests-unitaires/boost?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:c-cpp:tests-unitaires:boost</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/c-cpp/tests-unitaires/boost?rev=1612216289&amp;do=diff</link>
        <description>tests unitaires avec boost

Boost est une bibliothèque C/C++ qui étend les fonctionnalité de la bibliothèque standard. Elle offre notamment un framework de tests.

Installer boost

Installation de la bibliothèque via le gestionnaire de paquets:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/deplacer-modif-vers-nouvelle-branche?rev=1695204147&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-20T10:02:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:cas-pratiques:deplacer-modif-vers-nouvelle-branche</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/deplacer-modif-vers-nouvelle-branche?rev=1695204147&amp;do=diff</link>
        <description>dev git stash

:TODO_DOCUPDATE:

Déplacer les modifications vers une nouvelle branche

Une bonne pratique consiste à ne pas apporter directement des modifications sur la branche master/main. En général:

	*  On crée une branche de développement dédiée à la fonctionnalité ;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/lister-branches-fusionnees?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:cas-pratiques:lister-branches-fusionnees</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/lister-branches-fusionnees?rev=1612216289&amp;do=diff</link>
        <description>git dev branches

Lister les branches déjà fusionnées

git branch possède une option intéressante permettant de supprimer sans danger les branches déjà fusionnées.

Se placer sur la branche souhaitée


$ git checkout master


Maintenant le HEAD est positionné sur master. Pour ne lister que les branches déjà fusionnées à master:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/reorganiser_historique_avec_rebase?rev=1643151418&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-25T22:56:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:cas-pratiques:reorganiser_historique_avec_rebase</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/reorganiser_historique_avec_rebase?rev=1643151418&amp;do=diff</link>
        <description>dev git rebase historique

Git : Réorganisation de l&#039;historique avec rebase

On souhaite modifier l&#039;historique ci-dessous:


* 36d37a2 (HEAD -&gt; master) Promtail: Configuration pipeline
* c7ab08b Définition/réservation du réseau interne pour les services
* 7cb9cee Ajout du service promtail
* c3d4ada Ajout service Loki
* 9d18d87 Modification réseau virtuel
. . .</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/communication_serie_via_minicom?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:esp8266:communication_serie_via_minicom</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/communication_serie_via_minicom?rev=1612216289&amp;do=diff</link>
        <description>dev iot esp8266 serie minicom

Devkit v3 ESP8266: Communication série avec minicom

Identifier dans un premier temps le fichier périphérique auquel est associée la carte de développement (DevKit) lorsqu&#039;elle est connectée à l’hôte. Pour cela, brancher le DevKit ESP8266 sur le port USB et consulter les journaux système:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/esptools/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:esptools:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/esptools/start?rev=1612216289&amp;do=diff</link>
        <description>dev esp esptool firmware flash iot

esptool: Flasher le firmware sur ESP

esptool est l&#039;outil en ligne de commande développé par Espressif permettant de flasher le firmware de son choix sur les microcontrôleurs de la gamme ESP:

	*  ESP8266
	*  ESP32

Installation

La version stable est disponible sur le gestionnaire de packetage Python pip. Créer un environnement virtuel Python:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/exemples/getstr?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:ncurses:exemples:getstr</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/exemples/getstr?rev=1612216289&amp;do=diff</link>
        <description>dev c ncurses

Utilisation de getstr()

main


#include &lt;stdlib.h&gt;
#include &lt;ncurses.h&gt;
#include &lt;string.h&gt;

#define STR_SIZE 10

int main(int argc, char* argv[])
{
        char msg[] = &quot;Entrer une chaine: &quot;;
        char str[STR_SIZE];

        int mr, mc = 0; // mr pour max_row et mc pour max_column

        initscr();
        getmaxyx(stdscr, mr, mc);

        //affichage du message
        mvprintw(mr/2, (mc - strlen(msg))/2, &quot;%s&quot;, msg);

        //place les caractères saisis par l&#039;utilisate…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/exemples/ncurses-attron?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:ncurses:exemples:ncurses-attron</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/exemples/ncurses-attron?rev=1612216289&amp;do=diff</link>
        <description>dev c ncurses attributs

Modification des attributs

Les attributs ncurses permettent de changer la mise en forme/couleur du texte le terminal.

Fichier source


#include &lt;stdlib.h&gt;
#include &lt;ncurses.h&gt;
#include &lt;string.h&gt;


int main(int argc, char* argv[])
{
        char msg[] = &quot;Bonjour les Attributs!&quot;;
        char msg_quit[] = &quot;Presser une touche pour quitter...&quot;;

        int mr, mc = 0; // mr pour max_row et mc pour max_column

        initscr();
        start_color();
        init_pair(1,…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/modifier_temp_utilisateur?rev=1686703169&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-14T00:39:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:exemples:modifier_temp_utilisateur</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/modifier_temp_utilisateur?rev=1686703169&amp;do=diff</link>
        <description>dev powershell windows

PowerShell : Modifier le dossier temp de l&#039;utilisateur

Les variables d’environnement TEMP et TMP définissent les chemins des dossiers stockant les fichiers temporaires. Il peut être intéressant de redéfinir ces dossiers par défaut notamment pour limiter l&#039;écriture sur des disques SSD en stockant plutôt les temporaires dans un RAM Disk.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/convention_nommage_variables?rev=1753097887&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T11:38:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:convention_nommage_variables</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/convention_nommage_variables?rev=1753097887&amp;do=diff</link>
        <description>dev python variable nommage nomenclature

:TODO_DOCUPDATE:

Python : variables et conventions de nommage

Syntaxe

En python les variables ne peuvent pas commencer par un chiffre, ne doivent pas contenir d&#039;espaces ou de caractères spéciaux. Le nom d&#039;une variable ne doit pas être identique aux mots réservés du langage :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/execution_programme_python_depuis_environnement_virtuel?rev=1753103016&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T13:03:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:execution_programme_python_depuis_environnement_virtuel</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/execution_programme_python_depuis_environnement_virtuel?rev=1753103016&amp;do=diff</link>
        <description>dev python venv programme execution script

Python : Exécuter un programme basé sur un environnement virtuel

En général, lorsqu&#039;un un script ou un programme Python s&#039;appuie sur des dépendances hors paquetages de la bibliothèque standard on utilise un environnement virtuel Python.

Grossièrement, la création de l&#039; environnement virtuel conduit à dédier un interpréteur Python et créer un environnement dans lequel le programme ou script peut être lancé correctement (modification PATH et PYTHONPATH…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_booleen?rev=1701422851&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-01T09:27:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:type_booleen</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/type_booleen?rev=1701422851&amp;do=diff</link>
        <description>dev python

Python : Le type Booléen

Le type booléen (bool) permet de représenter les valeurs True (vrai) et False (faux).

Conversions de types en booléen

Toute valeur Python peut être interprétée comme un booléen par conversion implicite. 

Quelques conversion explicites en faisant appel au type booléen :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/version_interpreteur?rev=1698680373&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-10-30T15:39:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:version_interpreteur</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/version_interpreteur?rev=1698680373&amp;do=diff</link>
        <description>dev python code exemple snippet

Version de l&#039;interpréteur Python

Pour récupérer la version de l&#039;interpréteur Python depuis un script en cours d&#039;exécution:


import sys

version_description = sys.version

type(version_description)
&lt;class &#039;str&#039;&gt;

print(version_description)
3.12.0 (main, Oct 21 2023, 17:44:38) [GCC 9.4.0]

# La classe sys.version_info permet d&#039;obtenir les numéros de versions : majeur, mineur, micro etc
sys.version_info.major
sys.version_info.minor
sys.version_info.micro</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/demarrer_application?rev=1753608365&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-27T09:26:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:demarrer_application</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/demarrer_application?rev=1753608365&amp;do=diff</link>
        <description>dev python framework flask

Flask : Démarrer l&#039;application depuis la CLI

La commande flask permet notamment d&#039;exécuter l&#039;application sur un serveur de développement intégré au framework ou de démarrer un shell interactif dans le contexte de l&#039;application.

Par défaut la commande tente d&#039;importer un module ou un paquetage nommé</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/unittest/start?rev=1658346668&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-20T19:51:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:unittest:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/unittest/start?rev=1658346668&amp;do=diff</link>
        <description>dev python test unittest

Tests unitaires en python avec unittest

Généralités

unittest est un framework de test unitaires, c&#039;est une implémentation Python des frameworks de type xUnit inspirés de SUnit(Smalltalk&#039;s SUnit), conçu par Kent Beck in 1998 pour le langage orienté objet Smalltalk.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/fichiers-statiques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:tutoriaux:fichiers-statiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/tutoriaux/fichiers-statiques?rev=1612216289&amp;do=diff</link>
        <description>dev web framework pyramid static

Servir des fichiers statiques avec Pyramid

Voir le tutoriel hello World pour mettre en place le projet initial. Pour servir des fichiers statiques, lors de la configuration de l&#039;application, utiliser la méthode



# conf est une instance de pyramid.conf.Configurator
conf.add_static_view(name=&#039;static&#039;, path=&#039;static&#039;)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_maintenance?rev=1758366183&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-20T11:03:03+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:flask_maintenance</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask_maintenance?rev=1758366183&amp;do=diff</link>
        <description>dev python framework flask extension

:TODO_DOCUPDATE:

Flask: extension Flask-Maintenance

L&#039;extensions Flask-Maintenance permet de bloquer temporairement les requêtes entrantes (frontend).

Pour illustrer son fonctionnement, on utilise ici une application Flask monolithique minimale. Depuis votre environnement virtuel Python :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_one-to-many?rev=1754217789&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-03T10:43:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:relation_one-to-many</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_one-to-many?rev=1754217789&amp;do=diff</link>
        <description>dev python flask orm db sqlalchemy

:TODO_DOCUPDATE:

Flask-SQLAlchemy : relation one-to-many

Quelques notes à propos de l&#039;implémentation d&#039;une relation un à plusieurs (one to many) avec l&#039;extension Flask-SQLAlchemy.

Pour illustrer le concept on prend un exemple rudimentaire :


MCD via diagramme UML</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/checkout?rev=1635947212&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-03T13:46:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:checkout</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/checkout?rev=1635947212&amp;do=diff</link>
        <description>dev git checkout

Git : checkout

Par défaut l&#039;opération checkout est non destructive, elle n&#039;écrase pas les modifications non validées (via commit).

Si l&#039;on ne souhaite pas retenir les dernières modifications non validées et retourner dans l&#039;état exact du commit ciblé, on peut utiliser le paramètre</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/qemu?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:outils:qemu</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/qemu?rev=1612216289&amp;do=diff</link>
        <description>Qemu

Quick EMUlator est un logiciel sous licence libre GPL écrit par Fabrice Bellard. C&#039;est un émulateur de plateformes matérielles. Le matériel peut être spécifique et coûteux, l&#039;émulation est alors intéressante lors des phases d&#039;apprentissage, de recherche ou de prototypage. Elle facilite également le travail collaboratif: les développeurs peuvent participer au projet sans possèder la plateforme cible.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_definition_variable?rev=1674053185&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-18T14:46:25+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:exemples:verifier_definition_variable</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_definition_variable?rev=1674053185&amp;do=diff</link>
        <description>dev bash variable code snippet exemple guide howto

Bash : vérifier l’existence d&#039;une variable

Pour vérifier qu&#039;une variable est définie en bash, une méthode simple consiste à utiliser la primitive declare:


# Retourne 0 si MAVAR existe
declare -p MAVAR &amp;&gt; /dev/null

# Équivalent avec l&#039;alias typeset
typeset -p MAVAR &amp;&gt; /dev/null</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/type_bytes?rev=1685365314&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-29T13:01:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:type_bytes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/type_bytes?rev=1685365314&amp;do=diff</link>
        <description>dev python

Python : le type Bytes

Le type natif Bytes permet de définir une suite d&#039;octets (séquence immuable d&#039;octets).

Seuls les caractères ASCII sont autorisés dans les littéraux de bytes (quel que soit l’encodage du code source déclaré). Toutes les valeurs au delà de 127 doivent être entrés dans littéraux de bytes en utilisant une séquence d’échappement appropriée.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/creer_type_exception?rev=1672234857&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-28T13:40:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:creer_type_exception</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/creer_type_exception?rev=1672234857&amp;do=diff</link>
        <description>dev python code exemple extrait snippet

:TODO_DOCUPDATE:

Python : créer un nouveau type d&#039;exception

On crée un type nouveau type d&#039;exception en héritant du type de base Exception. Dans sa forme la plus simple sans redéfinition de méthode:



class aNewException(Exception):
    pass</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/tester_existance_fichier?rev=1729167885&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-17T12:24:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:tester_existance_fichier</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/tester_existance_fichier?rev=1729167885&amp;do=diff</link>
        <description>dev python exemple extrait code snippet

:TODO_DOCUPDATE:

Python : tester l&#039;existence d&#039;un fichier


from pathlib import Path

aPath = Path(&#039;/path/to/file.csv&#039;)                                                                                                                     

# Retourne True si le fichier existe
aPath.exists()</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bonnes-pratiques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bonnes-pratiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bonnes-pratiques?rev=1612216289&amp;do=diff</link>
        <description>Bonnes pratiques

Recommandations d&#039;ordre général à mettre en œuvre pour tout développement:

	*  Essayer de produire un code clair, privilégier la clarté à trop de concision.
	*  Commenter
	*  Lors de toute modification factoriser et supprimer le code inutile.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/yaml?rev=1640083372&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-21T10:42:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:yaml</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/yaml?rev=1640083372&amp;do=diff</link>
        <description>dev yaml todo

YAML

YAML signifie YAML Ain&#039;t Markup Language (acronyme récursif: YAML n&#039;est pas un langage à balise). Il a pour but de présenter les données en s&#039;appuyant sur un formalisme facilement lisible par l&#039;homme en limitant au maximum les caractères structurant les données. Il est utilisé par les fichiers de configuration texte de nombreux outils.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/envoyer-par-udp?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:envoyer-par-udp</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/envoyer-par-udp?rev=1612216289&amp;do=diff</link>
        <description>dev android udp todo

Envoyer un datagrame UDP

On utilise les classes du paquetage java.net





Références

	*  &lt;http://www.helloandroid.com/tutorials/simple-udp-communication-example&gt;
	*  &lt;http://www.java2s.com/Code/Java/Network-Protocol/UseDatagramSockettosendoutandreceiveDatagramPacket.htm&gt;
	*  &lt;http://www.java2s.com/Code/Java/Network-Protocol/DatagramSender.htm&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/nouveau-projet-eclipse?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:nouveau-projet-eclipse</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/nouveau-projet-eclipse?rev=1612216289&amp;do=diff</link>
        <description>Nouveau projet Arduino

Création d&#039;un nouveau projet Arduino sous l&#039;IDE Eclipse.

	*  Menu File -&gt; new -&gt; C++ Project
	*  Dans la section Project Type Sélectionner AVR Cross Target Application et Empty. Nommer le projet. Ici nous l&#039;appelons helloWorld.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/bashdb?rev=1669201343&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T11:02:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:bashdb</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/bashdb?rev=1669201343&amp;do=diff</link>
        <description>dev bash script debug shell

:TODO: :TODO_DOCUPDATE:

bashdb

Installation

Sur les version récentes des distributions Debian like bashdb n&#039;est plus proposé dans le gestionnaire de paquets mais on peut l&#039;installer facilement à partir des sources.


apt-get install binutils

./configure

make
make check

# vérifier la valeur de umask
# valeur attendue 0022
umask
make install</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/changer-base?rev=1638009353&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-27T10:35:53+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:changer-base</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/changer-base?rev=1638009353&amp;do=diff</link>
        <description>dev bash base conversion binaire

Changer la base d&#039;un nombre en bash

L&#039;utilitaire bc peut être utilisé pour changer un nombre de base. Pour cela, utiliser les variables prédéfinies ibase et obase:


echo &quot;obase=10; ibase=16; a=AC; print(a);&quot; | bc


Ici on redéfinit ibase à 16 pour spécifier que le nombre en entrée utilise la base hexadécimale, on définie la variable a, spécifie ensuite que la sortie sera en base décimale avec</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/generer_nombre_aleatoire?rev=1619346491&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-25T10:28:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:generer_nombre_aleatoire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/generer_nombre_aleatoire?rev=1619346491&amp;do=diff</link>
        <description>dev bash shell

Bash: Générer un nombre aléatoire

Pour obtenir un nombre aléatoire dans l&#039;intervalle [0-32767] depuis le shell, on peut utiliser la variable $RANDOM.

Pour limiter la valeur maximum de l&#039;intervalle entre [0-N] avec N &lt; 32767, on peut utiliser l&#039;opérateur modulo. Lorsqu&#039;on divise un nombre par N, le reste de la division est toujours compris entre [0-(N-1)]. Le reste est disponible via l&#039;opérateur modulo.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/usage_guillemets?rev=1669242629&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-11-23T22:30:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:usage_guillemets</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/usage_guillemets?rev=1669242629&amp;do=diff</link>
        <description>dev bash shell

:TODO: :TODO_DOCUPDATE:

Usage des guillemets

Notes et exemples d&#039;usages des guillemets simples ou doubles dans les scripts bash et sur la ligne de commande.

Notons qu&#039;on ne peut pas placer de guillemet simple même protégé (échappé par &#039;\&#039;) entre 2 guillemets simples:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/annuler-modifs-non-commit?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:annuler-modifs-non-commit</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/annuler-modifs-non-commit?rev=1612216289&amp;do=diff</link>
        <description>dev git annuler

Annuler des modifications/Nettoyer le working directory

Lorsque l&#039;on souhaite abandonner de nombreuses modifications faites sur le répertoire de travail et revenir dans l&#039;état exact du dernier commit, on procède en deux étapes:

	*  Primo on replace l&#039;index et les fichiers suivis du répertoire de travail dans l&#039;état du dernier commit:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/depot-nu?rev=1695109338&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-19T07:42:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:depot-nu</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/depot-nu?rev=1695109338&amp;do=diff</link>
        <description>dev git

Création d&#039;un dépot nu

Un dépôt nu ou bare repository est un dépôt sans répertoire de travail. Il sert simplement à faciliter le travail collaboratif en centralisant les révisions. Chaque développeur clone le dépôt nu présent sur un serveur accessible à tous. Il apporte ses modifications, puis une fois son travail terminé et ordonné sur son instance locale, il peut pousser (commande</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/modifier-commit?rev=1643150858&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-01-25T22:47:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:modifier-commit</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/modifier-commit?rev=1643150858&amp;do=diff</link>
        <description>dev git

Modifier un commit

Modifications sur le dernier commit

Un cas fréquent: Le commit a été fait mais on se rend compte rapidement qu&#039;il manque un ou plusieurs fichiers ou que la description du commit comporte des erreurs. Il suffit de placer les fichiers dans la zone d&#039;index ou de mettre à jour l&#039;index comme désiré et d&#039;entrer la commande</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/html/favicon?rev=1731151907&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-09T11:31:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:html:favicon</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/html/favicon?rev=1731151907&amp;do=diff</link>
        <description>dev html web icon favicon

HTML : Ajout d&#039;un favinco

On définit le favicon associé au site dans le head. La norme HTML5 recommande de définir différentes tailles pour les favicons en utilisant les attributs rel=“icon” et sizes :


&lt;html&gt;
&lt;head&gt;
   &lt;link rel=&quot;icon&quot; type=&quot;image/png&quot; sizes=&quot;48x48&quot; href=&quot;/static/favicon-48x48.png&quot;&gt;
&lt;/head&gt;
...
&lt;/html&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/outils/gdb?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:outils:gdb</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/outils/gdb?rev=1612216289&amp;do=diff</link>
        <description>GDB, the Gnu DeBugger

Le débogueur est un outil permettant de rectifier les erreurs se trouvant dans un programme tiers en cours de développement. Il permet notamment d&#039;exécuter le programme pas à pas, de consulter l&#039;état des variable etc.

Pour pouvoir être utilisé avec gdb, le programme en cours de débogage doit être compilé avec des options spécifiques notamment l&#039;option -g</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/argument_whatif?rev=1693141715&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-27T13:08:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:argument_whatif</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/argument_whatif?rev=1693141715&amp;do=diff</link>
        <description>dev powershell

Powershell : l&#039;argument -WhatIf

De nombreuses cmdlet contiennent un argument -WhatIf qui correspond à un dry-run (exécution à blanc ou simulée). La commande n&#039;a pas d&#039;effet sur le système : à la place un message est affiché dans la console pour explicité son action normale.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/lecture_entrees_utilisateur?rev=1688056302&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-29T16:31:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:lecture_entrees_utilisateur</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/lecture_entrees_utilisateur?rev=1688056302&amp;do=diff</link>
        <description>dev powershell

PowerShell : Lecture des entrées utilisateur

La cmdlet Read-Host récupère la saisie utilisateur et alimente la variable :


$user_answer = Read-Host &quot;Saisir le nombre max&quot;


On peut passer un message à Read-Host, il sera afficher lors de l&#039;exécution. La commande termine systématiquement le message par &#039;:&#039;, si on souhaite éviter ce comportement par défaut on affiche d&#039;abord le message souhaité puis on invoque Read-Host sans message :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/classes?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:classes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/classes?rev=1612216289&amp;do=diff</link>
        <description>dev python classe objet

Les classes en python

Définition d&#039;une classe

Ci-dessous un exemple minimaliste pour introduire la syntaxe et les mots clés:


class MaClasse(object):
   def __init__(self, name):
      self._name = name
      
   def set_name(self, value=None):
      self.name = value</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/connexion-mysql?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:connexion-mysql</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/connexion-mysql?rev=1612216289&amp;do=diff</link>
        <description>dev python mysql

Python: Connexion à une base MySQL

Module MySQLdb


pip3 install mysqlclient

APIlibmysqlclient-devlibpython-dev


import MySQLdb
db = MySQLdb.connect(&quot;machine&quot;, &quot;dbuser&quot;, &quot;password&quot;, &quot;dbname&quot;)
cursor = db.cursor()
query = &quot;&quot;&quot;SELECT * FROM sampletable&quot;&quot;&quot;
lines = cursor.execute(query)
data = cursor.fetchall()
db.close()</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/environnement_virtuel_avec_git?rev=1753090397&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-21T09:33:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:environnement_virtuel_avec_git</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/environnement_virtuel_avec_git?rev=1753090397&amp;do=diff</link>
        <description>dev python venv git

Python : environnement virtuel dans Git

L&#039;environnement virtuel est créé afin de garantir une isolation des dépendances nécessaires au bon fonctionnement du programme Python. Ainsi, les mises à jours des bibliothèques du système ne remplaceront pas les versions nécessaires au bon fonctionnement de l&#039;application.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/generer_des_qr_codes?rev=1698945918&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-02T17:25:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:generer_des_qr_codes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/generer_des_qr_codes?rev=1698945918&amp;do=diff</link>
        <description>dev python qr-code

:TODO:

Python : Générer un QR code

Références

	*  Tutoriel Python : générer un QR code</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/import?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:import</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/import?rev=1612216289&amp;do=diff</link>
        <description>dev python import module

Import en python

La directive import en python provoque l&#039;appel de la fonction __import__() qui retourne une référence sur un objet de type module. Les deux exemples suivants sont équivalents:


import sys



sys= __import__(&#039;sys&#039;)


Pour Python:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/mqtt?rev=1671580474&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-20T23:54:34+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:mqtt</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/mqtt?rev=1671580474&amp;do=diff</link>
        <description>dev python mqtt iot

Python : Communication MQTT

Le projet Eclipse Paho vise à créer des implémentations open source du protocole MQTT pour différents langages de programmation (C, Python, Arduino, Java, JavaScript, C#, etc.).

Le projet propose un client MQTT en Python</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy?rev=1733182283&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-12-02T23:31:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sqlalchemy</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy?rev=1733182283&amp;do=diff</link>
        <description>:TODO_DOCUPDATE:

SQLAlchemy

L&#039; ORM est une technique employée par les langages orientés objets permettant de convertir des données entre systèmes ayant des types de données incompatibles.

Les langages orientés objets tels que Python permettent de définir des types non-scalaires qui ne peuvent pas être exprimés directement en types primitifs tels que des entiers ou des chaînes de caractères. Par exemple un objet de type</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/anatomie-projet?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:android-studio:anatomie-projet</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/anatomie-projet?rev=1612216289&amp;do=diff</link>
        <description>dev android

Principaux éléments d&#039;un projet Android

Dans la vue Android, quand on déploie Application:

	*  Le fichier manifest/AndroidManifest.xml fixe les principales caractéristiques de l&#039; application Android notamment ses différentes activités, l&#039;activité initiale, les périphériques/ressources nécessaires: ex réseau, carte SD etc.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/temperature-ds18b20?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:capteurs:temperature-ds18b20</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/temperature-ds18b20?rev=1612216289&amp;do=diff</link>
        <description>dev arduino capteur temperature

Capteur de température DS18b20

Utilisation du module keyestudio Ks0316 embarquant le circuit DS18b20.
Fonctionne sur la plage -55°C à 125°C, dans la plage -10°C-85°C précision de +-0,5°C 
Résolution adaptable: 9-12 bits

Montage

Code

Le code utilise la bibliothèque OneWire disponible a l&#039;adresse</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/ide-arduino/start?rev=1634934718&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-10-22T20:31:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:ide-arduino:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/ide-arduino/start?rev=1634934718&amp;do=diff</link>
        <description>dev ide arduino

IDE Arduino

Installation

Télécharger les binaires sur le site officiel d&#039; Arduino &lt;https://www.arduino.cc/&gt; et décompresser l&#039;archive:


cd /tmp
wet &quot;https://downloads.arduino.cc/arduino-1.8.13-linux64.tar.xz&quot;

# Décompression de l&#039;archive dans le dossier /opt/arduino
tar xvf arduino-1.8.13-linux64.tar.xz  --directory /opt/arduino/</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno/configurer-entrees-sorties?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:uno:configurer-entrees-sorties</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/uno/configurer-entrees-sorties?rev=1612216289&amp;do=diff</link>
        <description>dev port arduino

Configuration des entrées-sorties numériques

Les broches digitales du port parallèle de l&#039;Arduino peuvent être indépendamment configurées comme des entrées ou des sorties. C&#039;est la fonction pinMode() qui va permettre de configurer chaque ligne du port.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/templates?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:templates</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/templates?rev=1612216289&amp;do=diff</link>
        <description>dev web pyramid template

templates avec pyramid

Pyramid peut s&#039;interfacer avec plusieurs moteurs de templates existants:

	*  Chameleon
	*  Jinja2
	*  Mako

Utiliser Chameleon

Dans l&#039;environnement virtuel python, installer le module pyramid_chameleon:


$ pip install pyramid_chameleon</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/annuler-dernier-commit?rev=1635764331&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-01T10:58:51+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:cas-pratiques:annuler-dernier-commit</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/annuler-dernier-commit?rev=1635764331&amp;do=diff</link>
        <description>git dev annuler commit

Annuler le dernier commit
git revert

Le cas peut se présenter lorsque on se rend compte que le commit a été fait sur la mauvaise branche. On souhaite l&#039;annuler. Si le commit n&#039;a pas été propagé, il peut être annulé sans problème via la commande:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/modifier_dernier_commit?rev=1693069607&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-26T17:06:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:cas-pratiques:modifier_dernier_commit</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/cas-pratiques/modifier_dernier_commit?rev=1693069607&amp;do=diff</link>
        <description>dev git

Git : Modifier le dernier commit

Git a prévu une commande pour facilement rectifier le dernier commit:


$ git commit --amend 


Elle permet de combiner les changement dans la zone d&#039;assemblage avec ceux du dernier commit: ce résultat remplace complètement le dernier commit.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/cannot-re-assign-auto-global?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:cannot-re-assign-auto-global</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/cannot-re-assign-auto-global?rev=1612216289&amp;do=diff</link>
        <description>dev php erreur debug

PHP: Erreur Cannot re-assign auto-global

Les fichiers de log tracent l&#039;événement suivant:


PHP Fatal error:  Cannot re-assign auto-global variable _GET in /mon-script.php on line XX


Depuis la version 5.4 de PHP les variables globales ne peuvent plus être utilisées comme paramètres de fonctions.  Leur portée étant globale, elle sont accessible depuis n&#039;importe quel script, il n&#039;y a pas d&#039;utilité à les passer en paramètre.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/troubleshooting/definir-charset-connexion-mysql?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:troubleshooting:definir-charset-connexion-mysql</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/troubleshooting/definir-charset-connexion-mysql?rev=1612216289&amp;do=diff</link>
        <description>dev php mysql charset

Modifier le charset du client mysql

Afficher le jeu de caractères du client


$charset = mysql_client_encoding($link);

echo &quot;The current character set is: $charset\n&quot;;


Définir le jeu de caractère du client


mysql_set_charset(&#039;latin1&#039;, $link);</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/litteraux?rev=1685365314&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-05-29T13:01:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:litteraux</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/litteraux?rev=1685365314&amp;do=diff</link>
        <description>dev python

Les littéraux

En Python, le littéral désigne la notation utilisée pour définir une valeur constante sur un type de base comme la chaîne de caractères (str), la suite d&#039;octets (bytes) et même les valeurs numériques.

Pour les chaînes de caractères, le littéral est introduit par un préfixe (stringprefix) et encadré par des guillemets simples, doubles ou triples.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/tables_de_hash?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:tables_de_hash</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/tables_de_hash?rev=1612216289&amp;do=diff</link>
        <description>cour python

Python: Les tables de hash

Les tables de hash sont des structures de données particulières permettant de répondre à certaines limitations des types séquence tels que les chaînes de caractères, les listes ou tuples. Python propose deux implémentations des tables de hash: les dictionnaires et les sets (ensembles).</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/types?rev=1729257449&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-18T13:17:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:types</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/types?rev=1729257449&amp;do=diff</link>
        <description>dev python types

:TODO_DOCUPDATE:

Python : Vue d&#039;ensemble des types

None

En Python une valeur indéfinie (équivalent de null dans d&#039;autre langages) est associée au singleton None :


&gt;&gt;&gt; id(None)
10746016

&gt;&gt;&gt; aValue = None
&gt;&gt;&gt; id(aValue)
10746016

&gt;&gt;&gt; aValue is None
True</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/variables_environnement?rev=1753023789&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-20T15:03:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:variables_environnement</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/variables_environnement?rev=1753023789&amp;do=diff</link>
        <description>dev python variable environnement

Python : Gestion des variables d&#039;environnement

Plusieurs solutions pour définir des variables d&#039;environnement en Python :

	*  Créer un fichier .env ;
	*  Éditer le fichier activate de l&#039;environnement virtuel Python ;
	*  Utiliser le Dockerfile si le projet s&#039;appuie sur Docker.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/modifier_fichier_docx?rev=1728943531&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-14T22:05:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:modifier_fichier_docx</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/modifier_fichier_docx?rev=1728943531&amp;do=diff</link>
        <description>dev python file fichier word doc docx

:TODO_DOCUPDATE:

Python3 : Modifier un fichier au format docx
convertir au format docx

Télécharger et installer le module python-docx dans l&#039;environnement virtuel :


pip install python-docx






Références

	*  Utiliser le module python-docx pour modifier un document Word</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_gestion_des_configurations?rev=1753535392&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-26T13:09:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask_gestion_des_configurations</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask_gestion_des_configurations?rev=1753535392&amp;do=diff</link>
        <description>dev python framework flask

:TODO_DOCUPDATE:

Flask : Gestion des configurations

La classe Config du framework Flask contient une méthode from_object() qui permet de charger une configuration à partir d&#039;un objet Python (une classe ou un module).

Conserver les variables de configuration dans des classes est intéressant pour les raisons suivantes :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/telechargement_de_fichier?rev=1730838981&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-05T20:36:21+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:telechargement_de_fichier</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/telechargement_de_fichier?rev=1730838981&amp;do=diff</link>
        <description>dev python flask web upload download file fichier

Flask : Upload/Download de fichiers

Les fichiers transmis sont placés dans un espace temporaire en mémoire ou dans un dossier (qui peut être obtenu via tempfile.gettempdir()). Par défaut Flask ne limite pas la taille des fichiers transmis par l&#039;utilisateur mais on peut la définir via la variable</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/start?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:jupyter-notebook:start</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/start?rev=1612216289&amp;do=diff</link>
        <description>dev python jupyter

Jupyter notebook

Le nom Jupyter vient de la contraction des 3 principaux langages utilisés dans le domaine de la data science: Julia, Python et R. L&#039;extension d&#039;un fichier notebook produit par Jupyter est .pynb pour IPython NoteBook, ancien nom du projet Jupyter.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy/installation?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sqlalchemy:installation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sqlalchemy/installation?rev=1612216289&amp;do=diff</link>
        <description>dev python sqlachemy sql orm

Installer le module SQLAlchemy

Création de l&#039;environnement virtuel et installation du module:


virtualenv --python=/usr/bin/python3 --no-site-packages alchemytest

cd alchemytest/bin
source activate

pip install SQLAlchemy


Pour vérifier, lister les modules installés avec</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/regex/exemples/minuscules_sans_carateres_speciaux?rev=1711214867&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-03-23T17:27:47+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:regex:exemples:minuscules_sans_carateres_speciaux</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/regex/exemples/minuscules_sans_carateres_speciaux?rev=1711214867&amp;do=diff</link>
        <description>regex exemple

Regex : minuscules sans caractères spéciaux

On souhaite sélectionner seulement des mots en minuscules pouvant intégrer des chiffres et les caractères &#039;-&#039; et &#039;_&#039; : les autres caractères spéciaux, les accents ou ponctuations ne sont pas acceptés.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/notes?rev=1775392258&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T12:30:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:notes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/notes?rev=1775392258&amp;do=diff</link>
        <description>dev python web flask extensions

Flask : A propos des extensions

Les extensions sont des packages Python ajoutant des fonctionnalités au framework Flask. On liste ici quelques extensions couramment utilisées.

	*  Flask-Admin - Interface d&#039;administration
	*  Flask-Babel - Support de l&#039;internationalisation</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_agregation?rev=1753198299&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-22T15:31:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:relation_agregation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_agregation?rev=1753198299&amp;do=diff</link>
        <description>dev python sql sqlalchemy relation

Flask-SQLAlchemy : Définir une relation d&#039;agrégation

La relation d&#039;agrégation est une forme particulière de relation one-to-many. C&#039;est une composition sans appartenance : la suppression d&#039;une instance de la classe regroupant les agrégats n&#039;entraine pas la suppression des agrégats.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask-sqlalchemy/afficher-les-requetes?rev=1756406120&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-28T18:35:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:extensions:flask-sqlalchemy:afficher-les-requetes</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/extensions/flask-sqlalchemy/afficher-les-requetes?rev=1756406120&amp;do=diff</link>
        <description>dev python sql sqlalchemy

Afficher les requêtes produites par l&#039;ORM SQLAlchemy

La variable de configuration SQLALCHEMY_ECHO

Lorsqu&#039;on utilise l&#039;extension Flask-SQLAlchemy, on peut afficher un retour des requêtes produites par l&#039;ORM sur la console en utilisant la variable de configuration</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/installation_police_jetbrains?rev=1639508956&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-12-14T19:09:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:installation_police_jetbrains</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/installation_police_jetbrains?rev=1639508956&amp;do=diff</link>
        <description>dev police

Police JetBrains adaptée à l&#039;activité de codage

JetBrains propose une police à destination des développeurs en tenant compte des spécificités liés à leur activité notamment:

	*  Augmentation de la hauteur de caractères en minuscule pour une lecture facilité.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/configurer-eclipse?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:configurer-eclipse</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/configurer-eclipse?rev=1612216289&amp;do=diff</link>
        <description>Développer pour Arduino sous Eclipse

Paramétrage et configuration de l&#039;EDI Eclipse pour développement (cross compilation) sur plateforme Arduino.

Installer IDE Arduino

L&#039;IDE Arduino inclus les outils et les fichiers headers qui seront utilisés par la suite par l&#039;IDE Eclipse.
Recuperer l&#039;archive et decompresser l&#039;IDE Arduino. Dans mon cas l&#039;IDe Arduino est installer au noeud:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/interruptions?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:interruptions</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/interruptions?rev=1612216289&amp;do=diff</link>
        <description>dev arduino interruption

Gestion des interruptions avec Arduino

Les interruption externes peuvent être câblées sur les broches 2 et 3 de l&#039;ATmega 328. On utilisera la fonction attachInterrupt() pour configurer la gestion des interruptions externes.


#define PIN_2 0
#define PIN_3 1

void traitementSurInterruption();

void setup()
{
   attachInterrupt(PIN_2, traitementSurInterruption, RAISING);
}</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/installer_godoc?rev=1718210081&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-12T16:34:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:installer_godoc</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/installer_godoc?rev=1718210081&amp;do=diff</link>
        <description>dev go golang godoc

Installer godoc

:TODO_DOCUPDATE:

L&#039;installation du binaire godoc se fera dans votre environnement de travail (working directory) désigné par la variable d&#039;environnement GOPATH :


# Afficher la valeur de GOPATH
go env | grep GOPATH

# Installer godoc
go install golang.org/x/tools/cmd/godoc@latest</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/utilisation-de-git?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:android-studio:utilisation-de-git</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/utilisation-de-git?rev=1612216289&amp;do=diff</link>
        <description>dev android android-studio git

Utiliser Git sous Android Studio

Installation de Git

Le gestionnaire de révision doit être installé, le wiki démarrer avec Git détaille l&#039;installation et le paramétrage sous GNU/Linux.


$ sudo apt-get install git


Pour s&#039;assurer qu&#039; Android Studio s&#039;interface correctement avec git:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/temperature-lm35?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:capteurs:temperature-lm35</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/temperature-lm35?rev=1612216289&amp;do=diff</link>
        <description>dev arduino capteur temperature

Capteur LM35

Utilisation du capteur keyestudio Ks0022.
Relever la température ambiante via le circuit LM35 avec une sensibilité de 10mV/°C. Fonctionne sur la plage 0-100°C

Montage

Code


// Le capteur LM35 doit etre connecté sur une
// entrée analogique, ici A0
const int CAPTEUR = A0;

void setup()
{
    //Initialise le port série pour transmettre les valeurs
    //relevées par le capteur
    Serial.begin(9600);
    
}

 void loop()
{  int val;
    int dat;
  …</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/exemples/passage-a-niveau?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:exemples:passage-a-niveau</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/exemples/passage-a-niveau?rev=1612216289&amp;do=diff</link>
        <description>dev arduino exemple todo

Arduino: Passage à niveau

Schéma du montage

Sketch

Ci-dessous le programme complet.



/*
  Fun MOOC, Programmer un objet avec Arduino
  TP 04: Le passage à niveau

  Le fonctionnement normal est un feu allumé au rouge (le feu vert est éteint) et une barrière fermée (0°).
  Le fonctionnement normal est interrompu par l&#039;appui sur un bouton poussoir.
  Si l&#039;appui du bouton est détecté, alors la barrière (actionnée par le servomoteur) se relève doucement.
  Lorsque la b…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_mode_execution_interactif?rev=1674119325&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-19T09:08:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:exemples:verifier_mode_execution_interactif</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_mode_execution_interactif?rev=1674119325&amp;do=diff</link>
        <description>dev bash exemple code snippet guide howto

:TODO_DOCUPDATE:

Bash : vérifier le mode d&#039;exécution interactif

Lorsque Bash est lancé en mode interactif l&#039;option -i est précisée et la variable PS1 est définie. Les options actives sont listées dans la variable $-.

Le script ~/.basrc utilise la valeur de cette variable pour déterminer si l&#039;exécution courante est interactive ou non et adapter son comportement.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_permissions_via_stat?rev=1674031048&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-18T08:37:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:exemples:verifier_permissions_via_stat</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/exemples/verifier_permissions_via_stat?rev=1674031048&amp;do=diff</link>
        <description>bash exemple extrait guide how-to code snippet

Bash : vérifier les droits d&#039;accès sur un fichier

Pour vérifier les permissions d&#039;accès d&#039;un fichier ou d&#039; un dossier depuis un script Bash, on peut utiliser la commande stat avec l&#039;option --format qui permet de retourner les droits d&#039;accès au fichier sous forme octale:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/programmation-multitache?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:esp:esp32:programmation-multitache</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/programmation-multitache?rev=1612216289&amp;do=diff</link>
        <description>dev esp esp32 todo

Programmation multitâche avec l&#039;ESP32

L&#039;ESP32 2 coeurs

cores/esp32/main.cpp

Le sketck s&#039;exécute sur le cœur 1 par défaut.

Pour exécuter du code sur un cœur en particulier.

	*  Créer une fonction
	*  Utiliser la fonction xTaskCreatePinnedToCore() pour l&#039;attacher au cœur choisit.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/demande_identifiants_depuis_interpreteur?rev=1688134677&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-30T14:17:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:exemples:demande_identifiants_depuis_interpreteur</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/demande_identifiants_depuis_interpreteur?rev=1688134677&amp;do=diff</link>
        <description>dev powershell securite identifiant credential code snippet extrait

PowerShell : Récupérer des identifiants depuis la ligne de commande

Certaines commandes doivent pouvoir s&#039;exécuter avec un niveau de privilèges plus élevé. La cmdlet Get-Credential permet de demander des identifiants à l&#039;utilisateur mais nécessite un environnement graphique pour s&#039;exécuter (les identifiants sont récupérés via une fenêtre modale).</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/identifier_processus_consommateur_cpu?rev=1685712419&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-02T13:26:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:exemples:identifier_processus_consommateur_cpu</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/identifier_processus_consommateur_cpu?rev=1685712419&amp;do=diff</link>
        <description>dev powershell code snippet exemple

Powershell : Identifier les processus consommant le temps CPU

Identifier les trois principaux processus consommant du temps CPU sur l&#039;hôte : 


Get-Process | Where-Object CPU -gt 2 | Sort-Object CPU -Descending | Select-Object -First 3</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/transmettre_objets_python_au_javascript?rev=1732198017&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-21T14:06:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:transmettre_objets_python_au_javascript</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/transmettre_objets_python_au_javascript?rev=1732198017&amp;do=diff</link>
        <description>dev python flask javascript

Flask : Transmettre des objets Python à un script Javascript du template

Depuis le contrôleur (la fonction associée à la route), on crée des objets Python qu&#039;on peut transmettre facilement au template.

Le template peut contenir du code javascript : il est parfois utile de pouvoir transmettre des objets au script afin de les exploiter côté client.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/reutiliser-des-variables-du-fichier-conf?rev=1759652835&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-10-05T08:27:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:reutiliser-des-variables-du-fichier-conf</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/reutiliser-des-variables-du-fichier-conf?rev=1759652835&amp;do=diff</link>
        <description>dev python sphinx documentation

Sphinx : Utiliser les variables du fichier de configuration dans la documentation

Le fichier de configuration de Sphinx définit un ensemble de variables qu&#039;il peut être pratique de pouvoir exploiter dans la documentation comme project ou release.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/expression-rationnelle?rev=1728748968&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-12T16:02:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:expression-rationnelle</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/expression-rationnelle?rev=1728748968&amp;do=diff</link>
        <description>dev regex

Expression rationnelle

Les expressions rationnelles ou  expressions régulières (de l&#039;anglais regex) sont particulièrement efficaces et utiles pour les traitements automatiques de flux ou de fichiers textes (recherches, subtitutions). Elles ont été mises en œuvres dans de nombreux langages, une norme POSIX existe.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/mesurer_consommation_energetique_app?rev=1659793638&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-08-06T13:47:18+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:mesurer_consommation_energetique_app</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/mesurer_consommation_energetique_app?rev=1659793638&amp;do=diff</link>
        <description>dev software energie

Mesurer la consommation énergétique d&#039;une application

Dans tous les domaines, on a aujourd&#039;hui conscience que les ressources ne sont pas illimités. Tout processus ou application consomme de  l’énergie électrique, il est possible de quantifier en partie cette consommation.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/i2c-attiny85?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:i2c-attiny85</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/i2c-attiny85?rev=1612216289&amp;do=diff</link>
        <description>i2c twi attiny85 arduino

I2C avec ATtiny85

La bibliothèque Wire disponible dans l&#039;IDE Arduino permettant de gérer le bus I2C ne compile pas pour les cibles ATtiny25/45/85

Références

	*  &lt;https://code.google.com/archive/p/arduino-tiny/wikis/TWIMasterLibrary.wiki&gt;
	*  &lt;https://playground.arduino.cc/Code/USIi2c&gt;
	*</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/icsp-et-bootloader?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:icsp-et-bootloader</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/icsp-et-bootloader?rev=1612216289&amp;do=diff</link>
        <description>dev arduino isp icsp todo

ICSP et Bootloader

Dans le cas d&#039;utilisation classique, on connecte Arduino via le bus USB qui émule une liaison série. Le microcontrôleur est déjà assez intelligent pour détecter 

bootloader
Quelque chose sur port série?
si code je le range ou il faut</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/port-serie?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:port-serie</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/port-serie?rev=1612216289&amp;do=diff</link>
        <description>dev arduino serie

Port série avec Arduino

Liaison série asynchrone, utilise les broches 0 pour la réception (Rx) et 1 pour la transmission (Tx). Si le port série est utilisé dans le programme, les broches 0 et 1 ne seront plus disponible en tant qu&#039;entrées/sorties numériques du port parallèle.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno-programmateur-isp?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:uno-programmateur-isp</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/uno-programmateur-isp?rev=1612216289&amp;do=diff</link>
        <description>dev arduino isp

Uno en programmateur ISP pour ATtiny85

On utilise la carte Arduino Uno comme programmateur pour flasher des ATtiny85.

Lancer IDE Arduino et vérifier la configuratation

	*  Outils -&gt; Type de carte -&gt; Arduino Uno
	*  Outils -&gt; Programmateur -&gt; Arduino as ISP</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/afficher_les_separateurs_arguments?rev=1699788743&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-12T11:32:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:afficher_les_separateurs_arguments</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/afficher_les_separateurs_arguments?rev=1699788743&amp;do=diff</link>
        <description>dev bash linux argument option parametre

Bash : Afficher les séparateurs d&#039;arguments

Les différents shells GNU/Linux déclarent une variable IFS listant les caractères permettant de délimiter les arguments. On peut afficher la valeur de ces séparateurs de champ avec la commande suivante:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/classes_de_caracteres?rev=1652523512&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-05-14T10:18:32+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:classes_de_caracteres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/classes_de_caracteres?rev=1652523512&amp;do=diff</link>
        <description>dev bash cli filtre

Les classes de caractères

Les classes de caractères décrivent des sous-ensembles de caractères. Elles peuvent être utilisées notamment par les programmes CLI de type filtre tels que tr, grep etc
 Classe        Description</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_saut_de_ligne_en_espace?rev=1619374216&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-25T18:10:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:convertir_saut_de_ligne_en_espace</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/convertir_saut_de_ligne_en_espace?rev=1619374216&amp;do=diff</link>
        <description>dev bash shell

Bash: Convertir les sauts de lignes en espaces

Pour passer de données saisies ligne par ligne à des données séparées par des espaces, on peut utiliser une combinaison des commandes cat et echo:

Le fichier data.txt contient des données saisies lignes par ligne:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/rechercher-chaine-dans-plusieurs-fichiers?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:rechercher-chaine-dans-plusieurs-fichiers</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/rechercher-chaine-dans-plusieurs-fichiers?rev=1612216289&amp;do=diff</link>
        <description>sysadmin dev script bash recherche

Rechercher une chaîne dans un ensemble de fichiers

Retrouver une chaîne de caractères dans un ensemble de fichiers sources. Ce script est une simple boucle for. Elle peut être directement tapée dans l’interpréteur bash. On récupère les fichiers dont on souhaite scruter le contenu. Ils sont fournis séquentiellement en argument à la commande grep avec les options</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-case?rev=1676626932&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-02-17T09:42:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:structure-case</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/structure-case?rev=1676626932&amp;do=diff</link>
        <description>dev sysadmin bash case switch

Structure de contrôle case

Au sein des scripts bash, la structure de contrôle case ou selon (équivalent du switch... case en C) permet d&#039;effectuer différents traitements en fonction des valeurs attendues pour une variable donnée.


case &quot;$C&quot; in
&quot;1&quot;)
    do_this()
    ;;
&quot;2&quot; | &quot;3&quot;)
    do_what_you_are_supposed_to_do()
    ;;
*)
    do_nothing()
    ;;
esac</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/structure-if?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:structure-if</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/structure-if?rev=1612216289&amp;do=diff</link>
        <description>dev bash

Structure de contrôle if en bash


if condition
then
   commande 1
   ...
   commande n
elseif condition 2
then
  ...
else
  ...
fi


Références

	*  &lt;http://www.commandeslinux.fr/structure-de-controle-if/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/c-cpp/principaux-usages-gcc?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:c-cpp:principaux-usages-gcc</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/c-cpp/principaux-usages-gcc?rev=1612216289&amp;do=diff</link>
        <description>gcc c compilation gnu

Principales options et usages GCC
 -g          Insertion des symboles de débogages lors de la compilation des fichiers objets *.o  -Wall       Active l&#039;affichage de la plupart des avertissements à la compilation.               -pg         Permet le profilage du code via gprof</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/git/afficher_details_commit?rev=1695236176&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-09-20T18:56:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:git:afficher_details_commit</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/git/afficher_details_commit?rev=1695236176&amp;do=diff</link>
        <description>dev git

Git : Afficher les attributs d&#039;un commit

La commande git show ne donne pas tous les attributs d&#039;un commit


# Affiche 
git cat-file -p df8f15a


Références

	*  Autopsie d&#039;un commit</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/go/installer_vim-go?rev=1692014710&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-14T12:05:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:go:installer_vim-go</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/go/installer_vim-go?rev=1692014710&amp;do=diff</link>
        <description>dev go golang vim extension

:TODO_DOCUPDATE:

Installer l&#039;extension vim-go

vim-go est une extension Vim permettant d&#039;utiliser l&#039;éditeur Vim comme environnement de développement pour le langage Go.

Avec le gestionnaire d&#039;extension Vundle éditer le fichier vimrc et ajouter l&#039;extension :</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/fenetres?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:ncurses:fenetres</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/fenetres?rev=1612216289&amp;do=diff</link>
        <description>ncurses windows fenetres

Les fenêtres avec ncurses

stdscr est la fenêtre par défaut proposée par ncurses. L&#039;utilisateur a la possibilité de créer ses propres fenêtres. Les fenêtres permettent de définir des zones d&#039;affichage indépendantes.

Les fenêtres sont crées via l&#039;appel de la fonction</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/ncurses/menus?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:ncurses:menus</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/ncurses/menus?rev=1612216289&amp;do=diff</link>
        <description>dev c ncurses menu

Menus avec ncurses

La bibliothèque menu permet de générer des menus personnalisables. Un menu est un affichage permettant à l&#039;utilisateur de choisir une option dans un ensemble. La bibliothèque permet également de définir des menus avec des choix multiples.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/parametre_courant_verbose?rev=1693482195&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-08-31T11:43:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:parametre_courant_verbose</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/parametre_courant_verbose?rev=1693482195&amp;do=diff</link>
        <description>dev powershell verbose

Powershell : Utiliser l&#039;option Verbose

L&#039;option -Verbose fait parti des paramètres courants (Common parameters) disponibles pour les cmdlets ou les fonctions.

Les messages émis en mode verbeux utilisent un canal (buffer) dédié. Ces messages ne sont pas affiché par défaut dans la console de l&#039;utilisateur. C&#039;est la variable</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/calculer-distance-via-coordonnees?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:calculer-distance-via-coordonnees</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/calculer-distance-via-coordonnees?rev=1612216289&amp;do=diff</link>
        <description>dev python distance

Calculer une distance à partir de coordonnées


import geopy.distance

coords_1 = (52.2296756, 21.0122287)
coords_2 = (52.406374, 16.9251681)

print geopy.distance.vincenty(coords_1, coords_2).km


Références

	*  &lt;https://stackoverflow.com/questions/19412462/getting-distance-between-two-points-based-on-latitude-longitude&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/callable?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:callable</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/callable?rev=1612216289&amp;do=diff</link>
        <description>dev python callable

Les Callables

En Python, tout objet exécutable est un callable, cela comprend:

	*  Les fonctions/méthodes natives ou built-in
	*  Les fonctions/méthodes définies par l&#039;utilisateur user-defined
	*  Toute instance dont la classe possède un méthode</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/entetes_de_scripts?rev=1701194606&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-28T18:03:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:entetes_de_scripts</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/entetes_de_scripts?rev=1701194606&amp;do=diff</link>
        <description>dev python headers entetes

:TODO_DOCUPDATE:

Python : utilisation d&#039;entêtes

Des entêtes (headers) peuvent être utilisées sur certains scripts notamment pour :

	*  Aider le système d&#039;exploitation à correctement démarrer l&#039;exécution d&#039;un script ;
	*  Déterminer le jeu de caractères utilisé pour écrire le script afin de l&#039;interpréter correctement.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/generation-graphiques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:generation-graphiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/generation-graphiques?rev=1612216289&amp;do=diff</link>
        <description>python courbes graphiques

Générer des graphiques en Python

matplotlib

matplotlib permet de générer différents styles de graphiques/courbes. Il peut être également utilisé en mode interactif avec certains interpréteurs notamment IPython.


$ sudo apt-get install python-matplotlib</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/generer-nombres-aleatoire?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:generer-nombres-aleatoire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/generer-nombres-aleatoire?rev=1612216289&amp;do=diff</link>
        <description>dev python aleatoire

Python: générer des nombres aléatoires

Pour générer des entiers aléatoires entre deux bornes (bornes comprises), on peut s&#039; appuyer sur la méthode randint() du module random. Dans l&#039;exemple ci-dessous un nombre pseudo-aléatoire compris entre 10 et 100 est généré et affecté à la variable x:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/ipython?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:ipython</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/ipython?rev=1612216289&amp;do=diff</link>
        <description>dev python ipython

Ipython: Interpréteur python

ipython est un interpréteur python interactif disposant de fonctionnalités telles que  l&#039;introspection, une syntaxe additionnelle, la complétion et un historique riche. Ipython3 est la dernière version monolithique d&#039;ipython. Depuis 2014 le projet a été scindé et toutes les parties indépendantes du langage python sont regroupées au sein du projet Jupiter notebook.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/occupation_memoire?rev=1626425932&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-07-16T08:58:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:occupation_memoire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/occupation_memoire?rev=1626425932&amp;do=diff</link>
        <description>dev python empreinte memoire

Python: déterminer la taille mémoire d&#039;un objet

Le module sys contient la fonction  getsizeof() qui retourne la taille d&#039;un ou plusieurs objets en Octets.


# création d&#039;un ensemble vide
&gt;&gt;&gt; t1 = ()

# le tuple (ensemble) vide ne contient aucun élément
&gt;&gt;&gt; len(t1)
0

# mais l&#039;objet tuple occupe de la mémoire
&gt;&gt;&gt; import sys                                                                                       

&gt;&gt;&gt; sys.getsizeof(t1)                                   …</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/rust/visualiser_arborescence_modules?rev=1725179948&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-01T08:39:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:rust:visualiser_arborescence_modules</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/rust/visualiser_arborescence_modules?rev=1725179948&amp;do=diff</link>
        <description>dev rust module

Rust : visualiser l&#039;arborescence des modules

En Rust, les modules ont deux principaux objectifs :

	*  Regrouper/nommer des définitions ayant un lien logique ;
	*  Gérer la visibilité des définitions (interne = privée ; externe = publique).
cargo tree</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/sfml/sprites?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:sfml:sprites</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/sfml/sprites?rev=1612216289&amp;do=diff</link>
        <description>Affichage des sprites

Les sprites et les images sont des objets différents. Une image est un tableau de pixels en mémoire. Sous sfml chaque pixel peut être représente par un objet de la classe Color().

Un sprite est un élément qui peut être dessiné dans un canevas ou une fenêtre de rendu (RenderWindow). Un sprite est une représentation d&#039;une image.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/web/balise_-audio?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:web:balise_-audio</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/web/balise_-audio?rev=1612216289&amp;do=diff</link>
        <description>web dev audio son

Balise audio

Les navigateurs ne supportent pas tous les mêmes formats audio. Il est recommandé d&#039;utiliser au moins les 3 formats suivants pour couvrir le maximum de clients:

	*  mp3
	*  wav
	*  ogg

La balise audio s&#039;utilise dans le body avec la syntaxe indiquée ci-dessous:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/web/entites_html?rev=1718267624&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-06-13T08:33:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:web:entites_html</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/web/entites_html?rev=1718267624&amp;do=diff</link>
        <description>dev html encodage caracteres symboles

HTML : Encodage des caractères

Les pages HTML peuvent intégrer des caractères spéciaux via les entités HTML. Ci dessous un tableau non exhaustif faisant la correspondance entre les entités HTML et les caractères UTF-8 couramment utilisés en français</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/erreur-mise-a-jour?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:android-studio:erreur-mise-a-jour</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/android-studio/erreur-mise-a-jour?rev=1612216289&amp;do=diff</link>
        <description>dev erreur android androidstudio update

Erreur à la mise à jour d&#039;Android Studio

Lors de toute tentative de mise à jour de l&#039;IDE Android Studio, la console affiche un message:


Connection Error
Failed to prepare an update:
Temp directory inside installation: /opt/android-studio/data/yoann/AndroidStudio/system/tmp/patch-update
Open download page.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/capteur_angle_wcmcu-103?rev=1626116929&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-07-12T19:08:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:capteurs:capteur_angle_wcmcu-103</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/capteurs/capteur_angle_wcmcu-103?rev=1626116929&amp;do=diff</link>
        <description>dev electronique arduino capteur transducteur angle todo

Capteur d&#039;angle CJMCU WCMCU-103

caractéristiques techniques
 Catégorie          Capteurs, Transducteurs  Famille            Capteurs de position - Angle, mesure de position linéaire  Série              SV01  Pour mesurer       position rotative</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/shield-memoire/montage?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:shield-memoire:montage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/shield-memoire/montage?rev=1612216289&amp;do=diff</link>
        <description>dev arduino snootlab sd

Montage du Shield Mémoire de Snootlab

Le shield mémoire 1.0 de Snootlab intègre un composant SPI avec lequel le microcontrôleur communiquera pour écrire sur la carte SD. Le composant du Shield Mémoire 1.0 est câblé sur la pin10. Pour faire fonctionner le Sketch d&#039;exemple présent par défaut dans l&#039;IDE (File</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/uno/entrees-analogiques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:uno:entrees-analogiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/uno/entrees-analogiques?rev=1612216289&amp;do=diff</link>
        <description>hardware arduino

Entrées analogiques

ATmega 328 possède 5 entrées analogiques broches A0 à A4. Le CAN a une résolution de 10 bits, il convertit une tension analogique en une valeur numérique, un nombre entre 0-1023 codé sur un entier (int) en environ 100 us. Comme l&#039;ATmega 328 est cadencé à 16</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/entrees-analogiques?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:esp:esp32:entrees-analogiques</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/entrees-analogiques?rev=1612216289&amp;do=diff</link>
        <description>dev hardware esp32 can

ESP32: les entrées analogiques

Plusieurs broches possèdent un convertisseur analogique numérique CAN désigné ADC (Anolog to Digital Converter).


from machine import Pin, ADC
adc = ADC(Pin(33))
adc.read()
adc.read()


Références

	*  &lt;http://docs.micropython.org/en/latest/esp32/quickref.html#adc-analog-to-digital-conversion&gt;
	*  &lt;https://forum.micropython.org/viewtopic.php?t=3769&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/presentation?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:presentation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/presentation?rev=1612216289&amp;do=diff</link>
        <description>dev python pyramid framework

Pyramid

Quelques notes extraites de la documentation 1.6 du framework Pyramid.

Système de template

Pyramid a été pensé pour pourvoir être interfacé facilement avec des programmes de rendus externes ou “renderers”. Des binding existent pour:</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/routage?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:frameworks:pyramid:routage</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/frameworks/pyramid/routage?rev=1612216289&amp;do=diff</link>
        <description>dev framework pyramid route

Routage avec Pyramid

Deux principales techno pour le routage

	*  URLDispatch
	*  Traversal

URLdispatch

A une route on associe un ou plusieurs motifs intégrant des parties constantes (chaînes littérales) et des variables (marqueurs). Lorsqu&#039;il y a correspondance entre l&#039;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flasher_firmware_nodemcu?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:esp8266:flasher_firmware_nodemcu</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/esp8266/flasher_firmware_nodemcu?rev=1612216289&amp;do=diff</link>
        <description>dev iot esp8266 flash firmware nodemcu esptool

DevKit ESP8266: Flasher firmware NodeMCU

Pour les version dev 0.9 et antérieures, les binaires sont disponibles sur le git nodemcu-firmware. On récupère le fichier et on le flashe via l&#039;outil esptool:


esptool.py --chip esp8266 --port /dev/ttyUSB0 erase_flash
esptool.py --chip esp8266 --port /dev/ttyUSB0 --baud 115200 --before default_reset --after hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x0 nodemcu_float_0.9.6-d…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/deprecated-constructor?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:deprecated-constructor</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/deprecated-constructor?rev=1612216289&amp;do=diff</link>
        <description>dev php php7 debug

php7: Notification &quot;has deprecated constructor&quot;

Lors de l&#039;execution de certains scripts, suivant la verbosité des logs, le message suivant peut remonter dans les logs ou être affiché selon la configuration des logs d&#039;erreurs:


PHP Deprecated:  Methods with the same name as their class will not be constructors in a future version of PHP; MyObject has a deprecated constructor in /path/to/script/MyObject.php on line 3</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-mb_strtolower?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:undefined-function-mb_strtolower</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-mb_strtolower?rev=1612216289&amp;do=diff</link>
        <description>php debug erreur troubleshooting

PHP: erreur undefined function mb_strtolower()

Le journal de log indique un message du type


AH01071: Got error &#039;PHP message: PHP Fatal error:  Call to undefined function mb_strtolower() in /path/to/file.php on line 666\n&#039;


Installer le module mbstring</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/warning_strtotime?rev=1636914222&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-11-14T18:23:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:warning_strtotime</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/warning_strtotime?rev=1636914222&amp;do=diff</link>
        <description>dev php error warning

PHP: warning retourné par la fonction strtotime()

L&#039;utilisation de la fonction strtotime() provoque l&#039;affichage ou la journalisation d&#039;un warning de la forme:


Error (Warning) strtotime(): It is not safe to rely on the system&#039;s timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. W…</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/calculer_temps_execution?rev=1687300773&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-20T22:39:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:exemples:calculer_temps_execution</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/calculer_temps_execution?rev=1687300773&amp;do=diff</link>
        <description>dev powershell time temps

PowerShell : Déterminer le temps d&#039;exécution du script



# Enregistre le timestamp au début du script 
$startTime = Get-Date

# corps du script

# engistrement du timestamp r, fin de script
$endTime = Get-Date

Write-Host &quot;Temps d&#039;exécution ${1}&quot;, ($endTime - $startTime)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/ecrire_dan_un_fichier?rev=1687956737&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-06-28T12:52:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:powershell:exemples:ecrire_dan_un_fichier</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/powershell/exemples/ecrire_dan_un_fichier?rev=1687956737&amp;do=diff</link>
        <description>dev powershell extrait fichier serialisation snippet

Powershell : Sérialisation des données

Quelques exemples de sérialisation ou enregistrement (écriture) des données dans un fichier.


# Générer du contenu texte dans un fichier
For( $cpt=1; $cpt -le 4; $cpt++){
   Write-Output &quot;A0$cpt&quot; | Out-File -FilePath &#039;.\fichierA.txt&#039; -Append -Encoding utf8
}</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/classe_abstraite?rev=1775554309&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-07T09:31:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:classe_abstraite</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/classe_abstraite?rev=1775554309&amp;do=diff</link>
        <description>dev python

:TODO_DOCUPDATE:

Les classes abstraites


from abc import ABC abstractmethod

class AbstractShape(ABC):
    @abstractmethod
    def area(self):
        pass 


Références

	*   Tutoriel sur l&#039;usage des classes abstraites en Python
	*  Les classe abstraites en Python (geeksforgeeks.org) (en)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/echappement_accolades_f-strings?rev=1670977171&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-12-14T00:19:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:echappement_accolades_f-strings</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/echappement_accolades_f-strings?rev=1670977171&amp;do=diff</link>
        <description>dev python f-string

Échappement des accolades dans une f-string

Pour pouvoir utiliser le caractère accolade sans qu&#039;il soit interprété par le formatage de la f-string il faut l&#039;échapper en doublant l&#039;accolade:


my_json = f&#039;{{ &quot;name&quot;:{person._name} , &quot;age&quot;:{person._age:02d}  }}&#039;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/mots_cles?rev=1753633859&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-07-27T16:30:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:mots_cles</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/mots_cles?rev=1753633859&amp;do=diff</link>
        <description>dev python keywords

Python : Lister les mots réservés du langage

Depuis l&#039;interpréteur, on peut lister les mots clés Python (ou mots réservés du langage) :


&gt;&gt;&gt; import keyword
&gt;&gt;&gt; keyword.kwlist


Références

	*  Lister les mots clés Python (stackoverflow.com)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/sequences?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:sequences</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/sequences?rev=1612216289&amp;do=diff</link>
        <description>dev python todo

Python: Les séquences

Les séquences regroupent un ensemble de types notamment:

	*  Les listes (list),
	*  Les tuples (tuple);
	*  Les chaînes de caractères (str),
	*  bytes (immuable), et bytearray (mutable)
	*  range objects

Une séquence est un ensemble fini et ordonné d&#039;éléments indicés à partir de 0.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/core/serialisation_json?rev=1732206470&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-21T16:27:50+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:core:serialisation_json</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/core/serialisation_json?rev=1732206470&amp;do=diff</link>
        <description>dev python json serialisation javascript

:TODO_DOCUPDATE:

Sérialiser un type(classe) quelconque en JSON

Si on tente de sérialiser directement une instance d&#039;une classe de son cru via le module json on obtient en général une erreur :

Dans cet exemple le type Memo est une Classe complexe conçue pour une application Flask et permettant d&#039;enregistrer les données dans une base via l&#039;ORM SQLAlchemy</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/conversion_unite_temperature?rev=1658824450&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2022-07-26T08:34:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:conversion_unite_temperature</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/conversion_unite_temperature?rev=1658824450&amp;do=diff</link>
        <description>python conversion temperature

Python : changement d&#039;unité de température

Pint permet d&#039;effectuer de nombreuses conversion d&#039;unités. Ci dessous un exemple de conversion d&#039;une température en degrés Kelvin en degrés Celsius.



from pint import UnitRegistry 

# Initalisation du registre (helper)
ureg = UnitRegistry()

# Précision souhaitée  
ureg.default_format = &#039;.3f&#039;                                                                                                                                  …</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/charger_fichier_csv?rev=1619185181&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-23T13:39:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:jupyter-notebook:charger_fichier_csv</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/jupyter-notebook/charger_fichier_csv?rev=1619185181&amp;do=diff</link>
        <description>dev data jupyter python csv

Jupyter Notebook: Charger des données au format CSV


import pandas as pd

# Load CSV to data frame
df = pd.read_csv(&quot;./data.csv&quot;, encoding=&quot;utf8&quot;, header=None, sep=&quot;,&quot;)


La documentation de pandas détaille les différents paramètres de la méthode à l&#039;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/internationalisation?rev=1672680602&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-01-02T17:30:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:sphinx:internationalisation</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/sphinx/internationalisation?rev=1672680602&amp;do=diff</link>
        <description>dev python sphinx traduction documentation

:TODO_DOCUPDATE:

Sphinx : traduction de la documentation

Sphinx s&#039;appuie sur gettext pour l&#039;internationalisation de l&#039;ensemble des documents produits. De façon générale gettext fait correspondre à un message du programme une chaîne de caractères traduite.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/exemples/serveur-udp?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:esp:esp32:exemples:serveur-udp</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/esp/esp32/exemples/serveur-udp?rev=1612216289&amp;do=diff</link>
        <description>esp32 dev udp

Serveur UDP

L&#039;ESP se connecte au WiFi et écoute en UDP sur le port 3333. Il attend une commande sous forme de chaîne de caractères on/off et allume en ou éteint en fonction la LED intégrée sur le port 2. Ce croquis s&#039;appuie sur l&#039;exemple WiFiUDPClient</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/lua/opentx/exmples/hello-world?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:lua:opentx:exmples:hello-world</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/lua/opentx/exmples/hello-world?rev=1612216289&amp;do=diff</link>
        <description>lua opentx script

Script Lua Hello World pour openTX

Le script Hello World fait parti de la catégorie des scripts s’exécutant une fois à la demande (one time). Pour pouvoir l&#039;executer:

	*  Placez le dans le répertoire /SCRIPTS de la carte SD
	*  Depuis la radiocommande, appuie long sur le bouton menu</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_composition?rev=1754250594&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-03T19:49:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:flask-sqlalchemy:relation_composition</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/flask-sqlalchemy/relation_composition?rev=1754250594&amp;do=diff</link>
        <description>dev python sql sqlalchemy relation

:TODO_DOCUPDATE:

Flask-SQLAlchemy : relation de composition

La relation de composition est une forme particulière de relation one-to-many. Le diagramme UML la représente comme ci-dessous :



	*  Une voiture (le composite) peut contenir un ou plusieurs sièges (les composants);</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/programmation-evenementielle?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:programmation-evenementielle</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/programmation-evenementielle?rev=1612216289&amp;do=diff</link>
        <description>dev conception callback

Programmation événementielle

Dans un paradigme (ou modèle) événementiel, le programme principal est à l&#039;écoute des événements (ou signaux). Lorsque ceux-ci se produisent il se charge d&#039;appeler les fonctions de post-traitement associées ou fonction de rappel (callback). Cela permet de produire un code modulaire. La programmation événementielle est utilisée notamment par les interfaces graphiques.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/test-unitaire?rev=1757327491&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-09-08T10:31:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:test-unitaire</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/test-unitaire?rev=1757327491&amp;do=diff</link>
        <description>dev test unitaire

Les tests unitaires

Les tests unitaires permettent de tester des unités de code: fonctions ou objets.

	*  Oblige à correctement concevoir entrées/sorties des fonctions, les interfaces ou API
	*  Permet d&#039;automatiser les tests, de faire des tests non régression</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/android/definition-des-onclicklisteners?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:android:definition-des-onclicklisteners</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/android/definition-des-onclicklisteners?rev=1612216289&amp;do=diff</link>
        <description>dev android listener ihm

Définition d&#039;un listener onClickListener

Plusieurs solutions existent:

	*  Définition en ligne de la classe, pour les actions contenant peu de code.
	*  Définition d&#039;un attribut privé dans la classe.
	*  Utilisation du fichier XML pour appeler une activité.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/arduino/communications-sans-fil?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:arduino:communications-sans-fil</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/arduino/communications-sans-fil?rev=1612216289&amp;do=diff</link>
        <description>dev arduino communication

Communications sans fil

Quelques notes à propos de différents mode de communication sans fils pouvant être mis en œuvre avec les cartes Arduino.

Transmission Radio

Shield basées sur nRF24L01+ de Nordic Semiconducteur:

	*  portée de 100m a 250Kbps.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/bash/recommandations?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:bash:recommandations</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/bash/recommandations?rev=1612216289&amp;do=diff</link>
        <description>dev shell bash

Recommandations

Quelques conseils pour l&#039;écriture de scripts shell.

	*  Nom du script sans espace ou méta-caractères
	*  Le shabang en début de script pour spécifier l’interpréteur.
	*  Commenter abondamment, créer un cartouche avec une description.</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/js/zoom-et-deplacement-map-svg?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:js:zoom-et-deplacement-map-svg</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/js/zoom-et-deplacement-map-svg?rev=1612216289&amp;do=diff</link>
        <description>dev js svg pan zoom todo

Contrôleur zoom et déplacement sur image SVG

Références

	*  &lt;http://putaindecode.io/fr/articles/js/de-jquery-a-vanillajs/&gt;
	*  &lt;https://www.youtube.com/watch?v=8EEJhxiGoPo&gt;
	*  &lt;http://www.petercollingridge.co.uk/tutorials/svg/interactive/pan-and-zoom/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/rust/edi_rust?rev=1726907609&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-09-21T08:33:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:rust:edi_rust</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/rust/edi_rust?rev=1726907609&amp;do=diff</link>
        <description>dev rust ide edi

:TODO_DOCUPDATE:

EDIs Rust

Rust est pris en charge dans plusieurs environnements de développement intégrés (IDE) notamment :

	*  VIm
	*  Sublime Text 4
	*  VS Code

Références

	*  Les outils pour Rust (rust-lang.org)</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/sql/delete?rev=1730828853&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-05T17:47:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:sql:delete</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/sql/delete?rev=1730828853&amp;do=diff</link>
        <description>dev sql delete

:TODO_DOCUPDATE:

SQL : Supprimer des enregistrements

On supprime les enregistrements (ou lignes d&#039;une table) via la commande DELETE.

Références

	*  &lt;https://docs.postgresql.fr/11/sql-delete.html&gt;
	*  &lt;http://www.lafabriquedecode.com/blog/2013/06/mysql-update-delete-jointures/&gt;
	*  &lt;https://www.w3schools.com/sql/sql_join.asp&gt;
	*  &lt;https://www.mysqltutorial.org/mysql-basics/mysql-delete-join/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/web/ajax?rev=1740498614&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-02-25T15:50:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:web:ajax</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/web/ajax?rev=1740498614&amp;do=diff</link>
        <description>dev web ajax

:TODO_DOCUPDATE:

La méthode AJAX

AJAX pour Asynchronous JavaScript And XML est une méthode qui permet de mettre à jour une partie d&#039;une page web sans avoir à la recharger dans son intégralité. Cette méthode est utilisée pour produire des sites web dynamiques et des applications web riches</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/css/framework/bulma?rev=1755709111&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-20T16:58:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:css:framework:bulma</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/css/framework/bulma?rev=1755709111&amp;do=diff</link>
        <description>dev framework css

Framework CSS Bulma

:TODO:

Références

	*  &lt;https://thelinuxcode.com/level-up-with-bulma-a-modern-css-framework/&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/css/framework/liste?rev=1755708515&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-20T16:48:35+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:css:framework:liste</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/css/framework/liste?rev=1755708515&amp;do=diff</link>
        <description>dev web frtamework css

Frameworks CSS


 Framework          Description courte                  Tailwind CSS       Bas-niveau, hautement configurable  Bootstrap          Framework historique, largement utilisé et intégrant de nombreux composants  Bulma  Repose entièrement sur</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/iot/riot/pwm?rev=1618901949&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-04-20T06:59:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:iot:riot:pwm</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/iot/riot/pwm?rev=1618901949&amp;do=diff</link>
        <description>riot iot pwm todo

RIOT-OS: Le périphérique PWM

RIOT propose un interface virtualisée (ou générique) PWM désignée “périphérique PWM” (periph_pwm ). Le code utilisant cette interface gagne en portabilité, il pourra être compilé vers différentes cibles suportant la génération de signaux PWM. C&#039;est une</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-dl?rev=1612216289&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2021-02-01T21:51:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:php:erreurs:undefined-function-dl</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/php/erreurs/undefined-function-dl?rev=1612216289&amp;do=diff</link>
        <description>dev php php7 erreur debug todo

Php7: Fonction dl() indéfinie

Cette erreur a été rencontrée lors de la migration d&#039;une application web fonctionnant normalement sous Apache/ PHP5 vers une version plus récente Apache/PHP7

Le message d&#039;erreur obtenu:


Fatal error: Uncaught Error: Call to undefined function dl() in /srv/opencourrier/web/php/pear/DB.php:710</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/exemples/lister_fichiers?rev=1728925602&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-10-14T17:06:42+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:exemples:lister_fichiers</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/exemples/lister_fichiers?rev=1728925602&amp;do=diff</link>
        <description>dev code python files directory repertoire fichier list

:TODO_DOCUPDATE:

Python3 : Lister les fichiers d&#039;un répertoire

Références

	*  &lt;https://realpython.com/get-all-files-in-directory-python/&gt;
	*  &lt;https://stackoverflow.com/questions/14176166/list-only-files-in-a-directory&gt;</description>
    </item>
    <item rdf:about="https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/recherche_interactive?rev=1754902306&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-08-11T08:51:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>dev:python:flask:exemples:recherche_interactive</title>
        <link>https://wiki.phobos-net.fr/doku.php/dev/python/flask/exemples/recherche_interactive?rev=1754902306&amp;do=diff</link>
        <description>dev python flask recherche

Flask : Recherche dynamique basé sur HTMX

:TODO:

Références

	*  Recherche dynamique avec HTMX (htmx.org)
	*  Mise en œuvre d&#039;une recherche rapide avec Flask, Bulma et HTMX
	*  vidéo Créer une barre de recherche rapide avec Flask et HTMX (chaine Pretty Printed, youtube.com)</description>
    </item>
</rdf:RDF>
