↩ Accueil

Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierProgrammez!

Microsoft ouvre un blog pour ses développeurs pour Go

2 avril 2024 à 12:20

Microsoft a lancé ce blog pour informer de son travail sur Go. Dans le premier et unique post publié au moment où nous écrivons ces lignes, Microsoft explique : Notre objectif avec ce blog est d'informer les utilisateurs et les clients de ce que nous faisons pour garantir que Go soit bien pris en charge sur Azure. Nous envisageons cette plate-forme comme un espace de discussions significatives, d'opportunités d'apprentissage et de partage des meilleures pratiques pour les développeurs Go déployant sur Azure.

Une partie importante du travail de Microsoft concernant Go consiste à rendre les applications Go plus compatibles avec les API et les services Windows. Cela inclut des efforts pour prendre en charge les fonctionnalités de débogage, de profilage, de dépannage et de surveillance, garantissant ainsi une intégration transparente avec l'environnement Windows.

Par ailleurs Microsoft souligne consacrer des ressources considérables à rendre Go crypto compatible FIPS 140-2. Pour ce faire, Microsoft exploite OpenSSL et Windows CNG comme bibliothèques cryptographiques sous-jacentes. Un travail qui veut souligner son engagement à améliorer la sécurité et la fiabilité des applications Go dans les environnements d'entreprise, précise encore Microsoft.

Site : devblogs.microsoft.com/go/

Catégorie actualité: 
Image actualité AMP: 
  •  

Lapce : un éditeur de code écrit en Rust

2 avril 2024 à 13:22

Encore un éditeur de code direz-vous ? Et vous n'aurez pas tort. Toutefois Lapce présente des caractéristiques intéressantes. Outre le fait qu'il soit écrit en Rust, ce qui à priori lui assure à la fois rapidité et stabilité, il dispose d'une interface graphique native avec accélération GPU. De fait les développeurs de Lapce le disent rapide comme l'éclair, en ajoutant que tout délai d'attente, que ce soit lors du lancement ou de la frappe d'une touche sera considéré comme un bug et corrigé. Lapce est disponible pour Windows, Linux et macOS.

Lapce prend en charge le protocole LSP (Language Server Prorocol) pour offrir des fonctionnalités de code intelligentes telles que : l'achèvement, les diagnostics et les actions de code. Il dispose d'une architecture de plugins pour étendre ses fonctionnalités. Pour écrire un plugin, tout langage capable de compiler au format WASI peut être utilisé. Par exemple, C, Rust ou AssemblyScript.

Les amateurs de Wim apprécieront que Lapce propose un mode Wim.

Très intéressant, Lapce permet de se connecter de façon transparente à une machine distante via SSH. Et il permet d'ouvrir un terminal dans votre répertoire de travail sans quitter l'éditeur.

Lapce vit seulement ses débuts. Il est en version 0.3.1 au moment où nous écrivons ces lignes, mais il semble prometteur.

Lapce est un logiciel libre sous licence Apache 2.0, disponible sur GitHub.

Il dispose d'un site officiel, lapce.dev sur lequel on trouvera sa documentation.

Catégorie actualité: 
Image actualité AMP: 
  •  

Les équipes informatiques perdent trop de temps sur des vulnérabilités qui ne les concernent pas, selon un rapport JFrog

3 avril 2024 à 10:09

JFrog, créateur de la JFrog DevOps Platform, publie les résultats de son rapport annuel sur les chaînes d'approvisionnement en logiciels 2024 (Software Supply Chain State of the Union 2024). Ce rapport identifie les tendances émergentes, les risques, ainsi que les meilleures pratiques permettant de sécuriser les chaînes d’approvisionnement logiciels des entreprises.  

« Les équipes DevSecOps du monde entier doivent s’adapter au dynamisme du monde de la sécurité logicielle, un domaine où la satisfaction de la demande passe fréquemment par des innovations et où l’adoption de l’IA progresse à un rythme effréné », déclare Yoav Landman, CTO et cofondateur de JFrog. « Nos données fournissent aux équipes de sécurité et de développement un aperçu complet d’un écosystème logiciel en évolution rapide. Elles identifient notamment des erreurs quant à l’évaluation de vulnérabilités notoires, offrent des perspectives sur les implications de l’utilisation d’IA génératives pour écrire du code, ou signalent les paquets les plus risqués qu’une organisation pourrait utiliser en développement, tout cela pour favoriser la prise de décisions plus éclairées. »

Le rapport JFrog Software Supply Chain State of the Union 2024 réunit des données d’utilisation de développeurs de plus de 7 000 organisations issues de JFrog Artifactory ; des analyses de vulnérabilités courantes produites par l’équipe JFrog Security Research ; ainsi que des données issues d’enquêtes tierces menées auprès de 1 200 professionnels des nouvelles technologies du monde entier. Tous ces éléments permettent d’offrir plus de contexte sur le paysage vaste et dynamique de la chaîne d’approvisionnement logicielle. 

Voilà les principaux enseignements de l’enquête :

  • Les CVEs sont parfois trompeuses : les évaluations traditionnelles du CVSS s’intéressent uniquement à la sévérité de la vulnérabilité au lieu de la probabilité qu’elle soit exploitée – une analyse qui nécessite la prise en compte du contexte. L’équipe JFrog Security Research a abaissé la sévérité de 85 % des CVEs classées comme Critiques et de 73 % des CVEs classées comme Elevées en moyenne après avoir analysé 212 CVEs notoires découvertes en 2023. En outre, JFrog a découvert qu’au sein du top 100 des images publiées par la communauté Docker Hub, 74 % des CVEs courantes dont le niveau de criticité était classé comme Élevé et Critique par le CVSS n’étaient pas exploitables.
  • Les attaques en déni (Dos) de service règnent en maître : 44 % des 212 CVEs notoires analysées par l’équipe JFrog Security Research risquaient de favoriser des attaques DoS, tandis que 17 % d’entre elles étaient susceptibles d’ouvrir la voie à l’exécution de code à distance (RCE). Il s’agit en quelque sorte d’une bonne nouvelle pour les équipes de sécurité, car cette dernière pratique a un impact bien plus important par rapport aux attaques DoS en raison de leur capacité à offrir un accès complet à des systèmes backend.
  • La sécurité pèse sur la productivité : 40 % des personnes interrogées affirment qu’il faut généralement une semaine ou plus pour obtenir l’autorisation d’utiliser un nouveau package/bibliothèque, ce qui retarde le lancement de nouvelles applications ou de mises à jour logicielles. En outre, les équipes de sécurité consacrent près de 25 % de leur temps à corriger des vulnérabilités, même lorsque celles-ci sont potentiellement surévaluées ou inexploitables au vu du contexte.
  • Une exécution des contrôles de sécurité sans cohérence pendant le cycle de développement des logiciels (SLDC) :  l’industrie semble équitablement partagée quant au moment idéal pour réaliser les tests sur la sécurité des applications au sein du cycle de développement. Tout ceci souligne l’importance de conjuguer les approches « shift left » et « shift right ». Ainsi, 42 % des développeurs affirment qu’il vaut mieux réaliser des analyses de sécurité pendant l’écriture du code, tandis que 41 % d’entre eux estiment qu’il est préférable de scanner les nouveaux paquets avant de les introduire dans leur organisation depuis un référentiel de logiciels open source (OSS).
  • La prolifération des outils de sécurité se poursuit : près de la moitié (47 %) des informaticiens utilisent entre quatre et neuf solutions de sécurité pour les applications. Cependant, un tiers des répondants et des professionnels de la sécurité (33 %) en utilisent au moins 10. Cela confirme la tendance du marché à vouloir consolider les outils de sécurité et à s'éloigner des solutions ponctuelles.
  • L’utilisation disproportionnée d’outils d’IA/ML pour la sécurité : alors que 90 % des personnes interrogées indiquent que leur organisation propose actuellement des outils d’intelligence artificielle/de machine learning pour soutenir leurs efforts d’analyse et de correction des vulnérabilités, seul 1 professionnel sur 3 (32 %) affirme que ces outils sont utilisés pour écrire du code. Cet écart suggère que la majorité des entreprises se méfient encore des vulnérabilités potentielles que le code développé par une IA générative (Gen AI) pourrait introduire dans leurs logiciels.

« Les vulnérabilités augmentent d’année en année, mais cela ne veut pas nécessairement dire qu’il en est de même de leur gravité. Il est clair que les équipes informatiques sont prêtes à investir dans de nouveaux outils pour renforcer leur sécurité. Cependant, pour protéger de bout en bout le cycle de développement des logiciels, il est essentiel que les organisations sachent où placer ces outils, comment utiliser le temps de leurs équipes, et comment rationaliser leurs processus », déclare Shachar Menashe, Sr. Director, JFrog Security Research. « Nous avons conçu ce rapport pour aller au-delà de l’analyse des tendances, et proposer à la fois des conseils et des éclairages sur les technologies exploitées par les dirigeants pour prendre des décisions, qu’’il s’agisse de navigation assistée par l’IA, de code malveillant ou de solutions de sécurité. »

Le rapport complet Software Supply Chain State of the Union 2024 (18 pages, en anglais) est disponible au téléchargement ici.

Catégorie actualité: 
Image actualité AMP: 
  •  

Red Hat Openshift 4.1 est disponible

3 avril 2024 à 11:31

Red Hat annonce que sa plateforme Red Hat OpenShift 4.15 est désormais disponible au grand public. Cette toute dernière version, qui s’appuie sur Kubernetes 1.28 et CRI-O 1.28, se concentre essentiellement sur la plateforme centrale, la périphérie et la virtualisation, tout en accélérant le développement et la livraison d’applications modernes dans le cloud hybride grâce à une plateforme fiable, cohérente et complète.

Une liste complète des innovations et des mises à jour de Red Hat OpenShift 4.15 peut être consultée dans les notes de version de Red Hat OpenShift 4.15.

Catégorie actualité: 
Image actualité AMP: 
  •  

Google Chrome et WebAssembly : JavaScript Promise Integration entre en phase d'essai

3 avril 2024 à 11:50

JavaScript Promise Integration (JSPI) est une API qui permet au code séquentiel synchrone compilé sur WebAssembly d'accéder aux API Web asynchrones. De nombreuses API Web sont conçues en termes de promesses JavaScript : au lieu d'effectuer immédiatement l'opération demandée, elles renvoient une promesse de le faire. Lorsque l'action est finalement exécutée, l'exécuteur de tâches du navigateur appelle tous les rappels avec la promesse. JSPI s'intègre à cette architecture pour permettre à une application WebAssembly d'être suspendue lorsque la promesse est renvoyée et de reprendre lorsque la promesse est résolue.

De Chrome 123 - version du navigateur au moment où nous écrivons ces lignes - à Chrome 128, JSPI est disponible en version d'essai.

L'extrait de code ci-dessous, qui est un programme C qui calcule la séquence de Fibonacci en externalisant l'ajout d'une fonction JavaScript, illustre comment utiliser cette fonctionnalité.

// This is C code.
long promiseFib(long x) {
  if (x == 0)
    return 0;
  if (x == 1)
    return 1;
  // This is where the C code calls asynchronous JavaScript.
  return promiseAdd(promiseFib(x - 1), promiseFib(x - 2));
}

// Addition artificially wrapped in a Promise.
EM_ASYNC_JS(long, promiseAdd, (long x, long y), {
  // This is asynchronous JavaScript code.
  return Promise.resolve(x+y);
});

JSPI est spécifié ici

Catégorie actualité: 
Image actualité AMP: 
  •  

Meetup #41 : non, Cobol n'est pas mort !

Par : admin
3 avril 2024 à 17:54

Meetup spécial retour vers le passé !

Session 1 : Introduction au développement COBOL avec GnuCOBOL et SuperBOL

Cet exposé sera l'occasion d'expliquer pourquoi nous nous sommes intéressés à un langage vieux de plus de 60 ans, dont l'utilisation est très sous-estimée chez les jeunes développeurs. Je présenterai l'écosystème open-source qui se crée autour de COBOL, avec en particulier le compilateur GnuCOBOL et le mode VSCode SuperBOL conçu par OCamlPro. L'exposé se terminera par une session d'utilisation montrant le fonctionnement de ces outils sur un programme COBOL.

Session 2 : La transpilation dans GnuCobol par Samuel Belondrade et Christophe Villeneuve

Le 23 avril 2024

Accueil à 18h30
Début des sessions vers 18h45-18h50

Inscriptions

Lieu:
Meritis
36 Av. Pierre 1er de Serbie · Paris

  •  

Wordpress 6.5 est disponible

Par : ftonic
4 avril 2024 à 07:50

Le célèbre CMS est disponible en version 6.5 depuis quelques jours. Cette version ajoute de belles évolutions :

- support du format AVIF : ce format devient peu à peu un standard des sites web avec Webp

- bibliothèque de polices intégrée : Font Library arrive finalement avec la 6.5

- Plugin Dependencies : mieux gérer les dépendances et les différentes extensions de son WP

- performances en hausse : important travail sur l'optimisation dans les recoins du CMS

- meilleur contrôle et modification des images d'arrière-plan

- nouveau Data View

Pour tous les détails : https://wordpress.org/news/2024/04/regina/

Catégorie actualité: 
Image actualité AMP: 
  •  

Opera One Developer devient le premier navigateur à intégrer des LLM

4 avril 2024 à 13:07

Opera One Developer devient le premier navigateur à intégrer des LLM. Utiliser un LLM (Large Language Model) implique généralement l'envoi de données à un serveur. Les LLM locaux traitent les instructions directement sur la machine, sans transmettre les données à l'extérieur de l'ordinateur.

Aujourd'hui, dans le cadre du programme AI Feature Drops, le navigateur intègre un support expérimental couvrant plus de 150 variantes locales de modèles de langage (LLM) provenant d'environ 50 familles. Cela permet aux développeurs d'accéder et de gérer ces LLM locaux directement depuis un navigateur établi. Parmi les variantes disponibles :

  • Llama de Meta
  • Gemma de Google
  • Mixtral de Mistral AI
  • Vicuna

Les modèles sont disponibles à compter de ce jour dans la version Developer d'Opera One alimentée par les frameworks ollama et llama.cpp.

L'emploi de modèles locaux à grande échelle garantit la conservation des données utilisateur sur leur appareil, évitant ainsi l'envoi d'informations à un serveur. Ce nouvel outil est actuellement en phase de test dans le cadre du programme Opera One, permettant d'expérimenter les premières versions des fonctionnalités d'intelligence artificielle grâce au programme AI Feature Drops.

À compter d'aujourd'hui, les développeurs de la communauté Opera One auront la liberté de choisir le modèle de leur choix pour le traitement de leurs données, offrant ainsi un avantage aux premiers utilisateurs qui pourraient avoir des préférences spécifiques en matière de modèle.

En choisissant un LLM local, il sera téléchargé dans l'ordinateur de l'utilisateur. Chacun d'entre eux nécessite entre 2 et 10 Go d'espace de stockage local et qu'un LLM local est susceptible d'être considérablement plus lent qu'un LLM basé sur un serveur, car cela dépend des capacités de calcul du matériel. Le LLM local sera utilisé à la place d'Aria, le navigateur natif d'Opera AI, jusqu'à ce que le chat soit relancé avec Aria ou qu'Aria soit simplement réactivé.

Pour télécharger Opera One Developer, suivant ce lien.

Catégorie actualité: 
Image actualité AMP: 
  •  

Bun 1.1

4 avril 2024 à 13:40

Bun est une boîte à outils rapide tout-en-un pour exécuter, créer, tester et déboguer JavaScript et TypeScript, d'un script unique à une application full-stack. Bun a l'ambition de remplacer node.js et la compatibilité avec ce dernier est une priorité absolue pour le projet Bun. 1700 commits après Bun 1.0, Bun vient de sortir en version 1.1. Voici quelques-unes des nouveautés.

Prise en charge de Windows

Cette nouvelle version permet d'exécuter Bun sur Windows 10 et versions ultérieures. Les reponsables du projet soulignent : Bun sur Windows réussit 98 % de notre propre suite de tests pour Bun sur macOS et Linux. Cela signifie que tout, du runtime au testeur, en passant par le gestionnaire de packages et le bundler, tout fonctionne sous Windows.

Les grands projets démarrent 2 fois plus vite

Bun prend en charge JavaScript, TypeScript et JSX, alimenté par le propre transpilateur de Bun écrit dans un code natif  optimisé. Depuis Bun 1.0, les développeurs ont implémenté un cache adressable par le contenu pour les fichiers de plus de 50 Ko afin d'éviter la surcharge de performances liée à la transpilation répétée des mêmes fichiers. Cela permet aux outils de ligne de commande, comme tsc, de fonctionner jusqu'à 2 fois plus rapidement que dans Bun 1.0.

Bun 1.1 est doté d'un Shell

Bun est désormais un shell multiplateforme – comme bash, mais aussi sous Windows. Le Shell de Bun est un lexer, un analyseur et un interpréteur qui implémente un langage de programmation de type bash, ainsi qu'une sélection d'utilitaires de base tels que ls, rm, et cat. Le shell peut également être exécuté à partir de JavaScript et TypeScript, à l'aide de l' API Bun.$

Bun peut être téléchargé et installé depuis son site officiel.  Bun est un logiciel libre sous licence MIT, disponible également sur GitHub.

Catégorie actualité: 
Image actualité AMP: 
  •  

Jpegli : une bibliothèque de codage JPEG avancée proposée par Google

5 avril 2024 à 11:05

Avec l'intention de diminuer le temps de chargement des ppages web, Google publie la bibliothèque  de codage JPEG Jpegli qui offre une amélioration du taux de compression de 35 %

Selon Google, Jpegli est une nouvelle bibliothèque de codage JPEG conçue pour être plus rapide, plus efficace et plus agréable visuellement que le JPEG traditionnel. Elle utilise un certain nombre de nouvelles techniques pour atteindre ces objectifs, notamment :

  • Elle fournit à la fois un encodeur et un décodeur entièrement interopérables conformes à la norme JPEG d'origine et à son formalisme 8 bits le plus conventionnel, ainsi qu'une compatibilité API/ABI avec libjpeg-turbo et MozJPEG.
  • Des résultats de haute qualité . Lorsque les images sont compressées ou décompressées via Jpegli, des calculs plus précis et psychovisuellement efficaces sont effectués et les images paraîtront plus claires et comporteront moins d'artefacts observables.
  • Rapide . Tout en améliorant le rapport qualité d'image/densité de compression, la vitesse de codage de Jpegli est comparable aux approches traditionnelles, telles que libjpeg-turbo et MozJPEG. Cela signifie que les développeurs Web peuvent facilement intégrer Jpegli dans leurs flux de travail existants sans sacrifier les performances de vitesse de codage ou l'utilisation de la mémoire.
  • 10+ bits . Jpegli peut être codé avec plus de 10 bits par composant. Les solutions de codage JPEG traditionnelles n'offrent qu'une dynamique de 8 bits par composant, provoquant des artefacts de bandes visibles dans des gradients lents. Le codage 10+ bits de Jpegli s'effectue dans le formalisme 8 bits d'origine et les images résultantes sont entièrement interopérables avec les visionneuses 8 bits. Des dynamiques de plus de 10 bits sont disponibles en tant qu'extension API et des modifications du code d'application sont nécessaires pour en bénéficier.
  • Plus dense : Jpegli compresse les images plus efficacement que les codecs JPEG traditionnels, ce qui permet d'économiser de la bande passante et de l'espace de stockage, et d'accélérer les pages Web.

Google souligne que Jpegli fonctionne en utilisant un certain nombre de nouvelles techniques pour réduire le bruit et améliorer la qualité de l'image ; heuristiques de quantification principalement adaptatives de l' implémentation de référence JPEG XL , sélection améliorée de la matrice de quantification, calcul précis des résultats intermédiaires et possibilité d'utiliser un espace colorimétrique plus avancé . Toutes les nouvelles méthodes ont été soigneusement conçues pour utiliser le formalisme JPEG 8 bits traditionnel, de sorte que les images nouvellement compressées sont compatibles avec les visualiseurs JPEG existants tels que les navigateurs, les logiciels de traitement d'images et autres.

Jpegli est un logiciel libre publié dans le cadre du projet libjlx qui est sous licence BSD 3-Clause "New" or "Revised" License. Jpegli est disponible sur GitHub.

Catégorie actualité: 
Image actualité AMP: 
  •  

.NET Aspire Preview 4

5 avril 2024 à 11:14

.NET Aspire est une pile permettant de créer des applications cloud natives résilientes, observables et configurables avec .NET. Il comprend un ensemble organisé de composants améliorés pour le cloud natif en incluant par défaut la télémétrie, la résilience, la configuration et les vérifications de l'état. Combiné à une expérience de développeur local sophistiquée mais simple, .NET Aspire facilite la découverte, l'acquisition et la configuration des dépendances essentielles pour les applications cloud natives dès le premier jour ainsi que le jour 100, souligne Microsoft.

.NET Aspire Preview 4, qui vient de sortir, introduit des améliorations significatives dans diverses parties de la pile, notamment en répondant aux fonctionnalités très demandées par la communauté. Les domaines d'intérêt notables incluent les améliorations des composants Entity Framework, la prise en charge de Podman et les modifications apportées au modèle d'application pour choisir facilement entre l'utilisation des ressources existantes ou l'approvisionnement de nouvelles.

On notera encore une nouvelle expérience utilisateur avec la mise à jour du tableau de bord. Le nouveau tableau de bord est conçu pour réduire l'espace utilisé par les onglets de navigation et faciliter la navigation entre les journaux, les métriques et les traces.

A noter encore, le tableau de bord .NET Aspire peut désormais être exécuté en tant qu'image de conteneur autonome. Cela facilite l'utilisation du tableau de bord pour gérer les applications qui s'exécutent sur une autre machine ou dans un autre environnement. Le tableau de bord peut être utilisé comme collecteur et visualiseur OTLP pour les applications qui souhaitent envoyer et visualiser des données de télémétrie.

Catégorie actualité: 
Image actualité AMP: 
  •  

Microsoft Copilot pour Azure SQL Database

5 avril 2024 à 11:22

Microsoft a annoncé l'introduction de nouvelles compétences Copilot pour Azure SQL Database. Ce nouveau Copilot est, au moment où nous écrivons ces lignes, en phase bêta privée. Il est possible de s'y inscrire via ce lien.

Microsoft assure que Copilot dans Azure peut vous aider à rationaliser la conception, le fonctionnement, l’optimisation et l’intégrité des applications basées sur Azure SQL Database, et qu'il améliore la productivité dans le portail Azure en proposant une conversion du langage naturel vers SQL et une auto-assistance pour l'administration de la base de données.

Les nouvelles compétences Copilot peuvent être invoquées dans deux expériences de portail Azure :

  • Langage naturel vers SQL : cette expérience au sein de l'éditeur de requêtes du portail Azure pour Azure SQL Database traduit les requêtes en langage naturel en SQL, rendant les interactions avec la base de données plus intuitives.
  • Intégration Azure Copilot : cette expérience ajoute des compétences Azure SQL Database à Microsoft Copilot pour Azure , fournit aux clients une assistance autoguidée et leur permet de gérer leurs bases de données et de résoudre les problèmes de manière indépendante.

Cette intégration signifie que Copilot peut répondre aux questions avec des invites telles que :

  • Quels agents ont répertorié plus de deux propriétés à vendre ?
  • Dites-moi le rang de chaque agent par ventes de propriété et nom de l'exposition, ventes totales et rang
  • Montrez-moi un tableau récapitulatif croisé qui affiche le nombre de propriétés vendues chaque année de 2020 à 2023.

De plus, le Copilot intègre des données et formule des réponses applicables à l'aide de la documentation publique, du schéma de base de données, des vues de gestion dynamique, des vues de catalogue et des diagnostics de prise en charge Azure.

 

Catégorie actualité: 
Image actualité AMP: 
  •  

Qt 6.7 supporte C++20

8 avril 2024 à 11:49

Le projet Qt vient de publier la version 6.7 de cette fameuse librairie. Il s'agit d'une version riche au niveau des graphiques 2D, 3D et vectoriels. Ces nouveautés sont décrites dans la vidéo ci-dessous. Nous remarquons aussi que Qt 6.7 supporte C++20.

Qt et C++20

Le projet Qt fait remarquer que C++20  n'est pas exigé pour construire ou utiliser Qt. D'autant plus que C++20 reste optionnel et expérimental pour de nombreuses chaînes d'outils de compilateur. Toutefois il est désormais possible d'utiliser Qt avec C++20.

Pour les développeurs de Qt, Un ajout utile au langage C++20 est la comparaison à trois voies operator<=>(), également connue sous le nom d'opérateur « soucoupe ». Lors de l'implémentation de cet opérateur, les types doivent spécifier leur catégorie de classement. Dans Qt 6.7, les développeurs ont ajouté les classes Qt::{strong,weak,partial}_ordering comme implémentations compatibles avec C++17 des types std::*_ordering respectifs. Pour les auteurs de types, Qt 6.7 fournit des macros d'assistance qui peuvent être utilisées pour implémenter des opérateurs relationnels. Ces macros sont étendues dans le code C++20 et se ramènent (fallback) aux six opérateurs dans le code C++17.

Pour les développeurs de Qt, un autre ajout utile de C++20 est sdt:span. Ils l'utilisent eux-mêmes et ils otn souhaité le rendre disponible aux utilisateurs de Qt grâce à QSpan. En tant que représentation non propriétaire d'une séquence contiguë d'objets, un span est peu coûteux à construire et à passer par des appels de fonction, et avec QSpan il y a maintenant une implémentation C++17 de ce type.

Catégorie actualité: 
Image actualité AMP: 
  •  

Un tas de code chaud pour améliorer les performances de la JVM

8 avril 2024 à 15:10

Courant mars 2024, une proposition, basée sur JEP 197: Segmented Code Cache et JEP 165: Compiler Control a été publiée sur openjdk.org. L'idée de cette proposition est d'étendre le cache de code segmenté avec un nouveau tas de code « chaud » facultatif pour accueillir de manière compacte une partie des méthodes non profilées, ceci afin d'améliorer l'exécution de code Java. L'idée est aussi d'étendre le mécanisme de contrôle du compilateur pour marquer certaines méthodes comme étant chaudes afin qu'elles soient compilées dans le tas de code chaud. Par code chaud on entend du code fréquemment exécuté au sein d'une application.

Le mécanisme permettra ainsi d'isoler le code qui est connu pour être chaud et de ce fait réduira il réduira la fragmentation du code optimisé. La proposition par du constat suivant :

Certaines applications peuvent perdre leurs performances en raison de l'énorme cache de code JVM. Cela se produit si plusieurs conditions sont remplies :

  1. Une grande partie du code a été compilé par le compilateur JIT (des centaines de mégaoctets, des gigaoctets).
  2. Il existe une grande quantité de code chaud.
  3. Le code vraiment important (chaud) est dispersé dans le cache de code.
  4. Le processeur se trouve pénalisé pour l'exécution de grandes quantités de code dispersé.

L'auteur de la proposition souligne que sur les systèmes où ce problème est important, il ne peut pas être résolu actuellement par d'autres moyens tels que des pages volumineuses. Il souligne encore que le ralentissement dépend de la quantité de code chaud, de sa rareté et du type de processeur. Ce ralentissement simulé dans les benchmarks peut atteindre des dizaines de pour cent.

La proposition ne vise pas une version spécifique de Java. Il n'est toutefois pas impossible qu'une première implémentation de prévisualisation de ce tas de code chaud arrive avec Java 23 qui sortira en septembre.

Site : openjdk.org/jeps/8328186

Catégorie actualité: 
Image actualité AMP: 
  •  

Oracle GraalVM pour JDK 22

8 avril 2024 à 15:19

Dans la foulée de la sortie de Java 22, Oracle a publié GraalVM pour JDK 22. Outre les mises à jour des performances, de la stabilité et des fonctionnalités, Oracle GraalVM pour JDK 22 inclut la prise en charge de nombreuses propositions d'amélioration du JDK (JEP) , y compris les améliorations en version préliminaire. La capture ci-dessous résume la prise en charge du JDK 22 JEP lors de l'utilisation de Graal JIT sur la JVM et lors de l'utilisation de la compilation anticipée de GraalVM Native Image.

  • 423:Region Pinning for G1
  • 447:Statements before super(...) (Preview)
  • 454:Foreign Function & Memory API
  • 456:Unnamed Variables & Patterns
  • 457:Class-File API (Preview)
  • 458:Launch Multi-File Source-Code Programs
  • 459:String Templates (Second Preview)
  • 460:Vector API (Seventh Incubator)
  • 461:Stream Gatherers (Preview)
  • 462:Structured Concurrency (Second Preview)
  • 463:Implicitly Declared Classes and Instance Main Methods (Second Preview)
  • 464:Scoped Values (Second Preview)

Il est à noter Oracle GraalVM pour JDK 22 n'est pas une version de support à long terme (LTS). En tant que telle, elle ne recevra donc des mises à jour que jusqu'à ce qu'elle soit remplacé dans six mois par Oracle GraalVM pour JDK 23. Pour mémoire, Oracle GraalVM pour JDK 21 (publié le 19 septembre 2023) est la version LTS la plus récente.

Catégorie actualité: 
Image actualité AMP: 
  •  

Meetup #41 : non, Cobol n'est pas mort !

9 avril 2024 à 10:33

Notre meetup #41 vous propose un retour vers le passé sur le thème 'Non, Cobol n'est pas mort'.

2 sessions vous sont proposées :

Session 1 : Introduction au développement COBOL avec GnuCOBOL et SuperBOL

Cet exposé sera l'occasion d'expliquer pourquoi nous nous sommes intéressés à un langage vieux de plus de 60 ans, dont l'utilisation est très sous-estimée chez les jeunes développeurs. Je présenterai l'écosystème open-source qui se crée autour de COBOL, avec en particulier le compilateur GnuCOBOL et le mode VSCode SuperBOL conçu par OCamlPro. L'exposé se terminera par une session d'utilisation montrant le fonctionnement de ces outils sur un programme COBOL.

Session 2 : La transpilation dans GnuCobol par Samuel Belondrade et Christophe Villeneuve

Le 23 avril 2024

Accueil à 18h30
Début des sessions vers 18h45-18h50

Inscriptions

Lieu:
Meritis
36 Av. Pierre 1er de Serbie · Paris

Catégorie actualité: 
Image actualité AMP: 
  •  

CodeSonar Version 8.1 supporte 6 nouveaux langages

9 avril 2024 à 10:47

CodeSecure, distribué en France par ISIT, a annoncé aujourd'hui une nouvelle version majeure pour CodeSonar, une plate-forme SAST de sécurisation des logiciels de produits.

CodeSonar 8.1 étend l’approche centrée sur les développeurs en matière de sécurité des produits pour inclure la prise en charge des langages Kotlin, Python, Go, Rust, JavaScript et TypeScript. En plus de C/C++, Java et C#, CodeSonar inclut désormais les langages embarqués émergents centrés sur la sécurité ainsi que les langages modernes centrés sur le Web pour couvrir le développement d'applications de bout en bout, le tout sous une seule application SAST.

De nombreux exploits de produits très médiatisés ont entraîné des changements significatifs dans la manière dont les équipes de développement de produits abordent la sécurisation de leur code. Ces tendances DevSecOps incluent :

·        Faire de SAST une solution centrée sur les développeurs pour aborder la sécurité dès le départ

·        Tout en minimisant les perturbations du flux de travail  

·        Manager des équipes de développement géographiquement dispersées 

·        Solution de plateforme SAST unique pour des mesures, des rapports et une gestion des vulnérabilités cohérents

« La sécurisation des logiciels de produits est une préoccupation majeure pour chaque organisation à l'ère du numérique », a déclaré Vince Arneja, directeur des produits chez CodeSecure. « Avec CodeSonar 8.1, nous ne répondons pas seulement aux besoins actuels en matière de sécurité ; nous anticipons les défis de demain. Notre plateforme permet aux développeurs et aux professionnels de la sécurité de garder une longueur d'avance sur les menaces sans sacrifier la rapidité de mise sur le marché. »

CodeSonar 8.1 veut répondre à ces défis avec une plate-forme SAST tout-en-un qui s'appuie sur la principale analyse centrée sur la sécurité.

·        Langages : CodeSonar prend désormais en charge un large éventail de langages de programmation, notamment C/C++, Java, C#, Kotlin, Python, Go, Rust, JavaScript et TypeScript. Cette évolution permet aux développeurs de tirer parti des capacités d'analyse avancées de CodeSonar sur un large éventail de projets et de technologies. 

·        Systèmes d'exploitation : que vous développiez pour Windows, Linux, un système d'exploitation en temps réel ou du bare metal. Une meilleure expression que bare metal ? CodeSonar garantit la compatibilité sur différentes plates-formes.

·        Compilateurs : CodeSonar prend en charge plus de 90 compilateurs, dont clang, GCC, Microsoft, IAR, Tasking, QNX, WindRiver.

·        CodeSonar s'adapte au langage de votre choix, fournissant une analyse complète en C/C++, Java, C#, Kotlin, Python, Go, Rust, JavaScript et TypeScript. 

·        Vérificateurs : avec des centaines de vérificateurs intégrés, CodeSonar examine le code à la recherche de vulnérabilités potentielles, d'erreurs de codage et de violations de conformité. Des fuites de mémoire aux débordements de mémoire tampon, les capacités avancées d'analyse statique de CodeSonar aident à identifier les problèmes dès le début du cycle de développement, économisant ainsi du temps et des ressources à long terme. 

·        Plateformes hôtes : que vous préfériez des solutions basées sur le cloud, un déploiement sur site ou des environnements entièrement isolés, CodeSonar propose des options de plate-forme hôte flexibles pour répondre à vos besoins. Cette adaptabilité garantit que les équipes de toutes tailles, zones géographiques et secteurs peuvent tirer parti de la puissance de CodeSonar.

·        Intégrations : CodeSonar s'intègre de manière transparente aux produits de développement et aux pipelines CI/CD populaires, rationalisant ainsi le processus de révision et de déploiement du code. Des plugins IDE aux intégrations Jenkins GitHub et GitLab, CodeSonar s'intègre parfaitement dans votre chaîne d'outils existante, améliorant ainsi la productivité et la collaboration des développeurs. 

·        Normes de codage : CodeSonar aide les organisations à respecter les exigences réglementaires telles que MISRA, CERT et CWE, garantissant la qualité et la sécurité du code à chaque étape du cycle de vie de développement. 

·        Modèles de déploiement : prise en charge du déploiement sur site pour un contrôle et une sécurité améliorés ou d'une solution basée sur le cloud pour l'évolutivité et l'accessibilité, CodeSonar propose des modèles de déploiement qui répondent aux exigences uniques de votre organisation. Cela inclut la prise en charge d’environnements entièrement isolés si aucune connectivité vers l’extérieur n’est autorisée. 

CodeSonar 8.1 est disponible dès maintenant : contact - at - isit.fr et isit.fr/fr

Catégorie actualité: 
Image actualité AMP: 
  •  

Canonical annonce la disponibilité générale de Charmed MongoDB

9 avril 2024 à 10:51

Canonical annonce la sortie de Charmed MongoDB, une solution dotée de fonctions d'automatisation, de capacités multi-cloud et d’un support complet.

Charmed MongoDB déploie et exécute MongoDB sur des environnements physiques, des machines virtuelles et sur le cloud public ou privé comme AWS, Azure, OpenStack et VMWare. Les fonctions d'automatisation de la  solution simplifient son déploiement, sa mise à l'échelle, sa conception et sa gestion. De plus, Charmed MongoDB offre des fonctionnalités telles que la haute disponibilité, le sharding, la journalisation des audits, la sauvegarde, la restauration, la gestion des utilisateurs et le TLS (Transport Layer Security).

"Dans le cadre de notre portefeuille de solutions de données open source, Charmed MongoDB est conçu pour répondre aux exigences des déploiements modernes", a déclaré Cédric Gegout, vice-président des produits chez Canonical. "Les organisations peuvent déployer Charmed MongoDB en toute confiance, sachant qu'elles sont soutenues par l'engagement de Canonical en matière de performance dans n'importe quel environnement cloud, ainsi que par 10 ans de support et de maintenance de la sécurité."

Charmed MongoDB fait partie d’une série de solutions de données intégrées dans le portefeuille de solutions de données de Canonical. Dans le cadre du plan Ubuntu Pro + Support les clients bénéficient d’un support d'entreprise par nœud, qui couvre toutes les applications du portefeuille tels que Charmed Kafka et Charmed Spark. Le support propose aussi des solutions supplémentaires pour l'IA proposées par Canonical, notamment Charmed Kubeflow et Charmed ML Flow.

Pour plus d’informations sur Charmed MongoDB : canonical.com/data/mongodb

Catégorie actualité: 
Image actualité AMP: 
  •  

Plus de 170 000 utilisateurs touchés par une attaque malveillante utilisant une fausse infrastructure Python

9 avril 2024 à 11:02

L'équipe de recherche de Checkmarx a récemment découvert une campagne d'attaques ciblant la chaîne d'approvisionnement logicielle et notamment l'organisation GitHub Top.gg (une communauté de plus de 170 000 utilisateurs) ainsi que plusieurs développeurs individuels. Les pirates ont utilisé plusieurs TTP (Tactiques, Techniques et Procédures), notamment la prise de contrôle de comptes via des cookies de navigateur volés, du code malveillant avec des commits vérifiés, un miroir Python personnalisé et des packages malveillants publiés dans le registre PyPi.

Points clés

  1. Plusieurs TTP ont été combinées pour lancer une attaque silencieuse ciblant la chaîne d'approvisionnement logicielle, dans le but de dérober aux victimes des informations sensibles.
  2. De nombreux outils open source malveillants piégés ont été créés pour tromper les victimes, issus très probablement de moteurs de recherche.
  3. Un attaquant a distribué une dépendance malveillante hébergée sur une fausse infrastructure Python, la liant à des projets populaires sur GitHub et à des packages Python légitimes. Les pirates ont pris des comptes GitHub, publié des packages Python malveillants et utilisé des stratagèmes d'ingénierie sociale.
  4. La charge utile malveillante s’est déroulée en plusieurs étapes, collectant des mots de passe, des informations d'identification et autres données critiques à partir de systèmes infectés pour les exfiltrer vers l'infrastructure de l'attaquant.
  5. Dans cette attaque, les pirates ont déployé un faux miroir de paquets Python, utilisé pour déployer une copie empoisonnée du paquet populaire « colorama ».
  6. Parmi les victimes se trouve également un contributeur top.gg, dont le code repository de la communauté top.gg (170K+ membres) a été affecté par l'attaque.

J’ai été piraté

 « J'utilisais mon ordinateur portable, juste le temps de manipuler python sur ma ligne de commande, jusqu'à ce que je voie un message bizarre disant que quelque chose n’allait pas avec colorama sur python. Je ne m'en suis pas soucié, habitué à ce genre de choses mais quelques minutes plus tard, je recevais le même message d'erreur mais dans un script différent. J’ai alors su que je me faisais pirater. »

Ce récit provient du récent article de blog de Mohammed Dief, un développeur Python victime d'une attaque de logiciel malveillant sophistiqué lors du clonage du référentiel « maleduque/Valorant-Checker ».

L'histoire de Mohammed n'est qu'un exemple de l'impact considérable de cette campagne malveillante. Son instigateur a utilisé une sournoise stratégie pour propager le malware via des référentiels GitHub malveillants.

Faux miroir Python

L'infrastructure de l'attaque comprenait un site Web qui semblait être un miroir de package Python et enregistré sous le domaine « files[.] pypihosted[.] org ».

Cette sélection de domaine est un typosquat astucieux du miroir officiel de Python « files.pythonhosted.org », l'endroit où les fichiers d'artefacts officiels des paquets PyPi sont généralement stockés.

L’attaquant a utilisé une fonctionnalité dans pip (gestionnaire de paquets pour Python) où il est possible de spécifier une URL pour récupérer la dépendance d’un package et a utilisé son faux miroir Python pour télécharger des packages. 

Héberger un « colorama » empoisonné

Ils ont ensuite pris Colorama (un outil très populaire avec 150+ millions de téléchargements mensuels), l'ont copié et y ont inséré du code malveillant puis dissimulé la charge utile nuisible à l'aide d'un space-padding et hébergé cette version modifiée sur leur faux miroir de domaine typosquatté. Cette stratégie rend beaucoup plus difficile l'identification de la nature nuisible du paquet, car il semble s'agir d'une dépendance légitime.

Prise de contrôle de compte GitHub

La portée des pirates s'est étendue au-delà de la création de référentiels malveillants via leurs propres comptes. Ils ont réussi à détourner des comptes GitHub de bonne réputation et à utiliser les ressources de ces comptes pour contribuer à des commits malveillants.

L'une des victimes est le compte editor-syntax sur GitHub, également mainteneur de Top.gg GitHub et disposant d'autorisations d'écriture sur les dépôts git de Top.gg.

En contrôlant ce compte de confiance, l'attaquant a effectué un commit malveillant dans le  référentiel top-gg/python-sdk à l'aide de l'identité GitHub volée de editor-syntax. Il a ajouté des instructions pour télécharger la version empoisonnée de colorama à partir du faux miroir Python. Il a également utilisé ce compte pour mettre en vedette plusieurs dépôts GitHub malveillants afin d'augmenter leur visibilité et leur crédibilité.

Prise de contrôle de compte via des cookies volés

Le compte GitHub de « editor-syntax » a probablement été piraté par le biais de cookies volés. L'attaquant a eu accès aux cookies de session du compte, ce qui lui a permis de contourner l'authentification et d'effectuer des activités malveillantes à l'aide de l'interface utilisateur GitHub. Cette méthode de prise de contrôle de compte est particulièrement préoccupante, car elle ne nécessite pas que l'attaquant connaisse le mot de passe du compte.

Le 3 mars 2024, des utilisateurs ont alerté « editor-syntax » sur le chat Discord de la communauté au sujet d’activités malveillantes provenant de son compte. « editor-syntax » a été assez secoué lorsqu'il s'est rendu compte de ce qui s'était passé via son compte GitHub et de l'ampleur et l'impact de l'attaque.

Il est intéressant de noter que la technique de Typosquatting de l'attaquant était si convaincante que même un utilisateur de GitHub en a été victime sans se rendre compte qu'il était attaqué. Lorsque le domaine malveillant, piphosted[.] org », est tombé en panne, l'utilisateur s’est plaint du problème sans se rendre compte qu'il s'agissait d'un hôte pour des charges utiles malveillantes.

Une aiguille dans une botte de foin

Pour dissimuler encore plus ses intentions, l'attaquant a utilisé une approche stratégique lors de la validation des commits apportés aux nombreux référentiels malveillants. Plusieurs fichiers ont été comités simultanément, y compris le fichier requirements contenant le lien malveillant, ainsi que d'autres fichiers légitimes. Cette décision visait à minimiser les risques de détection, le lien malveillant se fondrait ainsi dans les dépendances légitimes, réduisant la probabilité que les utilisateurs repèrent l'anomalie lors d'un examen superficiel des modifications validées.

Plongez dans le paquet malveillant

En plus de propager le malware par le biais de référentiels GitHub malveillants, l'attaquant a également utilisé un package Python appelé « yocolor » pour distribuer davantage le package « colorama », utilisant la même technique de typosquatting, c’est à dire en hébergeant le paquet malveillant sur le domaine « files[.] pypihosted[.] org » et en utilisant un nom identique à celui du paquet légitime « colorama ».

En manipulant le processus d'installation du package et en exploitant la confiance des utilisateurs dans l'écosystème du package Python, l'attaquant s'est assuré que le package malveillant « colorama » serait installé chaque fois que la dépendance malveillante était spécifiée dans les exigences du projet. Cette tactique a permis à l'attaquant de contourner les soupçons et d'infiltrer les systèmes de développeurs peu méfiants qui s'appuyaient sur l'intégrité du système de packaging Python.

Stage 1

La première étape est celle où l'utilisateur télécharge le dépôt ou le package malveillant qui contient la dépendance malveillante - « colorama » à partir du domaine typosquatté, « files[.] pypihosted.org ».

Stage 2

Le package malveillant « colorama » contient un code identique à celui du package légitime, à l'exception d'un court extrait supplémentaire de code malveillant. Initialement, ce code se trouvait dans le fichier « colorama/tests/__init__.py », mais l'attaquant l'a ensuite déplacé vers « colorama/init.py », probablement pour s'assurer qu’il soit exécuté de manière plus fiable. Ce code prépare le terrain aux phases suivantes de l'attaque.

L'attaquant a utilisé une technique astucieuse pour cacher la charge utile malveillante dans le code. Il a utilisé une quantité importante d'espaces blancs pour pousser le code malveillant hors de l'écran, obligeant la personne examinant rapidement les fichiers sources du paquet à les faire défiler horizontalement et pendant une période prolongée avant de découvrir le contenu malveillant caché.

Ce code récupère et exécute un autre morceau de code Python à partir de « hxxps[ :]//pypihosted[.] org/version », qui installe les bibliothèques nécessaires et déchiffre les données codées en dur à l'aide de la bibliothèque « fernet ». Le code déchiffré recherche ensuite un interpréteur Python valide et exécute un autre extrait de code obfusqué enregistré dans un fichier temporaire.

Stage 3

Le logiciel malveillant progresse davantage, récupérant du code Python obfusqué supplémentaire à partir d'un autre lien externe : hxxp[ :]//162[.] 248[.] 100[.] 217/inj, et l'exécute à l'aide de « exec ».

Stage 4

Après analyse, il est clair que l'attaquant a réfléchi à l'obscurcissement de son code. Des techniques telles que l'utilisation de chaînes de caractères chinois et japonais, la compression zlib et les noms trompeurs de variables ne sont que quelques-unes des techniques utilisées pour compliquer l'analyse et la compréhension du code.

Le code simplifié vérifie le système d'exploitation de l'hôte compromis et sélectionne un dossier et un nom de fichier aléatoires pour héberger le code Python malveillant final, qui est récupéré à partir de « hxxp[ :]//162[.] 248[.] 100.217[ :]80/gr[b](http ://162.248.100.217/grb). »

Un mécanisme de persistance est également utilisé modifiant le registre Windows pour créer une nouvelle clé d'exécution, ce qui garantit que le code Python malveillant est exécuté chaque fois que le système est redémarré. Cela permet au malware de maintenir sa présence sur le système compromis même après un redémarrage.

Stage 5

La dernière étape du malware, récupérée sur le serveur distant, révèle l'étendue réelle de ses capacités de vol de données. Ciblant un large éventail d'applications logicielles populaires, il est destiné à voler des informations sensibles :

Données du navigateur : le malware cible un large éventail de navigateurs Web, notamment Opera, Chrome, Brave, Vivaldi, Yandex et Edge. Il recherche des répertoires spécifiques associés à chaque navigateur et tente de voler des données sensibles telles que les cookies, les informations de remplissage automatique, l'historique de navigation, les signets, les cartes de crédit et les identifiants de connexion.

Données Discord : Le code cible spécifiquement Discord en recherchant des répertoires et des fichiers liés. Il tente de localiser et de décrypter les tokens Discord, qui peuvent être utilisés pour obtenir un accès non autorisé au compte Discord de la victime.

Portefeuilles de crypto-monnaies : Le malware comprend une liste de portefeuilles de crypto-monnaies qu'il vise à voler dans le système de la victime. Il recherche des répertoires spécifiques associés à chaque portefeuille et tente de voler les fichiers liés au portefeuille. Les données du portefeuille volé sont ensuite compressées dans des fichiers ZIP et téléchargées sur le serveur de l'attaquant.

Sessions Telegram : Le malware tente également de voler les données des sessions Telegram. Il y recherche des répertoires et des fichiers dans le but de capturer les informations de session de la victime. En accédant aux sessions Telegram, l'attaquant pourrait potentiellement obtenir un accès non autorisé au compte Telegram et aux communications de la victime.

Fichiers informatiques : le logiciel malveillant comprend un composant voleur de fichiers qui recherche des fichiers avec des mots-clés spécifiques dans leurs noms ou extensions. Il cible les répertoires tels que Bureau, Téléchargements, Documents et Fichiers récents.

Données Instagram : le logiciel malveillant tente de voler des informations sensibles sur le profil Instagram de la victime en exploitant le token de session Instagram. Il envoie des requêtes à l'API Instagram à l'aide du token de session volé pour récupérer divers détails de compte.

Une analyse plus approfondie de la charge utile finale révèle que le malware comprend également un composant d'enregistrement de frappe. Il capture les frappes de la victime et les enregistre dans un fichier, qui est ensuite téléchargé sur le serveur de l'attaquant. Cette capacité permet à l'attaquant de surveiller et d'enregistrer les saisies de la victime, exposant potentiellement des informations sensibles telles que des mots de passe, des messages personnels et des détails financiers.

Les données volées sont exfiltrées vers le serveur de l'attaquant à l'aide de diverses techniques. Le code comprend des fonctions permettant de télécharger des fichiers vers des services de partage de fichiers anonymes tels que GoFile et Anonfiles. Il envoie également les informations volées au serveur de l'attaquant à l'aide de requêtes HTTP, ainsi que des identifiants uniques tels que l'ID matériel ou l'adresse IP pour suivre la victime.

Conclusion

Cette campagne est un excellent exemple des tactiques sophistiquées employées par les pirates pour distribuer des malwares via des plateformes de confiance comme PyPI et GitHub.

Cet incident souligne l'importance de la vigilance lors de l'installation de paquets et de dépôts, même à partir de sources fiables. Il est essentiel d'examiner minutieusement les dépendances, de surveiller les activités réseau suspectes et de maintenir des pratiques de sécurité robustes pour atténuer le risque.

Alors que la communauté de la cybersécurité continue de découvrir et d'analyser ces menaces, la collaboration et le partage d'informations restent essentiels dans la lutte contre les acteurs malveillants ciblant la chaîne d'approvisionnement logicielle.

Tal Folkman, Yehuda Gelb, Jossef Harush Kadouri, Tzachi Zornshtain
Checkmar
cyber-criminalité
Mots clés Google: 
  •  

IntelliJ IDEA 2024.1

9 avril 2024 à 11:29

JetBrains a annoncé la disponibilité d'IntelliJ IDEA 2024.1. Il s'agit d'une version très riche. Voici quelques-unes des nouveautés les plus remarquables parmi celles qui sont communues à toutes les éditions.

Prise en charge des fonctionnalités de Java 22

IntelliJ IDEA 2024.1 prend en charge l'ensemble de fonctionnalités de JDK 22, sorti en mars 2024, Cette prise en charge inclut l'itération finale des variables et des modèles sans nom, la deuxième version preview des modèles de chaînes et des classes déclarées implicitement, et les méthodes d'instance main. De plus, cette mise à jour apporte la prise en charge des nouvelles instructions précédant super(…) dans leur version preview. 

Nouveau terminal

IntelliJ IDEA 2024.1 propose un terminal entièrement remanié, avec des améliorations visuelles et fonctionnelles qui simplifient les tâches en ligne de commande. Ce nouveau terminal est en bêta pour le moment

Injections de langage dans les modèles de chaînes

Lors de l'écriture de code Java, IntelliJ IDEA 2024.1 introduit la possibilité d'injecter des langages dans des modèles de chaînes. Pour ce faire, vous pouvez utiliser des annotations, qui sélectionnent automatiquement le langage requis, ou utiliser l'action d'intention Inject language or reference (Alt+Entrée) pour sélectionner manuellement un langage dans la liste. Si vous utilisez cette dernière méthode, l'IDE vous proposera d'insérer l'annotation de langage pour vous. Une fois l'injection effectuée, vous pouvez de nouveau appeler la liste des actions d'intention et choisir d'ouvrir et de modifier le fragment injecté dans un volet d'éditeur séparé.

Catégorie actualité: 
Image actualité AMP: 
  •  

Le GitHub’s Innovation Graph a été mis à jour avec les données Q4 2023

10 avril 2024 à 09:56

Le GitHub’s Innovation Graph a été mis à jour avec de nouvelles données du Q4 2023, fournissant ainsi quatre années complètes de données mondiales sur le développement de logiciels, sur huit métriques : les push Git, les référentiels, les développeurs, les organisations, les langages de programmation, les licences, les sujets et les collaborateurs économiques.

Parmi les grandes tendances, on remarque :

  • Alors que l'IA est devenue plus populaire, les développeurs ont accru leur documentation de projet, une hausse qui pourrait être attribuée à l'utilisation généralisée d'outils basés sur le chat tels que GitHub Copilot Chat et ChatGPT.
  • Les développeurs utilisent l'Advent of Code comme une opportunité pour apprendre des langages de programmation plus obscurs, notamment le COBOL, la base numérique de près de la moitié de toutes les institutions financières.

Site : GitHub’s Innovation Graph

Catégorie actualité: 
Image actualité AMP: 
  •  
❌
❌