Commit graph

63 commits

Author SHA1 Message Date
github-actions[bot]
13309ad4fd
deps: downgrade jruby, keep updated default-gem dependencies (forward-port #15283) (#15369) (#15370)
* deps: downgrade jruby, keep updated default-gem dependencies (#15283)

forward-ports non-release-branch components of #15283 to `main`

* deps: downgrade jruby, keep updated default-gem dependencies

By downgrading JRuby to 9.4.2.0 we avoid the silent global crash of the
scheduler backing `Concurrent::TimerTask` that occurs when Jruby 9.4.3.0's
invokedynamic promotes a method to run natively, incorrectly.

Upstream bug: https://github.com/jruby/jruby/issues/7904

Along with the downgrade of JRuby itself to 9.4.2.0, we cherry-pick the
updates to gems that were included in the latest JRuby 9.4.3.0 to ensure
we don't back out relevant fixes to stdlib.

We also remove a pinned-dependency on `racc` that is no longer relevant.

Resolves: https://github.com/elastic/logstash/issues/15282

* Imported the licenses for some gems

- cgi
- date
- ffi-binary-libfixposix
- io-console
- net-http
- net-protocol
- reline
- time
- timeout
- uri

* specs: avoid mocking global ::Gem::Dependency::new

* build: remove redundanct dependsOn declaration

* deps: notice use of ffi-binary-libfixposix via Ruby license

this gem is tri-licensed `Ruby` / `EPL-2.0` / `LGPL-2.1-or-later` and
the Ruby license is preferred to EPL when available

---------

Co-authored-by: andsel <selva.andre@gmail.com>

* deps: add license notices for gems moved from default to bundled

---------

Co-authored-by: andsel <selva.andre@gmail.com>
(cherry picked from commit 70081bbcac)

Co-authored-by: Ry Biesemeyer <yaauie@users.noreply.github.com>
2023-10-03 14:41:08 -07:00
João Duarte
1d1fa7a471
update commons-io commons-compress jrjackson databind (#15125)
* update commons-io to 2.13.0 and commons-compress to 1.23.0

* update databind and jackson
2023-06-29 09:02:32 +02:00
Andrea Selva
26d1c7ccdb
Update to JRuby 9.4 (#14861)
Set of changes to make Logstash compatible to JRuby 9.4.
Bundle JRuby 9.4.3.0

- Redefine space token in `LSCL`  and `grammar` treetop from `_` which would generated methods in the form `def _0` (deprecated since `2.7`) to `sc`.
- `I18n.t` method doesn't accept hash as second argument
- `URI.encode` has been replaced with same functionality with `URI::Parser.new.escape`
- `YAML.load` needs explicit `fallback: false` to return false when the yaml string is empty (or contains only comments)
- JRuby's  `JavaClass` has been removed, now it can use `java.lang.Class` directly
- explicitly require gem `thwait` to satisfy `require "thwait"` (In `Gemfile.template` and `logstash-core/logstash-core.gemspec`)
- fix not args `clone` to be `def clone(*args)`
- fix `Enumeration.each_slice` which from `Ruby 3.1` is [chainable](https://rubyreferences.github.io/rubychanges/3.1.html#enumerableeach_cons-and-each_slice-return-a-receiver) and doesn't return `nil`. JRuby fixed in https://github.com/jruby/jruby/issues/7015
- Expanded `Down.download` arguments map ca16bbed3c302006967413eb9d3862f2da81f7ae
- Avoid to pass `nil` in the list of couples used in `Hash[ <list of couples> ]` which from Ruby `3.0` generates an `ArgumentError`
- Removed space not allowed between method name and parentheses `initialize (` is forbidden. 29b607dcdef98f81a73ad171639fd13aaa65e243
- With [Ruby 2.7 the `Kernel#open`](https://rubyreferences.github.io/rubychanges/2.7.html#network-and-web) doesn't fallback to `URI#open`, fixed test code that used that to verify open port. e5b70de54c5301f51a767da67294092af0cfafdc
- Avoid to drop `rdoc/` folder from vendored JRuby else `bin/logstash -i irb` would crash, commit b71f73e9c6edb81a7b7ae1305047e506f61c6e8c

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-06-28 13:05:43 +02:00
João Duarte
fd2b1ff340
added psych to dependency list and updated NOTICE.txt (#15050)
* replace jruby-complete with jruby-core in build tasks
* place bundler in the rubylib path for testing
2023-05-23 14:16:40 +01:00
Andrea Selva
a126364102
Centralized version definition for snakeyaml and shadow plugin used in buildscripts (#14952)
Create a variable in the Gradle's 'ext' map to store the versions of libraries and plugins used across the various .gradle files.
2023-03-10 16:50:16 +01:00
João Duarte
6911a71178
add license information for snakeyaml (#14886) 2023-02-09 20:04:14 +00:00
João Duarte
15b2d88647
bump snakeyaml to 1.33 (#14881)
ensure logstash-core picks up 1.33 as well from jackson-data format-yaml's
transititive dependency.
2023-02-09 18:20:03 +00:00
Rob Bavey
8d41b85498
Manually import CSV gem to work around thread leak (#14507)
* Manually import CSV gem to work around thread leak

The version of CSV included in jruby distributions >= `9.3.0.0` and
< `9.3.8.0` include a bug that triggers a thread leak when calling
`parse_line` in CSV files.

This commit updates the version of the CSV gem to the latest version,
which includes fixes, and remains compatible with ruby 2.6

Relates: https://github.com/jruby/jruby/issues/7346

* Add CSV license info
2022-09-07 14:45:37 -04:00
João Duarte
ae4a64d9ae
introduce logstash-integration-aws (#14369)
The logstash-integration-aws plugin replaces the underlying individual plugins related to AWS.

This commit also updates the necessary files around license checking.
2022-07-26 10:50:58 +01:00
Ioannis Kakavas
04f3e32ffa
Add licence mapping for netty (#14117)
Include Netty NOTICE.txt

Co-authored-by: João Duarte <jsvduarte@gmail.com>
2022-06-06 11:58:35 +02:00
Ry Biesemeyer
5337cde599
Add support for ca_trusted_fingerprint in Apache HTTP and Manticore (#14120)
* Add support for ca_trusted_fingerprint in Apache HTTP and Manticore

Adds a module `LogStash::Plugins::CATrustedFingerprintSupport`, which can be
included in a plugin class to add a `ca_trusted_fingerprint` option to create
an Apache SSL TrustStrategy that can be used to bypass the TrustManager when
a matching certificate is found on the chain.
2022-05-20 09:31:32 -07:00
Rob Bavey
2c7f14d25a
Move JvmOptionParser to separate project (#13657)
This commit moves the JvmOptionParser into its own gradle project.

This enables the JvmOptionParser to remain compatible with Java 1.8 to present a helpful error message to a user attempting to start Logstash using older versions of Java, while allowing the main Logstash code base to freely use idiomatic Java 11 features.
2022-05-18 14:58:53 -04:00
Andrea Selva
8c79a0067c
Updates license checker after inclusion of et-orbi, fugit and raabro. (#13891)
These dependencies are Rufus transitive deps, included by JDBC integration plugin v5.2.4
2022-03-14 15:58:48 +01:00
Karol Bucek
3637a30e8f
Refactor: drop redundant (jruby-complete.jar) dependency (#13159)
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2022-02-02 06:55:26 +01:00
Rob Bavey
c5a1cc784e
Regenerate NOTICE file, add new license for elastic enterprise search (#13670) 2022-01-24 14:26:37 -05:00
Andrea Selva
bc760c5c07
Adds license definitions for faraday-multipart and faraday-retry (#13592) 2022-01-10 10:42:20 +01:00
João Duarte
4919286e42
rename references of master branch to main branch (#13301) 2021-11-08 10:23:46 +00:00
Andrea Selva
728289e862
Switched to Gradle 7 (#13184)
This commit:
- Updates the Gradle wrapper to version 7.2
- Remove the deprecated jcenter and where it was used to retrieve Gradle's plugins it switches to gradlePluginPortal
- Insert an explicit dependency from test task to the log4j.properties manipulation task ("copyProductionLog4jConfiguration") used in integration
2021-09-08 10:42:13 +02:00
Andrea Selva
6ed2eea890
Added rexml notice to license list (#13209) 2021-09-07 11:07:49 +02:00
Andrea Selva
d2237578d5
Feature/remove gradle license report plugin (#13182)
Remove usage of plugin Gradle-License-Report to generate CSV report of used dependencies.
This commit replaces the removed plugin with the custom `ListProjectDependencies` task that inspects Gradle's project dependencies and produces a CSV file containing the list.
2021-09-01 15:28:57 +02:00
Andrea Selva
a7f6c01a3a
Update Snakeyaml version to 1.29 (#13129)
Snakeyaml is used only in the build chain, and it's not packaged with Logstash
2021-08-16 10:33:47 +02:00
Andrea Selva
542dce81a7
Added faraday-* and ruby2_keywords notices to licences list (#13126) 2021-08-13 13:25:47 +02:00
Julien Mailleret
6ae2146a75
Fix UBI source URL (#13008)
This commit fix the source URL for UBI image to ensure that it stays
consistent with the URL generated in
https://artifacts.elastic.co/reports/dependencies/dependencies-current.html
2021-06-21 16:06:10 +02:00
Rob Bavey
a935261eeb
Add logstash-integration-elastic_enterprise_search to plugins-metadata.json (#12925)
* Add logstash-integration-elastic_enterprise_search to plugins-metadata.json
* Remove old elastic_app_search plugin and set integration as default
* Add license information for workplace search gem
2021-05-25 17:37:39 -04:00
kaisecheng
54b370ea48
Geoip database service (#12675)
geoip database service in xpack
dependency update and license note

Fixed: #12560
2021-02-18 14:18:28 +01:00
Rob Bavey
0d0c958b56
Update license dependency information (#12542)
This commit updates the license information for the license dependency report.
Specifically, this adds a notice for `racc`, a different version of which is now
pulled in by nokogiri from the version included with jruby.
2021-01-04 14:33:29 -05:00
Rob Bavey
002de11fe6
Add optional sourceURL to license report CSV (#12346)
* Add optional sourceURL to license report CSV

This commit adds an extra optional column 'sourceURL' to the license report. This
column contains a pointer to the source code, which is optional for most dependencies,
but a requirement for some, such as the Red Hat Universal Base Image.

This commit also populates the 'copyright' field, which previously was an used
column in the CSV definition

Relates #12297
2020-10-19 11:03:29 -04:00
Rob Bavey
c266470c2e
Add RedHat Univeral Base Image license information (#12287) 2020-09-30 11:13:50 -04:00
andsel
153b69fd6c Added elastic-app-search and jwt license definition and notices 2020-09-17 02:39:10 -07:00
Joao Duarte
616e600eb4 add dependency notice for amazing_print 2020-07-09 02:33:03 -07:00
Rob Bavey
58314a7f0e
Update gradle version to 6.3 (#11742)
* Update gradle version to 6.3

Gradle versions prior to 6.3 cannot run under JDK14.
This commit upgrades the version of Gradle to 6.3, and removes all deprecation warnings that can currently be removed.

Changes include:
* Increase gradle memory to 2g
* Increase gradle memory in the license check job to 2g
* Replace use of `testCompile`
* Replace `runtime` with `runtimeOnly`
* Remove`compile` depedencies from gradle files
* Replace deprecated archive methods
* Fix dependencies report build
* Make jruby dependencies 'api', fix archiveVersion
* Set `duplicatesStrategy` for all tasks of type Copy
* Use `configureEach` for global 'withType' calls
** Use the recommended Tasks API calls
(https://blog.gradle.org/preview-avoiding-task-configuration-time)
* Run `./gradlew wrapper` earlier to improve caching
* Use copy with chown for resources that need to be run during `./gradlew wrapper`
2020-04-07 12:49:36 -04:00
João Duarte
e9c9865f40
Add apache and elastic license headers to source code files (#11673)
* add license header to ruby and java files
* add license header to erb and rake files
* add license headers to gradle files
2020-03-11 11:53:38 +00:00
João Duarte
5fcab21194
update licenses for master (#11549) 2020-01-31 12:43:01 +00:00
Joao Duarte
a36fdb9050 fail license report job on missing licenses
Fixes #11554
2020-01-31 12:36:41 +00:00
Dan Hermann
1d7df01df0 Ignore versions in dependency license checker 2020-01-29 13:32:37 +00:00
João Duarte
e807a9e030
Update gradle wrapper to 5.6.4 (#11389)
* upgrade gradle wrapper to the latest 5.x release
* update shadow plugin to 4.x for gradle compatibility
* change dependency declaration to work around [breaking change in annotation processing](https://docs.gradle.org/current/userguide/upgrading_version_4.html#rel4.6:annotation_processor_configuration)
2019-12-06 15:39:17 +00:00
João Duarte
4f902b435c
Remove unused code (#11231)
* remove unused certificate bundles and ruby files
* remove chronic_duration dependency
2019-10-18 16:08:53 +01:00
Dan Hermann
9b73071e67 instructions on how to run tool, remove unused readlink call in script
Fixes #9931
2018-08-27 21:44:47 +00:00
Dan Hermann
4f4c81adc8 do not fail build if license violations are found
Fixes #9944
2018-08-27 18:18:32 +00:00
Dan Hermann
c3aee102d0 add reporting of unused dependencies
Fixes #9923
2018-08-24 12:25:56 +00:00
Dan Hermann
b6e355d151 documentation for the dependency license audit tool
Fixes #9921
2018-08-21 13:31:59 +00:00
Dan Hermann
8b6c162c18 add missing dependency
Fixes #9924
2018-08-20 15:39:39 +00:00
Dan Hermann
319cbcbca3 fix remaining license checker problems
Fixes #9913
2018-08-20 14:00:43 +00:00
Dan Hermann
d236fa898a move license URL check outside loop
Fixes #9895
2018-08-14 12:57:13 +00:00
Dan Hermann
95ea8e65c2 Adds support for specifying multiple licenses separated by the pipe symbol
Fixes #9895
2018-08-14 12:57:13 +00:00
Dan Hermann
0d6fef1100 update NOTICE.txt files for dependencies
Fixes #9894
2018-08-13 14:43:05 +00:00
Dan Hermann
3a813cee62 update dependency license info
Fixes #9891
2018-08-13 12:10:52 +00:00
Joao Duarte
cb65e15ed1 manually generate NOTICE.TXT from licenses in dependencies-report
Fixes #9886
2018-08-10 12:38:51 +00:00
Joao Duarte
35f48a8261 notices from pr #9541
Fixes #9886
2018-08-10 12:38:51 +00:00
Joao Duarte
c73912e71e notices from pr #9556
Fixes #9886
2018-08-10 12:38:51 +00:00