unnawut / licensir

An Elixir mix task that lists all the licenses used by your Mix project dependencies.
https://hex.pm/packages/licensir
MIT License
73 stars 28 forks source link

Add more license detections #8

Closed unnawut closed 5 years ago

unnawut commented 6 years ago

Thanks to @pdobacz for the output dump. Some of these Undefined should be detectable. Also there're a lot of duplicates that can be removed.

abi 0.1.12              -> MIT
binary 0.0.4            -> MIT
blockchain 0.1.7        -> MIT
certifi 2.3.1           -> Undefined
eleveldb 2.2.20         -> Undefined
erlexec 1.7.5           -> Undefined
ethereumex 0.3.2        -> MIT
evm 0.1.14              -> MIT
ex_rlp 0.2.1            -> MIT
ex_unit_fixtures        -> MIT
exexec 0.1.0            -> Unsure (found: Apache 2.0, Apache 2)
exleveldb 0.11.1        -> Unsure (found: Apache v2.0, Apache 2)
exth_crypto 0.1.4       -> MIT
hackney 1.12.1          -> Apache 2
hex_prefix 0.1.0        -> MIT
httpoison 1.1.1         -> MIT
idna 5.1.1              -> Undefined
jsonrpc2 1.0.3          -> Unsure (found: Apache 2.0, Apache 2)
keccakf1600 2.0.0       -> Undefined
libsecp256k1 0.1.4      -> MIT
merkle_patricia_tree 0.2.6-> MIT
merkle_tree 1.3.0       -> MIT
metrics 1.0.1           -> Undefined
mimerl 1.0.2            -> Undefined
parse_trans 3.2.0       -> Undefined
phoenix_pubsub 1.0.2    -> MIT
plasma_mvp_contracts    -> Undefined
poison 3.1.0            -> CC0-1.0
ssl_verify_fun 1.1.1    -> Undefined
unicode_util_compat 0.3.1-> Undefined
abi 0.1.12              -> MIT
binary 0.0.4            -> MIT
blockchain 0.1.7        -> MIT
certifi 2.3.1           -> Undefined
cowboy 1.1.2            -> Undefined
cowlib 1.0.2            -> Undefined
eleveldb 2.2.20         -> Undefined
erlexec 1.7.5           -> Undefined
ethereumex 0.3.2        -> MIT
evm 0.1.14              -> MIT
ex_rlp 0.2.1            -> MIT
exexec 0.1.0            -> Unsure (found: Apache 2.0, Apache 2)
exleveldb 0.11.1        -> Unsure (found: Apache v2.0, Apache 2)
exth_crypto 0.1.4       -> MIT
hackney 1.12.1          -> Apache 2
hex_prefix 0.1.0        -> MIT
httpoison 1.1.1         -> MIT
idna 5.1.1              -> Undefined
jsonrpc2 1.0.3          -> Unsure (found: Apache 2.0, Apache 2)
keccakf1600 2.0.0       -> Undefined
libsecp256k1 0.1.4      -> MIT
merkle_patricia_tree 0.2.6-> MIT
merkle_tree 1.3.0       -> MIT
metrics 1.0.1           -> Undefined
mime 1.3.0              -> Apache 2
mimerl 1.0.2            -> Undefined
parse_trans 3.2.0       -> Undefined
phoenix_pubsub 1.0.2    -> MIT
plasma_mvp_contracts    -> Undefined
plug 1.5.0              -> Apache 2
poison 3.1.0            -> CC0-1.0
ranch 1.3.2             -> Undefined
ssl_verify_fun 1.1.1    -> Undefined
unicode_util_compat 0.3.1-> Undefined
abi 0.1.12              -> MIT
binary 0.0.4            -> MIT
blockchain 0.1.7        -> MIT
certifi 2.3.1           -> Undefined
cowboy 1.1.2            -> Undefined
cowlib 1.0.2            -> Undefined
eleveldb 2.2.20         -> Undefined
erlexec 1.7.5           -> Undefined
ethereumex 0.3.2        -> MIT
evm 0.1.14              -> MIT
ex_rlp 0.2.1            -> MIT
exexec 0.1.0            -> Unsure (found: Apache 2.0, Apache 2)
exleveldb 0.11.1        -> Unsure (found: Apache v2.0, Apache 2)
exth_crypto 0.1.4       -> MIT
hackney 1.12.1          -> Apache 2
hex_prefix 0.1.0        -> MIT
httpoison 1.1.1         -> MIT
idna 5.1.1              -> Undefined
jsonrpc2 1.0.3          -> Unsure (found: Apache 2.0, Apache 2)
keccakf1600 2.0.0       -> Undefined
libsecp256k1 0.1.4      -> MIT
merkle_patricia_tree 0.2.6-> MIT
merkle_tree 1.3.0       -> MIT
metrics 1.0.1           -> Undefined
mime 1.3.0              -> Apache 2
mimerl 1.0.2            -> Undefined
parse_trans 3.2.0       -> Undefined
phoenix_pubsub 1.0.2    -> MIT
plasma_mvp_contracts    -> Undefined
plug 1.5.0              -> Apache 2
poison 3.1.0            -> CC0-1.0
ranch 1.3.2             -> Undefined
ssl_verify_fun 1.1.1    -> Undefined
unicode_util_compat 0.3.1-> Undefined
abi 0.1.12              -> MIT
binary 0.0.4            -> MIT
blockchain 0.1.7        -> MIT
certifi 2.3.1           -> Undefined
connection 1.0.4        -> Unsure (found: Apache 2.0, Apache 2)
cowboy 1.1.2            -> Undefined
cowlib 1.0.2            -> Undefined
db_connection 1.1.3     -> Apache 2.0
decimal 1.5.0           -> Apache 2.0
ecto 2.2.10             -> Apache 2.0
eleveldb 2.2.20         -> Undefined
erlexec 1.7.5           -> Undefined
esqlite                 -> Apache 2
ethereumex 0.3.2        -> MIT
evm 0.1.14              -> MIT
ex_rlp 0.2.1            -> MIT
exexec 0.1.0            -> Unsure (found: Apache 2.0, Apache 2)
exleveldb 0.11.1        -> Unsure (found: Apache v2.0, Apache 2)
exth_crypto 0.1.4       -> MIT
gettext 0.15.0          -> Apache 2.0
hackney 1.12.1          -> Apache 2
hex_prefix 0.1.0        -> MIT
httpoison 1.1.1         -> MIT
idna 5.1.1              -> Undefined
jsonrpc2 1.0.3          -> Unsure (found: Apache 2.0, Apache 2)
keccakf1600 2.0.0       -> Undefined
libsecp256k1 0.1.4      -> MIT
merkle_patricia_tree 0.2.6-> MIT
merkle_tree 1.3.0       -> MIT
metrics 1.0.1           -> Undefined
mime 1.3.0              -> Apache 2
mimerl 1.0.2            -> Undefined
parse_trans 3.2.0       -> Undefined
phoenix 1.3.2           -> MIT
phoenix_ecto 3.3.0      -> Apache 2.0
phoenix_pubsub 1.0.2    -> MIT
plasma_mvp_contracts    -> Undefined
plug 1.5.0              -> Apache 2
poison 3.1.0            -> CC0-1.0
poolboy 1.5.1           -> Undefined
postgrex 0.13.5         -> Apache 2.0
ranch 1.3.2             -> Undefined
sbroker                 -> Apache 2
socket 0.3.13           -> WTFPL
sqlite_ecto2            -> MIT
sqlitex                 -> MIT
ssl_verify_fun 1.1.1    -> Undefined
unicode_util_compat 0.3.1-> Undefined
Eptis commented 6 years ago

Have you considered using the License information provided in the ./deps/<depname>/hex_metadata.config file?

unnawut commented 6 years ago

@Eptis I believe hex_metadata.config gets its information from mix.exs anyway?

In that case it wouldn't provide any extra advantage over the current Mix.Project.config()?

Eptis commented 6 years ago

It depends, I build my own task for this since I wasn't aware of licensir, but a lot of things currently list "Undefined" in the output of licensir, while that license information is available in the hex_metadata.config which I used in my own task. I'm not sure if you get it through Mix.Project.config(), would have to look into that.

Eptis commented 6 years ago

I believe hex_metadata.config also contains info for erlang packages, which I believe Mix.Project.config() does not

unnawut commented 5 years ago

@Eptis Done! Please check out the latest licensir on Hex.

v0.4.0 now relies on hex_metadata.config which is much more complete like you mentioned.