diff --git a/LICENSE b/LICENSE index 14e2f777..fbde2df3 100644 --- a/LICENSE +++ b/LICENSE @@ -1,373 +1,19 @@ -Mozilla Public License Version 2.0 -================================== - -1. Definitions --------------- - -1.1. "Contributor" - means each individual or legal entity that creates, contributes to - the creation of, or owns Covered Software. - -1.2. "Contributor Version" - means the combination of the Contributions of others (if any) used - by a Contributor and that particular Contributor's Contribution. - -1.3. "Contribution" - means Covered Software of a particular Contributor. - -1.4. "Covered Software" - means Source Code Form to which the initial Contributor has attached - the notice in Exhibit A, the Executable Form of such Source Code - Form, and Modifications of such Source Code Form, in each case - including portions thereof. - -1.5. "Incompatible With Secondary Licenses" - means - - (a) that the initial Contributor has attached the notice described - in Exhibit B to the Covered Software; or - - (b) that the Covered Software was made available under the terms of - version 1.1 or earlier of the License, but not also under the - terms of a Secondary License. - -1.6. "Executable Form" - means any form of the work other than Source Code Form. - -1.7. "Larger Work" - means a work that combines Covered Software with other material, in - a separate file or files, that is not Covered Software. - -1.8. "License" - means this document. - -1.9. "Licensable" - means having the right to grant, to the maximum extent possible, - whether at the time of the initial grant or subsequently, any and - all of the rights conveyed by this License. - -1.10. "Modifications" - means any of the following: - - (a) any file in Source Code Form that results from an addition to, - deletion from, or modification of the contents of Covered - Software; or - - (b) any new file in Source Code Form that contains any Covered - Software. - -1.11. "Patent Claims" of a Contributor - means any patent claim(s), including without limitation, method, - process, and apparatus claims, in any patent Licensable by such - Contributor that would be infringed, but for the grant of the - License, by the making, using, selling, offering for sale, having - made, import, or transfer of either its Contributions or its - Contributor Version. - -1.12. "Secondary License" - means either the GNU General Public License, Version 2.0, the GNU - Lesser General Public License, Version 2.1, the GNU Affero General - Public License, Version 3.0, or any later versions of those - licenses. - -1.13. "Source Code Form" - means the form of the work preferred for making modifications. - -1.14. "You" (or "Your") - means an individual or a legal entity exercising rights under this - License. For legal entities, "You" includes any entity that - controls, is controlled by, or is under common control with You. For - purposes of this definition, "control" means (a) the power, direct - or indirect, to cause the direction or management of such entity, - whether by contract or otherwise, or (b) ownership of more than - fifty percent (50%) of the outstanding shares or beneficial - ownership of such entity. - -2. License Grants and Conditions --------------------------------- - -2.1. Grants - -Each Contributor hereby grants You a world-wide, royalty-free, -non-exclusive license: - -(a) under intellectual property rights (other than patent or trademark) - Licensable by such Contributor to use, reproduce, make available, - modify, display, perform, distribute, and otherwise exploit its - Contributions, either on an unmodified basis, with Modifications, or - as part of a Larger Work; and - -(b) under Patent Claims of such Contributor to make, use, sell, offer - for sale, have made, import, and otherwise transfer either its - Contributions or its Contributor Version. - -2.2. Effective Date - -The licenses granted in Section 2.1 with respect to any Contribution -become effective for each Contribution on the date the Contributor first -distributes such Contribution. - -2.3. Limitations on Grant Scope - -The licenses granted in this Section 2 are the only rights granted under -this License. No additional rights or licenses will be implied from the -distribution or licensing of Covered Software under this License. -Notwithstanding Section 2.1(b) above, no patent license is granted by a -Contributor: - -(a) for any code that a Contributor has removed from Covered Software; - or - -(b) for infringements caused by: (i) Your and any other third party's - modifications of Covered Software, or (ii) the combination of its - Contributions with other software (except as part of its Contributor - Version); or - -(c) under Patent Claims infringed by Covered Software in the absence of - its Contributions. - -This License does not grant any rights in the trademarks, service marks, -or logos of any Contributor (except as may be necessary to comply with -the notice requirements in Section 3.4). - -2.4. Subsequent Licenses - -No Contributor makes additional grants as a result of Your choice to -distribute the Covered Software under a subsequent version of this -License (see Section 10.2) or under the terms of a Secondary License (if -permitted under the terms of Section 3.3). - -2.5. Representation - -Each Contributor represents that the Contributor believes its -Contributions are its original creation(s) or it has sufficient rights -to grant the rights to its Contributions conveyed by this License. - -2.6. Fair Use - -This License is not intended to limit any rights You have under -applicable copyright doctrines of fair use, fair dealing, or other -equivalents. - -2.7. Conditions - -Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted -in Section 2.1. - -3. Responsibilities -------------------- - -3.1. Distribution of Source Form - -All distribution of Covered Software in Source Code Form, including any -Modifications that You create or to which You contribute, must be under -the terms of this License. You must inform recipients that the Source -Code Form of the Covered Software is governed by the terms of this -License, and how they can obtain a copy of this License. You may not -attempt to alter or restrict the recipients' rights in the Source Code -Form. - -3.2. Distribution of Executable Form - -If You distribute Covered Software in Executable Form then: - -(a) such Covered Software must also be made available in Source Code - Form, as described in Section 3.1, and You must inform recipients of - the Executable Form how they can obtain a copy of such Source Code - Form by reasonable means in a timely manner, at a charge no more - than the cost of distribution to the recipient; and - -(b) You may distribute such Executable Form under the terms of this - License, or sublicense it under different terms, provided that the - license for the Executable Form does not attempt to limit or alter - the recipients' rights in the Source Code Form under this License. - -3.3. Distribution of a Larger Work - -You may create and distribute a Larger Work under terms of Your choice, -provided that You also comply with the requirements of this License for -the Covered Software. If the Larger Work is a combination of Covered -Software with a work governed by one or more Secondary Licenses, and the -Covered Software is not Incompatible With Secondary Licenses, this -License permits You to additionally distribute such Covered Software -under the terms of such Secondary License(s), so that the recipient of -the Larger Work may, at their option, further distribute the Covered -Software under the terms of either this License or such Secondary -License(s). - -3.4. Notices - -You may not remove or alter the substance of any license notices -(including copyright notices, patent notices, disclaimers of warranty, -or limitations of liability) contained within the Source Code Form of -the Covered Software, except that You may alter any license notices to -the extent required to remedy known factual inaccuracies. - -3.5. Application of Additional Terms - -You may choose to offer, and to charge a fee for, warranty, support, -indemnity or liability obligations to one or more recipients of Covered -Software. However, You may do so only on Your own behalf, and not on -behalf of any Contributor. You must make it absolutely clear that any -such warranty, support, indemnity, or liability obligation is offered by -You alone, and You hereby agree to indemnify every Contributor for any -liability incurred by such Contributor as a result of warranty, support, -indemnity or liability terms You offer. You may include additional -disclaimers of warranty and limitations of liability specific to any -jurisdiction. - -4. Inability to Comply Due to Statute or Regulation ---------------------------------------------------- - -If it is impossible for You to comply with any of the terms of this -License with respect to some or all of the Covered Software due to -statute, judicial order, or regulation then You must: (a) comply with -the terms of this License to the maximum extent possible; and (b) -describe the limitations and the code they affect. Such description must -be placed in a text file included with all distributions of the Covered -Software under this License. Except to the extent prohibited by statute -or regulation, such description must be sufficiently detailed for a -recipient of ordinary skill to be able to understand it. - -5. Termination --------------- - -5.1. The rights granted under this License will terminate automatically -if You fail to comply with any of its terms. However, if You become -compliant, then the rights granted under this License from a particular -Contributor are reinstated (a) provisionally, unless and until such -Contributor explicitly and finally terminates Your grants, and (b) on an -ongoing basis, if such Contributor fails to notify You of the -non-compliance by some reasonable means prior to 60 days after You have -come back into compliance. Moreover, Your grants from a particular -Contributor are reinstated on an ongoing basis if such Contributor -notifies You of the non-compliance by some reasonable means, this is the -first time You have received notice of non-compliance with this License -from such Contributor, and You become compliant prior to 30 days after -Your receipt of the notice. - -5.2. If You initiate litigation against any entity by asserting a patent -infringement claim (excluding declaratory judgment actions, -counter-claims, and cross-claims) alleging that a Contributor Version -directly or indirectly infringes any patent, then the rights granted to -You by any and all Contributors for the Covered Software under Section -2.1 of this License shall terminate. - -5.3. In the event of termination under Sections 5.1 or 5.2 above, all -end user license agreements (excluding distributors and resellers) which -have been validly granted by You or Your distributors under this License -prior to termination shall survive termination. - -************************************************************************ -* * -* 6. Disclaimer of Warranty * -* ------------------------- * -* * -* Covered Software is provided under this License on an "as is" * -* basis, without warranty of any kind, either expressed, implied, or * -* statutory, including, without limitation, warranties that the * -* Covered Software is free of defects, merchantable, fit for a * -* particular purpose or non-infringing. The entire risk as to the * -* quality and performance of the Covered Software is with You. * -* Should any Covered Software prove defective in any respect, You * -* (not any Contributor) assume the cost of any necessary servicing, * -* repair, or correction. This disclaimer of warranty constitutes an * -* essential part of this License. No use of any Covered Software is * -* authorized under this License except under this disclaimer. * -* * -************************************************************************ - -************************************************************************ -* * -* 7. Limitation of Liability * -* -------------------------- * -* * -* Under no circumstances and under no legal theory, whether tort * -* (including negligence), contract, or otherwise, shall any * -* Contributor, or anyone who distributes Covered Software as * -* permitted above, be liable to You for any direct, indirect, * -* special, incidental, or consequential damages of any character * -* including, without limitation, damages for lost profits, loss of * -* goodwill, work stoppage, computer failure or malfunction, or any * -* and all other commercial damages or losses, even if such party * -* shall have been informed of the possibility of such damages. This * -* limitation of liability shall not apply to liability for death or * -* personal injury resulting from such party's negligence to the * -* extent applicable law prohibits such limitation. Some * -* jurisdictions do not allow the exclusion or limitation of * -* incidental or consequential damages, so this exclusion and * -* limitation may not apply to You. * -* * -************************************************************************ - -8. Litigation -------------- - -Any litigation relating to this License may be brought only in the -courts of a jurisdiction where the defendant maintains its principal -place of business and such litigation shall be governed by laws of that -jurisdiction, without reference to its conflict-of-law provisions. -Nothing in this Section shall prevent a party's ability to bring -cross-claims or counter-claims. - -9. Miscellaneous ----------------- - -This License represents the complete agreement concerning the subject -matter hereof. If any provision of this License is held to be -unenforceable, such provision shall be reformed only to the extent -necessary to make it enforceable. Any law or regulation which provides -that the language of a contract shall be construed against the drafter -shall not be used to construe this License against a Contributor. - -10. Versions of the License ---------------------------- - -10.1. New Versions - -Mozilla Foundation is the license steward. Except as provided in Section -10.3, no one other than the license steward has the right to modify or -publish new versions of this License. Each version will be given a -distinguishing version number. - -10.2. Effect of New Versions - -You may distribute the Covered Software under the terms of the version -of the License under which You originally received the Covered Software, -or under the terms of any subsequent version published by the license -steward. - -10.3. Modified Versions - -If you create software not governed by this License, and you want to -create a new license for such software, you may create and use a -modified version of this License if you rename the license and remove -any references to the name of the license steward (except to note that -such modified license differs from this License). - -10.4. Distributing Source Code Form that is Incompatible With Secondary -Licenses - -If You choose to distribute Source Code Form that is Incompatible With -Secondary Licenses under the terms of this version of the License, the -notice described in Exhibit B of this License must be attached. - -Exhibit A - Source Code Form License Notice -------------------------------------------- - - This Source Code Form is subject to the terms of the Mozilla Public - License, v. 2.0. If a copy of the MPL was not distributed with this - file, You can obtain one at http://mozilla.org/MPL/2.0/. - -If it is not possible or desirable to put the notice in a particular -file, then You may include the notice in a location (such as a LICENSE -file in a relevant directory) where a recipient would be likely to look -for such a notice. - -You may add additional accurate notices of copyright ownership. - -Exhibit B - "Incompatible With Secondary Licenses" Notice ---------------------------------------------------------- - - This Source Code Form is "Incompatible With Secondary Licenses", as - defined by the Mozilla Public License, v. 2.0. +Copyright (c) 2021 Pragmatic Software + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE +OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/PBot/AntiFlood.pm b/PBot/AntiFlood.pm index bb01a3db..8cce5d44 100644 --- a/PBot/AntiFlood.pm +++ b/PBot/AntiFlood.pm @@ -6,9 +6,8 @@ # The nickserv/ban-evasion stuff probably ought to be in BanTracker or some # such suitable class. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::AntiFlood; use parent 'PBot::Class'; diff --git a/PBot/AntiSpam.pm b/PBot/AntiSpam.pm index 3497ea66..86b4212d 100644 --- a/PBot/AntiSpam.pm +++ b/PBot/AntiSpam.pm @@ -2,9 +2,8 @@ # # Purpose: Checks if a message is spam -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::AntiSpam; use parent 'PBot::Class'; diff --git a/PBot/BanList.pm b/PBot/BanList.pm index f0ecfd42..ee0e023c 100644 --- a/PBot/BanList.pm +++ b/PBot/BanList.pm @@ -4,9 +4,8 @@ # joining channels and by tracking modes +b/+q and -b/-q in channels. Keeps # track of remaining duration for timed bans/quiets. Handles ban/unban queue. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::BanList; diff --git a/PBot/BlackList.pm b/PBot/BlackList.pm index 697d7f92..d05547ef 100644 --- a/PBot/BlackList.pm +++ b/PBot/BlackList.pm @@ -2,9 +2,8 @@ # # Purpose: Manages list of hostmasks that are not allowed to join a channel. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::BlackList; use parent 'PBot::Class'; diff --git a/PBot/Capabilities.pm b/PBot/Capabilities.pm index c19bcdc8..7d8da8a8 100644 --- a/PBot/Capabilities.pm +++ b/PBot/Capabilities.pm @@ -2,9 +2,8 @@ # # Purpose: Fine-grained user permissions. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Capabilities; use parent 'PBot::Class'; diff --git a/PBot/ChanOpCommands.pm b/PBot/ChanOpCommands.pm index 2258fd53..df17c2e8 100644 --- a/PBot/ChanOpCommands.pm +++ b/PBot/ChanOpCommands.pm @@ -2,9 +2,8 @@ # # Purpose: Channel operator command subroutines. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::ChanOpCommands; use parent 'PBot::Class'; diff --git a/PBot/ChanOps.pm b/PBot/ChanOps.pm index 6ac8ff0e..3fb30030 100644 --- a/PBot/ChanOps.pm +++ b/PBot/ChanOps.pm @@ -2,9 +2,8 @@ # # Purpose: Provides channel operator status tracking and commands. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::ChanOps; use parent 'PBot::Class'; diff --git a/PBot/Channels.pm b/PBot/Channels.pm index 96d5a1b9..c5474bd3 100644 --- a/PBot/Channels.pm +++ b/PBot/Channels.pm @@ -2,9 +2,8 @@ # # Purpose: Manages list of channels and auto-joins. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Channels; use parent 'PBot::Class'; diff --git a/PBot/Class.pm b/PBot/Class.pm index 3fa97609..dc7a76b3 100644 --- a/PBot/Class.pm +++ b/PBot/Class.pm @@ -3,9 +3,8 @@ # Purpose: Base class for PBot classes. This prevents each PBot class from # needing to define the new() constructor and other boilerplate. # -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Class; diff --git a/PBot/Commands.pm b/PBot/Commands.pm index 37176b04..e316a911 100644 --- a/PBot/Commands.pm +++ b/PBot/Commands.pm @@ -3,9 +3,8 @@ # Purpose: Registers commands. Invokes commands with user capability # validation. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Commands; use parent 'PBot::Class', 'PBot::Registerable'; diff --git a/PBot/DualIndexHashObject.pm b/PBot/DualIndexHashObject.pm index 8b232a87..bdb46475 100644 --- a/PBot/DualIndexHashObject.pm +++ b/PBot/DualIndexHashObject.pm @@ -10,9 +10,8 @@ # Data is stored in working memory for lightning fast performance. If you have # a huge amount of data, consider DualIndexSQLiteObject instead. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::DualIndexHashObject; diff --git a/PBot/DualIndexSQLiteObject.pm b/PBot/DualIndexSQLiteObject.pm index 41703931..329a0541 100644 --- a/PBot/DualIndexSQLiteObject.pm +++ b/PBot/DualIndexSQLiteObject.pm @@ -4,9 +4,8 @@ # setting and deleting values, caching, displaying nearest matches, etc. Designed to # be as compatible as possible with DualIndexHashObject; e.g. get_keys, get_data, etc. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::DualIndexSQLiteObject; diff --git a/PBot/EventDispatcher.pm b/PBot/EventDispatcher.pm index 4653e886..1bf42ed5 100644 --- a/PBot/EventDispatcher.pm +++ b/PBot/EventDispatcher.pm @@ -4,9 +4,8 @@ # # Note: PBot::EventDispatcher has no relation to PBot::EventQueue. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::EventDispatcher; use parent 'PBot::Class'; diff --git a/PBot/EventQueue.pm b/PBot/EventQueue.pm index 825ef35c..9bab001f 100644 --- a/PBot/EventQueue.pm +++ b/PBot/EventQueue.pm @@ -5,9 +5,8 @@ # # Note: PBot::EventQueue has no relation to PBot::EventDispatcher. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::EventQueue; use parent 'PBot::Class'; diff --git a/PBot/FactoidCommands.pm b/PBot/FactoidCommands.pm index 09b0eecd..ec2b667e 100644 --- a/PBot/FactoidCommands.pm +++ b/PBot/FactoidCommands.pm @@ -2,9 +2,8 @@ # # Purpose: Factoid command subroutines. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::FactoidCommands; use parent 'PBot::Class'; diff --git a/PBot/Factoids.pm b/PBot/Factoids.pm index c3bab721..f17df818 100644 --- a/PBot/Factoids.pm +++ b/PBot/Factoids.pm @@ -2,9 +2,8 @@ # # Purpose: Provides functionality for factoids. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Factoids; use parent 'PBot::Class'; diff --git a/PBot/Functions.pm b/PBot/Functions.pm index 963d9469..34948538 100644 --- a/PBot/Functions.pm +++ b/PBot/Functions.pm @@ -13,9 +13,8 @@ # the command-substitution with the result, thus escaping $args to be safely # used in the URL of this simple Google Image Search factoid command. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Functions; use parent 'PBot::Class'; diff --git a/PBot/HashObject.pm b/PBot/HashObject.pm index d2ee3ed1..927dd014 100644 --- a/PBot/HashObject.pm +++ b/PBot/HashObject.pm @@ -5,9 +5,8 @@ # case-insensitive access to the index key while preserving original case when # displaying index key. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::HashObject; diff --git a/PBot/IRCHandlers.pm b/PBot/IRCHandlers.pm index 69bd40c5..aeca57fa 100644 --- a/PBot/IRCHandlers.pm +++ b/PBot/IRCHandlers.pm @@ -5,9 +5,8 @@ # multiple handlers for PRIVMSG spread throughout the bot and its plugins, # for example. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::IRCHandlers; use parent 'PBot::Class'; diff --git a/PBot/IgnoreList.pm b/PBot/IgnoreList.pm index 8f8f64a6..ba003f46 100644 --- a/PBot/IgnoreList.pm +++ b/PBot/IgnoreList.pm @@ -2,9 +2,8 @@ # # Purpose: Manages ignore list. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::IgnoreList; use parent 'PBot::Class'; diff --git a/PBot/Imports.pm b/PBot/Imports.pm index 473913b7..d8846d8f 100644 --- a/PBot/Imports.pm +++ b/PBot/Imports.pm @@ -2,9 +2,8 @@ # # Purpose: Boilerplate imports for PBot packages. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Imports; diff --git a/PBot/Interpreter.pm b/PBot/Interpreter.pm index b98d9d87..1088d058 100644 --- a/PBot/Interpreter.pm +++ b/PBot/Interpreter.pm @@ -6,9 +6,8 @@ # command splitting, command output processing such as truncating long # text to web paste sites, etc. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Interpreter; use parent 'PBot::Class', 'PBot::Registerable'; diff --git a/PBot/LagChecker.pm b/PBot/LagChecker.pm index 046767ca..e9bf9d30 100644 --- a/PBot/LagChecker.pm +++ b/PBot/LagChecker.pm @@ -3,9 +3,8 @@ # Purpose: sends PING command to IRC server and times duration for PONG reply in # order to maintain lag history and average. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::LagChecker; use parent 'PBot::Class'; diff --git a/PBot/Logger.pm b/PBot/Logger.pm index 9a296c3b..00aca685 100644 --- a/PBot/Logger.pm +++ b/PBot/Logger.pm @@ -2,9 +2,8 @@ # # Purpose: Logs text to file and STDOUT. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Logger; diff --git a/PBot/MessageHistory.pm b/PBot/MessageHistory.pm index bf2c5f12..6c305e67 100644 --- a/PBot/MessageHistory.pm +++ b/PBot/MessageHistory.pm @@ -6,9 +6,8 @@ # Used in conjunction with AntiFlood and Quotegrabs for kick/ban on # flood/ban-evasion and grabbing quotes, respectively. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::MessageHistory; use parent 'PBot::Class'; diff --git a/PBot/MessageHistory_SQLite.pm b/PBot/MessageHistory_SQLite.pm index bb415c20..e8822346 100644 --- a/PBot/MessageHistory_SQLite.pm +++ b/PBot/MessageHistory_SQLite.pm @@ -6,9 +6,8 @@ # ids. This is also extremely useful for detecting ban-evasions and listing # also-known-as data for a nickname (see the !aka bot command). -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::MessageHistory_SQLite; use parent 'PBot::Class'; diff --git a/PBot/MiscCommands.pm b/PBot/MiscCommands.pm index cf723f49..47261f4c 100644 --- a/PBot/MiscCommands.pm +++ b/PBot/MiscCommands.pm @@ -3,9 +3,8 @@ # Purpose: Registers misc PBot commands that don't really belong in any # other file. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::MiscCommands; use parent 'PBot::Class'; diff --git a/PBot/Modules.pm b/PBot/Modules.pm index d9dc4e30..ddc1bc0f 100644 --- a/PBot/Modules.pm +++ b/PBot/Modules.pm @@ -6,9 +6,8 @@ # The standard error output is stored in a file named -stderr in the # modules/ directory. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Modules; use parent 'PBot::Class'; diff --git a/PBot/NickList.pm b/PBot/NickList.pm index efb1b0bc..3b50e4b8 100644 --- a/PBot/NickList.pm +++ b/PBot/NickList.pm @@ -4,9 +4,8 @@ # Used to retrieve list of channels a nick is present in or to # determine if a nick is present in a channel. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::NickList; use parent 'PBot::Class'; diff --git a/PBot/PBot.pm b/PBot/PBot.pm index f842ea17..5d8700fd 100644 --- a/PBot/PBot.pm +++ b/PBot/PBot.pm @@ -13,9 +13,8 @@ # numerous bugfixes and supports various new features such as IRCv3 client # capability negotiation and SASL user authentication. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::PBot; diff --git a/PBot/Plugins.pm b/PBot/Plugins.pm index 0b2c0fb0..0fd03f38 100644 --- a/PBot/Plugins.pm +++ b/PBot/Plugins.pm @@ -2,9 +2,8 @@ # # Purpose: Loads and manages external plugins. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Plugins; use parent 'PBot::Class'; diff --git a/PBot/ProcessManager.pm b/PBot/ProcessManager.pm index be8aab2c..8c3f3f06 100644 --- a/PBot/ProcessManager.pm +++ b/PBot/ProcessManager.pm @@ -3,9 +3,8 @@ # Purpose: Handles forking and execution of module/subroutine processes. # Provides commands to list running processes and to kill them. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::ProcessManager; use parent 'PBot::Class'; diff --git a/PBot/Refresher.pm b/PBot/Refresher.pm index 6b2cf3f6..a70af672 100644 --- a/PBot/Refresher.pm +++ b/PBot/Refresher.pm @@ -4,9 +4,8 @@ # module member data, only subroutines. TODO: reinitialize modules in order # to refresh member data too. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Refresher; use parent 'PBot::Class'; diff --git a/PBot/Registerable.pm b/PBot/Registerable.pm index 4b7f5fe5..cd080fdc 100644 --- a/PBot/Registerable.pm +++ b/PBot/Registerable.pm @@ -2,9 +2,8 @@ # # Purpose: Provides functionality to register and execute one or more subroutines. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Registerable; diff --git a/PBot/Registry.pm b/PBot/Registry.pm index 07fa6b11..ec30446a 100644 --- a/PBot/Registry.pm +++ b/PBot/Registry.pm @@ -3,9 +3,8 @@ # Purpose: Provides a centralized registry of configuration settings that can # easily be examined and updated via getters and setters. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Registry; use parent 'PBot::Class'; diff --git a/PBot/RegistryCommands.pm b/PBot/RegistryCommands.pm index 2058834e..cd9ec0d4 100644 --- a/PBot/RegistryCommands.pm +++ b/PBot/RegistryCommands.pm @@ -2,9 +2,8 @@ # # Purpose: Bot commands to manipulate Registry entries. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::RegistryCommands; use parent 'PBot::Class'; diff --git a/PBot/SQLiteLogger.pm b/PBot/SQLiteLogger.pm index 23385128..97d52dc9 100644 --- a/PBot/SQLiteLogger.pm +++ b/PBot/SQLiteLogger.pm @@ -3,9 +3,8 @@ # Purpose: Logs SQLite trace messages to Logger.pm with profiling of elapsed # time between messages. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::SQLiteLogger; diff --git a/PBot/SQLiteLoggerLayer.pm b/PBot/SQLiteLoggerLayer.pm index fbfba180..05f41c27 100644 --- a/PBot/SQLiteLoggerLayer.pm +++ b/PBot/SQLiteLoggerLayer.pm @@ -2,9 +2,8 @@ # # Purpose: PerlIO::via layer to log DBI trace messages. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::SQLiteLoggerLayer; diff --git a/PBot/SelectHandler.pm b/PBot/SelectHandler.pm index 460ea8c2..3d27257d 100644 --- a/PBot/SelectHandler.pm +++ b/PBot/SelectHandler.pm @@ -3,9 +3,8 @@ # Purpose: Adds/removes file handles to/from PBot::IRC's select loop # and contains handlers for select events. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::SelectHandler; use parent 'PBot::Class'; diff --git a/PBot/StdinReader.pm b/PBot/StdinReader.pm index 701dfa7a..c3a810ba 100644 --- a/PBot/StdinReader.pm +++ b/PBot/StdinReader.pm @@ -8,9 +8,8 @@ # # The above will output "hi" in channel #foo. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::StdinReader; use parent 'PBot::Class'; diff --git a/PBot/Updater.pm b/PBot/Updater.pm index 5f0a38e1..d0f74b00 100644 --- a/PBot/Updater.pm +++ b/PBot/Updater.pm @@ -6,9 +6,8 @@ # on versioning information. Ensures data/configuration files are in the # proper location and using the latest data structure. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Updater; use parent 'PBot::Class'; diff --git a/PBot/Users.pm b/PBot/Users.pm index 2a679d08..bb0674e2 100644 --- a/PBot/Users.pm +++ b/PBot/Users.pm @@ -2,9 +2,8 @@ # # Purpose: Manages list of bot users/admins and their metadata. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Users; use parent 'PBot::Class'; diff --git a/PBot/Utils/LWPUserAgentCached.pm b/PBot/Utils/LWPUserAgentCached.pm index a8b456e5..88facad0 100644 --- a/PBot/Utils/LWPUserAgentCached.pm +++ b/PBot/Utils/LWPUserAgentCached.pm @@ -4,9 +4,8 @@ # the 'expires' or 'Last-Modified' attributes, we always cache for the # specified duration. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Utils::LWPUserAgentCached; diff --git a/PBot/Utils/ParseDate.pm b/PBot/Utils/ParseDate.pm index 107d691a..c9fd745e 100644 --- a/PBot/Utils/ParseDate.pm +++ b/PBot/Utils/ParseDate.pm @@ -3,9 +3,8 @@ # Purpose: Intelligently parses strings like "1h30m", "5 minutes", "next week", # "3:30 am pdt", "11 pm utc", etc, into seconds. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Utils::ParseDate; diff --git a/PBot/Utils/SafeFilename.pm b/PBot/Utils/SafeFilename.pm index 238497e1..66cac358 100644 --- a/PBot/Utils/SafeFilename.pm +++ b/PBot/Utils/SafeFilename.pm @@ -3,9 +3,8 @@ # Purpose: for strings containing filenames, translates potentially unsafe # characters into safe expansions; e.g. "foo/bar" becomes "foo&fslash;bar". -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Utils::SafeFilename; diff --git a/PBot/Utils/ValidateString.pm b/PBot/Utils/ValidateString.pm index e18586aa..8cba76f7 100644 --- a/PBot/Utils/ValidateString.pm +++ b/PBot/Utils/ValidateString.pm @@ -4,9 +4,8 @@ # for internal strings. This means ensuring the string is not too long, # does not have undesired characters, etc. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::Utils::ValidateString; diff --git a/PBot/VERSION.pm b/PBot/VERSION.pm index 00726245..46428049 100644 --- a/PBot/VERSION.pm +++ b/PBot/VERSION.pm @@ -3,9 +3,8 @@ # Purpose: Keeps track of bot version. Can compare current version against # latest version on github or URL in `version.check_url` registry entry. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::VERSION; use parent 'PBot::Class'; diff --git a/PBot/WebPaste.pm b/PBot/WebPaste.pm index 0078c8e3..24fbd3f2 100644 --- a/PBot/WebPaste.pm +++ b/PBot/WebPaste.pm @@ -2,9 +2,8 @@ # # Purpose: Pastes text to a cycling list of web paste sites. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::WebPaste; use parent 'PBot::Class'; diff --git a/Plugins/ActionTrigger.pm b/Plugins/ActionTrigger.pm index 1fae77e9..fdd4c980 100644 --- a/Plugins/ActionTrigger.pm +++ b/Plugins/ActionTrigger.pm @@ -31,9 +31,8 @@ # # These are basic examples; more complex examples can be crafted. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::ActionTrigger; use parent 'Plugins::Plugin'; diff --git a/Plugins/AntiAway.pm b/Plugins/AntiAway.pm index 0b17b21d..d8552188 100644 --- a/Plugins/AntiAway.pm +++ b/Plugins/AntiAway.pm @@ -2,9 +2,8 @@ # # Purpose: Kicks people that visibly auto-away with ACTIONs or nick-changes -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::AntiAway; use parent 'Plugins::Plugin'; diff --git a/Plugins/AntiKickAutoRejoin.pm b/Plugins/AntiKickAutoRejoin.pm index eb4e8021..d57671e6 100644 --- a/Plugins/AntiKickAutoRejoin.pm +++ b/Plugins/AntiKickAutoRejoin.pm @@ -2,9 +2,8 @@ # # Purpose: Temporarily bans people who immediately auto-rejoin after a kick. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::AntiKickAutoRejoin; use parent 'Plugins::Plugin'; diff --git a/Plugins/AntiNickSpam.pm b/Plugins/AntiNickSpam.pm index a22c4b42..c9ce4cd0 100644 --- a/Plugins/AntiNickSpam.pm +++ b/Plugins/AntiNickSpam.pm @@ -3,9 +3,8 @@ # Purpose: Temporarily mutes $~a in channel if too many nicks were # mentioned within a time period; used to combat botnet spam -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::AntiNickSpam; use parent 'Plugins::Plugin'; diff --git a/Plugins/AntiRepeat.pm b/Plugins/AntiRepeat.pm index 5dc223fe..c120db92 100644 --- a/Plugins/AntiRepeat.pm +++ b/Plugins/AntiRepeat.pm @@ -1,6 +1,9 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: AntiRepeat.pm +# +# Purpose: Stops flooders/spammers from excessively repeating similiar messages. + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::AntiRepeat; use parent 'Plugins::Plugin'; diff --git a/Plugins/AntiTwitter.pm b/Plugins/AntiTwitter.pm index cb429c35..c05ee75d 100644 --- a/Plugins/AntiTwitter.pm +++ b/Plugins/AntiTwitter.pm @@ -3,9 +3,8 @@ # Purpose: Warns people off from using @nick style addressing. Temp-bans # if they persist. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::AntiTwitter; use parent 'Plugins::Plugin'; diff --git a/Plugins/AutoRejoin.pm b/Plugins/AutoRejoin.pm index 5c620373..a0ad7c7f 100644 --- a/Plugins/AutoRejoin.pm +++ b/Plugins/AutoRejoin.pm @@ -2,9 +2,8 @@ # # Purpose: Auto-rejoin channels after kick or whatever. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::AutoRejoin; use parent 'Plugins::Plugin'; diff --git a/Plugins/Battleship.pm b/Plugins/Battleship.pm index 44711bf0..0323f280 100644 --- a/Plugins/Battleship.pm +++ b/Plugins/Battleship.pm @@ -21,9 +21,8 @@ # the shot to a random tile. Much of the IOCCC silliness has been removed so that # I can maintain this code without going insane. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Battleship; use parent 'Plugins::Plugin'; diff --git a/Plugins/Connect4.pm b/Plugins/Connect4.pm index 838816d1..4dc83cae 100644 --- a/Plugins/Connect4.pm +++ b/Plugins/Connect4.pm @@ -1,6 +1,10 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: Connect4.pm +# +# Purpose: Connect-4 game for IRC. Includes options to resize board +# dimensions and how many pieces to connect. + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Connect4; use parent 'Plugins::Plugin'; diff --git a/Plugins/Counter.pm b/Plugins/Counter.pm index 60f3af3f..0c2c5645 100644 --- a/Plugins/Counter.pm +++ b/Plugins/Counter.pm @@ -1,6 +1,10 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: Counter.pm +# +# Purpose: Counts occurrences of phrases or keywords. Can automatically +# respond about specific counters. + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Counter; use parent 'Plugins::Plugin'; diff --git a/Plugins/Date.pm b/Plugins/Date.pm index 0ae6c5a3..8e6dd6df 100644 --- a/Plugins/Date.pm +++ b/Plugins/Date.pm @@ -2,9 +2,8 @@ # # Purpose: Adds command to display time and date for timezones. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Date; use parent 'Plugins::Plugin'; diff --git a/Plugins/Example.pm b/Plugins/Example.pm index 25e985fe..e5882406 100644 --- a/Plugins/Example.pm +++ b/Plugins/Example.pm @@ -2,9 +2,8 @@ # # Purpose: Example plugin boilerplate. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Example; use parent 'Plugins::Plugin'; diff --git a/Plugins/FuncBuiltins.pm b/Plugins/FuncBuiltins.pm index 5d45f5e3..16cc8317 100644 --- a/Plugins/FuncBuiltins.pm +++ b/Plugins/FuncBuiltins.pm @@ -2,9 +2,8 @@ # # Purpose: Registers the basic built-in Functions -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::FuncBuiltins; use parent 'Plugins::Plugin'; diff --git a/Plugins/FuncGrep.pm b/Plugins/FuncGrep.pm index 61f5a144..ceb6dc01 100644 --- a/Plugins/FuncGrep.pm +++ b/Plugins/FuncGrep.pm @@ -2,9 +2,8 @@ # # Purpose: Registers the grep Function -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::FuncGrep; use parent 'Plugins::Plugin'; diff --git a/Plugins/FuncPlural.pm b/Plugins/FuncPlural.pm index 7bdacc9f..019be2e1 100644 --- a/Plugins/FuncPlural.pm +++ b/Plugins/FuncPlural.pm @@ -2,9 +2,8 @@ # # Purpose: Registers the plural Function. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::FuncPlural; use parent 'Plugins::Plugin'; diff --git a/Plugins/FuncSed.pm b/Plugins/FuncSed.pm index 92a95e25..46434525 100644 --- a/Plugins/FuncSed.pm +++ b/Plugins/FuncSed.pm @@ -2,9 +2,8 @@ # # Purpose: Registers the sed Function -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::FuncSed; use parent 'Plugins::Plugin'; diff --git a/Plugins/GoogleSearch.pm b/Plugins/GoogleSearch.pm index 845d320c..fd94881e 100644 --- a/Plugins/GoogleSearch.pm +++ b/Plugins/GoogleSearch.pm @@ -1,6 +1,10 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: GoogleSearch.pm +# +# Purpose: Google CustomSearch API. You'll need to configure an api-key and +# a custom-search context. URLs to instructions are provided by the command. + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::GoogleSearch; use parent 'Plugins::Plugin'; diff --git a/Plugins/ParseDate.pm b/Plugins/ParseDate.pm index 44a7bced..27d9862e 100644 --- a/Plugins/ParseDate.pm +++ b/Plugins/ParseDate.pm @@ -1,8 +1,10 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -# Just a quick interface to test/play with PBot::Utils::ParseDate +# File: ParseDate.pm +# +# Purpose: Just a simple interface to test/play with PBot::Utils::ParseDate +# and make sure it's working properly. +# +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::ParseDate; use parent 'Plugins::Plugin'; diff --git a/Plugins/Plang.pm b/Plugins/Plang.pm index cf65a1e3..4f9f33ca 100644 --- a/Plugins/Plang.pm +++ b/Plugins/Plang.pm @@ -3,9 +3,8 @@ # Purpose: Scripting language for creating advanced PBot factoids # and interacting with various internal PBot APIs. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Plang; use parent 'Plugins::Plugin'; diff --git a/Plugins/Plugin.pm b/Plugins/Plugin.pm index 827822bd..c5a30591 100644 --- a/Plugins/Plugin.pm +++ b/Plugins/Plugin.pm @@ -2,9 +2,8 @@ # # Purpose: Base class for PBot plugins. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Plugin; diff --git a/Plugins/Quotegrabs.pm b/Plugins/Quotegrabs.pm index 581f48a8..b552342e 100644 --- a/Plugins/Quotegrabs.pm +++ b/Plugins/Quotegrabs.pm @@ -5,9 +5,8 @@ # not just the most recent message. Can grab multiple distinct messages with # one `grab` command. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Quotegrabs; use parent 'Plugins::Plugin'; diff --git a/Plugins/Quotegrabs/Quotegrabs_Hashtable.pm b/Plugins/Quotegrabs/Quotegrabs_Hashtable.pm index 516cb8a0..9915a86c 100644 --- a/Plugins/Quotegrabs/Quotegrabs_Hashtable.pm +++ b/Plugins/Quotegrabs/Quotegrabs_Hashtable.pm @@ -1,11 +1,9 @@ # File: Quotegrabs_Hashtable.pm -# Author: pragma_ # # Purpose: Hashtable backend for storing and retreiving quotegrabs -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Quotegrabs::Quotegrabs_Hashtable; diff --git a/Plugins/Quotegrabs/Quotegrabs_SQLite.pm b/Plugins/Quotegrabs/Quotegrabs_SQLite.pm index fbcbb8fa..31b337e0 100644 --- a/Plugins/Quotegrabs/Quotegrabs_SQLite.pm +++ b/Plugins/Quotegrabs/Quotegrabs_SQLite.pm @@ -1,11 +1,9 @@ # File: Quotegrabs_SQLite.pm -# Author: pragma_ # # Purpose: SQLite back-end for storing and retreiving quotegrabs -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Quotegrabs::Quotegrabs_SQLite; diff --git a/Plugins/RelayUnreg.pm b/Plugins/RelayUnreg.pm index 3ed0dca4..eb97570a 100644 --- a/Plugins/RelayUnreg.pm +++ b/Plugins/RelayUnreg.pm @@ -1,6 +1,13 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: RelayUnreg.pm +# +# Purpose: Relays messages from unidentifed muted people in +q $~a channels +# with reduced-moderation in effect so OPs can see messages that would other- +# wise be blocked. This was made for channels being attacked by spammers. It +# allows unidentified users to still participate in the channel while blocking +# unidentified spammers. + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::RelayUnreg; use parent 'Plugins::Plugin'; diff --git a/Plugins/RemindMe.pm b/Plugins/RemindMe.pm index 0ba85076..69301848 100644 --- a/Plugins/RemindMe.pm +++ b/Plugins/RemindMe.pm @@ -3,9 +3,8 @@ # Purpose: Users can use `remindme` to set up reminders. Reminders are # sent to the user (or to a channel, if option -c is used). -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::RemindMe; use parent 'Plugins::Plugin'; diff --git a/Plugins/RestrictedMod.pm b/Plugins/RestrictedMod.pm index 30ef8bf6..28d2d39f 100644 --- a/Plugins/RestrictedMod.pm +++ b/Plugins/RestrictedMod.pm @@ -6,9 +6,8 @@ # configurations where +v users are recognized as "semi-trusted" in # order to provide assistance in combating heavy spam and drone traffic. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::RestrictedMod; use parent 'Plugins::Plugin'; diff --git a/Plugins/Spinach.pm b/Plugins/Spinach.pm index 071dce3f..e1c09120 100644 --- a/Plugins/Spinach.pm +++ b/Plugins/Spinach.pm @@ -1,6 +1,13 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: Spinach.pm +# +# Purpose: Trivial game engine with a twist. Game is played in rounds. Each +# round players choose a category of questions. Then a random question from +# that category is shown. All players then privately submit a "lie" to the +# bot. Then all "lies" are revealed along with the true answer. Players +# gain points every time another player picks their lie. Very fun! + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Spinach; use parent 'Plugins::Plugin'; diff --git a/Plugins/Spinach/Rank.pm b/Plugins/Spinach/Rank.pm index f48d0404..eb8266ff 100644 --- a/Plugins/Spinach/Rank.pm +++ b/Plugins/Spinach/Rank.pm @@ -1,8 +1,9 @@ -#!/usr/bin/env perl +# File: Rank.pm +# +# Purpose: Ranks players by various keywords. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Spinach::Rank; diff --git a/Plugins/Spinach/Stats.pm b/Plugins/Spinach/Stats.pm index e87e1f6d..b8870b23 100644 --- a/Plugins/Spinach/Stats.pm +++ b/Plugins/Spinach/Stats.pm @@ -1,8 +1,9 @@ -#!/usr/bin/env perl +# File: Stats.pm +# +# Purpose: Records player stats. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Spinach::Stats; diff --git a/Plugins/TypoSub.pm b/Plugins/TypoSub.pm index 52e7379f..0c4e958d 100644 --- a/Plugins/TypoSub.pm +++ b/Plugins/TypoSub.pm @@ -12,10 +12,8 @@ # s/like/love/ # alice meant to say: i love candy -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::TypoSub; use parent 'Plugins::Plugin'; diff --git a/Plugins/UrlTitles.pm b/Plugins/UrlTitles.pm index 2c887e2b..49ed3c49 100644 --- a/Plugins/UrlTitles.pm +++ b/Plugins/UrlTitles.pm @@ -2,9 +2,8 @@ # # Purpose: Display titles of URLs in channel messages. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::UrlTitles; use parent 'Plugins::Plugin'; diff --git a/Plugins/Weather.pm b/Plugins/Weather.pm index 486fba9b..c525606b 100644 --- a/Plugins/Weather.pm +++ b/Plugins/Weather.pm @@ -1,10 +1,9 @@ # File: Weather.pm # -# Purpose: Weather command. +# Purpose: Weather command. See Wttr.pm for a more featureful command. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Weather; use parent 'Plugins::Plugin'; diff --git a/Plugins/Wolfram.pm b/Plugins/Wolfram.pm index e9e2a6ba..8bed94b7 100644 --- a/Plugins/Wolfram.pm +++ b/Plugins/Wolfram.pm @@ -2,9 +2,8 @@ # # Purpose: Query Wolfram|Alpha's Short Answers API. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Wolfram; use parent 'Plugins::Plugin'; diff --git a/Plugins/Wttr.pm b/Plugins/Wttr.pm index 997c806c..d6c27566 100644 --- a/Plugins/Wttr.pm +++ b/Plugins/Wttr.pm @@ -2,9 +2,8 @@ # # Purpose: Weather command using Wttr.in. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Plugins::Wttr; use parent 'Plugins::Plugin'; diff --git a/misc/greybot/PBot/DualIndexSQLiteObject.pm b/misc/greybot/PBot/DualIndexSQLiteObject.pm index ff72dc92..19f8959e 100644 --- a/misc/greybot/PBot/DualIndexSQLiteObject.pm +++ b/misc/greybot/PBot/DualIndexSQLiteObject.pm @@ -1,13 +1,11 @@ # File: DualIndexSQLiteObject.pm -# Author: pragma_ # # Purpose: Provides a dual-indexed SQLite object with an abstracted API that includes # setting and deleting values, caching, displaying nearest matches, etc. Designed to # be as compatible as possible with DualIndexHashObject; e.g. get_keys, get_data, etc. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package PBot::DualIndexSQLiteObject; diff --git a/misc/greybot/import-greybot.pl b/misc/greybot/import-greybot.pl index a922028c..e509f81f 100755 --- a/misc/greybot/import-greybot.pl +++ b/misc/greybot/import-greybot.pl @@ -15,6 +15,9 @@ # that were copied over are not out-dated. time-permitting, implement # all the TODOs in this script. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/misc/update-version b/misc/update-version index 551147ac..bc698278 100755 --- a/misc/update-version +++ b/misc/update-version @@ -1,8 +1,11 @@ -#!/usr/bin/perl +#!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: update-version +# +# Purpose: Updates version information in PBot/VERSION.pm + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/ago.pl b/modules/ago.pl index 4d37b68a..c1a731b4 100755 --- a/modules/ago.pl +++ b/modules/ago.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use Time::Duration; diff --git a/modules/bashfaq.pl b/modules/bashfaq.pl index 2fad3a1d..831c014d 100755 --- a/modules/bashfaq.pl +++ b/modules/bashfaq.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT my $query = "@ARGV"; print "Usage: faq \n" and exit 0 if not length $query; diff --git a/modules/bashpf.pl b/modules/bashpf.pl index 0cc6048e..41959d6a 100755 --- a/modules/bashpf.pl +++ b/modules/bashpf.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT my $query = "@ARGV"; print "Usage: pf \n" and exit 0 if not length $query; diff --git a/modules/c11std.pl b/modules/c11std.pl index 713f950a..8498ade6 100755 --- a/modules/c11std.pl +++ b/modules/c11std.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/c2english.pl b/modules/c2english.pl index 6eec5bc2..a5b3fa41 100755 --- a/modules/c2english.pl +++ b/modules/c2english.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/c2english/CGrammar.pm b/modules/c2english/CGrammar.pm index 9ce6aea3..83128522 100755 --- a/modules/c2english/CGrammar.pm +++ b/modules/c2english/CGrammar.pm @@ -1,9 +1,8 @@ # C-to-English Grammar # Pragmatic Software -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT { my ($rule_name, @macros, @typedefs, @identifiers); diff --git a/modules/c2english/c2eng.pl b/modules/c2english/c2eng.pl index 2d9fc4dd..6b9a441d 100755 --- a/modules/c2english/c2eng.pl +++ b/modules/c2english/c2eng.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use strict; use warnings; diff --git a/modules/c99std.pl b/modules/c99std.pl index b4e5a7a6..0fad4cc2 100755 --- a/modules/c99std.pl +++ b/modules/c99std.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/cdecl.pl b/modules/cdecl.pl index 79d06b25..d19a5417 100755 --- a/modules/cdecl.pl +++ b/modules/cdecl.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # quick and dirty by :pragma diff --git a/modules/cfaq.pl b/modules/cfaq.pl index 040ee42d..1be8df28 100755 --- a/modules/cfaq.pl +++ b/modules/cfaq.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT my $match = 1; my $matches = 0; diff --git a/modules/cjeopardy/IRCColors.pm b/modules/cjeopardy/IRCColors.pm index 7dfe99a2..9ce0324b 100644 --- a/modules/cjeopardy/IRCColors.pm +++ b/modules/cjeopardy/IRCColors.pm @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/cjeopardy/QStatskeeper.pm b/modules/cjeopardy/QStatskeeper.pm index 2857d892..d0f82fd0 100644 --- a/modules/cjeopardy/QStatskeeper.pm +++ b/modules/cjeopardy/QStatskeeper.pm @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package QStatskeeper; diff --git a/modules/cjeopardy/Scorekeeper.pm b/modules/cjeopardy/Scorekeeper.pm index 2185b1dc..c9eec5f8 100644 --- a/modules/cjeopardy/Scorekeeper.pm +++ b/modules/cjeopardy/Scorekeeper.pm @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT package Scorekeeper; diff --git a/modules/cjeopardy/cjeopardy.pl b/modules/cjeopardy/cjeopardy.pl index 37be3680..7db9529c 100755 --- a/modules/cjeopardy/cjeopardy.pl +++ b/modules/cjeopardy/cjeopardy.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/cjeopardy/cjeopardy_answer.pl b/modules/cjeopardy/cjeopardy_answer.pl index d28a774a..ed2d9375 100755 --- a/modules/cjeopardy/cjeopardy_answer.pl +++ b/modules/cjeopardy/cjeopardy_answer.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; @@ -317,7 +316,7 @@ foreach my $answer (@valid_answers) { close $semaphore; - if ($channel eq '#cjeopardy') { + if ($channel eq '#cjeopardy' or $channel eq '#c-jeopardy') { my $question = `./cjeopardy.pl $channel`; if ($hint_only_mode) { diff --git a/modules/cjeopardy/cjeopardy_filter.pl b/modules/cjeopardy/cjeopardy_filter.pl index 5a47b02d..c2065598 100755 --- a/modules/cjeopardy/cjeopardy_filter.pl +++ b/modules/cjeopardy/cjeopardy_filter.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/cjeopardy/cjeopardy_hint.pl b/modules/cjeopardy/cjeopardy_hint.pl index d4136103..f78ce822 100755 --- a/modules/cjeopardy/cjeopardy_hint.pl +++ b/modules/cjeopardy/cjeopardy_hint.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/cjeopardy/cjeopardy_qstats.pl b/modules/cjeopardy/cjeopardy_qstats.pl index ff88706d..53c3fc26 100755 --- a/modules/cjeopardy/cjeopardy_qstats.pl +++ b/modules/cjeopardy/cjeopardy_qstats.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/cjeopardy/cjeopardy_scores.pl b/modules/cjeopardy/cjeopardy_scores.pl index d07381d8..cedf2bd7 100755 --- a/modules/cjeopardy/cjeopardy_scores.pl +++ b/modules/cjeopardy/cjeopardy_scores.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/cjeopardy/cjeopardy_show.pl b/modules/cjeopardy/cjeopardy_show.pl index e796af03..b2c09c19 100755 --- a/modules/cjeopardy/cjeopardy_show.pl +++ b/modules/cjeopardy/cjeopardy_show.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/codepad.pl b/modules/codepad.pl index b444df23..7681b8c2 100755 --- a/modules/codepad.pl +++ b/modules/codepad.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/compiler_block.pl b/modules/compiler_block.pl index 011f5bb5..c10e7ec3 100755 --- a/modules/compiler_block.pl +++ b/modules/compiler_block.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # compiler_client.pl connects to compiler_server.pl hosted at PeerAddr/PeerPort below # and sends a nick, language and code, then retreives and prints the compilation/execution output. diff --git a/modules/compiler_client.pl b/modules/compiler_client.pl index f24709d9..456cd326 100755 --- a/modules/compiler_client.pl +++ b/modules/compiler_client.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # compiler_client.pl connects to compiler_server.pl hosted at PeerAddr/PeerPort below # and sends a nick, language and code, then retreives and prints the compilation/execution output. diff --git a/modules/compiler_vm/compiler_client.pl b/modules/compiler_vm/compiler_client.pl index e7b6ccf8..76583cf3 100755 --- a/modules/compiler_vm/compiler_client.pl +++ b/modules/compiler_vm/compiler_client.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # compiler_client.pl connects to compiler_server.pl hosted at PeerAddr/PeerPort below # and sends a nick, language and code, then retreives and prints the compilation/execution output. diff --git a/modules/compiler_vm/compiler_server.pl b/modules/compiler_vm/compiler_server.pl index 0841af11..ccb4bc87 100755 --- a/modules/compiler_vm/compiler_server.pl +++ b/modules/compiler_vm/compiler_server.pl @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/compiler_server_watchdog.pl b/modules/compiler_vm/compiler_server_watchdog.pl index c071c653..44706b1e 100755 --- a/modules/compiler_vm/compiler_server_watchdog.pl +++ b/modules/compiler_vm/compiler_server_watchdog.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/compiler_vm/compiler_vm_client.pl b/modules/compiler_vm/compiler_vm_client.pl index 7b867698..f733cd90 100755 --- a/modules/compiler_vm/compiler_vm_client.pl +++ b/modules/compiler_vm/compiler_vm_client.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/compiler_vm/compiler_vm_server.pl b/modules/compiler_vm/compiler_vm_server.pl index fc022397..fa6e9f0c 100755 --- a/modules/compiler_vm/compiler_vm_server.pl +++ b/modules/compiler_vm/compiler_vm_server.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/compiler_vm/compiler_watchdog.pl b/modules/compiler_vm/compiler_watchdog.pl index 8cc336c0..e6e5ea3f 100755 --- a/modules/compiler_vm/compiler_watchdog.pl +++ b/modules/compiler_vm/compiler_watchdog.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT no warnings; use strict; diff --git a/modules/compiler_vm/languages/_c_base.pm b/modules/compiler_vm/languages/_c_base.pm index eacfe961..9be5c2a0 100755 --- a/modules/compiler_vm/languages/_c_base.pm +++ b/modules/compiler_vm/languages/_c_base.pm @@ -1,8 +1,7 @@ #!/usr/bin/perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/compiler_vm/languages/_default.pm b/modules/compiler_vm/languages/_default.pm index cb79ced7..3e6d5e28 100755 --- a/modules/compiler_vm/languages/_default.pm +++ b/modules/compiler_vm/languages/_default.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; use feature "switch"; diff --git a/modules/compiler_vm/languages/bash.pm b/modules/compiler_vm/languages/bash.pm index 083bb57c..4eb1e0f0 100755 --- a/modules/compiler_vm/languages/bash.pm +++ b/modules/compiler_vm/languages/bash.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/bc.pm b/modules/compiler_vm/languages/bc.pm index 7e904a2e..cbb5610e 100755 --- a/modules/compiler_vm/languages/bc.pm +++ b/modules/compiler_vm/languages/bc.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/bf.pm b/modules/compiler_vm/languages/bf.pm index b7cd341f..3050ebfb 100755 --- a/modules/compiler_vm/languages/bf.pm +++ b/modules/compiler_vm/languages/bf.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/c11.pm b/modules/compiler_vm/languages/c11.pm index 109fb558..0a89a0a8 100755 --- a/modules/compiler_vm/languages/c11.pm +++ b/modules/compiler_vm/languages/c11.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/c89.pm b/modules/compiler_vm/languages/c89.pm index 66aa2e98..fd08fe89 100755 --- a/modules/compiler_vm/languages/c89.pm +++ b/modules/compiler_vm/languages/c89.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/c99.pm b/modules/compiler_vm/languages/c99.pm index 7529ac26..ead33054 100755 --- a/modules/compiler_vm/languages/c99.pm +++ b/modules/compiler_vm/languages/c99.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/clang.pm b/modules/compiler_vm/languages/clang.pm index b06e3b30..5e299187 100755 --- a/modules/compiler_vm/languages/clang.pm +++ b/modules/compiler_vm/languages/clang.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/clang11.pm b/modules/compiler_vm/languages/clang11.pm index e4045243..5d9d92f1 100755 --- a/modules/compiler_vm/languages/clang11.pm +++ b/modules/compiler_vm/languages/clang11.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/clang89.pm b/modules/compiler_vm/languages/clang89.pm index d4f50188..86972cff 100755 --- a/modules/compiler_vm/languages/clang89.pm +++ b/modules/compiler_vm/languages/clang89.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/clang99.pm b/modules/compiler_vm/languages/clang99.pm index 4bbcfdda..e5e1b9c9 100755 --- a/modules/compiler_vm/languages/clang99.pm +++ b/modules/compiler_vm/languages/clang99.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/clangpp.pm b/modules/compiler_vm/languages/clangpp.pm index 9e0d5bdf..4b794e28 100755 --- a/modules/compiler_vm/languages/clangpp.pm +++ b/modules/compiler_vm/languages/clangpp.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/clisp.pm b/modules/compiler_vm/languages/clisp.pm index 7ddc4d26..fac247cd 100755 --- a/modules/compiler_vm/languages/clisp.pm +++ b/modules/compiler_vm/languages/clisp.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/cpp.pm b/modules/compiler_vm/languages/cpp.pm index b8c25400..979159f8 100755 --- a/modules/compiler_vm/languages/cpp.pm +++ b/modules/compiler_vm/languages/cpp.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/freebasic.pm b/modules/compiler_vm/languages/freebasic.pm index 238f3c4e..1c3acc3d 100755 --- a/modules/compiler_vm/languages/freebasic.pm +++ b/modules/compiler_vm/languages/freebasic.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/go.pm b/modules/compiler_vm/languages/go.pm index b883d063..73282b9d 100755 --- a/modules/compiler_vm/languages/go.pm +++ b/modules/compiler_vm/languages/go.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/haskell.pm b/modules/compiler_vm/languages/haskell.pm index 1f031055..c807cb66 100755 --- a/modules/compiler_vm/languages/haskell.pm +++ b/modules/compiler_vm/languages/haskell.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/java.pm b/modules/compiler_vm/languages/java.pm index 33569044..8dd7e8fd 100755 --- a/modules/compiler_vm/languages/java.pm +++ b/modules/compiler_vm/languages/java.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/javascript.pm b/modules/compiler_vm/languages/javascript.pm index 2d0c42ba..8a3d77ec 100755 --- a/modules/compiler_vm/languages/javascript.pm +++ b/modules/compiler_vm/languages/javascript.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/ksh.pm b/modules/compiler_vm/languages/ksh.pm index e89494d0..c3ce2572 100755 --- a/modules/compiler_vm/languages/ksh.pm +++ b/modules/compiler_vm/languages/ksh.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/lua.pm b/modules/compiler_vm/languages/lua.pm index 944ac13c..12595277 100755 --- a/modules/compiler_vm/languages/lua.pm +++ b/modules/compiler_vm/languages/lua.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/perl.pm b/modules/compiler_vm/languages/perl.pm index 14d2c7f5..99e9c8cd 100755 --- a/modules/compiler_vm/languages/perl.pm +++ b/modules/compiler_vm/languages/perl.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/php.pm b/modules/compiler_vm/languages/php.pm index 752fee2d..4993a39f 100755 --- a/modules/compiler_vm/languages/php.pm +++ b/modules/compiler_vm/languages/php.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/python.pm b/modules/compiler_vm/languages/python.pm index fe5d0c2d..8047233e 100755 --- a/modules/compiler_vm/languages/python.pm +++ b/modules/compiler_vm/languages/python.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/python3.pm b/modules/compiler_vm/languages/python3.pm index 13aeab8b..14d981b3 100755 --- a/modules/compiler_vm/languages/python3.pm +++ b/modules/compiler_vm/languages/python3.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/qbasic.pm b/modules/compiler_vm/languages/qbasic.pm index 02a96a04..25585ac5 100755 --- a/modules/compiler_vm/languages/qbasic.pm +++ b/modules/compiler_vm/languages/qbasic.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/ruby.pm b/modules/compiler_vm/languages/ruby.pm index 9a564583..0d16d82e 100755 --- a/modules/compiler_vm/languages/ruby.pm +++ b/modules/compiler_vm/languages/ruby.pm @@ -1,8 +1,7 @@ #!/usr/bin/perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/compiler_vm/languages/scheme.pm b/modules/compiler_vm/languages/scheme.pm index ee96be9a..7f90230b 100755 --- a/modules/compiler_vm/languages/scheme.pm +++ b/modules/compiler_vm/languages/scheme.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/_c_base.pm b/modules/compiler_vm/languages/server/_c_base.pm index 9d1d0b8c..f471a2e7 100755 --- a/modules/compiler_vm/languages/server/_c_base.pm +++ b/modules/compiler_vm/languages/server/_c_base.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/_default.pm b/modules/compiler_vm/languages/server/_default.pm index 9b34490f..05d009c9 100755 --- a/modules/compiler_vm/languages/server/_default.pm +++ b/modules/compiler_vm/languages/server/_default.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + package _default; use warnings; diff --git a/modules/compiler_vm/languages/server/c11.pm b/modules/compiler_vm/languages/server/c11.pm index 6c94045c..87773c5d 100755 --- a/modules/compiler_vm/languages/server/c11.pm +++ b/modules/compiler_vm/languages/server/c11.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/c89.pm b/modules/compiler_vm/languages/server/c89.pm index cce1c8ac..f3d00541 100755 --- a/modules/compiler_vm/languages/server/c89.pm +++ b/modules/compiler_vm/languages/server/c89.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/c99.pm b/modules/compiler_vm/languages/server/c99.pm index 4c66f8bb..fd27e595 100755 --- a/modules/compiler_vm/languages/server/c99.pm +++ b/modules/compiler_vm/languages/server/c99.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/clang.pm b/modules/compiler_vm/languages/server/clang.pm index c0586d00..100d7b8c 100755 --- a/modules/compiler_vm/languages/server/clang.pm +++ b/modules/compiler_vm/languages/server/clang.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/clang11.pm b/modules/compiler_vm/languages/server/clang11.pm index 3e938e77..79ec4c0f 100755 --- a/modules/compiler_vm/languages/server/clang11.pm +++ b/modules/compiler_vm/languages/server/clang11.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/clang89.pm b/modules/compiler_vm/languages/server/clang89.pm index 3f4c4088..f98caa6c 100755 --- a/modules/compiler_vm/languages/server/clang89.pm +++ b/modules/compiler_vm/languages/server/clang89.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/clang99.pm b/modules/compiler_vm/languages/server/clang99.pm index b416ee88..72a50d09 100755 --- a/modules/compiler_vm/languages/server/clang99.pm +++ b/modules/compiler_vm/languages/server/clang99.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/clangpp.pm b/modules/compiler_vm/languages/server/clangpp.pm new file mode 100755 index 00000000..41f5c8ea --- /dev/null +++ b/modules/compiler_vm/languages/server/clangpp.pm @@ -0,0 +1,12 @@ +#!/usr/bin/perl + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + +use warnings; +use strict; + +package clangpp; +use parent '_c_base'; + +1; diff --git a/modules/compiler_vm/languages/server/cpp.pm b/modules/compiler_vm/languages/server/cpp.pm index 1d188afd..79ce4138 100755 --- a/modules/compiler_vm/languages/server/cpp.pm +++ b/modules/compiler_vm/languages/server/cpp.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/freebasic.pm b/modules/compiler_vm/languages/server/freebasic.pm index 8d0bb3a8..3a4284c2 100755 --- a/modules/compiler_vm/languages/server/freebasic.pm +++ b/modules/compiler_vm/languages/server/freebasic.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/haskell.pm b/modules/compiler_vm/languages/server/haskell.pm index 9f655d42..ea62899b 100755 --- a/modules/compiler_vm/languages/server/haskell.pm +++ b/modules/compiler_vm/languages/server/haskell.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/java.pm b/modules/compiler_vm/languages/server/java.pm index f0a0b9cf..b5c365a6 100755 --- a/modules/compiler_vm/languages/server/java.pm +++ b/modules/compiler_vm/languages/server/java.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/qbasic.pm b/modules/compiler_vm/languages/server/qbasic.pm index 517134c7..f33373ba 100755 --- a/modules/compiler_vm/languages/server/qbasic.pm +++ b/modules/compiler_vm/languages/server/qbasic.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/server/tendra.pm b/modules/compiler_vm/languages/server/tendra.pm index f85ad86c..ff264168 100755 --- a/modules/compiler_vm/languages/server/tendra.pm +++ b/modules/compiler_vm/languages/server/tendra.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/sh.pm b/modules/compiler_vm/languages/sh.pm index 2cd57491..7c5c9c9c 100755 --- a/modules/compiler_vm/languages/sh.pm +++ b/modules/compiler_vm/languages/sh.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/tcl.pm b/modules/compiler_vm/languages/tcl.pm index 21302939..0d85e1d4 100755 --- a/modules/compiler_vm/languages/tcl.pm +++ b/modules/compiler_vm/languages/tcl.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/tendra.pm b/modules/compiler_vm/languages/tendra.pm index 0b642939..a08e2539 100755 --- a/modules/compiler_vm/languages/tendra.pm +++ b/modules/compiler_vm/languages/tendra.pm @@ -1,5 +1,8 @@ #!/usr/bin/perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compiler_vm/languages/zsh.pm b/modules/compiler_vm/languages/zsh.pm index d69eb842..1428d927 100755 --- a/modules/compiler_vm/languages/zsh.pm +++ b/modules/compiler_vm/languages/zsh.pm @@ -1,5 +1,8 @@ #!/usr/bin/env perl +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT + use warnings; use strict; diff --git a/modules/compliment b/modules/compliment index 7ec99704..0daf6250 100755 --- a/modules/compliment +++ b/modules/compliment @@ -1,6 +1,4 @@ #!/bin/sh -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT ~/pbot/modules/lookupbot.pl compliment "$*" diff --git a/modules/define.pl b/modules/define.pl index 899d3488..d6116837 100755 --- a/modules/define.pl +++ b/modules/define.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # quick and dirty by :pragma diff --git a/modules/dice_roll.pl b/modules/dice_roll.pl index fcf377eb..e41037ce 100755 --- a/modules/dice_roll.pl +++ b/modules/dice_roll.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # quick and dirty by :pragma diff --git a/modules/excuse.sh b/modules/excuse.sh index a97889dc..7dd1c062 100755 --- a/modules/excuse.sh +++ b/modules/excuse.sh @@ -1,7 +1,7 @@ #!/bin/bash -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT #host=bofh.jeffballard.us #port=666 diff --git a/modules/expand_macros.pl b/modules/expand_macros.pl index 7651d3e9..75a9f225 100755 --- a/modules/expand_macros.pl +++ b/modules/expand_macros.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # use warnings; use strict; diff --git a/modules/fnord.pl b/modules/fnord.pl index 4ceabb4c..f9e14cf0 100755 --- a/modules/fnord.pl +++ b/modules/fnord.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/funnyish_quote.pl b/modules/funnyish_quote.pl index 13baa615..bcad23a4 100755 --- a/modules/funnyish_quote.pl +++ b/modules/funnyish_quote.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # Quick and dirty by :pragma diff --git a/modules/gdefine.pl b/modules/gdefine.pl index 5771040c..0a17c82b 100755 --- a/modules/gdefine.pl +++ b/modules/gdefine.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # quick and dirty by :pragma diff --git a/modules/gen_cfacts.pl b/modules/gen_cfacts.pl index 0200d957..0e231256 100644 --- a/modules/gen_cfacts.pl +++ b/modules/gen_cfacts.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # quick and dirty diff --git a/modules/gencstd.pl b/modules/gencstd.pl index 247002ab..6e8be8cf 100755 --- a/modules/gencstd.pl +++ b/modules/gencstd.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # ugly and hacked together diff --git a/modules/get_title.pl b/modules/get_title.pl index 81494f1a..06343f4f 100755 --- a/modules/get_title.pl +++ b/modules/get_title.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software +# SPDX-License-Identifier: MIT # Quick and dirty by :pragma @@ -31,7 +30,7 @@ exit if $arguments =~ m{https?://.*\.h$}i; exit if $arguments =~ m{https?://ibb.co/}i; exit if $arguments =~ m{https?://.*onlinegdb.com}i; exit if $arguments =~ m{googlesource.com/}i; -exit if $arguments =~ m{https?://git}i; +exit if $arguments =~ m{https?://git}i and $arguments !~ /commit/i and $arguments !~ /github.com/; exit if $arguments =~ m{https://.*swissborg.com}i; exit if $arguments =~ m{https://streamable.com}i; exit if $arguments =~ m{https://matrix.org}i; @@ -78,7 +77,10 @@ exit if $arguments =~ m/lmgtfy.com/i; exit if $arguments =~ m/gyazo/i; exit if $arguments =~ m/imagebin/i; exit if $arguments =~ m/\/wiki\//i; -exit if $arguments =~ m/github.com/i; +exit if $arguments =~ m!github.com/.*/tree/.*/source/.*!i; +exit if $arguments =~ m!github.com/.*/commits/.*!i; +#exit if $arguments =~ m/github.com/i and $arguments !~ m/commit/i; +exit if $arguments =~ m!/blob/!i; exit if $arguments =~ m/wiki.osdev.org/i; exit if $arguments =~ m/wikipedia.org/i; exit if $arguments =~ m/everfall.com/i; @@ -92,6 +94,8 @@ exit if $arguments =~ m/^http\:\/\/past(e|ing)\./i; exit if $arguments =~ m/paste.*\.(?:com|org|net|ch|ca|de|uk|info)/i; exit if $arguments =~ m/pasting.*\.(?:com|org|net|ca|de|uk|info|ch)/i; +print STDERR "fetching title\n"; + my $ua = LWP::UserAgent->new; if ($arguments =~ /youtube|youtu.be|googlevideo|twitter/) { $ua->agent("Googlebot"); @@ -117,7 +121,7 @@ if ($text =~ m/(.*?)<\/title>/msi) { $t = $1; } else { use Data::Dumper; print STDERR Dumper $response; - #print "No title for link.\n"; + print STDERR "No title for link.\n"; exit; } @@ -148,8 +152,8 @@ $t =~ s/•/-/g; $t =~ s/<em>//g; $t =~ s/<\/em>//g; -if (length $t > 150) { - $t = substr($t, 0, 150); +if (length $t > 300) { + $t = substr($t, 0, 300); $t = "$t [...]"; } @@ -168,6 +172,9 @@ my $length = (length $file > length $t) ? length $file : length $t; if ($distance / $length < 0.75) { exit; } +print STDERR "passed distance, checking title\n"; + + exit if $t !~ m/\s/; # exit if title is only one word -- this isn't usually interesting exit if $t =~ m{christel}i; exit if $t =~ m{^Loading}i; @@ -194,6 +201,8 @@ exit if $t =~ m/^[0-9_-]+$/; exit if $t =~ m/^Index of \S+$/; exit if $t =~ m/(?:sign up|login)/i; +print STDERR "passed spam filters\n"; + my @data; if (open my $fh, "<", "last-title-$nick.dat") { @data = <$fh>; diff --git a/modules/getcfact.pl b/modules/getcfact.pl index 12be065f..740d4362 100755 --- a/modules/getcfact.pl +++ b/modules/getcfact.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/headlines.pl b/modules/headlines.pl index ffc7d469..91b0665d 100755 --- a/modules/headlines.pl +++ b/modules/headlines.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use XML::RSS; use LWP::Simple; diff --git a/modules/horoscope b/modules/horoscope index c1c56a49..d2d62b28 100755 --- a/modules/horoscope +++ b/modules/horoscope @@ -1,6 +1,4 @@ #!/bin/sh -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT ~/pbot/modules/lookupbot.pl horoscope "$*" diff --git a/modules/horrorscope b/modules/horrorscope index 452560c2..ed1d4f73 100755 --- a/modules/horrorscope +++ b/modules/horrorscope @@ -1,6 +1,4 @@ #!/bin/sh -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT ~/pbot/modules/lookupbot.pl horrorscope "$*" diff --git a/modules/insult.pl b/modules/insult.pl index be76149a..6ef007ae 100755 --- a/modules/insult.pl +++ b/modules/insult.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use strict; use LWP::Simple; diff --git a/modules/love_quote.pl b/modules/love_quote.pl index 3513c0b0..00923e74 100755 --- a/modules/love_quote.pl +++ b/modules/love_quote.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT # Quick and dirty by :pragma diff --git a/modules/man.pl b/modules/man.pl index 13682d1c..a03dde7d 100755 --- a/modules/man.pl +++ b/modules/man.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT # quick and dirty by :pragma diff --git a/modules/map.pl b/modules/map.pl index 51687c31..22879f29 100755 --- a/modules/map.pl +++ b/modules/map.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use LWP::Simple; diff --git a/modules/math.pl b/modules/math.pl index cc957c61..72b43f90 100755 --- a/modules/math.pl +++ b/modules/math.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT # Quick and dirty by :pragma diff --git a/modules/prototype.pl b/modules/prototype.pl index 230ef421..e5e0b894 100755 --- a/modules/prototype.pl +++ b/modules/prototype.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT # quick and dirty by :pragma diff --git a/modules/qalc.pl b/modules/qalc.pl index 4213e368..a4fb9f32 100755 --- a/modules/qalc.pl +++ b/modules/qalc.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/random_quote.pl b/modules/random_quote.pl index 52241634..50322899 100755 --- a/modules/random_quote.pl +++ b/modules/random_quote.pl @@ -1,8 +1,7 @@ #!/usr/bin/perl -w -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT # Quick and dirty by :pragma diff --git a/modules/urban b/modules/urban index 84af6892..37b4f036 100755 --- a/modules/urban +++ b/modules/urban @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/wikipedia.pl b/modules/wikipedia.pl index 543b068b..a9bdcfe5 100755 --- a/modules/wikipedia.pl +++ b/modules/wikipedia.pl @@ -1,8 +1,7 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use strict; use WWW::Wikipedia; diff --git a/modules/wiktionary.pl b/modules/wiktionary.pl index 21235bd2..585c4f4c 100755 --- a/modules/wiktionary.pl +++ b/modules/wiktionary.pl @@ -7,9 +7,8 @@ # This is a rough first draft. There are more parts of the definitions # to process. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use warnings; use strict; diff --git a/modules/wiktionary.py b/modules/wiktionary.py index 89e76766..2bb63c9d 100644 --- a/modules/wiktionary.py +++ b/modules/wiktionary.py @@ -5,9 +5,8 @@ # This was written for wiktionary.pl since Wiktionary::Parser in CPAN # seems to be broken and abandoned. -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT from wiktionaryparser import WiktionaryParser import sys diff --git a/pbot b/pbot index 27183588..9af0ebd1 100755 --- a/pbot +++ b/pbot @@ -1,8 +1,11 @@ #!/usr/bin/env perl -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# File: pbot +# +# Purpose: PBot main entry point. See doc/QuickStart.md. + +# SPDX-FileCopyrightText: 2021 Pragmatic Software <pragma78@gmail.com> +# SPDX-License-Identifier: MIT use FindBin qw($RealBin); use lib "$RealBin/";