add `LICENSE` file
adds a LICENSE file from the LGPL2.1 template (looks like this is now a requirement for future mods on the cdb :shrug:)
Click for detailed source code test coverage report
Test coverage report for Technic CNC 87.36% in 11/14 files:
File Hits Missed Coverage
-----------------------------------------------------
programs.lua 263 0 100.00%
materials/technic_worldgen.lua 32 0 100.00%
materials/init.lua 14 0 100.00%
materials/default.lua 183 0 100.00%
materials/basic_materials.lua 17 0 100.00%
init.lua 16 0 100.00%
digilines.lua 55 0 100.00%
cnc.lua 53 0 100.00%
formspec.lua 104 7 93.69%
api.lua 219 43 83.59%
pipeworks.lua 25 13 65.79%
materials/moreblocks.lua 0 29 0.00%
materials/ethereal.lua 0 37 0.00%
materials/bakedclay.lua 0 13 0.00%
Test coverage report for technic chests 45.49% in 6/6 files:
File Hits Missed Coverage
----------------------------------
chests.lua 102 18 85.00%
init.lua 34 18 65.38%
register.lua 84 78 51.85%
formspec.lua 76 94 44.71%
inventory.lua 10 100 9.09%
digilines.lua 2 61 3.17%
Test coverage report for technic 66.04% in 96/96 files:
File Hits Missed Coverage
--------------------------------------------------------------
max_lag.lua 12 0 100.00%
machines/register/init.lua 15 0 100.00%
machines/register/freezer_recipes.lua 15 0 100.00%
machines/other/init.lua 6 0 100.00%
machines/MV/solar_array.lua 12 0 100.00%
machines/MV/init.lua 17 0 100.00%
machines/MV/grinder.lua 17 0 100.00%
machines/MV/generator.lua 9 0 100.00%
machines/MV/freezer.lua 17 0 100.00%
machines/MV/extractor.lua 17 0 100.00%
machines/MV/electric_furnace.lua 17 0 100.00%
machines/MV/compressor.lua 17 0 100.00%
machines/MV/centrifuge.lua 17 0 100.00%
machines/MV/cables.lua 40 0 100.00%
machines/MV/battery_box.lua 17 0 100.00%
machines/MV/alloy_furnace.lua 19 0 100.00%
machines/LV/solar_array.lua 11 0 100.00%
machines/LV/init.lua 17 0 100.00%
machines/LV/grinder.lua 16 0 100.00%
machines/LV/generator.lua 9 0 100.00%
machines/LV/electric_furnace.lua 15 0 100.00%
machines/LV/compressor.lua 20 0 100.00%
machines/LV/cables.lua 40 0 100.00%
machines/LV/battery_box.lua 15 0 100.00%
machines/LV/alloy_furnace.lua 17 0 100.00%
machines/HV/solar_array.lua 11 0 100.00%
machines/HV/init.lua 12 0 100.00%
machines/HV/grinder.lua 17 0 100.00%
machines/HV/generator.lua 9 0 100.00%
machines/HV/electric_furnace.lua 17 0 100.00%
machines/HV/compressor.lua 17 0 100.00%
machines/HV/cables.lua 39 0 100.00%
machines/HV/battery_box.lua 17 0 100.00%
legacy.lua 33 0 100.00%
crafts.lua 133 0 100.00%
machines/LV/led.lua 73 1 98.65%
items.lua 107 2 98.17%
config.lua 49 1 98.00%
machines/register/compressor_recipes.lua 38 1 97.44%
machines/LV/geothermal.lua 75 3 96.15%
machines/register/solar_array.lua 46 2 95.83%
init.lua 22 1 95.65%
machines/LV/solar_panel.lua 42 2 95.45%
machines/network.lua 403 21 95.05%
tools/init.lua 13 1 92.86%
machines/register/alloy_recipes.lua 39 3 92.86%
machines/register/cables.lua 97 8 92.38%
machines/LV/water_mill.lua 67 6 91.78%
machines/compat/tools.lua 58 6 90.62%
machines/register/grindings.lua 42 5 89.36%
machines/LV/lamp.lua 124 17 87.94%
register.lua 28 4 87.50%
machines/register/grinder_recipes.lua 108 16 87.10%
machines/register/recipes.lua 68 12 85.00%
machines/register/battery_box.lua 239 43 84.75%
tools/flashlight.lua 64 13 83.12%
util/throttle.lua 9 2 81.82%
machines/init.lua 38 9 80.85%
machines/register/machine_base.lua 166 41 80.19%
machines/LV/extractor.lua 18 5 78.26%
radiation.lua 271 80 77.21%
machines/register/centrifuge_recipes.lua 22 7 75.86%
machines/power_monitor.lua 59 19 75.64%
machines/switching_station.lua 80 32 71.43%
effects.lua 5 2 71.43%
machines/overload.lua 12 5 70.59%
machines/MV/wind_mill.lua 46 22 67.65%
machines/supply_converter.lua 95 46 67.38%
machines/other/coal_furnace.lua 2 1 66.67%
machines/other/injector.lua 72 39 64.86%
machines/switching_station_globalstep.lua 28 16 63.64%
tools/multimeter.lua 130 78 62.50%
machines/MV/hydro_turbine.lua 43 26 62.32%
machines/other/coal_alloy_furnace.lua 80 49 62.02%
machines/MV/tool_workshop.lua 56 35 61.54%
machines/register/generator.lua 122 88 58.10%
tools/cans.lua 53 48 52.48%
tools/mining_lasers.lua 36 35 50.70%
machines/other/constructor.lua 67 69 49.26%
machines/LV/music_player.lua 44 47 48.35%
tools/tree_tap.lua 24 27 47.06%
tools/vacuum.lua 16 20 44.44%
machines/register/common.lua 50 64 43.86%
machines/HV/forcefield.lua 103 158 39.46%
machines/HV/quarry.lua 144 242 37.31%
machines/HV/nuclear_reactor.lua 119 206 36.62%
helpers.lua 55 98 35.95%
tools/sonic_screwdriver.lua 16 33 32.65%
machines/compat/api.lua 16 34 32.00%
tools/chainsaw.lua 37 80 31.62%
chatcommands.lua 19 45 29.69%
tools/mining_drill.lua 65 195 25.00%
machines/other/anchor.lua 14 74 15.91%
tools/prospector.lua 14 100 12.28%
machines/register/extractor_recipes.lua 8 77 9.41%
machines/compat/digtron.lua 4 41 8.89%
Raw test runner output for geeks:
CNC:
++ Executing suite spec/api_spec.lua
++ Executing suite spec/digilines_spec.lua
++ Executing suite spec/interaction_spec.lua
++ Executing suite spec/technic_cnc_spec.lua
31 successes / 0 failures / 0 errors / 0 pending : 4.970614 seconds
Chests:
++ Executing suite spec/api_spec.lua
W: Configuration: invalid key exclude_textures
5 successes / 0 failures / 0 errors / 0 pending : 0.257023 seconds
Technic:
++ Executing suite spec/api_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
◌◌◌
++ Executing suite spec/building_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
++ Executing suite spec/hv_network_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
++ Executing suite spec/lv_network_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
++ Executing suite spec/network_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
++ Executing suite spec/nodes_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
++ Executing suite spec/supply_converter_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
◌
++ Executing suite spec/tools_compatibility_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
⭆ Starting test set tools_compatibility_spec.lua:11 ⯈ Technic power tool compatibility
W: Deprecated technic.register_power_tool use. Setting max_charge for oldlegacy:powertool
W: Deprecated technic.register_power_tool use. Setting max_charge for oldminimal:powertool
W: Deprecated technic.register_power_tool use. Setting max_charge for oldhalfway:powertool
W: Deprecated technic.register_power_tool use. Ensuring fields for oldlegacy:powertool
W: Using metadata charge values for oldlegacy:powertool
W: Updated legacy Technic power tool definition for oldlegacy:powertool
W: Deprecated technic.register_power_tool use. Ensuring fields for oldminimal:powertool
W: Using metadata charge values for oldminimal:powertool
W: Updated legacy Technic power tool definition for oldminimal:powertool
W: Deprecated technic.register_power_tool use. Ensuring fields for oldhalfway:powertool
W: Mod oldhalfway seems to be aware of technic.plus but oldhalfway:powertool is still using deprecated registration, skipping meta charge compatibility.
W: Updated legacy Technic power tool definition for oldhalfway:powertool
🢆 Running tests from tools_compatibility_spec.lua:92 ▷ Technic power tool compatibility oldlegacy:powertool can be used (minimum charge)
W: Use of deprecated function technic.set_RE_wear with stack: oldlegacy:powertool
🢆 Running tests from tools_compatibility_spec.lua:106 ▷ Technic power tool compatibility oldlegacy:powertool can be used (minimum charge + 1)
W: Use of deprecated function technic.set_RE_wear with stack: oldlegacy:powertool
🢆 Running tests from tools_compatibility_spec.lua:92 ▷ Technic power tool compatibility oldminimal:powertool can be used (minimum charge)
W: Use of deprecated function technic.set_RE_wear with stack: oldminimal:powertool
🢆 Running tests from tools_compatibility_spec.lua:106 ▷ Technic power tool compatibility oldminimal:powertool can be used (minimum charge + 1)
W: Use of deprecated function technic.set_RE_wear with stack: oldminimal:powertool
++ Executing suite spec/tools_spec.lua
E: Loading common/fs from 5.4.1 failed, trying to use builtin
218 successes / 0 failures / 0 errors / 4 pending : 85.398821 seconds
Pending → spec/api_spec.lua @ 133
Technic API Machine registration registers my_mod:my_battery
spec/api_spec.lua:133: Battery box registration does not include all fields
Pending → spec/api_spec.lua @ 190
Technic API Machine registration registers my_mod:machine_base
spec/api_spec.lua:190: Base machine registration does not include all fields
Pending → spec/api_spec.lua @ 285
Technic API internals technic.cables TBD, misleading name and should be updated
spec/api_spec.lua:285: TBD technic.cables naming and need, see technic networks data for possible options
Pending → spec/supply_converter_spec.lua @ 78
Supply converter building overloads network
spec/supply_converter_spec.lua:78: overload does not work with supply converter
But what about the media licenses? Do we have to add all of them, or just one?
https://github.com/mt-mods/technic/blob/master/technic/README.md https://github.com/mt-mods/technic/blob/master/technic_chests/README.md
Also, should we change WTFPL to something else?
AFAIK WTFPL allows anyone to relicense WTFPL licensed stuff using any license they want. I would vote for permissive open source license like MIT Expat license for example. For some restrictions and some consistency across technic repo stuff I'd be fine with LGPL too.
However not exactly sure if all of the technic_chests mod stuff is WTFPL or if some stuff (textures maybe) been grabbed from somewhere else and requires inclusion of original licenses?
I'm most for GPL than LGPL, but it's still a good choice.
What's the plan now ?
What's the plan now ?
uh, not sure :shrug: i don't think we have a consensus (yet)
Also, should we change WTFPL to something else?
can we even change that without getting every contributor on board first?
AFAIK WTFPL allows anyone to relicense WTFPL licensed stuff using any license they want. I would vote for permissive open source license like MIT Expat license for example. For some restrictions and some consistency across technic repo stuff I'd be fine with LGPL too.
ok, yeah, looks like we can :)
Anyway: i think relicensing might be a minefield ("license" section in the readme):
Unless otherwise stated, all components of this modpack are licensed under the LGPL, V2 or later. See also the individual mod folders for their secondary/alternate licenses, if any.
Anyway: i think relicensing might be a minefield ("license" section in the readme):
LICENSE file isn't really universally canonical source for licenses even if some software see it as such. Also no matter what CDB requires it still wont be canonical source for licensing information so it also does not matter in the end.
I'd say just leave readme untouched as is for now and replace WTFPL with LGPL v2 or later. In other words fill in/finish/cleanup LICENSE file contents and then just merge this.
If licenses are compatible then let's do a vote ?
We'll have to fix that soon for 2.0
Actually thinking a bit about it if we'd want to somewhat respect original authors license choice then using CC0 would probably be best license replacement for WTFPL licensed media. Also, it is good to remember that WTFPL license wont go away after relicensing. Assets will simply become dual licensed.
Let's resume ! Previous proposals in the discussion :
- LGPL (part of the content)
- WTFPL (actual for medias)
- GPL
- CC0
My favorites :
- GPL
- WTFPL / CC0
- LGPL
LGPL content should not be changed because it is original license, has no issues and would create complicated dual licensing situation for already copyrighted and licensed code.
Issues are mainly with WTFPL license and for that closest that is generally accepted for CDB is probably CC0.
Relicensing WTFPL licensed stuff with GPL in my opinion is way too restrictive and would not reflect assumed original authors public domain (WTFPL) ideology in any way but instead would be directly against it restricting use and sharing in many ways. Also I could see many issues if dual licensing anything with both GPL and WTFPL (we can't remove WTFPL, we can only add something and advertise it).