Novedades

[...]

Ebxve8X.png

Developers
  • El comando sudo en macOS no tiene habilitado el logging por defecto. Para habilitarlo ahora hace falta eliminar la línea Defaults !log_allowed desde el archivo de configuración sudoers.
  • Ahora los contenedores de grupo de aplicaciones en ~/Library/Group Containers están protegidos por la Protección de la Integridad del Sistema.
  • Nueva API de traducciones.
  • Mejoras en App Intents.
  • Actualizaciones de Core ML.
  • Nueva API para el uso compartido de una ventana durante una videoconferencia.
  • Nuevas opciones de animaciones en Mac Catalyst para UIWindowScene para Catalina o superior.
  • Nuevas opciones para NSToolbar.
  • Actualizados a 1 GHz los valores leídos de los registros CNTFRQ_EL0 y CNTVCT_EL0 en dispositivos con chip de Apple M3 o superior y A16 Bionic o superior.
  • Ahora los archivos USD que utilizan la subdivisión Catmull-Clark se representan utilizando la subdivisión en RealityKit. Las mallas que producen menos de 35.000 parches se pueden renderizar usando la subdivisión lo que puede aumentar el consumo de memoria y reducir el rendimiento del renderizado.
  • Ahora los objetos virtuales de RealityKit se pueden renderizar utilizando la gama de colores Display P3.
  • Ahora las ventanas grabadas con la nueva API SCRecordingOutputConfiguration tienen un nuevo elemento de menú "Detener la grabación de esta ventana" en el menú púrpura de la ventana.
  • Al intentar cambiar el directorio de inicio de un usuario, dscl y dsimport mostraran indicaciones de privacidad. Anteriormente, esto no ocurría cuando un dispositivo estaba bajo administración MDM.
  • Ahora se admite la posibilidad de canjear códigos de oferta de Mac App Store dentro de una aplicación.
  • Ahora SubscriptionStoreView admite estilos de control personalizados.
  • Disponibles nuevos estilos estándar para diseñar los controles de vista de las suscripciones con una altura compacta.
  • Nueva posibilidad de utilizar tipos como SubscriptionOptionGroup y SubscriptionPeriodGroupSet para declarar una estructura jerárquica para SubscriptionStoreView. También se puede utilizar subscriptionStoreOptionGroupStyle(_: ) para elegir entre presentar grupos como una vista de pestaña o como enlaces de navegación.
  • RenewalInfo ahora admite las nuevas propiedades renewalPrice y currency para indicar el precio al que se renovará la suscripción y su moneda. También hay una nueva propiedad offer que contiene la información de la oferta que se aplicará a la próxima renovación, si la hay. Esto incluye el ID de la oferta, el tipo de oferta y el modo de pago.
  • Ahora los consumibles terminados se pueden incluir cuando se utilizan las API Transaction. Se puede habilitar esta función configurando SKInAppPurchaseHistoryIncludesConsumables en true dentro del Info.plist de una aplicación.
  • Al configurar el estilo de control para SubscriptionStoreView se puede especificar una ubicación para los controles utilizando el modificador de vista subscriptionStoreControlStyle(_: placement: ).
  • Ahora al crear una app con Xcode 16 las instancias de SubscriptionStoreView que utilizan el estilo de control del selector tienen una apariencia actualizada pudiendo usar subscriptionStorePickerItemBackground(_:in: ) para configurar un color de fondo y un forma diferente para los elementos del selector.
  • Ahora se pueden usar APIs como mensuales o anuales para obtener los valores de Product.SubscriptionPeriod al comparar los períodos de una suscripción.
  • Nuevas funciones matemáticas para Swift Charts usando LinePlot y AreaPlot.
  • Nueva opción de Swift Charts para visualizar grandes conjuntos de datos de manera más eficiente utilizando APIs de trazado vectorial como PointPlot y RectanglePlot.
  • Ahora las TabViews declaradas en la raíz de un Scene utilizan un nuevo estilo que aloja las pestañas en la barra de herramientas de la escena aplicando el modificador .tabViewStyle(.grouped).
  • Los Pickers ahora pueden tener atajos de teclado adjuntos a sus opciones individuales, adjuntando el modificador keyboardShortcut() a las vistas individuales del Picker.
  • Ahora se puede obtener la apariencia de desplazamiento de macOS (como la de la app Mail) con Form y ScrollView que ya estaba disponible con List. De forma que Form gana la apariencia perfecta de forma predeterminada y habría que optar por no usarla con .scrollContentBackground(.hidden). En ScrollView es optativo con .scrollContentBackground(.visible).
  • Añadida la capacidad de solicitar el uso compartido de una ventana recién abierta. Se le puede dar la opción al presentador que inicia una presentación mientras está en una videoconferencia, de compartir esa presentación con otros participantes de la llamada. Esto aborda el problema en el que el presentador podría no querer compartir todas las ventanas de la aplicación y podría no tener la oportunidad de comenzar a compartir la presentación una vez que haya comenzado. Esto está respaldado por un nuevo argumento "sharingBehavior" a la llamada "openWindow". Si se solicita el comportamiento compartido, la ventana se abre y luego se comparte si es posible. Si se requiere el comportamiento compartido, la ventana se abre solo si la solicitud de uso compartido es satisfactoria.
  • Para las subclases de ObservableObject utilizadas con @EnvironmentObject, @ObservedObject y @StateObject, SwiftUI ahora solo llamará a objectWillChange una vez por propiedad por instancia de objeto. Usando @Published y el ObservableObjectPublisher de forma predeterminada, no hay que cambiar nada, en cambio si se anula objectWillChange hay que asegurarse de que la vida útil publisher que devuelve coincida con la vida útil de su ObservableObject.
  • Las sheet de SwiftUI presentadas con el modificador .sheet ahora usan el tamaño .automatic de forma predeterminada. .automatic se resuelve en .form o .form.fitted(horizontal:false, vertical: true) dependiendo de la plataforma. Las plataformas anteriores a iOS 18 y demás versiones de las plataformas de 2024, utilizaban un tamaño de hoja predeterminado diferente y no personalizable. iOS 17 y anteriores usaban lo que ahora se llama tamaño de presentación .page. macOS 14 y anteriores usaban lo que ahora se llama tamaño de presentación .fitted. visionOS 1 usaba lo que ahora se llama tamaño de presentación .fitted. Al ligar apps con iOS 18 y los demás SDKs de 2024 es recomendable auditar las presentaciones sheet y elegir el tamaño que mejor se ajuste aplicando un modificador .presentationSizing.
  • Ahora los tipos que se ajustan al protocolo View y demás protocolos de SwiftUI similares, están aislados del @MainActor de forma predeterminada. Sin embargo el comportamiento en tiempo de ejecución de SwiftUI con respecto al aislamiento de actores no ha cambiado; las vistas de SwiftUI y tipos similares siempre se han evaluado en el main actor en tiempo de ejecución. Este cambio mejora los diagnósticos en tiempo de compilación para posibles problemas de condiciones de carrera. Para no usar el nuevo comportamiento predeterminado con el aislamiento del main actor y restaurar el comportamiento predeterminado anterior hay que agregar la palabra clave nonisolated a los métodos y propiedades según sea necesario, o mover la conformidad del protocolo a una extensión para excluir todo el tipo.
  • Ahora Text(_:format: ) inyecta automáticamente el FormatStyle conocido por SwiftUI de la TimeZone y Calendar del entorno.
  • Ahora la macro @Entry se puede utilizar para simplificar las declaraciones de las propiedades personalizadas EnvironmentValues, FocusedValues, Transaction y ContainerValues.
  • Añadida la opción de dar nombres a gestos, que aplica a UIGestureRecognizers al establecer dependencias.
  • Soporte para la traducción al hindú en la app Traducción, a nivel de sistema, en la traducción de Safari y en las nuevas APIs de traducción.
7G0NgaK.png

He actualizado el segundo post para añadir una nueva sección con las novedades para desarrolladores de macOS Sequoia. :ok
 
Además de la Beta 3 (24A5289g), Apple ha liberado también la primera Beta Pública (24A5289h).

Si queréis probar la beta pública, podéis descargarla directamente desde este enlace de Apple. Obtendréis un programa llamado InstallAssistant.pkg que si lo ejecutáis creará la aplicación Install macOS Sequoia Beta en la carpeta de aplicaciones.

Insertar CODE, HTML o PHP:
https://swcdn.apple.com/content/downloads/00/55/062-36085-A_SVM8I0RSF8/xqj8j50pwf49z53toqmdsej6od5u2s0kmw/InstallAssistant.pkg

Como de costumbre, podéis crear fácilmente un pendrive de instalación con el siguiente comando. Necesitaréis un pendrive de más de 16GB de capacidad, inicializado en formato macOS Plus (con registro) y mapa de particiones GUID que luego borrará el proceso de instalación.

Insertar CODE, HTML o PHP:
sudo /Applications/Install\ macOS\ Sequoia\ Beta.app/Contents/Resources/createinstallmedia --volume /Volumes/USB_64GB

Aunque de momento sigo sin probarlo en una máquina física, y me he animado de nuevo a instalarlo en una máquina virtual con vmWare Fusion, creando previamente una imagen ISO con el script create_macos_vm_install_dmg que podéis descargar desde aquí:

Insertar CODE, HTML o PHP:
https://github.com/rtrouton/create_macos_vm_install_dmg

Para ejecutar el script, tenéis que situaros en la carpeta donde lo hayáis descargado y ejecutar el siguiente comando desde el terminal:

Insertar CODE, HTML o PHP:
sudo ./create_macos_vm_install_dmg.sh /Applications/Install\ macOS\ Sequoia\ Beta.app Ruta_donde_quieras_dejarlo

En esta ocasión he podido configurar perfectamente la pantalla, y tras instalar las VMware Tools tengo soporte completo de aceleración gráfica Metal 2 usando el driver Apple Paravirtualized Graphics Device, con lo que he podido usar el fondo de pantalla dinámico oficial de macOS Sequoia, que con el driver básico SVGA no funciona.

Para usar el driver Apple Paravirtualized Graphics Device, tenéis que añadir estas 4 líneas en el archivo de configuración .vmx de la máquina virtual.

Insertar CODE, HTML o PHP:
appleGPU0.present = "TRUE"
svga.present = "FALSE"
appleGPU0.screenWidth = "3360"
appleGPU0.screenHeight = "2100"

Y para fijar la resolución en 1680x1050 y en modo HiDPI (Retina), tenéis que ejecutar estos comandos de las VMware Tools desde el terminal

Insertar CODE, HTML o PHP:
cd '/Library/Application Support/VMware Tools'
./vmware-resolutionSet 3360 2100
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool true
D4gwsc2.png

:ok :ok :ok
 
Última edición:
La Release Candidate (RC) de macOS Sequoida 15.0 ya está disponible para su descarga en dispositivos con Apple Silicon, con número de compilación 24A335

Tenéis disponibles los archivos .ipsw para todos los modeos soportados aquí:


Esta no voy a probarla de forma física de momento en el MacBook Air con procesador M2, y voy a probar a crear una máquina virtual con VirtualBuddy, que mi virtualizador de cabecera - VMware Fusion - no permite instalar macOS en máquinas con procesador Apple Silicon.

No he probado nunca VirtualBuddy, ya os contaré qué tal la experiencia con este software open-source.


Edito para comentar que acabo de comprobar que VirtualBuddy te descarga ya la última versión RC de macOS Sequoia directamente.

dVV8ihe.png


:ok :ok :ok
 
Última edición:

Eso es exactamente lo que hace el programa Tiles, que llevo usándolo años en macOS.


:ok :ok :ok
 
  • Me gusta
Reacciones: Tim
Parece que la RC está dando problemas. @DeBilbao que tal con la instalación de pruebas que has hecho?

No he podido instalarla aún.

Tenía claro que con el MacBook Air M2 no lo iba a hacer, y la virtualización con VirtualBuddy requería de componentes adicionales de Xcode que aún no estaban disponibles.

Sí que tengo instalada la última Beta 8 para Intel en una máquina virtual con la última versión de VMware Fusion.

qKVlXct.jpg


:ok :ok :ok
 
Me acabo de acordar de que salía hoy, así que lo he puesto en descarga y actualización...

Me ha extrañado que solo ocupe 6,6 gigas :mmmh:pensativo
 
Me acabo de acordar de que salía hoy, así que lo he puesto en descarga y actualización...

Me ha extrañado que solo ocupe 6,6 gigas :mmmh:pensativo

Eso es porque es una actualización OTA incremental, y no el instalador completo.

El instalador completo de macOS Sequoia 15.0 (24A335) pesa 14,48 GB y lo podéis descargar desde los servidores de Apple en:

Insertar CODE, HTML o PHP:
https://swcdn.apple.com/content/downloads/11/43/062-78429-A_DAI7Y9IP98/qxbabjzemiel7guag7q09xxe0631iie45p/InstallAssistant.pkg

:ok :ok :ok
 
Joer, ni un puñetero cambio en los iconos.

Pero en cambio, Safari segun escribo el post me esta permitiendo rellenar la palabra
 
Arriba Pie