Mercurial 2.1 : Les phases

Posté par  . Édité par claudex, B16F4RV4RD1N, Benoît Sibaud, NeoX, baud123 et Bruno Michel. Modéré par NeoX. Licence CC By‑SA.
Étiquettes :
39
18
fév.
2012
Gestion de versions

Mercurial, un puissant logiciel de gestion de versions écrit en Python, sort en version 2.1 après 3 mois de développement.
Pour rappel, Mercurial est un logiciel de gestion de version décentralisé, à savoir qu'il permet de travailler en équipe sans avoir besoin d'un serveur centralisé. Tous les développeurs pouvant se synchroniser entre eux, via deux méthodes :

  • pull : réception des modifications d'un dépôt distant.
  • push : envoi des modifications vers un dépôt distant.

Cette souplesse permet de hiérarchiser le développement d'un projet de mille et une façons. Cette souplesse possède un revers, quand l'on doit se synchroniser avec un dépôt distant on a souvent des conflits. Pour les résoudre, les développeurs font appel à deux méthodes :

  • merge : fusion des modifications de deux branches en une seule, les conflits sont résolus par divers outils manuels ou automatiques.
  • rebase, mq, histedit : modification de l'historique des modifications afin de le linéariser ou de le simplifier.

Dans le second cas, modifier son historique peut s'avérer bien plus désastreux que le problème initial ou l'on avait qu'un simple conflit. Git, le principal concurrent de Mercurial qui possède des fonctionnalités et des performances sensiblement identiques, est particulièrement sensible à des erreurs de rebase, car cette fonctionnalité est activé par défaut.

Pour éviter les erreurs de modifications d'historiques, Mercurial 2.1 introduit une nouvelle fonctionnalité : les phases.

GnuTLS ajoute le support de DTLS

Posté par  . Modéré par Xavier Teyssier. Licence CC By‑SA.
Étiquettes :
38
12
avr.
2011
C et C++

GnuTLS est une bibliothèque logicielle libre diffusée sous la licence LGPL 2.1 et plus et écrite en C et C++. GnuTLS implémente les protocoles réseau SSL 3.0, TLS 1.0, TLS 1.1 et TLS 1.2. Ceux-là même utilisés par tous les navigateurs web quand vous surfez en HTTPS.

Une version majeure est en cours de développement, elle ajoute une implémentation du protocole DTLS et améliore la compatibilité avec OpenSSL.

Sortie de Boost 1.46

Posté par  . Modéré par patrick_g.
Étiquettes :
51
23
fév.
2011
Linux

Une nouvelle version de Boost vient de sortir après trois mois de gestation.

Boost est une compilation de pas moins de 104 bibliothèques logicielles multiplateformes et sous licence libre (licence semblable à la Licence_MIT) écrites en C++. Plusieurs bibliothèques ajoutées au standard TR1 ont d'ailleurs pour origine Boost, comme les bibliothèques "array" et "regex".

Ces bibliothèques exploitent généralement de manière intensive la programmation par template, ce qui en font des bibliothèques génériques pour résoudre une large palette de problèmes.

Sortie de Cairo 1.10

Posté par  . Modéré par baud123.
Étiquettes :
23
10
sept.
2010
Gnome
Cairo, une bibliothèque graphique 2D, utilisée par Gtk, le moteur de Firefox, WebkitGtk, vient de sortir une nouvelle version majeure après une période de gestation de deux ans.
Sous le capot, Cairo 1.10 permet de viser plusieurs systèmes de sorties graphiques :
  • Officielles : Émulation Software / Xlib / Quartz / Win32 / Postscript / PDF / PNG / SVG.
  • ou Expérimentales : XCB / BeOS / OS/2 / DirectFB / OpenVG / Qt / Skia / OpenGL / Direct2D.


À noter que la sortie émulée en "Software" a été en grande partie reprogrammée et optimisée, tandis que la version OpenGL a été complètement reprogrammée. La version Direct2D, quant à elle, a été réalisée par l'équipe de Firefox et ne se trouve pas encore dans les dépôts officiels.

Au menu des nouveautés nous pouvons aussi citer :
  • cairo-trace : un système permettant d'enregistrer et relire dans un format lisible et compact toutes les commandes de dessin envoyées à Cairo. Cet outil a permis à l'équipe de Cairo d'optimiser les différentes sorties disponibles ;
  • Le retour du format RGB16 ;
  • La fusion de pixman_region_t et GdkRegion en cairo_region_t ;
  • Une nouvelle API permettant de gérer l'accès au matériel (cairo_device_t)

Schrödinger 1.0.9 est sorti

Posté par  . Modéré par j.
Étiquettes :
23
5
mar.
2010
Audiovisuel
Une nouvelle version de Schrödinger est disponible. Schrödinger est une transposition en C des spécifications du codec vidéo Dirac conçu par la BBC. Plusieurs bibliothèques multimédia telles que GStreamer, FFmpeg utilisent Schrödinger pour compresser et décompresser des vidéos Dirac.

Nouveautés dans la version 1.0.9 :
  • Orc : utilisation du nouveau système d'optimisation Orc en lieu et place de libOil ;
  • Nouvel algorithme de génération des vecteurs changeants, activé par défaut ;
  • Nouvel algorithme CBR (constant bitrate, débit constant), activé par défaut ;
  • Nouvel algorithme de détection de changement de scène, activé par défaut ;
  • Amélioration de la qualité vidéo pour un même niveau de compression ;
  • Nouveau paramétrage "force-profile". Il permet l'accès simplifié à l'un des trois profils VC-2 standardisés (vc2_low_delay, vc2_simple, vc2_main) ;
  • Amélioration de la compression sans perte. Fonctionne de concert avec "force-profile".

Sortie de Vala 0.7.6

Posté par  . Modéré par Nÿco.
Étiquettes :
22
20
sept.
2009
Gnome
Pour rappel, Vala est un langage de programmation orienté objet dont la syntaxe ressemble beaucoup à celle de C#, mais adapté au système GObject utilisé par Gtk et GNOME.
Contrairement à C# le code n'est pas interprété par une machine virtuelle, c'est un langage compilé. Pour être plus précis, le compilateur génère de manière intermédiaire du "C", ce qui permet à un logiciel programmé en Vala d'utiliser facilement des bibliothèques en C, ou à l'inverse à une bibliothèque programmée dans un langage qui s'interface avec du "C", de faire appel à une bibliothèque programmée en Vala.

Dès le début ce nouveau langage apportait nativement des fonctionnalités très intéressantes comme :
  • Les interfaces
  • Les propriétés (spécifique aux GObjects)
  • Les signaux (démocratisé par Qt)
  • Les expressions Lambda
  • Les classe génériques
  • La gestion assistée de la mémoire
  • La gestion des exceptions

Cette nouvelle mouture apporte deux grosses nouveautés :
  • Les closures (version plus puissante des expressions Lambda)
  • Les appels asynchrones

Plus d'informations dans la suite de la dépêche.