From c49dfd56b3a86c360f15f46ecb6f73530f52d5ef Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Tue, 17 Jan 2023 17:05:09 +0100 Subject: [PATCH 01/12] Add badge and section in README --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 843e4174fb..5e1ca60249 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Electricity Maps -[![Slack Status](https://slack.electricitymaps.com/badge.svg)](https://slack.electricitymaps.com) [![Twitter Follow](https://img.shields.io/twitter/follow/ElectricityMaps.svg?style=social&label=Follow)](https://twitter.com/ElectricityMaps) +Electricity Maps is released under the GNU-AGPL license. [![Slack Status](https://slack.electricitymaps.com/badge.svg)](https://slack.electricitymaps.com) [![Twitter Follow](https://img.shields.io/twitter/follow/ElectricityMaps.svg?style=social&label=Follow)](https://twitter.com/ElectricityMaps) A real-time visualisation of the Greenhouse Gas (in terms of CO2 equivalent) footprint of electricity consumption built with [d3.js](https://d3js.org/) and [mapbox GL](https://github.com/mapbox/mapbox-gl-js/). Try it out at [app.electricitymaps.com](https://app.electricitymaps.com), or download the app on [Google Play](https://play.google.com/store/apps/details?id=com.tmrow.electricitymap&utm_source=github) or [App store](https://itunes.apple.com/us/app/electricity-map/id1224594248&utm_source=github). @@ -24,6 +24,10 @@ Join us on [Slack](https://slack.electricitymaps.com) if you wish to discuss dev We would love your feedback on how to improve the contribution experience, please feel free to fill out this [form](https://forms.gle/VRWvEFwhtnhpzPVX8) +## License + +Electricity Maps is licensed under GNU-AGPL. Find our license [here](link to license file) + ## Frequently asked questions **Where does the data come from?** From 1d54d98ac95a97b1bdf0401b13fa0f9b7ab08de7 Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Tue, 17 Jan 2023 17:06:30 +0100 Subject: [PATCH 02/12] Create LICENSE --- LICENSE | 661 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 661 insertions(+) create mode 100644 LICENSE diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000..0ad25db4bd --- /dev/null +++ b/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. From aeb476af1a4050d395f68c2b96356cf34c8a643e Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Tue, 17 Jan 2023 17:13:08 +0100 Subject: [PATCH 03/12] Rename LICENSE to LICENSE.md --- LICENSE => LICENSE.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename LICENSE => LICENSE.md (100%) diff --git a/LICENSE b/LICENSE.md similarity index 100% rename from LICENSE rename to LICENSE.md From 9df1d965684861f396bac0f2ad49710b3b588a1f Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:16:10 +0100 Subject: [PATCH 04/12] Update README.md Co-authored-by: Viktor Andersson <30777521+VIKTORVAV99@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 5e1ca60249..07317d0fa7 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ We would love your feedback on how to improve the contribution experience, pleas ## License -Electricity Maps is licensed under GNU-AGPL. Find our license [here](link to license file) +Electricity Maps is licensed under GNU-AGPLv3. Find our license [here](link to license file) ## Frequently asked questions From 1e830540d6c153ca5a245cc72c9eab7202a0aa77 Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:16:22 +0100 Subject: [PATCH 05/12] Update README.md Co-authored-by: Viktor Andersson <30777521+VIKTORVAV99@users.noreply.github.com> --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 07317d0fa7..ddcfbe27d3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Electricity Maps -Electricity Maps is released under the GNU-AGPL license. [![Slack Status](https://slack.electricitymaps.com/badge.svg)](https://slack.electricitymaps.com) [![Twitter Follow](https://img.shields.io/twitter/follow/ElectricityMaps.svg?style=social&label=Follow)](https://twitter.com/ElectricityMaps) +Electricity Maps is released under the GNU-AGPLv3 license. [![Slack Status](https://slack.electricitymaps.com/badge.svg)](https://slack.electricitymaps.com) [![Twitter Follow](https://img.shields.io/twitter/follow/ElectricityMaps.svg?style=social&label=Follow)](https://twitter.com/ElectricityMaps) A real-time visualisation of the Greenhouse Gas (in terms of CO2 equivalent) footprint of electricity consumption built with [d3.js](https://d3js.org/) and [mapbox GL](https://github.com/mapbox/mapbox-gl-js/). Try it out at [app.electricitymaps.com](https://app.electricitymaps.com), or download the app on [Google Play](https://play.google.com/store/apps/details?id=com.tmrow.electricitymap&utm_source=github) or [App store](https://itunes.apple.com/us/app/electricity-map/id1224594248&utm_source=github). From 734bb335c6b671332a801de657f2f8c2e218c6b6 Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:22:03 +0100 Subject: [PATCH 06/12] update package.json web --- web/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/package.json b/web/package.json index 1b23f8a614..5ab0d2bbd3 100644 --- a/web/package.json +++ b/web/package.json @@ -2,7 +2,7 @@ "name": "electricitymap-web", "version": "1.1.0-beta.40", "description": "A real-time visualisation of the CO2 emissions of electricity consumption", - "license": "GPL-3.0-or-later", + "license": "GNU AGPLv3", "engines": { "node": ">=14.15" }, From d6ec2db4a07333d9342a46a5558157d3409f897a Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:29:41 +0100 Subject: [PATCH 07/12] update link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ddcfbe27d3..36e87cb188 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ We would love your feedback on how to improve the contribution experience, pleas ## License -Electricity Maps is licensed under GNU-AGPLv3. Find our license [here](link to license file) +Electricity Maps is licensed under GNU-AGPLv3. Find our license [here](https://github.com/electricitymaps/electricitymaps-contrib-rewrite/blob/master/LICENSE.md) ## Frequently asked questions From bdb05a6a7a102cea7562a73a61a9d4d0ea3a7429 Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:53:33 +0100 Subject: [PATCH 08/12] update license path --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 36e87cb188..4ec4b9f0ed 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ A real-time visualisation of the Greenhouse Gas (in terms of CO2 equi ## Contribute -Thank you for your interest. Check out the [Wiki](https://github.com/electricityMaps/electricitymaps-contrib/wiki) for how to get started. Also, have a look at our current [issues](https://github.com/electricityMaps/electricitymaps-contrib/issues) and [discussions](https://github.com/electricityMaps/electricitymaps-contrib/discussions) +Thank you for your interest. Check out our general [contribution guidelines](Add link to the contribution guidelines). Our [Wiki](https://github.com/electricityMaps/electricitymaps-contrib/wiki) gathers all information about how to get started. Also, have a look at our current [issues](https://github.com/electricityMaps/electricitymaps-contrib/issues) and [discussions](https://github.com/electricityMaps/electricitymaps-contrib/discussions). Here are some of the ways you can contribute: @@ -26,7 +26,7 @@ We would love your feedback on how to improve the contribution experience, pleas ## License -Electricity Maps is licensed under GNU-AGPLv3. Find our license [here](https://github.com/electricitymaps/electricitymaps-contrib-rewrite/blob/master/LICENSE.md) +Electricity Maps is licensed under GNU-AGPLv3. Find our license [here](https://github.com/electricitymaps/electricitymaps-contrib/blob/master/LICENSE.md) ## Frequently asked questions From e0fcedf4bf00fb464f72422b26183c0d8e553b37 Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Thu, 19 Jan 2023 09:53:52 +0100 Subject: [PATCH 09/12] add workflow section --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 4ec4b9f0ed..33ecf93211 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,14 @@ Join us on [Slack](https://slack.electricitymaps.com) if you wish to discuss dev We would love your feedback on how to improve the contribution experience, please feel free to fill out this [form](https://forms.gle/VRWvEFwhtnhpzPVX8) +## Contributions workflow + +If you wonder what happens to your contributions, check out this workflow of contributions review and acceptance. + +[Add workflow here] + +We would love your feedback on how to improve the contribution experience, please feel free to fill out this [form](https://forms.gle/VRWvEFwhtnhpzPVX8) + ## License Electricity Maps is licensed under GNU-AGPLv3. Find our license [here](https://github.com/electricitymaps/electricitymaps-contrib/blob/master/LICENSE.md) From fd1258afa7c74625688963f46300a45965a66ff8 Mon Sep 17 00:00:00 2001 From: Mads Nedergaard Date: Thu, 19 Jan 2023 13:34:28 +0100 Subject: [PATCH 10/12] Adds license in more places and uses identifier --- mobileapp/package.json | 8 +++----- pyproject.toml | 7 ++++--- web/package.json | 4 ++-- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/mobileapp/package.json b/mobileapp/package.json index f96800c3cf..0869dec385 100644 --- a/mobileapp/package.json +++ b/mobileapp/package.json @@ -1,7 +1,8 @@ { - "name": "mobileapp", + "name": "electricitymaps-mobile", "version": "1.0.0", - "description": "", + "description": "A real-time visualisation of the CO2 emissions of electricity consumption", + "license": "AGPL-3.0-or-later", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", @@ -11,9 +12,6 @@ "dev-ios": "NODE_ENV=dev pnpm exec cap run ios", "dev-android": "NODE_ENV=dev pnpm exec cap run android" }, - "keywords": [], - "author": "", - "license": "ISC", "dependencies": { "@capacitor/android": "^4.4.0", "@capacitor/core": "^4.4.0", diff --git a/pyproject.toml b/pyproject.toml index d3f2fd9af9..b570b0a8fa 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,8 +1,9 @@ [tool.poetry] -name = "electricitymap-contrib" -version = "0.1.0" +name = "electricitymaps-contrib" +version = "1.0.0" description = "" -authors = ["Electricity Maps team "] +license = "AGPL-3.0-or-later" +authors = ["Electricity Maps "] packages = [ { include = "electricitymap" } ] diff --git a/web/package.json b/web/package.json index 5ab0d2bbd3..9683ffbf47 100644 --- a/web/package.json +++ b/web/package.json @@ -1,8 +1,8 @@ { - "name": "electricitymap-web", + "name": "electricitymaps-web", "version": "1.1.0-beta.40", "description": "A real-time visualisation of the CO2 emissions of electricity consumption", - "license": "GNU AGPLv3", + "license": "AGPL-3.0-or-later", "engines": { "node": ">=14.15" }, From 9fe4979b0ef36b9afba6d4907dc071cc0e6796fd Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Fri, 20 Jan 2023 11:40:44 +0100 Subject: [PATCH 11/12] Add files via upload --- EMaps contrib workflow.png | Bin 0 -> 58940 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 EMaps contrib workflow.png diff --git a/EMaps contrib workflow.png b/EMaps contrib workflow.png new file mode 100644 index 0000000000000000000000000000000000000000..05671837069eb3c7f412305436cee69637a3c742 GIT binary patch literal 58940 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 literal 0 HcmV?d00001 From 02d6e7aa9dc04aa71eeaa1f13bd03f354fc2a248 Mon Sep 17 00:00:00 2001 From: lav-julien <112700080+lav-julien@users.noreply.github.com> Date: Fri, 20 Jan 2023 11:45:10 +0100 Subject: [PATCH 12/12] Upload image and link to it in readme --- ...ntrib workflow.png => EMaps_contrib_workflow.png | Bin README.md | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename EMaps contrib workflow.png => EMaps_contrib_workflow.png (100%) diff --git a/EMaps contrib workflow.png b/EMaps_contrib_workflow.png similarity index 100% rename from EMaps contrib workflow.png rename to EMaps_contrib_workflow.png diff --git a/README.md b/README.md index 33ecf93211..8eff64df83 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ We would love your feedback on how to improve the contribution experience, pleas If you wonder what happens to your contributions, check out this workflow of contributions review and acceptance. -[Add workflow here] +![image](https://github.com/electricitymaps/electricitymaps-contrib/blob/master/EMaps_contrib_workflow.png) We would love your feedback on how to improve the contribution experience, please feel free to fill out this [form](https://forms.gle/VRWvEFwhtnhpzPVX8)