dependabot-julia 0.399.0 → 0.400.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.
- checksums.yaml +4 -4
- data/lib/dependabot/julia/file_updater.rb +44 -1
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 22c71ce1df7cae71a73e4cf03663b35be32f1026a1f84f4615450ba449062261
|
|
4
|
+
data.tar.gz: 408a55df020bd8588d50a2cc0db837e524bf2a3dc3d59588ec3bf20aed071d5b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f714959e016ac030a54c39aa8d59e3302ad06419dc812e466a755a746f68e0f25a42e2762da0f8d92889b082c098bfff9946284e6584801561fc2eb56437ae4d
|
|
7
|
+
data.tar.gz: f5175b774a60457d5e84d8f68aefb54a985bc05f6a6859f1d9ded13aae32109442d72ae3f27998916062e96fc4bafd87d1d78b0735ad2e8c3129ce72dd4d651f
|
|
@@ -19,6 +19,12 @@ module Dependabot
|
|
|
19
19
|
# comment ("[compat] # pins")
|
|
20
20
|
COMPAT_HEADER_PATTERN = /^\s*\[compat\]\s*(?:#.*)?$/
|
|
21
21
|
|
|
22
|
+
# A compat entry part that admits only 0.0.0 ("<0.0.1", "< 0.0.1")
|
|
23
|
+
ZERO_VERSION_BOUND_PATTERN = /\A<\s*0\.0\.1\z/
|
|
24
|
+
|
|
25
|
+
STDLIB_COMPAT_PSA_URL =
|
|
26
|
+
"https://discourse.julialang.org/t/psa-compat-requirements-in-the-general-registry-are-changing/104958"
|
|
27
|
+
|
|
22
28
|
sig { returns(T::Array[Regexp]) }
|
|
23
29
|
def self.updated_files_regex
|
|
24
30
|
[/(?:Julia)?Project\.toml$/i, /(?:Julia)?Manifest(?:-v[\d.]+)?\.toml$/i]
|
|
@@ -48,7 +54,9 @@ module Dependabot
|
|
|
48
54
|
|
|
49
55
|
# Use DependabotHelper.jl for manifest updating
|
|
50
56
|
# This works for both standard packages and workspace packages
|
|
51
|
-
updated_files_with_julia_helper
|
|
57
|
+
updated_files = updated_files_with_julia_helper
|
|
58
|
+
add_zero_version_bound_notice
|
|
59
|
+
updated_files
|
|
52
60
|
end
|
|
53
61
|
|
|
54
62
|
sig { returns(T::Array[Dependabot::DependencyFile]) }
|
|
@@ -216,6 +224,41 @@ module Dependabot
|
|
|
216
224
|
|
|
217
225
|
private
|
|
218
226
|
|
|
227
|
+
# A "<0.0.1" bound on a stdlib looks like a bug unless explained
|
|
228
|
+
sig { void }
|
|
229
|
+
def add_zero_version_bound_notice
|
|
230
|
+
names = dependencies.filter_map do |dependency|
|
|
231
|
+
next unless dependency.metadata.key?(:julia_stdlib_versions)
|
|
232
|
+
next if zero_version_bound?(dependency.previous_requirements)
|
|
233
|
+
next unless zero_version_bound?(dependency.requirements)
|
|
234
|
+
|
|
235
|
+
"`#{dependency.name}`"
|
|
236
|
+
end
|
|
237
|
+
return if names.empty?
|
|
238
|
+
|
|
239
|
+
subject = names.one? ? "#{names.first} is a standard library" : "#{names.join(', ')} are standard libraries"
|
|
240
|
+
@notices << Dependabot::Notice.new(
|
|
241
|
+
mode: Dependabot::Notice::NoticeMode::INFO,
|
|
242
|
+
type: "julia_stdlib_zero_version_bound",
|
|
243
|
+
package_manager_name: "Pkg",
|
|
244
|
+
title: "Why stdlib compat entries include `<0.0.1`",
|
|
245
|
+
description: "#{subject}. Before Julia 1.10, `Pkg.test()` gave standard libraries version 0.0.0, " \
|
|
246
|
+
"so while the `julia` compat entry admits those releases, a stdlib compat entry needs " \
|
|
247
|
+
"`<0.0.1` for tests to resolve. Raising the `julia` compat entry to `1.10` or later " \
|
|
248
|
+
"removes the need for it. See the [stdlib compat PSA](#{STDLIB_COMPAT_PSA_URL}).",
|
|
249
|
+
show_in_pr: true,
|
|
250
|
+
show_alert: false
|
|
251
|
+
)
|
|
252
|
+
end
|
|
253
|
+
|
|
254
|
+
sig { params(requirements: T.nilable(T::Array[T::Hash[Symbol, T.untyped]])).returns(T::Boolean) }
|
|
255
|
+
def zero_version_bound?(requirements)
|
|
256
|
+
(requirements || []).any? do |req|
|
|
257
|
+
requirement = T.cast(req[:requirement], T.nilable(String)).to_s
|
|
258
|
+
requirement.split(",").any? { |part| part.strip.match?(ZERO_VERSION_BOUND_PATTERN) }
|
|
259
|
+
end
|
|
260
|
+
end
|
|
261
|
+
|
|
219
262
|
sig { returns(T::Hash[String, T::Hash[String, String]]) }
|
|
220
263
|
def build_updates_hash
|
|
221
264
|
@build_updates_hash ||= T.let(
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dependabot-julia
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.400.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Dependabot
|
|
@@ -15,14 +15,14 @@ dependencies:
|
|
|
15
15
|
requirements:
|
|
16
16
|
- - '='
|
|
17
17
|
- !ruby/object:Gem::Version
|
|
18
|
-
version: 0.
|
|
18
|
+
version: 0.400.0
|
|
19
19
|
type: :runtime
|
|
20
20
|
prerelease: false
|
|
21
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
22
22
|
requirements:
|
|
23
23
|
- - '='
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
|
-
version: 0.
|
|
25
|
+
version: 0.400.0
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: debug
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -262,7 +262,7 @@ licenses:
|
|
|
262
262
|
- MIT
|
|
263
263
|
metadata:
|
|
264
264
|
bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
|
|
265
|
-
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.
|
|
265
|
+
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.400.0
|
|
266
266
|
rdoc_options: []
|
|
267
267
|
require_paths:
|
|
268
268
|
- lib
|