Ya fue liberada la nueva version de NetBeans 15 y estas son sus novedades

NetBeans 15 implementa grandes mejoras de rendimiento y soporte

NetBeans 15 elimina la compatibilidad con Windows 95 y 98

La Apache Software Foundation dio a conocer hace poco que ha lanzado la nueva versión de su IDE «Apache NetBeans 15» que llega con las actualizaciones pertinentes de Java, así como también la integración de mejoras de soporte, entre otras cosas más.

Para quienes desconocen de NetBeans, deben saber que este es un IDE bastante popular que proporciona soporte para lenguajes de programación Java SE, Java EE, PHP, C/C ++, JavaScript y Groovy.

Principales novedades de NetBeans 15

En esta nueva versión que se presenta de NetBeans 15 se destaca que se agregó soporte inicial para Jakarta 9.1 y soporte mejorado para GlassFish, además de que se actualizó el compilador Java incorporado de NetBeans nb-javac (javac modificado) y que se agregó la capacidad de conectarse a la base de datos de Amazon Redshift a través del servicio Amazon Athena en el asistente de conexión.

Otro de los cambios que se destaca de esta nueva versión, es la compatibilidad implementada para la etiqueta «@snippet» para incrustar ejemplos de trabajo y fragmentos de código en la documentación de la API a la que se puede acceder con herramientas de validación, resaltado de sintaxis e integración de IDE.

Además de ello, también se destaca que se ha llevado a cabo una optimización del rendimiento, por ejemplo, se ha acelerado significativamente el trabajo del editor de PHP (se tarda la mitad del tiempo en ejecutar un conjunto de pruebas), se ha acelerado en un 20 % la indexación de los repositorios maven locales y se ha acelerado el trabajo de los editores de Java y JavaScript se ha acelerado.

También se destaca la compatibilidad mejorada con los sistemas de compilación Maven y Gradle. Los componentes para trabajar con Gradle se actualizaron a la versión API 7.5 con soporte para Java 18.

Por otra parte, se ha asignado un depurador para el código Groovy en un módulo separado, además de que el analizador se ha actualizado para el lenguaje Groovy.

Se propone una implementación inicial de la API para la gestión de dependencias de proyectos (Project Dependency API) y se ha realizado una gran parte de las correcciones y mejoras relacionadas con el uso de servidores LSP (Protocolo de servidor de idiomas).

De los demás cambios que se destacan de esta nueva versión:

  • Soporte implementado para el autocompletado de expresiones lambda.
  • Se agregó javadoc para la vista previa de JDK 20.
  • Se agregó la capacidad de usar la opción netbeans.javaSupport.enabled para deshabilitar la compatibilidad con el lenguaje Java en NBLS (NetBeans Language Server).
  • Edición de datos mejorada en formato YAML.
  • Se agregó el elemento ‘Abrir en terminal’ al menú contextual del proyecto.
  • Soporte mejorado para las nuevas características de PHP 8.0 y 8.1.
  • Se agregó compatibilidad con la nueva sintaxis para objetos invocables.
  • Las sugerencias en línea están habilitadas de manera predeterminada.
  • Interfaz de comprobación de expresiones regulares mejorada.
  • Interfaz mejorada para descargar y registrar el JDK.
  • Se elimina la compatibilidad con Windows 95 y 98
  • Interfaz de análisis de pila de llamadas mejorada (Stack Trace).

Finalmente si quieres conocer más al respecto de esta nueva versión, puedes consultar los detalles en el siguiente enlace.

¿Cómo instalar Apache NetBeans 15 en Linux?

Para aquellos que quieran obtener esta nueva versión deben descargar el código fuente de la aplicación, la cual podrán obtener desde el siguiente enlace.

Una vez que tengas todo instalado entonces, descompriman el archivo recién descargado en un directorio de su agrado.

Y desde la terminal vamos a ingresar a este directorio y luego ejecuten:

ant

Para construir el IDE de Apache NetBeans. Una vez construido puedes ejecutar el IDE escribiendo

./nbbuild/netbeans/bin/netbeans

También existen otros métodos de instalación con los cuales se pueden apoyar, uno de ellos es con ayuda de los paquetes Snap.

Solo deben contar con el soporte para poder instalar este tipo de paquetes en su sistema. Para realizar la instalación por este método deben teclear el siguiente comando:

sudo snap install netbeans --classic

Otro de los métodos es con ayuda de los paquetes de Flatpak, por lo que deben contar con el soporte para instalar estos paquetes en su sistema.

El comando para realizar la instalación es el siguiente:

flatpak install flathub org.apache.netbeans

from Linux Adictos https://ift.tt/WaeUtbA
via IFTTT

LLVM 15.0 llega con mejoras para diferentes backend, mayor soporte y mas

LLVM 15 implementa mejoras de soporte

LLVM 15.0 también incluye una serie de actualizaciones bastante interesantes para C/C++

Después de seis meses de desarrollo, se dio a conocer el lanzamiento del proyecto LLVM 15.0, en el cual se han realizado una gran cantidad de cambios importantes, así como también que se ha añadido el soporte para nuevos procesadores, arquitecturas y más.

Para quienes desconocen de LLVM, deben saber que este es un compilador compatible con GCC (compiladores, optimizadores y generadores de código) que compila programas en un código de bits intermedio de instrucciones virtuales tipo RISC (una máquina virtual de bajo nivel con un sistema de optimización multinivel).

El pseudocódigo generado puede ser convertido por el compilador JIT en instrucciones de máquina justo en el momento de la ejecución del programa.

Principales novedades de LLVM 15.0

En esta nueva versión que se presenta se destaca que se agregó el soporte para los procesadores Cortex-M85, así como para las arquitecturas Armv9-A, Armv9.1-A y Armv9.2-A, extensiones Armv8.1-M PACBTI-M.

Otro de los cambios que se destaca es que se ha agregado un backend experimental de DirectX que admite el formato DXIL (DirectX Intermediate Language) utilizado para los sombreadores de DirectX. El backend se habilita a través de la opción de compilación «-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=DirectX».

Libc++ continúa implementando nuevas funciones de los estándares C++20 y C++2b , incluida la finalización de la implementación de la biblioteca «format» y la versión experimental propuesta de la biblioteca «ranges».

Por la parte de los cambios relacionados con Clang 15.0 se menciona que se agregó soporte experimental para el lenguaje similar a C HLSL (Lenguaje de sombreado de alto nivel), que se usa para escribir sombreadores a partir de DirectX 9, así como también la traducción de sombreadores HLSL al formato binario DXIL (Lenguaje intermedio de DirectX) compatible con DirectX 12, así como en el formato SPIR-V utilizado por Vulkan. En el futuro, planean implementar soporte para el formato DXBC (DirectX Bytecode) utilizado en DirectX 9-11. La implementación la proporciona Microsoft y se basa en el compilador DirectX Shader Compiler, abierto en 2017, creado sobre la base de LLVM 3.7.

También se menciona que se continúa con el trabajo para admitir futuros estándares C2X y C++23. Implementado para el lenguaje C: el atributo noreturn , las palabras clave false y true, el tipo _BitInt(N) para enteros de una profundidad de bits dada, las macros *_WIDTH , el prefijo u8 para caracteres UTF-8.

Además de ello, se ha implementado para C++: fusión de módulos, aislamiento ABI de miembros de funciones, inicialización dinámica ordenada de variables no locales en módulo, operadores de índices multidimensionales, auto(x), variables no literales, goto y etiquetas en funciones declaradas como constexpr, secuencias de escape delimitadas, caracteres de escape con nombre.

Para los sistemas basados ​​en la arquitectura x86, se agregó el indicador «-fzero-call-used-regs», que proporciona la puesta a cero de todos los registros de la CPU utilizados en la función antes de devolver el control desde la función. Esta opción permite protegerse contra la fuga de información de las funciones y reducir la cantidad de bloques adecuados para crear dispositivos ROP (programación orientada al retorno) en exploits en aproximadamente un 20 %.

Se ha implementado la aleatorización de la ubicación de la memoria de las estructuras para el código C, lo que complica la extracción de datos de las estructuras en caso de explotación de vulnerabilidades. La aleatorización se activa y desactiva con los atributos randomize_layout y no_randomize_layout, y requiere que la semilla se configure con el indicador «-frandomize-layout-seed» o «-frandomize-layout-seed-file» para garantizar compilaciones repetibles.

De los demás cambios que se destacan:

  • Capacidades ampliadas relacionadas con la compatibilidad con OpenCL y OpenMP. Se agregó soporte para la extensión de OpenCL cl_khr_subgroup_rotate.
  • Backends mejorados para arquitecturas x86, PowerPC y RISC-V.
    Capacidades mejoradas del enlazador LLD y el depurador LLDB.
  • Se agregó el indicador «-fstrict-flex-arrays=<arg>» con el que puede controlar los límites de un elemento de matriz flexible en estructuras (Miembros de matriz flexibl, una matriz de tamaño indefinido al final de la estructura).
  • Se agregó la opción «-Warray-parameter» para advertir sobre la anulación de funciones con declaraciones de argumentos no coincidentes asociadas con matrices de longitud fija y variable.
  • Compatibilidad mejorada con MSVC.
  • Se agregó soporte para la «función #pragma y «#pragma alloc_text» proporcionada en MSVC.
  • Se agregó soporte para banderas /JMC y /JMC compatibles con MSVC.
  • Se agregó el indicador «-m[no-]rdpru» para controlar el uso de la instrucción RDPRU, compatible desde los procesadores AMD Zen2.
  • Se agregó el indicador «-mfunction-return=thunk-extern» para proteger contra la vulnerabilidad RETBLEED , que funciona agregando una secuencia de instrucciones que excluye la participación del mecanismo de ejecución especulativa para saltos indirectos.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

from Linux Adictos https://ift.tt/TJSuEYA
via IFTTT

OpenWrt 22.03.0 llega con una nueva app de Firewall, soporte para más de 180 dispositivos y mas

OpenWrt-22.03 añade soporte a 180 dispositivos nuevos

OpenWrt-22.03 es la primera versión estable de la serie

Después de un año de desarrollo, se dio a conocer el lanzamiento de una importante nueva versión de la distribución OpenWrt 22.03.0, dirigida a aplicaciones en varios dispositivos de red, como enrutadores, conmutadores y puntos de acceso.

OpenWrt es compatible con muchas plataformas y arquitecturas diferentes y tiene un sistema de compilación que le permite realizar una compilación cruzada fácil y conveniente, incluidos varios componentes en el ensamblaje, lo que facilita la creación de un firmware listo para usar o una imagen de disco adaptada a tareas específicas con el conjunto deseado de paquetes preinstalados.

Principales novedades de OpenWrt 22.03.0

En esta nueva versión que se presenta de OpenWrt 22.03.0, de manera predeterminada, está habilitada una nueva aplicación de administración de firewall, fw4 (Firewall4), basada en el filtro de paquetes nftables.

La sintaxis de los archivos de configuración para el firewall (/etc/config/firewall) y la interfaz uci no han cambiado: fw4 puede actuar como un reemplazo transparente para el kit de herramientas fw3 basado en iptables utilizado anteriormente. La excepción son las reglas agregadas manualmente (/etc/firewall.user), que deberán reescribirse para nftables (fw4 le permite agregar sus propios bloques de reglas, pero en formato nftables).

Otro de los cambios que se destacan es que el antiguo kit de herramientas basado en iptables se eliminó de las imágenes predeterminadas, pero se puede recuperar usando el administrador de paquetes opkg o el kit de herramientas Image Builder. También se proporcionan los envoltorios iptables-nft, arptables-nft, ebtables-nft y xtables-nft, lo que le permite crear reglas para nftables utilizando la sintaxis de iptables anterior.

Además de ello, también se destaca que se agregó soporte para más de 180 dispositivos nuevos, incluidos 15 dispositivos basados ​​en el chip MediaTek MT7915 compatible con Wi-Fi 6 (IEEE 802.11ax). El número total de dispositivos compatibles ha llegado a 1580.

Se ha continuado con la transferencia de plataformas de destino al uso del subsistema kernel DSA (Distributed Switch Architecture), que proporciona herramientas para configurar y administrar cascadas de conmutadores Ethernet interconectados, utilizando mecanismos para configurar interfaces de red convencionales (iproute2, ifconfig).

DSA se puede usar para configurar puertos y VLAN en lugar de la herramienta swconfig que se ofrecía anteriormente, pero no todos los controladores de conmutador son compatibles con DSA todavía. En la versión propuesta, DSA está habilitado para las plataformas bcm53xx (controladores traducidos para todas las placas), lantiq (SoC basados ​​en xrx200 y vr9) y sunxi (placas Bananapi Lamobo R1). Anteriormente, las plataformas ath79 (TP-Link TL-WR941ND), bcm4908, gemini, kirkwood, mediatek, mvebu, octeon, ramips (mt7621) y realtek se transfirieron a DSA.

La interfaz web de LuCI tiene un modo oscuro, de forma predeterminada, el modo se habilita automáticamente según la configuración del navegador, pero también se puede forzar a habilitar a través del menú «Sistema» -> «Sistema» -> «Idioma y estilo».

Se resolvió el problema del año 2038 causado por un desbordamiento de tipo time_t de 32 bits (el contador de tiempo de época de 32 bits se desbordará el 19 de enero de 2038). En la nueva versión, la rama musl 1.2.x se utiliza como biblioteca estándar, en la que, en arquitecturas de 32 bits, los antiguos contadores de tiempo de 32 bits se reemplazan por los de 64 bits (el tipo time_t se reemplaza por time64_t). En los sistemas de 64 bits, el tipo time64_t se usa inicialmente (el contador se desbordará en 292 mil millones de años). El cambio al nuevo tipo ha cambiado la ABI, lo que requerirá una reconstrucción de todos los programas de 32 bits asociados con musl libc (no se requiere reconstrucción para los programas de 64 bits).

Por otra parte, también podremos encontrar las versiones de paquete actualizadas, incluido el kernel de Linux 5.10.138 con pila inalámbrica cfg80211/mac80211 portada del kernel 5.15.58 (anteriormente se ofrecía el kernel 5.4 con pila inalámbrica de la rama 5.10), musl libc 1.2.3, glibc 2.34, gcc 11.2.0, binutils 2.37, hostapd 2.10, dnsmasq 2.86, dropbear 2022.82, busybox 1.35.0.

Y por último, y no menos importante, se menciona que se han descontinuado las compilaciones para la plataforma arc770 (Synopsys DesignWare ARC 770D).

Si quieres conocer más al respecto sobre los detalles que se integran a esta nueva liberación del firmware OpenWrt 22.03.0 puedes consultar la información en la publicación original en el siguiente enlace.

Descarga la nueva versión de OpenWrt 22.03.0

Las compilaciones de esta nueva versión están preparadas para 35 plataformas diferentes, de las cuales se pueden obtener los paquetes de actualización desde el siguiente enlace.

from Linux Adictos https://ift.tt/94VPLFI
via IFTTT