Author: Source Read more
Category: News
Chrome 106 Beta: New CSS Features, WebCodecs and WebXR Improvements, and More
Unless otherwise noted, changes described below apply to the newest Chrome beta channel release for Android, ChromeOS, Linux, macOS, and Windows. Learn more about the features listed here through the provided links or from the list on ChromeStatus.com. Chrome 106 is beta as of September 1, 2022. You can download the latest on Google.com for desktop or on Google Play Store on Android.
Origin Trials
This version of Chrome supports the origin trials described below. Origin trials allow you to try new features and give feedback on usability, practicality, and effectiveness to the web standards community. To register for any of the origin trials currently supported in Chrome, including the ones described below, visit the Chrome Origin Trials dashboard. To learn more about origin trials in Chrome, visit the Origin Trials Guide for Web Developers. Microsoft Edge runs its own origin trials separate from Chrome. To learn more, see the Microsoft Edge Origin Trials Developer Console.
Anonymous iframes
Anonymous iframes give developers a way to load documents in third-party iframes using new and ephemeral contexts. Anonymous iframes are a generalization of COEP, i.e. Cross-Origin-Embedder-Policy: credentialless to support third-party iframes that may not deploy COEP. As with COEP: credentialless, it replaces the opt-in of cross-origin subresources with avoiding loading of non-public resources. This removes the constraint that third party iframes must support COEP in order to be embedded in a COEP page and unblocks developers looking to adopt cross-origin-isolation.
The origin trial is expected to last through Chrome 108. To sign up for the origin trial, visit its sign up page.
Pop-Up API
The Pop-Up API lets developers build transient user interface elements to display on top of other web app interface elements. This API is useful for creating interactive elements such as action menus, form element suggestions, content pickers, and teaching user interfaces.
This API uses a new popup
content attribute to enable any element to be displayed in the top layer. This attribute’s effect on the pop-up is similar to that of the <dialog>
element, but has several important differences, including light-dismiss behavior, pop-up interaction management, animation, event support, and non-modal mode.
The origin trial is expected to last through Chrome 110. To sign up for the origin trial, visit its sign up page.
Other Features in this Release
Client Hints persistency in Android WebView
Client Hints are now persisted on Android WebView, creating parity with the rest of the web platform. Previously, WebView did not persist the list of Client Hints a page requests, so the initial load of a website would never include Client Hints. Only subresources on a given page would receive them. This undermined the use of the Client Hints system, which is to empower websites to adapt content to the user agent. For more information on Client Hints, see HTTP Client hints.
CSS
grid-template properties interpolation
In CSS Grid, the 'grid-template-columns'
and 'grid-template-rows'
properties allow developers to define line names and track sizing of grid columns and rows respectively. Supporting interpolation for these properties allows grid layouts to smoothly transition between states, instead of snapping at the halfway point of an animation or transition.
‘ic’ length unit
The 'ic' length unit
expresses CSS lengths relative to the advanced measure of the water ideograph used in some Asian fonts such as Chinese and Japanese. This allows authors to size elements to fit a given number of full width glyphs for such fonts. Gecko and WebKit already support this unit. Adding this to Chrome is part of Interop 2022.
‘preserve-parent-color’ value for the ‘forced-color-adjust’ CSS property.
The 'preserve-parent-color' value has been added
to the 'forced-color-adjust'
CSS property. Previously, when the forced colors mode was enabled, the 'color'
property was inherited. Now, when the 'preserve-parent-color'
value is used, the 'color'
property will use the value of its parent. Otherwise, the 'forced-color-adjust: preserve-parent-color'
value behaves the same as 'forced-color-adjust: none'
.
Unprefix -webkit-hyphenate-character property
Chrome now supports the unprefixed hyphenate-character property in addition to the -webkit-hyphenate-character
property. The -webkit-hyphenate-character
property will be deprecated at a later date.
JavaScript: Intl.NumberFormat v3 API
Intl.NumberFormat
has the following new features:
- Three new functions to format a range of numbers:
formatRange()
,formatRangeToParts()
, andselectRange()
- A grouping enum
- New rounding and precision options
- Rounding priority
- Interpretation of strings as decimals
- Rounding modes
- Sign display negative (zero shown without a negative sign)
For more information, see the original proposal’s README.
SerialPort BYOB reader support
The underlying data source for a ReadableStream
provided by a SerialPort
is now a readable byte stream. SerialPort “bring your own buffer” (BYOB) is backwards-compatible with existing code that calls port.readable.getReader()
with no parameters. To detect support for this feature, pass 'byob'
as the mode parameter when calling getReader()
. For example:
port.readable.getReader({ mode: 'byob' });
Older implementations will throw a TypeError
when the new parameter is passed.
BYOB readers allow developers to specify the buffer into which data is read instead of the stream allocating a new buffer for each chunk. In addition to potentially reducing memory pressure, this allows the developer to control how much data is received because the stream cannot return more than there is space for in the provided buffer. For more information, see Read from and write to a serial port.
WebCodecs dequeue event
A dequeue
event and associated callback have been added to the audio and video interfaces, specifically: AudioDecoder
, AudioEncoder
, VideoDecoder
, and VideoEncoder
.
Developers may initially queue encoding or decoding work by calling encode()
or decode()
respectively. The new dequeue
event is fired to indicate when the underlying codec has ingested some or all of the queued work. The decrease in the queue size is already reflected by a lower value of encoder.encodeQueueSize
and decoder.decodeQueueSize
attributes. The new event eliminates the need to call setTimeout()
to determine when the queue has decreased (in other words, when they should queue more work).
WebXR Raw Camera Access
Applications using the WebXR Device API can now access pose-synchronized camera image textures in the contexts that also allow interacting with other AR features provided by WebXR.
Deprecations, and Removals
This version of Chrome introduces the deprecations and removals listed below. Visit ChromeStatus.com for lists of current deprecations and previous removals.
Remove non-ASCII characters in cookie domain attributes
To align with the latest spec (RFC 6265bis), Chromium now rejects cookies with a Domain
attribute that contains non-ASCII characters (for example, éxample.com
).
Support for IDN domain attributes in cookies has been long unspecified, with Chromium, Safari, and Firefox all behaving differently. This change standardizes Firefox’s behavior of rejecting cookies with non-ASCII domain attributes.
Since Chromium has previously accepted non-ASCII characters and tried to convert them to normalized punycode for storage, we will now apply stricter rules and require valid ASCII (punycode if applicable) domain attributes.
Remove HTTP/2 push
Chrome has removed the ability to receive, keep in memory, and use HTTP/2 push streams sent by the server. See Removing HTTP/2 Server Push from Chrome for details and suggested alternative APIs.
Mehfil-e-Sama – Qawwali – 31st August 2022 – ARY Qtv
Subscribe Here : https://bit.ly/3dh3Yj1
#ARYQtv #MehfileSama #Qawwali
Official Facebook : https://www.facebook.com/ARYQTV/
Official Website : https://aryqtv.tv/
Watch ARY Qtv Live : http://live.aryqtv.tv/
Programs Schedule : https://aryqtv.tv/schedule/
Islamic Information : https://bit.ly/2MfIF4P
Android App: https://bit.ly/33wgto4
Ios App: https:https://apple.co/2v3zoXW
Novela Génesis – Capítulo 228 hablado español latino
(Capitulo 81 – 150) https://www.dailymotion.com/playlist/x7e1w0
(Capitulo 151 – 220) https://dailymotion.com/playlist/x7haca
Génesis hablado en español latino TVN – Capítulo 228 completo
Serie basada en el libro de “Génesis”. Una producción que contará desde la creación del mundo hasta historias clásicas como Caín y Abel, el Arca de Noé, la Torre de Babel, Abraham, y terminando con la historia de José de Egipto. ¡El origen de todo, contado en una serie extraordinaria! El hombre busca constantemente respuestas y se cuestiona todo el tiempo con la esperanza de explicar los misterios del mundo. Y para comprender el presente, es necesario conocer el pasado. ¿Qué es la vida humana? De donde venimos ¿Cómo aparecieron las bellezas de la naturaleza? ¿Cuál es el origen de todo lo que conocemos? Son enigmas que la sobreproducción Génesis busca retratar al público a través de una trama épica y sin precedentes en la televisión brasileña. Desde la creación del mundo, pasando por la gran inundación y la construcción de la Torre de Babel, la telenovela presenta viejas historias, contadas y transmitidas de generación en generación, que exploran el origen de la humanidad. Las disputas entre las luces y las sombras, las intrigas familiares y los milagros emocionantes conmoverán a los espectadores de todas las edades, haciendo que las noches de la semana sean mucho más atractivas. Dividida en fases, esta gran obra de teledramaturgia cuenta con escenarios deslumbrantes, personajes con fuerte identificación con el público y una trama profunda que promete fuertes emociones desde el principio hasta el final de cada capítulo. Asocie su campaña con grandes valores y acerque su marca al corazón de la familia con esta nueva e increíble producción.
Steam Game Server
By having your own server, you can use all the resources for yourself and not share them with other players (other than those in your house). The better hardware you use, the better the game can be. Also, there is no sharing of the server bandwidth by other players that aren’t in the game (playing other…
The Network Evolves: ONE Summit Presents Collaborative and Transformative Program Across Networking, Edge, IoT
Industry experts will share their knowledge across 5G, factory floor, agriculture, government, Smart Home, and Robotics use casesSpeakers from 50+ companies, 20 end users, 16 countries during ONE Summit Industry experts across the expanding open networking and edge ecosystems confirmed to present insights during ONE Summit North America, November 15-16, in Seattle, WA SAN FRANCISCO, August […]
The post The Network Evolves: ONE Summit Presents Collaborative and Transformative Program Across Networking, Edge, IoT appeared first on Linux.com.
Andy Wingo: new month, new brainworm
Today, a brainworm! I had a thought a few days ago and can’t get it out of my head, so I need to pass it on to another host.
So, imagine a world in which there is a a drive to build a kind of Kubernetes on top of WebAssembly. Kubernetes nodes are generally containers, associated with additional metadata indicating their place in overall system topology (network connections and so on). (I am not a Kubernetes specialist, as you can see; corrections welcome.) Now in a WebAssembly cloud, the nodes would be components, probably also with additional topological metadata. VC-backed companies will duke it out for dominance of the WebAssembly cloud space, and in a couple years we will probably emerge with an open source project that has become a de-facto standard (though it might be dominated by one or two players).
In this world, Kubernetes and Spiffy-Wasm-Cloud will coexist. One of the success factors for Kubernetes was that you can just put your old database binary inside a container: it’s the same ABI as when you run your database in a virtual machine, or on (so-called!) bare metal. The means of composition are TCP and UDP network connections between containers, possibly facilitated by some kind of network fabric. In contrast, in Spiffy-Wasm-Cloud we aren’t starting from the kernel ABI, with processes and such: instead there’s WASI, which is more of a kind of specialized and limited libc. You can’t just drop in your database binary, you have to write code to get it to conform to the new interfaces.
One consequence of this situation is that I expect WASI and the component model to develop a rich network API, to allow WebAssembly components to interoperate not just with end-users but also other (micro-)services running in the same cloud. Likewise there is room here for a company to develop some complicated network fabrics for linking these things together.
However, WebAssembly-to-WebAssembly links are better expressed via typed functional interfaces; it’s more expressive and can be faster. Not only can you end up having fine-grained composition that looks more like lightweight Erlang processes, you can also string together components in a pipeline with communications overhead approaching that of a simple function call. Relative to Kubernetes, there are potential 10x-100x improvements to be had, in throughput and in memory footprint, at least in some cases. It’s the promise of this kind of improvement that can drive investment in this area, and eventually adoption.
But, you still have some legacy things running in containers. What to do? Well… Maybe recompile them to WebAssembly? That’s my brain-worm.
A container is a file system image containing executable files and data. Starting with the executable files, they are in machine code, generally x64, and interoperate with system libraries and the run-time via an ABI. You could compile them to WebAssembly instead. You could interpret them as data, or JIT-compile them as webvm does, or directly compile them to WebAssembly. This is the sort of thing you hire Fabrice Bellard to do 😉 Then you have the filesystem. Let’s assume it is stateless: any change to the filesystem at runtime doesn’t need to be preserved. (I understand this is a goal, though I could be wrong.) So you could put the filesystem in memory, as some kind of addressable data structure, and you make the libc interface access that data structure. It’s something like the microkernel approach. And then you translate whatever topological connectivity metadata you had for Kubernetes to your Spiffy-Wasm-Cloud’s format.
Anyway in the end you have a WebAssembly module and some metadata, and you can run it in your WebAssembly cloud. Or on the more basic level, you have a container and you can now run it on any machine with a WebAssembly implementation, even on other architectures (coucou RISC-V!).
Anyway, that’s the tweet. Have fun, whoever gets to work on this 🙂