github.com/juju/utils has contradictory licences

Bug #1472749 reported by Curtis Hovey
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
juju-core
Fix Released
High
Curtis Hovey
1.24
Fix Released
High
Curtis Hovey

Bug Description

github.com/juju/utils is under LGPL-3 with linking exception as stated by LICENSE, but there are many, many files that state
    AGPLv3 see Licence

These files were seen to be wrong in the 1.24.2 release of Juju
    github.com/juju/utils git 054b2566beb7c16c4fb790fbaae32543ef528cdb 2015-05-27T01:53:34Z

=== added file 'src/github.com/juju/utils/filepath/common.go'
=== added file 'src/github.com/juju/utils/filepath/common_test.go'
=== added file 'src/github.com/juju/utils/filepath/filepath.go'
=== added file 'src/github.com/juju/utils/filepath/filepath_test.go'
=== added file 'src/github.com/juju/utils/filepath/stdlib.go'
=== added file 'src/github.com/juju/utils/filepath/stdlib_test.go'
=== added file 'src/github.com/juju/utils/filepath/stdlibmatch.go'
=== added file 'src/github.com/juju/utils/filepath/unix.go'
=== added file 'src/github.com/juju/utils/filepath/unix_test.go'
=== added file 'src/github.com/juju/utils/filepath/win.go'
=== added file 'src/github.com/juju/utils/filepath/win_test.go'
=== added file 'src/github.com/juju/utils/os.go'
=== added file 'src/github.com/juju/utils/packaging/commands/apt.go'
=== added file 'src/github.com/juju/utils/packaging/commands/apt_test.go'
=== added file 'src/github.com/juju/utils/packaging/commands/commander.go'
=== added file 'src/github.com/juju/utils/packaging/commands/interface.go'
=== added file 'src/github.com/juju/utils/packaging/commands/interface_test.go'
=== added file 'src/github.com/juju/utils/packaging/commands/package_test.go'
=== added file 'src/github.com/juju/utils/packaging/commands/utils.go'
=== added file 'src/github.com/juju/utils/packaging/commands/yum.go'
=== added file 'src/github.com/juju/utils/packaging/commands/yum_test.go'
=== added file 'src/github.com/juju/utils/packaging/config/apt_constants.go'
=== added file 'src/github.com/juju/utils/packaging/config/apt_test.go'
=== added file 'src/github.com/juju/utils/packaging/config/centos_constants.go'
=== added file 'src/github.com/juju/utils/packaging/config/configurer.go'
=== added file 'src/github.com/juju/utils/packaging/config/configurer_apt.go'
=== added file 'src/github.com/juju/utils/packaging/config/configurer_yum.go'
=== added file 'src/github.com/juju/utils/packaging/config/constants_test.go'
=== added file 'src/github.com/juju/utils/packaging/config/export_test.go'
=== added file 'src/github.com/juju/utils/packaging/config/functions.go'
=== added file 'src/github.com/juju/utils/packaging/config/functions_test.go'
=== added file 'src/github.com/juju/utils/packaging/config/global_constants.go'
=== added file 'src/github.com/juju/utils/packaging/config/interface.go'
=== added file 'src/github.com/juju/utils/packaging/config/interface_test.go'
=== added file 'src/github.com/juju/utils/packaging/config/package_test.go'
=== added file 'src/github.com/juju/utils/packaging/config/ubuntu_constants.go'
=== added file 'src/github.com/juju/utils/packaging/config/utils.go'
=== added file 'src/github.com/juju/utils/packaging/config/yum_constants.go'
=== added file 'src/github.com/juju/utils/packaging/config/yum_test.go'
=== added file 'src/github.com/juju/utils/packaging/manager/apt.go'
=== added file 'src/github.com/juju/utils/packaging/manager/apt_test.go'
=== added file 'src/github.com/juju/utils/packaging/manager/interface.go'
=== added file 'src/github.com/juju/utils/packaging/manager/interface_test.go'
=== added file 'src/github.com/juju/utils/packaging/manager/manager.go'
=== added file 'src/github.com/juju/utils/packaging/manager/manager_test.go'
=== added file 'src/github.com/juju/utils/packaging/manager/package_test.go'
=== added file 'src/github.com/juju/utils/packaging/manager/testing/interface_test.go'
=== added file 'src/github.com/juju/utils/packaging/manager/testing/manager.go'
=== added file 'src/github.com/juju/utils/packaging/manager/utils.go'
=== added file 'src/github.com/juju/utils/packaging/manager/utils_test.go'
=== added file 'src/github.com/juju/utils/packaging/manager/yum.go'
=== added file 'src/github.com/juju/utils/packaging/manager/yum_test.go'
=== added file 'src/github.com/juju/utils/packaging/preferences.go'
=== added file 'src/github.com/juju/utils/packaging/source.go'
=== added file 'src/github.com/juju/utils/packaging/utils.go'
=== added file 'src/github.com/juju/utils/shell/bash.go'
=== added file 'src/github.com/juju/utils/shell/bash_test.go'
=== added file 'src/github.com/juju/utils/shell/command.go'
=== added file 'src/github.com/juju/utils/shell/output.go'
=== added file 'src/github.com/juju/utils/shell/powershell.go'
=== added file 'src/github.com/juju/utils/shell/powershell_test.go'
=== added file 'src/github.com/juju/utils/shell/renderer.go'
=== added file 'src/github.com/juju/utils/shell/renderer_test.go'
=== added file 'src/github.com/juju/utils/shell/unix.go'
=== added file 'src/github.com/juju/utils/shell/win.go'
=== added file 'src/github.com/juju/utils/shell/wincmd.go'
=== added file 'src/github.com/juju/utils/shell/wincmd_test.go'

This is the second time in the last 3 months this has happened. Maybe we can create a Makefile rule to prevent contradictions:
check-license:
   @(fgrep "Licensed under the LGPLv3" -rl; echo "filepath/stdlib.go"; echo "filepath/stdlibmatch.go"; \
    find -name "*.go" | cut -b3-) | sort | uniq -u | xargs -I {} echo FAIL: license missed: {}

Curtis Hovey (sinzui)
Changed in juju-core:
status: New → Triaged
importance: Undecided → High
milestone: none → 1.24.3
milestone: 1.24.3 → 1.25.0
Curtis Hovey (sinzui)
Changed in juju-core:
assignee: nobody → Curtis Hovey (sinzui)
status: Triaged → In Progress
Revision history for this message
Curtis Hovey (sinzui) wrote :
Revision history for this message
Curtis Hovey (sinzui) wrote :

The for for 1.25 /master is at https://github.com/juju/juju/pull/2761

Curtis Hovey (sinzui)
Changed in juju-core:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.