diff --git a/README.md b/README.md index 5dd25331e..53b103a98 100644 --- a/README.md +++ b/README.md @@ -208,7 +208,7 @@ Read the dedicated [testing documentation](./docs/TESTING.md) to learn more abou ## Contributing -Read the [Contributing Guide](./CONTRIBUTING.md) for details on how you can get involved. In case you find an issue with the examples or the SDK itself, feel free to submit +Read the [Contributing Guide](docs/CONTRIBUTING.md) for details on how you can get involved. In case you find an issue with the examples or the SDK itself, feel free to submit an [issue report](https://github.com/golemfactory/golem-js/issues) to the repository. ## Discord diff --git a/docs/CONCEPTS.md b/docs/CONCEPTS.md index eeeb948b2..9143f7deb 100644 --- a/docs/CONCEPTS.md +++ b/docs/CONCEPTS.md @@ -102,17 +102,6 @@ When using the `ResourceRental` model, you can still access these lower level do When you obtain resources via the Golem Network, your _Golem Virtual Machine Image (GVMI for short)_ is going to be deployed by `golem-js` into the _Activity_ running on the Provider. Technically, on the Provider instantiates an _ExeUnit_ which is a physical implementation of the _Activity_ of the Golem Network Protocol. Without digging in too much details, it's this _ExeUnit_ which at the end performs the operations that you issue via the Golem Network. -If you're familiar with Docker, you can picture the architecture in the following way: - -| Golem | Docker | Kubernetes | -| ------------------ | ------------ | ------------ | -| GVMI | Docker Image | Docker Image | -| Activity (ExeUnit) | Container | Container | - -> **DISCLAIMER** -> -> The above comparison is used only for illustrative purposes. Golem GVMIs, ExeUnits and Activities behave differently compared to Docker or Kubernetes. - As a Requestor you're interested in quickly executing your commands within the container that runs your image. The `ExeUnit` abstraction delivered by the SDK is meant to do enable you to do so. The `ExeUnit` type documents the available features of particular ExeUnit type so that you can build up your solution faster, and in a type-safe manner. ### What it should do diff --git a/CONTRIBUTING.md b/docs/CONTRIBUTING.md similarity index 92% rename from CONTRIBUTING.md rename to docs/CONTRIBUTING.md index 0377d4d29..ccd1d3c39 100644 --- a/CONTRIBUTING.md +++ b/docs/CONTRIBUTING.md @@ -7,7 +7,7 @@ You want to contribute to `golem-js`? That's great! This guide will help you get 1. Clone this repository 2. In the root of this project run `npm install` to install all necessary dependencies 3. To build the SDK run `npm run build` -4. Install yagna as described in the [README](./README.md) file - you will need it to test your changes against testnet (no real funds will be required to execute workloads on Golem Network) +4. Install yagna as described in the [README](../README.md) file - you will need it to test your changes against testnet (no real funds will be required to execute workloads on Golem Network) ### Unit Testing diff --git a/docs/UPGRADING.md b/docs/UPGRADING.md index e8a535f6e..ddcd264b4 100644 --- a/docs/UPGRADING.md +++ b/docs/UPGRADING.md @@ -1,6 +1,6 @@ # Upgrade Guide -This document describes the breaking changes introduced in each major version of MyLibraryJS and the necessary steps you need to take to ensure your application continues to work correctly. +This document describes the breaking changes introduced in each major version of `golem-js` and the necessary steps you need to take to ensure your application continues to work correctly. ## Upgrading from 2.x to 3.x @@ -84,6 +84,18 @@ Areas where the changes are needed: - Instead of referring the `TaskExecutor` instance in the `map` function, you need to switch to the `ExeUnit` instance provided by the `ResourceRental` +> **IMPORTANT DIFFERENCE** +> +> `TaskExecutor` by default assumed that users want to run these commands in parallel, so it +> was establishing up to 5 agreements with different providers and then sent out these +> commands to different providers to leverage parallelism. +> +> With `golem-js@3.0`, when you use `oneOf` to rent resources, you are establishing one agreement +> with a single provider and the commands which you issue with `Array.map` will be executed +> sequentially by that single provider. +> +> If you want to achieve _parallel command execution_ on different providers, refer to the [Engaging with many providers at the same time](#engaging-with-many-providers-at-the-same-time) example. + **Before:** ```ts