Skip to content

Commit 47fb175

Browse files
Version 1.4.1 Adding license check
1 parent d368782 commit 47fb175

5 files changed

Lines changed: 204 additions & 2 deletions

File tree

.github/.workflows/specs.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
license_checks:
2+
name: License checks
3+
timeout-minutes: 15
4+
steps:
5+
- name: Run license checks
6+
run: |
7+
bundle exec license_finder || (cat <<-END && exit 1)
8+
9+
You seem to be introducing a new license into our stack, please reach out to
10+
#licenses-tech-stack on slack to get guidance on the topic.
11+
END

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
/Gemfile.lock
44
/_yardoc/
55
/coverage/
6-
/doc/
76
/pkg/
87
/spec/reports/
98
/tmp/

Gemfile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,7 @@ ruby '3.4.2'
44

55
# Specify your gem's dependencies in liberic.gemspec
66
gemspec
7+
8+
group :test, :development do
9+
gem 'license_finder', require: false
10+
end

doc/dependency_decisions.yml

Lines changed: 188 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,188 @@
1+
---
2+
################################################################################
3+
#
4+
# IMPORTANT: This file includes some important legal decisions that were
5+
# made by the legal team so before making changes, reach out to the slack
6+
# channel #licenses-tech-stack to ask around and get more context.
7+
#
8+
################################################################################
9+
10+
########################################
11+
#
12+
# LICENSES WE CAN USE WITHOUT CONCERN
13+
#
14+
########################################
15+
16+
- [permit, 2-clause BSDL]
17+
- [permit, Apache 2.0]
18+
- [permit, Apache License (2.0)]
19+
- [permit, BlueOak-1.0.0]
20+
- [permit, BSD Zero Clause License]
21+
- [permit, BSD]
22+
- [permit, Hippocratic-2.1]
23+
- [permit, ISC]
24+
- [permit, MIT or MPL-2.0]
25+
- [permit, MIT]
26+
- [permit, MIT-0]
27+
- [permit, New BSD]
28+
- [permit, Public Domain]
29+
- [permit, Python-2.0]
30+
- [permit, ruby]
31+
- [permit, Simplified BSD]
32+
- [permit, Unlicense]
33+
- [permit, WTFPL]
34+
- [permit, Zlib]
35+
- [permit, CC0 1.0 Universal]
36+
- - :approve
37+
- Pennylane
38+
- :why: Our own software
39+
- - :approve
40+
- pennylane
41+
- :why: Our own software
42+
- - :approve
43+
- '.'
44+
- :why: Our own software
45+
46+
########################################
47+
#
48+
# NOT IDEAL BUT NON-BLOCKING
49+
# we want to manually review and approve software using those licenses on
50+
# a case-by-case approach because it's debatable setup
51+
#
52+
# Those licenses notably include:
53+
# - Creative Commons versions (CC-BY is generally OK, but needs double-checking)
54+
# - LGPL, which is confusing between Lesser GPL and Library GPL and its many versions.
55+
# - Mozilla Public License (MPL) which is generally OK as well, but let's be conservative
56+
#
57+
########################################
58+
59+
- - :approve
60+
- caniuse-lite
61+
- :why: >
62+
Using CC-BY-4.0 which is permissive:
63+
https://github.com/browserslist/caniuse-lite?tab=CC-BY-4.0-1-ov-file#readme
64+
65+
- - :approve
66+
- llhttp-ffi
67+
- :why: Mozilla Public License 2.0 is fine
68+
69+
- - :approve
70+
- mdn-data
71+
- :why: >
72+
Using CC0-1.0 which is permissive:
73+
https://github.com/mdn/data?tab=CC0-1.0-1-ov-file#readme
74+
75+
- - :approve
76+
- postcss-values-parser
77+
- :why: Mozilla Public License 2.0 is fine
78+
79+
- - :approve
80+
- lightningcss
81+
- :why: Mozilla Public License 2.0 is fine
82+
83+
########################################
84+
#
85+
# MISDOCUMENTED VALID LICENSES
86+
#
87+
########################################
88+
89+
- - :approve
90+
- aws_cf_signer
91+
- :why: MIT license https://github.com/dylanvaughn/aws_cf_signer?tab=MIT-1-ov-file#readme
92+
- - :approve
93+
- '@segment/facade'
94+
- :why: MIT license https://github.com/segmentio/facade?tab=MIT-1-ov-file
95+
- - :approve
96+
- '@segment/isodate'
97+
- :why: MIT license https://github.com/segmentio/isodate?tab=MIT-1-ov-file
98+
- - :approve
99+
- '@segment/isodate-traverse'
100+
- :why: MIT license https://github.com/segmentio/isodate-traverse?tab=MIT-1-ov-file
101+
- - :approve
102+
- brakeman
103+
- :why: https://github.com/presidentbeef/brakeman/blob/main/LICENSE.md
104+
- - :approve
105+
- color-convert
106+
- :why: MIT license https://github.com/Qix-/color-convert#MIT-1-ov-file
107+
- - :approve
108+
- decko
109+
- :why: MIT license https://github.com/developit/decko?tab=MIT-1-ov-file
110+
- - :approve
111+
- exif-parser
112+
- :why: MIT license https://github.com/bwindels/exif-parser?tab=MIT-1-ov-file
113+
- - :approve
114+
- khroma
115+
- :why: MIT license https://github.com/fabiospampinato/khroma?tab=MIT-1-ov-file
116+
- - :approve
117+
- new-date
118+
- :why: MIT license https://github.com/segmentio/new-date?tab=MIT-1-ov-file
119+
- - :approve
120+
- stickyfill
121+
- :why: MIT license https://github.com/webmodules/stickyfill?tab=MIT-1-ov-file
122+
- - :approve
123+
- tosource
124+
- :why: Zlib license https://github.com/marcello3d/node-tosource?tab=Zlib-1-ov-file
125+
- - :approve
126+
- uuid-v4
127+
- :why: MIT license https://www.npmjs.com/package/uuid-v4
128+
- - :approve
129+
- pdf-core
130+
- :why: Matz' Ruby license https://github.com/prawnpdf/pdf-core?tab=License-1-ov-file
131+
- - :approve
132+
- prawn
133+
- :why: Matz' Ruby license https://github.com/prawnpdf/prawn?tab=License-1-ov-file
134+
- - :approve
135+
- ttfunk
136+
- :why: Matz' Ruby license https://github.com/prawnpdf/ttfunk?tab=License-1-ov-file
137+
- - :approve
138+
- '@typescript-eslint/parser'
139+
- :why: MIT license https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/LICENSE
140+
- - :approve
141+
- 'atomically'
142+
- :why: MIT license https://github.com/fabiospampinato/atomically/blob/master/license
143+
- - :approve
144+
- 'when-exit'
145+
- :why: MIT license https://github.com/fabiospampinato/when-exit/blob/master/license
146+
- - :approve
147+
- 'stubborn-fs'
148+
- :why: MIT license https://github.com/fabiospampinato/stubborn-fs/blob/master/license
149+
- - :approve
150+
- '@auth0/xmldom'
151+
- :why: MIT license https://github.com/auth0/xmldom/blob/master/LICENSE
152+
- - :approve
153+
- 'valid-url'
154+
- :why: MIT license https://github.com/ogt/valid-url/blob/master/LICENSE
155+
- - :approve
156+
- 'front_matter_parser'
157+
- :why: MIT license https://github.com/waiting-for-dev/front_matter_parser/blob/main/LICENSE.txt
158+
- - :approve
159+
- customerio-gist-web
160+
- :why: >
161+
MIT license; see LICENSE file in package
162+
https://unpkg.com/browse/customerio-gist-web@3.16.10/LICENSE
163+
########################################
164+
#
165+
# NOT IDEAL BUT NOT A BLOCKER
166+
#
167+
########################################
168+
169+
- - :approve
170+
- mini_exiftool
171+
- :why: >
172+
This is LGPL-2.1, a weak copyleft license that we can use as long as we
173+
comply with some requirements available here:
174+
https://pennylane-org.slack.com/archives/C04HEQLHDTQ/p1732882347125169?thread_ts=1732882100.984249&cid=C04HEQLHDTQ
175+
176+
- - :approve
177+
- rchardet
178+
- :why: >
179+
This is LGPL-2.1, a weak copyleft license that we can use as long as we
180+
comply with some requirements available here:
181+
https://pennylane-org.slack.com/archives/C04HEQLHDTQ/p1732882347125169?thread_ts=1732882100.984249&cid=C04HEQLHDTQ
182+
183+
- - :approve
184+
- epics
185+
- :why: >
186+
This is LGPL-2.1, a weak copyleft license that we can use as long as we
187+
comply with some requirements available here:
188+
https://pennylane-org.slack.com/archives/C04HEQLHDTQ/p1741249208399559

lib/liberic/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module Liberic
2-
VERSION = '1.4.0'
2+
VERSION = '1.4.1'
33
end

0 commit comments

Comments
 (0)