license_finder 7.1.0 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +5 -1
  3. data/CHANGELOG.md +17 -0
  4. data/Dockerfile +80 -90
  5. data/README.md +6 -7
  6. data/Rakefile +1 -1
  7. data/VERSION +1 -1
  8. data/ci/pipelines/pull-request.yml.erb +29 -32
  9. data/ci/pipelines/release.yml.erb +17 -41
  10. data/ci/scripts/run-tests.sh +20 -4
  11. data/ci/tasks/rubocop.yml +3 -3
  12. data/ci/tasks/update-changelog.yml +2 -2
  13. data/lib/license_finder/core.rb +2 -2
  14. data/lib/license_finder/license/definitions.rb +127 -19
  15. data/lib/license_finder/license/templates/AGPL3.txt +661 -0
  16. data/lib/license_finder/license/templates/Artistic.txt +128 -0
  17. data/lib/license_finder/license/templates/CC01_alt.txt +31 -0
  18. data/lib/license_finder/license/templates/CDDL1_1.txt +123 -0
  19. data/lib/license_finder/license/templates/CPL1.txt +217 -0
  20. data/lib/license_finder/license/templates/EPL2.txt +80 -0
  21. data/lib/license_finder/license/templates/Unlicense.txt +24 -0
  22. data/lib/license_finder/license/text.rb +4 -0
  23. data/lib/license_finder/license.rb +1 -1
  24. data/lib/license_finder/manual_licenses.rb +1 -1
  25. data/lib/license_finder/package_manager.rb +1 -1
  26. data/lib/license_finder/package_managers/cargo.rb +1 -1
  27. data/lib/license_finder/package_managers/conan.rb +50 -8
  28. data/lib/license_finder/package_managers/dep.rb +43 -41
  29. data/lib/license_finder/package_managers/go_dep.rb +1 -1
  30. data/lib/license_finder/package_managers/go_workspace.rb +3 -2
  31. data/lib/license_finder/package_managers/maven.rb +18 -10
  32. data/lib/license_finder/package_managers/npm.rb +14 -1
  33. data/lib/license_finder/package_managers/pip.rb +1 -1
  34. data/lib/license_finder/package_managers/pnpm.rb +7 -1
  35. data/lib/license_finder/package_managers/yarn.rb +9 -9
  36. data/lib/license_finder/package_utils/conan_info_parser.rb +2 -2
  37. data/lib/license_finder/package_utils/conan_info_parser_v2.rb +82 -0
  38. data/lib/license_finder/package_utils/license_files.rb +12 -2
  39. data/lib/license_finder/package_utils/licensing.rb +2 -1
  40. data/lib/license_finder/package_utils/maven_dependency_finder.rb +43 -1
  41. data/lib/license_finder/package_utils/notice_files.rb +14 -3
  42. data/lib/license_finder/package_utils/possible_license_file.rb +8 -2
  43. data/lib/license_finder/packages/maven_package.rb +13 -1
  44. data/lib/license_finder/packages/npm_package.rb +37 -11
  45. data/lib/license_finder/printer.rb +2 -2
  46. data/lib/license_finder/scanner.rb +3 -3
  47. data/license_finder.gemspec +11 -10
  48. metadata +44 -22
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a74ac8d4dd390c9608445a97a27c1b6b1a3398b33c95d28eff8eb0e1cfff63e7
4
- data.tar.gz: 6944369b76103e35729350d5508445ad72f91bb79b2d32e6241b552cd53bf3cd
3
+ metadata.gz: ea2f57657f8f3dba53174ad258ba5110faea56db4bc43053d0534758dae68cf6
4
+ data.tar.gz: b4f8e8a5a1f079f0a0d72cf204136c90146d5e769e39a892b7400ad5df1b5fbd
5
5
  SHA512:
6
- metadata.gz: db5512b1f7c9f5c317fb4d9a0efe09fc6d4b88461b3c599ca0ab7b679ef9fdf07cb86eebe3d0ef87cefcfa5a531d9bd1e2b583f7e938ac9c3a64766f21a7f012
7
- data.tar.gz: 75f9994268a1a7ef36145bd757cfa8c02e1fcb3d2debdd8301b9f26326bf4afc04771a8b9a2d4e8922398560e9df68c075df240144d6972a62c5613c4f6261c5
6
+ metadata.gz: c22e4175e51437d7be9b3a0fda548fe71df5f7620e78ffbfe855eb26c81b6f6add55a9358e845f3d312b51ba077804f951c830339c7364b33426b5aa7658b06d
7
+ data.tar.gz: 74189994406c098243463a2d2da803453f6ad8550eb0b77df294158add2cd1694051b2e26f224eceb2a6719f6e66d0e7c9b90cf8d5a502404c035fe8677279bf
data/.rubocop.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.4.0
2
+ TargetRubyVersion: 2.6.0
3
3
  Exclude:
4
4
  - 'lib/license_finder/reports/**/*'
5
5
  - 'features/fixtures/**/*'
@@ -78,3 +78,7 @@ FileName:
78
78
  ModuleFunction:
79
79
  Enabled: false
80
80
  EnforcedStyle: extend_self
81
+ # Custom ERB Template needs the to_s
82
+ Lint/RedundantStringCoercion:
83
+ Exclude:
84
+ - 'examples/custom_erb_template.rb'
data/CHANGELOG.md CHANGED
@@ -1,3 +1,19 @@
1
+ # [7.2.0] / 2024-05-07
2
+
3
+ ### Added
4
+ * Add more license detection - [b3dde46e](https://github.com/pivotal/LicenseFinder/commit/b3dde46e2018aef9b6436a04777ec33d40a134e4) - Simon Warren
5
+ * Unlicense - [6fb571ca](https://github.com/pivotal/LicenseFinder/commit/6fb571cad9b5ee856c0984ca79aa7604afdd818b) - Jim Kane
6
+
7
+ ### Fixed
8
+ * Ensure licenses are recognised by `spdx_id` - [b263f500](https://github.com/pivotal/LicenseFinder/commit/b263f500eaaf802e90ee023c4a6c4b6aa068dd7e) - Simon Warren
9
+ * Ensure yarn runs in "current" project dir - [37d52f2b](https://github.com/pivotal/LicenseFinder/commit/37d52f2b4503d799a4c551b573848e9bbbce4848) - Simon Warren
10
+ * Fix CPL1 pretty name - [3ae49861](https://github.com/pivotal/LicenseFinder/commit/3ae49861dbfaf0bbd023d68dabad067f32775f48) - Simon Warren
11
+ * Fix 'unknown' Yarn 2 licenses - [f57745be](https://github.com/pivotal/LicenseFinder/commit/f57745be34bb7774577ea577671ea7b5c3246576) - Simon Warren
12
+ * Print subproject paths when logging - [add2f969](https://github.com/pivotal/LicenseFinder/commit/add2f9698a0f3c02d3148655a4b538e2f557d2be) - Simon Warren
13
+
14
+ ### Deprecated
15
+ * - Remove Dep package manager for jammy release - [42bed10d](https://github.com/pivotal/LicenseFinder/commit/42bed10d80e4b0e6fac1c62dd5eca2097ffc3517)
16
+
1
17
  # [7.1.0] / 2022-11-28
2
18
 
3
19
  ### Added
@@ -1034,3 +1050,4 @@ Bugfixes:
1034
1050
  [7.0.0]: https://github.com/pivotal/LicenseFinder/compare/v6.15.0...v7.0.0
1035
1051
  [7.0.1]: https://github.com/pivotal/LicenseFinder/compare/v7.0.0...v7.0.1
1036
1052
  [7.1.0]: https://github.com/pivotal/LicenseFinder/compare/v7.0.1...v7.1.0
1053
+ [7.2.0]: https://github.com/pivotal/LicenseFinder/compare/v7.1.0...v7.2.0
data/Dockerfile CHANGED
@@ -1,41 +1,38 @@
1
- FROM ubuntu:bionic
1
+ FROM ubuntu:jammy
2
2
 
3
3
  WORKDIR /tmp
4
4
 
5
5
  # Versioning
6
- ENV PIP_INSTALL_VERSION 19.0.2
7
6
  ENV PIP3_INSTALL_VERSION 20.0.2
8
7
  ENV GO_LANG_VERSION 1.17.13
9
- ENV MAVEN_VERSION 3.6.0
10
8
  ENV SBT_VERSION 1.3.3
11
9
  ENV GRADLE_VERSION 5.6.4
12
- ENV RUBY_VERSION 3.1.1
13
- ENV MIX_VERSION 2.0
10
+ ENV RUBY_VERSION 3.2.3
14
11
  ENV COMPOSER_ALLOW_SUPERUSER 1
15
12
 
16
13
  # programs needed for building
17
- RUN apt-get update && apt-get install -y \
14
+ RUN apt -q update && apt install -y \
18
15
  build-essential \
19
16
  curl \
20
- sudo \
21
17
  unzip \
22
18
  wget \
23
19
  gnupg2 \
24
20
  apt-utils \
25
21
  software-properties-common \
26
- bzr
22
+ bzr && \
23
+ rm -rf /var/lib/apt/lists/*
27
24
 
28
- RUN add-apt-repository ppa:git-core/ppa && apt-get update && apt-get install -y git
25
+ RUN add-apt-repository ppa:git-core/ppa && \
26
+ apt -q update && apt install -y git && rm -rf /var/lib/apt/lists/*
29
27
 
30
- # nodejs seems to be required for the one of the gems
31
- RUN curl -sL https://deb.nodesource.com/setup_14.x | bash - && \
32
- apt-get -y install nodejs
28
+ # install nodejs
29
+ RUN curl -sL https://deb.nodesource.com/setup_18.x | bash - && \
30
+ apt -q update && apt install -y nodejs && rm -rf /var/lib/apt/lists/*
33
31
 
34
32
  # install yarn
35
- RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - && \
36
- echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list && \
37
- apt-get update && \
38
- apt-get install yarn
33
+ RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - && \
34
+ echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list && \
35
+ apt -q update && apt install -y yarn && rm -rf /var/lib/apt/lists/*
39
36
 
40
37
  # install bower
41
38
  RUN npm install -g bower && \
@@ -49,31 +46,29 @@ RUN npm install -g pnpm && \
49
46
  RUN curl -L -o openjdk12.tar.gz https://download.java.net/java/GA/jdk12.0.2/e482c34c86bd4bf8b56c0b35558996b9/10/GPL/openjdk-12.0.2_linux-x64_bin.tar.gz && \
50
47
  tar xvf openjdk12.tar.gz && \
51
48
  rm openjdk12.tar.gz && \
52
- sudo mv jdk-12.0.2 /opt/ && \
53
- sudo rm /opt/jdk-12.0.2/lib/src.zip
49
+ mv jdk-12.0.2 /opt/ && \
50
+ rm /opt/jdk-12.0.2/lib/src.zip
54
51
  ENV JAVA_HOME=/opt/jdk-12.0.2
55
52
  ENV PATH=$PATH:$JAVA_HOME/bin
56
53
  RUN java -version
57
54
 
58
55
  # install rebar3
59
56
  RUN curl -o rebar3 https://s3.amazonaws.com/rebar3/rebar3 && \
60
- sudo chmod +x rebar3 && \
61
- sudo mv rebar3 /usr/local/bin/rebar3
57
+ chmod +x rebar3 && \
58
+ mv rebar3 /usr/local/bin/rebar3
62
59
 
63
60
  # install and update python and python-pip
64
- RUN apt-get install -y python python-pip python3-pip && \
65
- python3 -m pip install pip==$PIP3_INSTALL_VERSION --upgrade && \
66
- python -m pip install pip==$PIP_INSTALL_VERSION --upgrade --force
61
+ RUN apt -q update && apt install -y python3-pip && \
62
+ rm -rf /var/lib/apt/lists/* && \
63
+ python3 -m pip install pip==$PIP3_INSTALL_VERSION --upgrade
67
64
 
68
65
  # install maven
69
- RUN curl -O https://archive.apache.org/dist/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz && \
70
- tar -xf apache-maven-$MAVEN_VERSION-bin.tar.gz; rm -rf apache-maven-$MAVEN_VERSION-bin.tar.gz && \
71
- mv apache-maven-$MAVEN_VERSION /usr/local/lib/maven && \
72
- ln -s /usr/local/lib/maven/bin/mvn /usr/local/bin/mvn
66
+ RUN apt -q update && apt install -y maven && \
67
+ rm -rf /var/lib/apt/lists/*
73
68
 
74
69
  # install sbt
75
70
  RUN mkdir -p /usr/local/share/sbt-launcher-packaging && \
76
- curl --progress \
71
+ curl \
77
72
  --retry 3 \
78
73
  --retry-delay 15 \
79
74
  --location "https://github.com/sbt/sbt/releases/download/v${SBT_VERSION}/sbt-${SBT_VERSION}.tgz" \
@@ -106,26 +101,25 @@ RUN mkdir /gopath && \
106
101
  go install github.com/kardianos/govendor@latest && \
107
102
  go clean -cache
108
103
 
109
- #install rvm and glide and godep
104
+ #install rvm and glide
110
105
  RUN apt-add-repository -y ppa:rael-gc/rvm && \
111
- add-apt-repository -y ppa:masterminds/glide && \
112
- apt update && apt install -y rvm && \
113
- /usr/share/rvm/bin/rvm install --default $RUBY_VERSION &&\
114
- apt-get install -y glide && \
115
- apt-get install -y go-dep
106
+ apt -q update && apt install -y rvm && \
107
+ /usr/share/rvm/bin/rvm install --default $RUBY_VERSION && \
108
+ apt install -y golang-glide && \
109
+ rm -rf /var/lib/apt/lists/*
116
110
 
117
111
  # install trash
118
112
  RUN curl -Lo trash.tar.gz https://github.com/rancher/trash/releases/download/v0.2.7/trash-linux_amd64.tar.gz && \
119
113
  tar xvf trash.tar.gz && \
120
114
  rm trash.tar.gz && \
121
- sudo mv trash /usr/local/bin/
115
+ mv trash /usr/local/bin/
122
116
 
123
117
  # install bundler
124
118
  RUN bash -lc "gem update --system && gem install bundler"
125
119
 
126
120
  WORKDIR /tmp
127
121
  # Fix the locale
128
- RUN apt-get install -y locales
122
+ RUN apt -q update && apt install -y locales && rm -rf /var/lib/apt/lists/*
129
123
  RUN locale-gen en_US.UTF-8
130
124
  ENV LANG=en_US.UTF-8
131
125
  ENV LANGUAGE=en_US:en
@@ -135,11 +129,8 @@ ENV LC_ALL=en_US.UTF-8
135
129
  RUN curl https://sh.rustup.rs -sSf | bash -ls -- -y --profile minimal
136
130
 
137
131
  #install mix
138
- RUN wget https://packages.erlang-solutions.com/erlang-solutions_${MIX_VERSION}_all.deb && \
139
- sudo dpkg -i erlang-solutions_${MIX_VERSION}_all.deb && \
140
- sudo rm -f erlang-solutions_${MIX_VERSION}_all.deb && \
141
- sudo apt-get update && \
142
- sudo apt-get install -y esl-erlang
132
+ RUN curl -1sLf 'https://dl.cloudsmith.io/public/rabbitmq/rabbitmq-erlang/setup.deb.sh' | bash
133
+ RUN apt -q update && apt install -y erlang && rm -rf /var/lib/apt/lists/*
143
134
  # Install Elixir
144
135
  WORKDIR /tmp/elixir-build
145
136
  RUN git clone https://github.com/elixir-lang/elixir.git
@@ -148,7 +139,7 @@ RUN make && make install
148
139
  WORKDIR /
149
140
 
150
141
  # install conan
151
- RUN apt-get install -y python-dev && \
142
+ RUN apt -q update && apt install -y python3-dev && rm -rf /var/lib/apt/lists/* && \
152
143
  pip install --no-cache-dir --ignore-installed six --ignore-installed colorama \
153
144
  --ignore-installed requests --ignore-installed chardet \
154
145
  --ignore-installed urllib3 \
@@ -156,32 +147,30 @@ RUN apt-get install -y python-dev && \
156
147
  pip3 install --no-cache-dir -Iv conan==1.51.3 && \
157
148
  conan config install https://github.com/conan-io/conanclientcert.git
158
149
 
159
-
160
150
  # install NuGet (w. mono)
161
151
  # https://docs.microsoft.com/en-us/nuget/install-nuget-client-tools#macoslinux
162
152
  RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF &&\
163
- echo "deb https://download.mono-project.com/repo/ubuntu stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list &&\
164
- apt-get update &&\
165
- apt-get install -y mono-complete &&\
153
+ echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | tee /etc/apt/sources.list.d/mono-official-stable.list &&\
154
+ apt -q update && apt install -y mono-complete && rm -rf /var/lib/apt/lists/* &&\
166
155
  curl -o "/usr/local/bin/nuget.exe" "https://dist.nuget.org/win-x86-commandline/latest/nuget.exe" &&\
167
156
  curl -o "/usr/local/bin/nugetv3.5.0.exe" "https://dist.nuget.org/win-x86-commandline/v3.5.0/nuget.exe"
168
157
 
169
158
  # install dotnet core
170
- RUN wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb &&\
171
- sudo dpkg -i packages-microsoft-prod.deb &&\
159
+ RUN wget -q https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb &&\
160
+ dpkg -i packages-microsoft-prod.deb &&\
172
161
  rm packages-microsoft-prod.deb &&\
173
- sudo apt-get update &&\
174
- sudo apt-get install -y dotnet-runtime-2.1 dotnet-sdk-2.1 dotnet-sdk-2.2 dotnet-sdk-3.0 dotnet-sdk-3.1
162
+ apt -q update &&\
163
+ apt install -y dotnet-sdk-6.0 dotnet-sdk-7.0 &&\
164
+ rm -rf /var/lib/apt/lists/*
175
165
 
176
166
  # install Composer
177
167
  # The ARG and ENV are for installing tzdata which is part of this installaion.
178
168
  # https://serverfault.com/questions/949991/how-to-install-tzdata-on-a-ubuntu-docker-image
179
169
  ENV TZ=GMT
180
170
  RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 4F4EA0AAE5267A6C &&\
181
- echo "deb http://ppa.launchpad.net/ondrej/php/ubuntu bionic main" | sudo tee /etc/apt/sources.list.d/php.list &&\
182
- apt-get update &&\
171
+ echo "deb http://ppa.launchpad.net/ondrej/php/ubuntu jammy main" | tee /etc/apt/sources.list.d/php.list &&\
183
172
  export DEBIAN_FRONTEND=noninteractive &&\
184
- apt-get install -y php7.4-cli &&\
173
+ apt -q update && apt install -y php7.4-cli && rm -rf /var/lib/apt/lists/* &&\
185
174
  EXPECTED_COMPOSER_INSTALLER_CHECKSUM="$(curl --silent https://composer.github.io/installer.sig)" &&\
186
175
  php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" &&\
187
176
  ACTUAL_COMPOSER_INSTALLER_CHECKSUM="$(php -r "echo hash_file('sha384', 'composer-setup.php');")" &&\
@@ -202,53 +191,35 @@ RUN \
202
191
  (echo; echo "yes") | sh "${conda_installer}"
203
192
 
204
193
  # install Swift Package Manager
205
- # Based on https://github.com/apple/swift-docker/blob/main/5.3/ubuntu/18.04/Dockerfile
194
+ # Based on https://github.com/apple/swift-docker/blob/main/5.8/ubuntu/22.04/Dockerfile
206
195
  # The GPG download steps has been modified. Keys are now on LF repo and copied instaad of downloaded.
207
196
  # Refer to https://swift.org/download/#using-downloads in the Linux section on how to download the keys
208
- RUN apt-get -q install -y \
209
- libatomic1 \
210
- libcurl4 \
211
- libxml2 \
212
- libedit2 \
213
- libsqlite3-0 \
214
- libc6-dev \
197
+ RUN apt -q update && apt -q install -y \
215
198
  binutils \
216
- libgcc-5-dev \
217
- libstdc++-5-dev \
218
- zlib1g-dev \
219
- libpython2.7 \
220
- tzdata \
221
199
  git \
200
+ gnupg2 \
201
+ libc6-dev \
202
+ libedit2 \
203
+ libgcc-9-dev \
204
+ libcurl4-openssl-dev \
205
+ libpython3-dev \
206
+ libsqlite3-0 \
207
+ libstdc++-9-dev \
208
+ libxml2-dev \
209
+ libz3-dev \
222
210
  pkg-config \
211
+ python3-lldb-13 \
212
+ tzdata \
213
+ zlib1g-dev \
223
214
  && rm -r /var/lib/apt/lists/*
224
215
 
225
- #install flutter
226
- ENV FLUTTER_HOME=/root/flutter
227
- RUN git config --global --add safe.directory /root/flutter
228
- RUN curl -o flutter_linux_2.8.1-stable.tar.xz https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_2.8.1-stable.tar.xz \
229
- && tar xf flutter_linux_2.8.1-stable.tar.xz \
230
- && mv flutter ${FLUTTER_HOME} \
231
- && rm flutter_linux_2.8.1-stable.tar.xz
232
-
233
- ENV PATH=$PATH:${FLUTTER_HOME}/bin:${FLUTTER_HOME}/bin/cache/dart-sdk/bin
234
- RUN flutter doctor -v \
235
- && flutter update-packages \
236
- && flutter precache
237
- # Accepting all licences
238
- RUN yes | flutter doctor --android-licenses -v
239
- # Creating Flutter sample projects to put binaries in cache fore each template type
240
- RUN flutter create --template=app ${TEMP}/app_sample \
241
- && flutter create --template=package ${TEMP}/package_sample \
242
- && flutter create --template=plugin ${TEMP}/plugin_sample
243
-
244
-
245
216
  # pub 4096R/ED3D1561 2019-03-22 [SC] [expires: 2023-03-23]
246
217
  # Key fingerprint = A62A E125 BBBF BB96 A6E0 42EC 925C C1CC ED3D 1561
247
218
  # uid Swift 5.x Release Signing Key <swift-infrastructure@swift.org
248
219
  ARG SWIFT_SIGNING_KEY=A62AE125BBBFBB96A6E042EC925CC1CCED3D1561
249
- ARG SWIFT_PLATFORM=ubuntu18.04
250
- ARG SWIFT_BRANCH=swift-5.3.3-release
251
- ARG SWIFT_VERSION=swift-5.3.3-RELEASE
220
+ ARG SWIFT_PLATFORM=ubuntu22.04
221
+ ARG SWIFT_BRANCH=swift-5.8-release
222
+ ARG SWIFT_VERSION=swift-5.8-RELEASE
252
223
  ARG SWIFT_WEBROOT=https://download.swift.org
253
224
 
254
225
  ENV SWIFT_SIGNING_KEY=$SWIFT_SIGNING_KEY \
@@ -264,7 +235,7 @@ RUN set -e; \
264
235
  && SWIFT_SIG_URL="$SWIFT_BIN_URL.sig" \
265
236
  # - Grab curl here so we cache better up above
266
237
  && export DEBIAN_FRONTEND=noninteractive \
267
- && apt-get -q update && apt-get -q install -y curl && rm -rf /var/lib/apt/lists/* \
238
+ && apt -q update && apt -q install -y curl && rm -rf /var/lib/apt/lists/* \
268
239
  # - Download the GPG keys, Swift toolchain, and toolchain signature, and verify.
269
240
  && export GNUPGHOME="$(mktemp -d)" \
270
241
  && curl -fsSL "$SWIFT_BIN_URL" -o swift.tar.gz "$SWIFT_SIG_URL" -o swift.tar.gz.sig \
@@ -276,6 +247,25 @@ RUN set -e; \
276
247
  && rm -rf "$GNUPGHOME" swift.tar.gz.sig swift.tar.gz \
277
248
  set +e
278
249
 
250
+ # install flutter
251
+ ENV FLUTTER_HOME=/root/flutter
252
+ RUN git config --global --add safe.directory /root/flutter
253
+ RUN curl -o flutter_linux_2.8.1-stable.tar.xz https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_2.8.1-stable.tar.xz \
254
+ && tar xf flutter_linux_2.8.1-stable.tar.xz \
255
+ && mv flutter ${FLUTTER_HOME} \
256
+ && rm flutter_linux_2.8.1-stable.tar.xz
257
+
258
+ ENV PATH=$PATH:${FLUTTER_HOME}/bin:${FLUTTER_HOME}/bin/cache/dart-sdk/bin
259
+ RUN flutter doctor -v \
260
+ && flutter update-packages \
261
+ && flutter precache
262
+ # Accepting all licences
263
+ RUN yes | flutter doctor --android-licenses -v
264
+ # Creating Flutter sample projects to put binaries in cache fore each template type
265
+ RUN flutter create --template=app ${TEMP}/app_sample \
266
+ && flutter create --template=package ${TEMP}/package_sample \
267
+ && flutter create --template=plugin ${TEMP}/plugin_sample
268
+
279
269
  # install license_finder
280
270
  COPY . /LicenseFinder
281
271
  RUN bash -lc "cd /LicenseFinder && bundle config set no-cache 'true' && bundle install -j4 && bundle pristine && rake install"
data/README.md CHANGED
@@ -3,11 +3,10 @@
3
3
  [![Code Climate](https://codeclimate.com/github/pivotal/LicenseFinder.png)](https://codeclimate.com/github/pivotal/LicenseFinder)
4
4
 
5
5
  Build status
6
- * Ruby 2.4.9 [![Ruby 2.4.9 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-2.4.9/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
7
- * Ruby 2.5.7 [![Ruby 2.5.7 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-2.5.7/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
8
- * Ruby 2.6.9 [![Ruby 2.6.9 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-2.6.9/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
9
- * Ruby 2.7.5 [![Ruby 2.7.5 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-2.7.5/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
10
- * Ruby 3.1.1 [![Ruby 3.1.1 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-3.1.1/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
6
+ * Ruby 2.7.8 [![Ruby 2.7.8 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-2.7.8/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
7
+ * Ruby 3.1.4 [![Ruby 3.1.4 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-3.1.4/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
8
+ * Ruby 3.2.3 [![Ruby 3.2.3 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-3.2.3/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
9
+ * Ruby 3.3.0 [![Ruby 3.3.0 build status](https://norsk.cf-app.com/api/v1/teams/main/pipelines/LicenseFinder/jobs/ruby-3.3.0/badge)](https://norsk.cf-app.com/teams/main/pipelines/LicenseFinder)
11
10
 
12
11
 
13
12
  LicenseFinder works with your package managers to find dependencies,
@@ -68,7 +67,7 @@ repos:
68
67
  - id: license-finder
69
68
  ```
70
69
 
71
- Running License Finder directly requires Ruby 2.4.0 or greater. If you have an
70
+ Running License Finder directly requires Ruby 2.6.0 or greater. If you have an
72
71
  older version of Ruby installed, you can update via Homebrew:
73
72
 
74
73
  ```sh
@@ -542,7 +541,7 @@ licenseConfigurations := Set("compile", "provided")
542
541
 
543
542
  ## Requirements
544
543
 
545
- `license_finder` requires ruby >= 2.4.0. We will be dropping 2.4.x support soon.
544
+ `license_finder` requires ruby >= 2.6.0.
546
545
 
547
546
 
548
547
  ## Upgrading
data/Rakefile CHANGED
@@ -54,7 +54,7 @@ task :update_pipeline, [:slack_url, :slack_channel] do |_, args|
54
54
  puts 'Warning: You should provide slack channel and url to receive slack notifications on build failures'
55
55
  end
56
56
 
57
- ruby_versions = %w[3.1.1 2.7.5 2.6.9 2.5.7 2.4.9]
57
+ ruby_versions = %w[3.3.0 3.2.3 3.1.4 2.7.8]
58
58
 
59
59
  params = []
60
60
  params << "ruby_versions=#{ruby_versions.join(',')}"
data/VERSION CHANGED
@@ -1 +1 @@
1
- 7.1.0
1
+ 7.2.0
@@ -13,27 +13,34 @@ resource_types:
13
13
  source:
14
14
  repository: cfcommunity/slack-notification-resource
15
15
  tag: latest
16
- username: ((LicenseFinderDocker.username))
17
- password: ((LicenseFinderDocker.password))
16
+ username: ((license-finder-docker-username))
17
+ password: ((license-finder-docker-password))
18
18
  <% end %>
19
19
 
20
20
  resources:
21
+ - name: lf-git
22
+ type: git
23
+ source:
24
+ uri: git@github.com:pivotal/LicenseFinder.git
25
+ private_key: ((github-cf-osl-bot-private-key))
26
+ branch: master
27
+
21
28
  - name: github-pull-request
22
29
  type: pull-request
23
30
  check_every: 24h
24
- webhook_token: ((GithubPullRequestWebhookToken))
31
+ webhook_token: ((github-pull-request-webhook-token))
25
32
  source:
26
33
  repository: pivotal/LicenseFinder
27
- access_token: ((GithubApiPullRequestToken))
34
+ access_token: ((github-api-pull-request-token))
28
35
 
29
36
  - name: dockerhub-pr
30
37
  type: docker-image
31
38
  source:
32
39
  tag: edge-pr
33
40
  repository: licensefinder/license_finder
34
- email: ((LicenseFinderDockerEmail))
35
- username: ((LicenseFinderDocker.username))
36
- password: ((LicenseFinderDocker.password))
41
+ email: ((license-finder-docker-email))
42
+ username: ((license-finder-docker-username))
43
+ password: ((license-finder-docker-password))
37
44
 
38
45
  <% if setup_slack %>
39
46
  - name: slack-alert
@@ -47,23 +54,19 @@ jobs:
47
54
  public: true
48
55
  plan:
49
56
  - get: github-pull-request
50
- tags: ["private-worker"]
51
57
  version: every
52
58
  trigger: true
53
59
  - put: dockerhub-pr
54
- tags: ["private-worker"]
55
60
  params:
56
61
  build: github-pull-request
57
62
  on_success:
58
63
  put: github-pull-request
59
- tags: ["private-worker"]
60
64
  params:
61
65
  path: github-pull-request
62
66
  status: success
63
67
  context: build-docker-image
64
68
  on_failure:
65
69
  put: github-pull-request
66
- tags: ["private-worker"]
67
70
  params:
68
71
  path: github-pull-request
69
72
  status: failure
@@ -72,32 +75,29 @@ jobs:
72
75
  - name: PR-ruby-<%= ruby_version %>-linux
73
76
  public: true
74
77
  plan:
75
- - get: github-pull-request
76
- tags: ["private-worker"]
77
- passed: [build-docker-image]
78
- version: every
79
- - get: dockerhub-pr
80
- tags: ["private-worker"]
81
- passed: [build-docker-image]
82
- trigger: true
78
+ - in_parallel:
79
+ - get: github-pull-request
80
+ passed: [build-docker-image]
81
+ version: every
82
+ - get: dockerhub-pr
83
+ passed: [build-docker-image]
84
+ trigger: true
85
+ - get: lf-git
83
86
  - task: ruby-<%= ruby_version %>
84
- tags: ["private-worker"]
85
87
  privileged: true
86
88
  image: dockerhub-pr
87
- file: github-pull-request/ci/tasks/run-tests.yml
89
+ file: lf-git/ci/tasks/run-tests.yml
88
90
  params:
89
91
  RUBY_VERSION_UNDER_TEST: <%= ruby_version %>
90
92
  input_mapping: { LicenseFinder: github-pull-request }
91
93
  on_success:
92
94
  put: github-pull-request
93
- tags: ["private-worker"]
94
95
  params:
95
96
  path: github-pull-request
96
97
  status: success
97
98
  context: ruby-<%= ruby_version %>
98
99
  on_failure:
99
100
  put: github-pull-request
100
- tags: ["private-worker"]
101
101
  params:
102
102
  path: github-pull-request
103
103
  status: failure
@@ -105,7 +105,6 @@ jobs:
105
105
  <% if setup_slack %>
106
106
  on_failure:
107
107
  put: slack-alert
108
- tags: ["private-worker"]
109
108
  params:
110
109
  channel: '<%= slack_channel %>'
111
110
  icon_emoji: ':crying_cat_face:'
@@ -116,25 +115,23 @@ jobs:
116
115
  - name: PR-rubocop
117
116
  public: true
118
117
  plan:
119
- - get: github-pull-request
120
- tags: ["private-worker"]
121
- trigger: true
122
- version: every
118
+ - in_parallel:
119
+ - get: github-pull-request
120
+ trigger: true
121
+ version: every
122
+ - get: lf-git
123
123
  - task: run-rubocop
124
- tags: ["private-worker"]
125
124
  privileged: true
126
- file: github-pull-request/ci/tasks/rubocop.yml
125
+ file: lf-git/ci/tasks/rubocop.yml
127
126
  input_mapping: { LicenseFinder: github-pull-request }
128
127
  on_success:
129
128
  put: github-pull-request
130
- tags: ["private-worker"]
131
129
  params:
132
130
  path: github-pull-request
133
131
  status: success
134
132
  context: run-rubocop
135
133
  on_failure:
136
134
  put: github-pull-request
137
- tags: ["private-worker"]
138
135
  params:
139
136
  path: github-pull-request
140
137
  status: failure