BugshunterJérémy Jeanson - chasseur de bugs depuis .net 1.0uuid:3e7d31c9-efca-43d6-b624-1f757c5ecade;id=222018-04-23T17:01:06Z47TFS 2018, les Builds XAML c’est fini ?2018-04-22T18:43:00Z

Ces dernières années, nombreux ont été les développeurs avec qui j’ai pu échanger au sujet des Builds TFS et des définitions XAML. Ils avaient peur de la disparition des Builds Workflow Foundation 4 et malheureusement, j’enfonçais le clou en conseillant de migrer les définitions XAML existantes.

N’aillez plus peur, c’est fini ! TFS 2018 ne les supporte plus. La migration n’est plus une option, mais une obligation.

Ma façon de présenter la chose de sembler sèche ou cynique. Il faut comprendre que je suis tiraillé entre deux solutions qui me plaisent beaucoup :

  • L’orchestration XAML était très visuelle, et on pouvait y faire vraiment n’importe quoi (peut-être trop par rapport à la version précédente). Oui je suis fan de Workflow Foundation et je l’assume. Mais il était un peu surdimensionné par rapport au besoin de TFS.
  • Le nouveau moteur est très ludique, et utilisable sur toute plateforme (aucun besoin de connaitre le moteur qui se trouve en dessous). Un navigateur web suffit pour l’utiliser.

L’an dernier l’annonce de changement était déjà claire. Ce n’est donc pas une surprise.

Comment faire sans Builds XAML?

Lors de votre migration, vous rencontrerez de deux difficultés majeures :

  • Une fois sur TFS 2018, vos Builds XAML ne sont plus disponibles.
  • Il n’existe pas d’outils de migration/transformation des définitions XAML. Il faut reproduire les définitions de Builds à la main.

Avant de passer à TFS 2018, trois options s’offrent à vous :

  • Documentez le fonctionnement attendu par vos Builds pour permettre de les créer sur TFS2018
  • Profiter d’une version précédente de TFS (2015, 2017) pour consulter l’ancienne définition et construire la nouvelle.
  • Garder une copie de votre serveur TFS pour consulter les définitions de Builds (hors réseau).

Après la migration, il sera trop tard.

Bon courage !

46Vérifier un déploiement HTTPS2018-04-20T16:28:00Z

Quand on passe un site en HTTPS, il convient de vérifier la qualité de son déploiement. Pour cela, il existe de nombreux services gratuits.

Ceux-ci ont vocation à vous informer sur :

  • La situation de votre certificat.
  • Le niveau de sécurité offert.
  • Les failles de sécurité potentiellement exploitables.
45Comment fonctionne une attaque “Man in the middle” contre HTTPS ?2018-04-20T10:54:00Z

Comme son nom l’indique, une attaque de type Man in the middle consiste à se mettre entre deux tiers (le client et le serveur).

Mais comment est-ce que cela peut fonctionner contre un site en HTTPS ? N’a ton pas un protocole HTTPS qui a vocation à crypter de bout en bout nos échanges ?44Utiliser une vieille application .net 3.5 sans installer les Framework 2, 3.0 et 3.52018-04-11T19:28:00Z

Même si le .net Framework 4 a déjà 8 ans, il a encore aujourd’hui des applications qui ne l’utilisent pas. Si on les exécute sur un PC récent, on obtiendra donc le message suivant :

app_framework3.5_sur4_01


Installer .net 2, 3.0 et 3.5 juste pour une application, ça vous tente vraiment ? (pas moi)

Mais que peut-on faire si l’on ne dispose pas des sources de l’application pour cibler .net 4 ?

Heureusement, il existe une solution qui date un peu, mais qui est toujours aussi efficace : utiliser la configuration de l’application pour indiquer qu’elle supporte le Framework 4.0.

Si votre application n’a pas de fichier de configuration, il suffit d’en créer un. Le nom de celui-ci doit respecter la nomenclature suivante : NomDeLApplication.exe.config

Le contenu à inclure est le suivant :


<?xml version="1.0" encoding="utf-8" ?>
<configuration>  
    <startup>
        <supportedRuntime version="v4.0" />
    </startup>
</configuration>

Si l’application a déjà un fichier de configuration, il suffit d’ajouter le nœud startup.


Cette configuration ne fonctionne qu’avec une application dont le code n’a pas besoin de modifications pour fonctionner avec .net 4. Soit la majorité des applications.

43Démystifions le HTTPS (stop la confiance aveugle !)2018-04-11T10:28:00Z

Aujourd’hui, un site qui n’est pas en HTTPS est considéré comme n’étant pas sécurisé, il finit par avoir mauvaise réputation (même s’il n’expose pas de données sensibles). On finit donc par voir beaucoup de sites en HTTPS, presque trop …

Si bien que la demande de certificats pour faire du SSL/TLS a explosée. Pour répondre à la demande, et offrir toujours plus de sécurité à tous, plusieurs autorités délivrent des certificats gratuitement (la durée de vie des certificats est juste réduite, et le niveau de cryptage est parfois limité). Les autorités qui délivrent ces certificats vérifient juste que le demandeur du certificat est propriétaire du nom de domaine qui sera utilisé. Pour un certificat payant, les vérifications sont plus poussées (documents liés à l’entreprise demandeuse ou la personne physique, justificatifs de domiciliation …).

Tout cela est bien compliqué pour l’utilisateur lambda. Que devons-nous lui faire comprendre ?

42Azure Days le 24 avril !2018-04-08T15:51:00Z

header_Azure_NEW

Le prochain évènement Azure Days aura lieu de 24 Avril 2018 au Campus de Microsoft.

Pour avoir plus d’informations, cela se passe ici. 41Xamarin.Forms et images dans un Pivot UWP sans coder un control custom, c’est possible ?2018-04-08T09:28:30Z

Avec Xamarin.Forms, on peut faire presque tout. Quand on ne peut avoir le rendu souhaité, il suffit de surcharger un control de base et à lui fournir un Renderer custom.

Pour un développeur Xamarin, l’approche est courante. Au fil du temps, elle est devenue une habitude.

Pour un développeur XAML, cette approche est aberrante. Pendant des années, on a appris aux développeurs XAML (WPF, Silverlight, WinRT, UWP) qu’il ne fallait pas coder un control custom quand celui-ci n’avait pas un comportement différent que celui du control de base. Pour le rendu, on peut créer des Styles et substituer des Templates. Et en fonction de la plateforme, on a des Triggers, des Behaviors ou des Attached Properties.

Heureusement, Xamarin permet de cumuler les avantages de Xamarin.Forms et du Xaml UWP.

40Problème de rendu du control Frame de Xamarin.Forms avec UWP2018-04-02T08:21:34Z

Avec Xamarin.Forms, reproduire les cards sous Androïd, n’est pas très compliqué.

Voici un exemple de Style Xamarin.Forms qui fait très bien l’affaire :

<Style TargetType="Frame">
    <Setter Property="HasShadow" Value="True"/>
    <Setter Property="CornerRadius" Value="4"/>
    <Setter Property="Padding" Value="10"/>
    <Setter Property="Margin">
        <Setter.Value>
            <OnPlatform
                x:TypeArguments="Thickness"
                iOS="10,8"
                Android="10,8"
                WinPhone="0,8"
                />
        </Setter.Value>
    </Setter>
    <Setter Property="OutlineColor" Value="{StaticResource BorderColor}"/>
    <Setter Property="BackgroundColor" Value="{StaticResource BackgroundColor}"/>
</Style> 

Sur Androïd, le rendu est très propre :

xamarinpanel01

Sur UWP, par contre on a un souci. Il manque un l’angle en bas à droite.

xamarinpanel02

39Un livre gratuit pour se lancer dans le Serverless !2018-03-22T07:20:00Z

Serverless-PacktPour ce qui sont intéressés par le Serverless et Azure Functions, voici un livre qui va vous ravir : Azure Serverless Computing Cookbook.

Un ouvrage pratique et très sympa pour se lancer avec Azure Functions. Et en plus, il est gratuit !

Pour le téléchargement, cela se passe ici.38Pourquoi utiliser les datacenters français Azure et Office 365 ?2018-03-21T19:28:00Z

Cette petite question toute bête n’est pour autant pas si évidente. Pourtant, pour toute personne qui utilise déjà Azure et Office 365, la question se pose réellement.