From f87c71abdb70f7f8a45c96b050c72ee4a45dee19 Mon Sep 17 00:00:00 2001 From: joaosnd_ <105803848+JoaoSandrini@users.noreply.github.com> Date: Thu, 16 Jan 2025 13:30:15 -0300 Subject: [PATCH 1/3] Update README.md --- README.md | 179 +----------------------------------------------------- 1 file changed, 1 insertion(+), 178 deletions(-) diff --git a/README.md b/README.md index 3f8190c4c..55a23f38a 100644 --- a/README.md +++ b/README.md @@ -1,178 +1 @@ -

- - - -

- -# WireCloud - -[![](https://nexus.lab.fiware.org/repository/raw/public/badges/chapters/visualization.svg)](https://www.fiware.org/developers/catalogue/) -[![License: AGPLv3+ with classpath-like exception](https://img.shields.io/badge/License-AGPLv3+%20with%20classpath--like%20exception-blue.svg)](./LICENSE) -[![Docker Status](https://img.shields.io/docker/pulls/fiware/wirecloud.svg)](https://hub.docker.com/r/fiware/wirecloud/) -[![Support badge](https://img.shields.io/badge/tag-fiware--wirecloud-orange.svg?logo=stackoverflow)](https://stackoverflow.com/questions/tagged/fiware-wirecloud) -[![Current stable version](https://img.shields.io/pypi/v/wirecloud.svg)](https://pypi.python.org/pypi/wirecloud) -
-[![Documentation badge](https://img.shields.io/readthedocs/wirecloud.svg)](http://wirecloud.readthedocs.org/en/latest/) -[![Tests](https://github.com/Wirecloud/wirecloud/workflows/Tests/badge.svg)](https://github.com/Wirecloud/wirecloud/actions?query=workflow%3A%22Tests%22) -[![Coverage Status](https://coveralls.io/repos/github/Wirecloud/wirecloud/badge.svg?branch=develop)](https://coveralls.io/github/Wirecloud/wirecloud?branch=develop) -![Status](https://nexus.lab.fiware.org/static/badges/statuses/wirecloud.svg) -[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4479/badge)](https://bestpractices.coreinfrastructure.org/projects/4479) - -WireCloud builds on cutting-edge end-user development, RIA and semantic -technologies to offer a next-generation end-user centred web application mashup -platform aimed at leveraging the long tail of the Internet of Services. - -WireCloud builds on cutting-edge end-user (software) development, RIA and -semantic technologies to offer a next-generation end-user centred web -application mashup platform aimed at allowing end users without programming -skills to easily create web applications and dashboards/cockpits (e.g. to -visualize their data of interest or to control their domotized home or -environment). Web application mashups integrate heterogeneous data, application -logic, and UI components (widgets) sourced from the Web to create new coherent -and value-adding composite applications. They are targeted at leveraging the -"long tail" of the Web of Services (a.k.a. the Programmable Web) by exploiting -rapid development, DIY, and shareability. They typically serve a specific -situational (i.e. immediate, short-lived, customized) need, frequently with high -potential for reuse. Is this "situational" character which precludes them to be -offered as 'off-the-shelf' functionality by solution providers, and therefore -creates the need for a tool like WireCloud. - -This project is part of [FIWARE](https://www.fiware.org/). For more information -check the FIWARE Catalogue entry for -[Context Processing, Analysis and Visualization](https://github.com/Fiware/catalogue/tree/master/processing). - -| :books: [Documentation](https://wirecloud.rtfd.io/) | :page_facing_up: [Site](https://conwet.fi.upm.es/wirecloud) | :mortar_board: [Academy](https://fiware-academy.readthedocs.io/en/latest/processing/wirecloud) | :whale: [Docker Hub](https://hub.docker.com/r/fiware/wirecloud/) | :dart: [Roadmap](roadmap.md) | -|---|---|---|---|---| - -## Contents - -- [Install](#install) -- [Usage](#usage) -- [Bugs and feature requests](#bugs-and-feature-requests) -- [Quality Assurance](#quality-assurance) -- [Testing](#testing) -- [License](#license) - -## Install - -```console -$ sudo pip install wirecloud -``` - -See the -[installation guide](https://wirecloud.readthedocs.io/en/stable/installation_guide/) -for more info. - -## Usage - -WireCloud is a user-development tool aimed both at users and developers. Users use the platform -to build and/or use their interfaces using deployed widgets and developers, whereas developers do -create such components by extending existing ones or creating them from scratch. - -In the former, final users can find useful information in the [User Guide](https://wirecloud.readthedocs.io/en/stable/user_guide/). In the latter, -developers can learn how to develop components in the [Programmer Guide](https://wirecloud.readthedocs.io/en/stable/restapi/) - -## Bugs and feature requests - -Have a bug or a feature request? Please first read the -[issue guidelines](docs/CONTRIBUTING.md#using-the-issue-tracker) and search for -existing and closed issues. If your problem or idea is not addressed yet, -[please open a new issue](https://github.com/Wirecloud/wirecloud/issues/new). - -## Quality Assurance - -This project is part of [FIWARE](https://fiware.org/) and has been rated as -follows: - -- **Version Tested:** - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Version&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.version&colorB=blue) -- **Documentation:** - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Completeness&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.docCompleteness&colorB=blue) - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Usability&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.docSoundness&colorB=blue) -- **Responsiveness:** - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Time%20to%20Respond&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.timeToCharge&colorB=blue) - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Time%20to%20Fix&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.timeToFix&colorB=blue) -- **FIWARE Testing:** - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Tests%20Passed&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.failureRate&colorB=blue) - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Scalability&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.scalability&colorB=blue) - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Performance&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.performance&colorB=blue) - ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Stability&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.stability&colorB=blue) - -## Testing - -Testing of WireCloud is based on two different frameworks. On the one side, Python code is being -tested using Django's own testing capabilities. On the other side, JavaScript code testing is based -on Karma and Jasmine. Both tests are run on a local copy of the -[WireCloud repository on GitHub](https://github.com/Wirecloud/wirecloud), inside -the `src` folder. - - -### Python code - -Before running the tests, you have to ensure all the python dependencies are -installed on the environment. To do so, execute the following commands on the -`src` folder: - - $ pip install -r requirements.txt - $ pip install -r requirements-dev.txt - -Once installed all the dependencies, you can run the Python tests by using the -following command: - - $ python manage.py test --nologcapture -v 2 -a tags='wirecloud-noselenium' - -WireCloud also comes with some selenium tests that can be executed using the -following command: - - $ python manage.py test --nologcapture -v 2 -a tags='wirecloud-selenium' - -In this case, you will need to have Chrome and Firefox installed as well as -[chromedriver](http://chromedriver.chromium.org/) and [geckodriver](https://github.com/mozilla/geckodriver/releases). - - -### JavaScript code - -Before being able to test JavaScript code, some dependencies have to be -installed: - - $ sudo npm install -g grunt-cli - $ npm install - -Once installed all the npm dependencies, tests can be executed using `grunt`: - - $ grunt - -## Monaco Editor - -Wirecloud uses the Monaco Editor as its code editor. The Monaco Editor is the code editor that powers VS Code. - -In order to use the Monaco Editor, install the npm dependencies and build the editor: - - $ npm install - $ npm run build-monaco (optional, already done by npm install) - -This will download the Monaco Editor and build it for Wirecloud. - ---- - -## License - -WireCloud is licensed under Affero General Public License (GPL) version 3 (or -any later, at your option) with classpath-like exception. - -### Are there any legal issues with AGPL 3.0? Is it safe for me to use? - -There is absolutely no problem in using a product licensed under AGPL 3.0. Issues with GPL -(or AGPL) licenses are mostly related with the fact that different people assign different -interpretations on the meaning of the term “derivate work” used in these licenses. Due to this, -some people believe that there is a risk in just _using_ software under GPL or AGPL licenses -(even without _modifying_ it). - -For the avoidance of doubt, the owners of this software licensed under an AGPL-3.0 license -wish to make a clarifying public statement as follows: - -> Please note that software derived as a result of modifying the source code of this -> software in order to fix a bug or incorporate enhancements is considered a derivative -> work of the product. Software that merely uses or aggregates (i.e. links to) an otherwise -> unmodified version of existing software is not considered a derivative work, and therefore -> it does not need to be released as under the same license, or even released as open source. +Thats a simple fork from Wirecloud original develop branch. The porpose of this fork is to create a docker image for a Wirecloud version supporting NGSI-LD operations. The image is published [here](https://hub.docker.com/repository/docker/joaosnd/wirecloud-ngsi-ld/general) From 9a54cfa43ee98d390db65038049f677d58aa80ad Mon Sep 17 00:00:00 2001 From: JoaoSnd Date: Fri, 31 Jan 2025 13:15:37 -0300 Subject: [PATCH 2/3] added protocol to via header --- src/wirecloud/proxy/views.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/wirecloud/proxy/views.py b/src/wirecloud/proxy/views.py index 1e25fa382..186a54a56 100644 --- a/src/wirecloud/proxy/views.py +++ b/src/wirecloud/proxy/views.py @@ -141,7 +141,9 @@ class Proxy(): socket.setdefaulttimeout(60) def do_request(self, request, url, method, request_data): - + + parsed_url = urlparse(url) + protocol = parsed_url.scheme.upper() url = iri_to_uri(url) request_data.update({ @@ -165,7 +167,7 @@ def do_request(self, request, url, method, request_data): else: protocolVersion = '1.1' - via_header = "%s %s (Wirecloud-python-Proxy/1.1)" % (protocolVersion, get_current_domain(request)) + via_header = "%s/%s %s (Wirecloud-python-Proxy/1.1)" % (protocol, protocolVersion, get_current_domain(request)) if 'via' in request_data['headers']: request_data['headers']['via'] += ', ' + via_header else: From fa14c7a415e5aae07f0a7fa18a4530b796f298bf Mon Sep 17 00:00:00 2001 From: joaosnd_ Date: Fri, 7 Feb 2025 12:40:22 -0300 Subject: [PATCH 3/3] Revert "Update README.md" This reverts commit f87c71abdb70f7f8a45c96b050c72ee4a45dee19. --- README.md | 179 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 178 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 55a23f38a..3f8190c4c 100644 --- a/README.md +++ b/README.md @@ -1 +1,178 @@ -Thats a simple fork from Wirecloud original develop branch. The porpose of this fork is to create a docker image for a Wirecloud version supporting NGSI-LD operations. The image is published [here](https://hub.docker.com/repository/docker/joaosnd/wirecloud-ngsi-ld/general) +

+ + + +

+ +# WireCloud + +[![](https://nexus.lab.fiware.org/repository/raw/public/badges/chapters/visualization.svg)](https://www.fiware.org/developers/catalogue/) +[![License: AGPLv3+ with classpath-like exception](https://img.shields.io/badge/License-AGPLv3+%20with%20classpath--like%20exception-blue.svg)](./LICENSE) +[![Docker Status](https://img.shields.io/docker/pulls/fiware/wirecloud.svg)](https://hub.docker.com/r/fiware/wirecloud/) +[![Support badge](https://img.shields.io/badge/tag-fiware--wirecloud-orange.svg?logo=stackoverflow)](https://stackoverflow.com/questions/tagged/fiware-wirecloud) +[![Current stable version](https://img.shields.io/pypi/v/wirecloud.svg)](https://pypi.python.org/pypi/wirecloud) +
+[![Documentation badge](https://img.shields.io/readthedocs/wirecloud.svg)](http://wirecloud.readthedocs.org/en/latest/) +[![Tests](https://github.com/Wirecloud/wirecloud/workflows/Tests/badge.svg)](https://github.com/Wirecloud/wirecloud/actions?query=workflow%3A%22Tests%22) +[![Coverage Status](https://coveralls.io/repos/github/Wirecloud/wirecloud/badge.svg?branch=develop)](https://coveralls.io/github/Wirecloud/wirecloud?branch=develop) +![Status](https://nexus.lab.fiware.org/static/badges/statuses/wirecloud.svg) +[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/4479/badge)](https://bestpractices.coreinfrastructure.org/projects/4479) + +WireCloud builds on cutting-edge end-user development, RIA and semantic +technologies to offer a next-generation end-user centred web application mashup +platform aimed at leveraging the long tail of the Internet of Services. + +WireCloud builds on cutting-edge end-user (software) development, RIA and +semantic technologies to offer a next-generation end-user centred web +application mashup platform aimed at allowing end users without programming +skills to easily create web applications and dashboards/cockpits (e.g. to +visualize their data of interest or to control their domotized home or +environment). Web application mashups integrate heterogeneous data, application +logic, and UI components (widgets) sourced from the Web to create new coherent +and value-adding composite applications. They are targeted at leveraging the +"long tail" of the Web of Services (a.k.a. the Programmable Web) by exploiting +rapid development, DIY, and shareability. They typically serve a specific +situational (i.e. immediate, short-lived, customized) need, frequently with high +potential for reuse. Is this "situational" character which precludes them to be +offered as 'off-the-shelf' functionality by solution providers, and therefore +creates the need for a tool like WireCloud. + +This project is part of [FIWARE](https://www.fiware.org/). For more information +check the FIWARE Catalogue entry for +[Context Processing, Analysis and Visualization](https://github.com/Fiware/catalogue/tree/master/processing). + +| :books: [Documentation](https://wirecloud.rtfd.io/) | :page_facing_up: [Site](https://conwet.fi.upm.es/wirecloud) | :mortar_board: [Academy](https://fiware-academy.readthedocs.io/en/latest/processing/wirecloud) | :whale: [Docker Hub](https://hub.docker.com/r/fiware/wirecloud/) | :dart: [Roadmap](roadmap.md) | +|---|---|---|---|---| + +## Contents + +- [Install](#install) +- [Usage](#usage) +- [Bugs and feature requests](#bugs-and-feature-requests) +- [Quality Assurance](#quality-assurance) +- [Testing](#testing) +- [License](#license) + +## Install + +```console +$ sudo pip install wirecloud +``` + +See the +[installation guide](https://wirecloud.readthedocs.io/en/stable/installation_guide/) +for more info. + +## Usage + +WireCloud is a user-development tool aimed both at users and developers. Users use the platform +to build and/or use their interfaces using deployed widgets and developers, whereas developers do +create such components by extending existing ones or creating them from scratch. + +In the former, final users can find useful information in the [User Guide](https://wirecloud.readthedocs.io/en/stable/user_guide/). In the latter, +developers can learn how to develop components in the [Programmer Guide](https://wirecloud.readthedocs.io/en/stable/restapi/) + +## Bugs and feature requests + +Have a bug or a feature request? Please first read the +[issue guidelines](docs/CONTRIBUTING.md#using-the-issue-tracker) and search for +existing and closed issues. If your problem or idea is not addressed yet, +[please open a new issue](https://github.com/Wirecloud/wirecloud/issues/new). + +## Quality Assurance + +This project is part of [FIWARE](https://fiware.org/) and has been rated as +follows: + +- **Version Tested:** + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Version&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.version&colorB=blue) +- **Documentation:** + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Completeness&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.docCompleteness&colorB=blue) + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Usability&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.docSoundness&colorB=blue) +- **Responsiveness:** + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Time%20to%20Respond&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.timeToCharge&colorB=blue) + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Time%20to%20Fix&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.timeToFix&colorB=blue) +- **FIWARE Testing:** + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Tests%20Passed&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.failureRate&colorB=blue) + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Scalability&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.scalability&colorB=blue) + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Performance&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.performance&colorB=blue) + ![ ](https://img.shields.io/badge/dynamic/json.svg?label=Stability&url=https://fiware.github.io/catalogue/json/wirecloud.json&query=$.stability&colorB=blue) + +## Testing + +Testing of WireCloud is based on two different frameworks. On the one side, Python code is being +tested using Django's own testing capabilities. On the other side, JavaScript code testing is based +on Karma and Jasmine. Both tests are run on a local copy of the +[WireCloud repository on GitHub](https://github.com/Wirecloud/wirecloud), inside +the `src` folder. + + +### Python code + +Before running the tests, you have to ensure all the python dependencies are +installed on the environment. To do so, execute the following commands on the +`src` folder: + + $ pip install -r requirements.txt + $ pip install -r requirements-dev.txt + +Once installed all the dependencies, you can run the Python tests by using the +following command: + + $ python manage.py test --nologcapture -v 2 -a tags='wirecloud-noselenium' + +WireCloud also comes with some selenium tests that can be executed using the +following command: + + $ python manage.py test --nologcapture -v 2 -a tags='wirecloud-selenium' + +In this case, you will need to have Chrome and Firefox installed as well as +[chromedriver](http://chromedriver.chromium.org/) and [geckodriver](https://github.com/mozilla/geckodriver/releases). + + +### JavaScript code + +Before being able to test JavaScript code, some dependencies have to be +installed: + + $ sudo npm install -g grunt-cli + $ npm install + +Once installed all the npm dependencies, tests can be executed using `grunt`: + + $ grunt + +## Monaco Editor + +Wirecloud uses the Monaco Editor as its code editor. The Monaco Editor is the code editor that powers VS Code. + +In order to use the Monaco Editor, install the npm dependencies and build the editor: + + $ npm install + $ npm run build-monaco (optional, already done by npm install) + +This will download the Monaco Editor and build it for Wirecloud. + +--- + +## License + +WireCloud is licensed under Affero General Public License (GPL) version 3 (or +any later, at your option) with classpath-like exception. + +### Are there any legal issues with AGPL 3.0? Is it safe for me to use? + +There is absolutely no problem in using a product licensed under AGPL 3.0. Issues with GPL +(or AGPL) licenses are mostly related with the fact that different people assign different +interpretations on the meaning of the term “derivate work” used in these licenses. Due to this, +some people believe that there is a risk in just _using_ software under GPL or AGPL licenses +(even without _modifying_ it). + +For the avoidance of doubt, the owners of this software licensed under an AGPL-3.0 license +wish to make a clarifying public statement as follows: + +> Please note that software derived as a result of modifying the source code of this +> software in order to fix a bug or incorporate enhancements is considered a derivative +> work of the product. Software that merely uses or aggregates (i.e. links to) an otherwise +> unmodified version of existing software is not considered a derivative work, and therefore +> it does not need to be released as under the same license, or even released as open source.