
Research
/Security News
Trivy Under Attack Again: Widespread GitHub Actions Tag Compromise Exposes CI/CD Secrets
Attackers compromised Trivy GitHub Actions by force-updating tags to deliver malware, exposing CI/CD secrets across affected pipelines.
@fluidframework/map
Advanced tools
The SharedMap distributed data structure can be used to store key-value pairs. It provides the same API for setting and retrieving values that JavaScript developers are accustomed to with the Map built-in object.
To create a SharedMap, call the static create method:
const myMap = SharedMap.create(this.runtime, id);
Unlike the JavaScript Map, a SharedMap's keys must be strings. The value must only be plain JS objects or handles (e.g. to another DDS or Fluid objects).
In collaborative scenarios, the value is settled with a policy of last write wins.
.wait()SharedMap has a wait method in addition to the normal get, which returns a Promise that resolves to the value
when the key becomes available.
SharedMap is an EventEmitter, and will emit events when other clients make modifications. You should register for these events and respond appropriately as the data is modified. valueChanged will be emitted in response to a set or delete, and provide the key and previous value that was stored at that key. clear will be emitted in response to a clear.
A SharedDirectory is a map-like DDS that additionally supports storing key/value pairs within a tree of subdirectories. This subdirectory tree can be used to give hierarchical structure to stored key/value pairs rather than storing them on a flat map. Both the SharedDirectory and any subdirectories are IDirectories.
To create a SharedDirectory, call the static create method:
const myDirectory = SharedDirectory.create(this.runtime, id);
The map operations on an IDirectory refer to the key/value pairs stored in that IDirectory, and function just like SharedMap including the same extra functionality and restrictions on keys and values. To operate on the subdirectory structure, use the corresponding subdirectory methods.
getWorkingDirectory()To "navigate" the subdirectory structure, IDirectory provides a getWorkingDirectory method which takes a relative path and returns the IDirectory located at that path if it exists.
valueChanged events additionally provide the absolute path to the subdirectory storing the value that changed.
FAQs
Distributed map
The npm package @fluidframework/map receives a total of 12,147 weekly downloads. As such, @fluidframework/map popularity was classified as popular.
We found that @fluidframework/map demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
Attackers compromised Trivy GitHub Actions by force-updating tags to deliver malware, exposing CI/CD secrets across affected pipelines.

Security News
ENISA’s new package manager advisory outlines the dependency security practices companies will need to demonstrate as the EU’s Cyber Resilience Act begins enforcing software supply chain requirements.

Research
/Security News
We identified over 20 additional malicious extensions, along with over 20 related sleeper extensions, some of which have already been weaponized.