pls 1.0.3 → 1.0.5
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/Gemfile +9 -3
- data/Gemfile.lock +50 -20
- data/LICENSE +1 -1
- data/LICENSES/0BSD.txt +1 -1
- data/README.adoc +83 -0
- data/REUSE.toml +3 -3
- data/Rakefile +20 -2
- data/bin/pls +2 -2
- data/lib/pls/configurator.rb +3 -3
- data/lib/pls/pls.rb +7 -6
- data/lib/pls/reporter.rb +2 -2
- data/lib/pls/version.rb +4 -4
- data/lib/pls.rb +2 -2
- data/pls.gemspec +5 -6
- metadata +9 -14
- data/.github/workflows/actionlint.yml +0 -24
- data/.github/workflows/rake.yml +0 -37
- data/.github/workflows/reuse.yml +0 -18
- data/.github/workflows/rubocop.yml +0 -20
- data/.github/workflows/typos.yml +0 -18
- data/.github/workflows/yamllint.yml +0 -21
- data/.gitignore +0 -6
- data/README.md +0 -43
- data/test/test_pls.rb +0 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d390e2f59c1fbfbdc146c1e459d5ad884d9ace0b0f3c015d8bc468e7099cd13c
|
|
4
|
+
data.tar.gz: e42cce178c908de311f207fb97d71365806da6eabe4e0399f820f0f5de3786eb
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3e4da3c6807b0ef8dc8159335a81d7cc9196dfd27e9c6111df6da7064bae6c4ffc7097c8e9fb50e09ec464bdf3ad83e34cb6a6cf0ae8d4f8b663df7633079f6d
|
|
7
|
+
data.tar.gz: 39d9db2ccd3fb00fba31e689138b01adff867d8ce65b82d5fe8bac3be859ce0c03b0d4ea9bfbb588733e154d9f1e6af69b5737a08ef75cb44945b9326a418f13
|
data/Gemfile
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# vi:
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-
|
|
3
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
4
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
5
5
|
# SPDX-License-Identifier: 0BSD
|
|
6
6
|
|
|
7
7
|
source 'https://rubygems.org'
|
|
8
8
|
gem 'httparty'
|
|
9
9
|
gem 'minitest'
|
|
10
10
|
gem 'rake'
|
|
11
|
-
gem '
|
|
11
|
+
gem 'webmock'
|
|
12
|
+
group :rubocop do
|
|
13
|
+
gem 'rubocop'
|
|
14
|
+
gem 'rubocop-minitest'
|
|
15
|
+
gem 'rubocop-performance'
|
|
16
|
+
gem 'rubocop-rake'
|
|
17
|
+
end
|
data/Gemfile.lock
CHANGED
|
@@ -1,47 +1,73 @@
|
|
|
1
1
|
GEM
|
|
2
2
|
remote: https://rubygems.org/
|
|
3
3
|
specs:
|
|
4
|
+
addressable (2.9.0)
|
|
5
|
+
public_suffix (>= 2.0.2, < 8.0)
|
|
4
6
|
ast (2.4.3)
|
|
5
|
-
bigdecimal (
|
|
7
|
+
bigdecimal (4.0.1)
|
|
8
|
+
crack (1.0.1)
|
|
9
|
+
bigdecimal
|
|
10
|
+
rexml
|
|
6
11
|
csv (3.3.5)
|
|
7
|
-
|
|
12
|
+
drb (2.2.3)
|
|
13
|
+
hashdiff (1.2.1)
|
|
14
|
+
httparty (0.24.2)
|
|
8
15
|
csv
|
|
9
16
|
mini_mime (>= 1.0.0)
|
|
10
17
|
multi_xml (>= 0.5.2)
|
|
11
|
-
json (2.
|
|
12
|
-
language_server-protocol (3.17.0.
|
|
18
|
+
json (2.20.0)
|
|
19
|
+
language_server-protocol (3.17.0.6)
|
|
13
20
|
lint_roller (1.1.0)
|
|
14
21
|
mini_mime (1.1.5)
|
|
15
|
-
minitest (
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
22
|
+
minitest (6.0.6)
|
|
23
|
+
drb (~> 2.0)
|
|
24
|
+
prism (~> 1.5)
|
|
25
|
+
multi_xml (0.8.1)
|
|
26
|
+
bigdecimal (>= 3.1, < 5)
|
|
27
|
+
parallel (1.28.0)
|
|
28
|
+
parser (3.3.11.1)
|
|
20
29
|
ast (~> 2.4.1)
|
|
21
30
|
racc
|
|
22
|
-
prism (1.
|
|
31
|
+
prism (1.9.0)
|
|
32
|
+
public_suffix (7.0.5)
|
|
23
33
|
racc (1.8.1)
|
|
24
34
|
rainbow (3.1.1)
|
|
25
|
-
rake (13.
|
|
26
|
-
regexp_parser (2.
|
|
27
|
-
|
|
35
|
+
rake (13.4.2)
|
|
36
|
+
regexp_parser (2.12.0)
|
|
37
|
+
rexml (3.4.4)
|
|
38
|
+
rubocop (1.88.2)
|
|
28
39
|
json (~> 2.3)
|
|
29
40
|
language_server-protocol (~> 3.17.0.2)
|
|
30
41
|
lint_roller (~> 1.1.0)
|
|
31
|
-
parallel (
|
|
42
|
+
parallel (>= 1.10)
|
|
32
43
|
parser (>= 3.3.0.2)
|
|
33
44
|
rainbow (>= 2.2.2, < 4.0)
|
|
34
45
|
regexp_parser (>= 2.9.3, < 3.0)
|
|
35
|
-
rubocop-ast (>= 1.
|
|
46
|
+
rubocop-ast (>= 1.49.0, < 2.0)
|
|
36
47
|
ruby-progressbar (~> 1.7)
|
|
37
48
|
unicode-display_width (>= 2.4.0, < 4.0)
|
|
38
|
-
rubocop-ast (1.
|
|
49
|
+
rubocop-ast (1.50.0)
|
|
39
50
|
parser (>= 3.3.7.2)
|
|
40
|
-
prism (~> 1.
|
|
51
|
+
prism (~> 1.7)
|
|
52
|
+
rubocop-minitest (0.39.1)
|
|
53
|
+
lint_roller (~> 1.1)
|
|
54
|
+
rubocop (>= 1.75.0, < 2.0)
|
|
55
|
+
rubocop-ast (>= 1.38.0, < 2.0)
|
|
56
|
+
rubocop-performance (1.26.1)
|
|
57
|
+
lint_roller (~> 1.1)
|
|
58
|
+
rubocop (>= 1.75.0, < 2.0)
|
|
59
|
+
rubocop-ast (>= 1.47.1, < 2.0)
|
|
60
|
+
rubocop-rake (0.7.1)
|
|
61
|
+
lint_roller (~> 1.1)
|
|
62
|
+
rubocop (>= 1.72.1)
|
|
41
63
|
ruby-progressbar (1.13.0)
|
|
42
|
-
unicode-display_width (3.
|
|
43
|
-
unicode-emoji (~> 4.
|
|
44
|
-
unicode-emoji (4.0
|
|
64
|
+
unicode-display_width (3.2.0)
|
|
65
|
+
unicode-emoji (~> 4.1)
|
|
66
|
+
unicode-emoji (4.2.0)
|
|
67
|
+
webmock (3.26.2)
|
|
68
|
+
addressable (>= 2.8.0)
|
|
69
|
+
crack (>= 0.3.2)
|
|
70
|
+
hashdiff (>= 0.4.0, < 2.0.0)
|
|
45
71
|
|
|
46
72
|
PLATFORMS
|
|
47
73
|
arm64-darwin-24
|
|
@@ -52,6 +78,10 @@ DEPENDENCIES
|
|
|
52
78
|
minitest
|
|
53
79
|
rake
|
|
54
80
|
rubocop
|
|
81
|
+
rubocop-minitest
|
|
82
|
+
rubocop-performance
|
|
83
|
+
rubocop-rake
|
|
84
|
+
webmock
|
|
55
85
|
|
|
56
86
|
BUNDLED WITH
|
|
57
87
|
2.7.1
|
data/LICENSE
CHANGED
data/LICENSES/0BSD.txt
CHANGED
data/README.adoc
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
// Settings:
|
|
2
|
+
:toc: macro
|
|
3
|
+
:!toc-title:
|
|
4
|
+
// URLs:
|
|
5
|
+
:img-gem: https://badge.fury.io/rb/pls.svg
|
|
6
|
+
:img-hoc: https://hitsofcode.com/github/rdavid/pls?branch=master&label=hits%20of%20code
|
|
7
|
+
:img-license: https://img.shields.io/github/license/rdavid/pls?color=blue&labelColor=gray&logo=freebsd&logoColor=lightgray&style=flat
|
|
8
|
+
:img-rake: https://github.com/rdavid/pls/actions/workflows/rake.yml/badge.svg
|
|
9
|
+
:img-rubocop: https://github.com/rdavid/pls/actions/workflows/rubocop.yml/badge.svg
|
|
10
|
+
:img-style: https://img.shields.io/badge/code_style-rubocop-brightgreen.svg
|
|
11
|
+
:url-cv: http://cv.rabkin.co.il
|
|
12
|
+
:url-gem: https://badge.fury.io/rb/pls
|
|
13
|
+
:url-hoc: https://hitsofcode.com/view/github/rdavid/pls?branch=master
|
|
14
|
+
:url-license: https://github.com/rdavid/pls/blob/master/LICENSES/0BSD.txt
|
|
15
|
+
:url-rake: https://github.com/rdavid/pls/actions/workflows/rake.yml
|
|
16
|
+
:url-reuse: https://github.com/fsfe/reuse-action
|
|
17
|
+
:url-rubocop: https://github.com/rdavid/pls/actions/workflows/rubocop.yml
|
|
18
|
+
:url-ruby: https://www.ruby-lang.org/en/documentation/installation
|
|
19
|
+
:url-style: https://github.com/rubocop/rubocop
|
|
20
|
+
:url-vale: https://vale.sh
|
|
21
|
+
:url-yamllint: https://github.com/adrienverge/yamllint
|
|
22
|
+
|
|
23
|
+
= Package Lister
|
|
24
|
+
|
|
25
|
+
image:{img-rake}[rake,link={url-rake}]
|
|
26
|
+
image:{img-rubocop}[rubocop,link={url-rubocop}]
|
|
27
|
+
image:{img-gem}[gem version,link={url-gem}]
|
|
28
|
+
image:{img-style}[code style,link={url-style}]
|
|
29
|
+
image:{img-hoc}[hits of code,link={url-hoc}]
|
|
30
|
+
image:{img-license}[license,link={url-license}]
|
|
31
|
+
|
|
32
|
+
toc::[]
|
|
33
|
+
|
|
34
|
+
== About
|
|
35
|
+
Package Lister prints the full dependency tree of a given NodeJS package.
|
|
36
|
+
NodeJS developers use packages, which are modules that bundle versioning,
|
|
37
|
+
documentation, dependencies on other packages, and more.
|
|
38
|
+
npm, NodeJS's package manager, is updated continually with new packages
|
|
39
|
+
and new versions of existing ones.
|
|
40
|
+
Given a package name, the tool fetches its complete set of dependencies
|
|
41
|
+
from npm.
|
|
42
|
+
|
|
43
|
+
== Installation
|
|
44
|
+
The tool works on macOS, GNU/Linux, Windows, and other Unix-like operating
|
|
45
|
+
systems.
|
|
46
|
+
It is packaged as a gem and requires Ruby 3.2 or later.
|
|
47
|
+
If you don't have the required Ruby version, see {url-ruby}[Installing
|
|
48
|
+
Ruby].
|
|
49
|
+
|
|
50
|
+
Use this command to install:
|
|
51
|
+
|
|
52
|
+
[,sh]
|
|
53
|
+
----
|
|
54
|
+
gem install pls
|
|
55
|
+
----
|
|
56
|
+
|
|
57
|
+
== Updating
|
|
58
|
+
Use this command to update the package:
|
|
59
|
+
|
|
60
|
+
[,sh]
|
|
61
|
+
----
|
|
62
|
+
gem update pls
|
|
63
|
+
----
|
|
64
|
+
|
|
65
|
+
== Usage
|
|
66
|
+
|
|
67
|
+
[,sh]
|
|
68
|
+
----
|
|
69
|
+
pls [options]
|
|
70
|
+
-p, --pac package Package name.
|
|
71
|
+
-v, --version Shows version.
|
|
72
|
+
----
|
|
73
|
+
|
|
74
|
+
== Example
|
|
75
|
+
|
|
76
|
+
[,sh]
|
|
77
|
+
----
|
|
78
|
+
pls -p express
|
|
79
|
+
----
|
|
80
|
+
|
|
81
|
+
== License
|
|
82
|
+
`pls` is copyright {url-cv}[David Rabkin] and available under a
|
|
83
|
+
{url-license}[Zero-Clause BSD license].
|
data/REUSE.toml
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2025 David Rabkin
|
|
1
|
+
# SPDX-FileCopyrightText: 2025-2026 David Rabkin
|
|
2
2
|
# SPDX-License-Identifier: 0BSD
|
|
3
3
|
version = 1
|
|
4
4
|
[[annotations]]
|
|
5
5
|
path = [
|
|
6
6
|
".gitignore",
|
|
7
7
|
"Gemfile.lock",
|
|
8
|
-
"README.
|
|
8
|
+
"README.adoc",
|
|
9
9
|
]
|
|
10
10
|
precedence = "override"
|
|
11
|
-
SPDX-FileCopyrightText = "2025 David Rabkin"
|
|
11
|
+
SPDX-FileCopyrightText = "2025-2026 David Rabkin"
|
|
12
12
|
SPDX-License-Identifier = "0BSD"
|
data/Rakefile
CHANGED
|
@@ -1,11 +1,29 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# vi:
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-
|
|
3
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
4
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
5
5
|
# SPDX-License-Identifier: 0BSD
|
|
6
6
|
|
|
7
|
+
require 'rake/clean'
|
|
8
|
+
require 'bundler/gem_helper'
|
|
9
|
+
|
|
10
|
+
CLOBBER.include 'pkg'
|
|
11
|
+
|
|
12
|
+
module Bundler
|
|
13
|
+
# Bundler hardcodes the release tag as "v#{version}", this project
|
|
14
|
+
# tags releases with the bare version number instead.
|
|
15
|
+
class GemHelper
|
|
16
|
+
def version_tag
|
|
17
|
+
version.to_s
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
Bundler::GemHelper.install_tasks
|
|
23
|
+
|
|
7
24
|
task default: %w[test]
|
|
8
25
|
|
|
26
|
+
desc 'Run the test suite'
|
|
9
27
|
task :test do
|
|
10
28
|
ruby 'test/test_pls.rb'
|
|
11
29
|
end
|
data/bin/pls
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env ruby
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
|
-
# vi:
|
|
5
|
-
# SPDX-FileCopyrightText: 2021-
|
|
4
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
5
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
6
6
|
# SPDX-License-Identifier: 0BSD
|
|
7
7
|
|
|
8
8
|
require_relative '../lib/pls'
|
data/lib/pls/configurator.rb
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# vi:
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-
|
|
3
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
4
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
5
5
|
# SPDX-License-Identifier: 0BSD
|
|
6
6
|
|
|
7
7
|
require 'optparse'
|
|
@@ -30,7 +30,7 @@ module Pls
|
|
|
30
30
|
DIC.each { |f, p, d, t, k| o.on(f, p, t, d) { |i| @options[k] = i } }
|
|
31
31
|
add(o)
|
|
32
32
|
end.parse!
|
|
33
|
-
raise 'Please specify a package name with -p flag.' if pac.nil?
|
|
33
|
+
raise 'Please specify a package name with the -p flag.' if pac.nil?
|
|
34
34
|
end
|
|
35
35
|
|
|
36
36
|
def pac
|
data/lib/pls/pls.rb
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# vi:
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-
|
|
3
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
4
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
5
5
|
# SPDX-License-Identifier: 0BSD
|
|
6
6
|
|
|
7
7
|
require 'httparty'
|
|
@@ -10,7 +10,8 @@ require_relative 'configurator'
|
|
|
10
10
|
require_relative 'reporter'
|
|
11
11
|
|
|
12
12
|
module Pls
|
|
13
|
-
#
|
|
13
|
+
# The data structure is a hash: the key is the package name, the value is
|
|
14
|
+
# an array of hashes, for example:
|
|
14
15
|
# {
|
|
15
16
|
# aaa => [
|
|
16
17
|
# bbb => [],
|
|
@@ -36,7 +37,7 @@ module Pls
|
|
|
36
37
|
res.body
|
|
37
38
|
end
|
|
38
39
|
|
|
39
|
-
def build_dep(dep)
|
|
40
|
+
def build_dep(dep)
|
|
40
41
|
arr = []
|
|
41
42
|
threads = []
|
|
42
43
|
mut = Mutex.new
|
|
@@ -50,7 +51,7 @@ module Pls
|
|
|
50
51
|
arr
|
|
51
52
|
end
|
|
52
53
|
|
|
53
|
-
# Consider time
|
|
54
|
+
# Consider adding time-based invalidation for cached data.
|
|
54
55
|
def read_cache(pac)
|
|
55
56
|
arr = []
|
|
56
57
|
@mut_dat.synchronize { arr = @dat[pac] }
|
|
@@ -63,7 +64,7 @@ module Pls
|
|
|
63
64
|
|
|
64
65
|
def build(pac)
|
|
65
66
|
arr = read_cache(pac)
|
|
66
|
-
if arr.
|
|
67
|
+
if arr.nil?
|
|
67
68
|
str = read_http(pac)
|
|
68
69
|
doc = JSON.parse(str)
|
|
69
70
|
dep = doc['dependencies']
|
data/lib/pls/reporter.rb
CHANGED
data/lib/pls/version.rb
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# vi:
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-
|
|
3
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
4
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
5
5
|
# SPDX-License-Identifier: 0BSD
|
|
6
6
|
|
|
7
7
|
module Pls
|
|
8
|
-
VERSION = '1.0.
|
|
9
|
-
DATE = '
|
|
8
|
+
VERSION = '1.0.5'
|
|
9
|
+
DATE = '2026-07-15'
|
|
10
10
|
end
|
data/lib/pls.rb
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# vi:
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-
|
|
3
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
4
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
5
5
|
# SPDX-License-Identifier: 0BSD
|
|
6
6
|
|
|
7
7
|
require_relative 'pls/pls'
|
data/pls.gemspec
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
# vi:
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-
|
|
3
|
+
# vi: et lbr sw=2 ts=2 tw=79 wrap
|
|
4
|
+
# SPDX-FileCopyrightText: 2021-2026 David Rabkin
|
|
5
5
|
# SPDX-License-Identifier: 0BSD
|
|
6
6
|
|
|
7
7
|
$LOAD_PATH.unshift File.expand_path('lib', __dir__)
|
|
@@ -13,18 +13,17 @@ Gem::Specification.new do |s|
|
|
|
13
13
|
s.required_ruby_version = '>= 3.2'
|
|
14
14
|
s.name = 'pls'
|
|
15
15
|
s.version = Pls::VERSION
|
|
16
|
-
s.date = Pls::DATE
|
|
17
16
|
s.summary = 'Package lister'
|
|
18
17
|
s.description = <<-HERE
|
|
19
|
-
Prints
|
|
18
|
+
Prints dependent package names.
|
|
20
19
|
HERE
|
|
21
20
|
s.license = '0BSD'
|
|
22
21
|
s.author = 'David Rabkin'
|
|
23
22
|
s.email = 'david@rabkin.co.il'
|
|
24
23
|
s.homepage = 'https://github.com/rdavid/pls'
|
|
25
24
|
s.require_paths = ['lib']
|
|
26
|
-
s.files = `git ls-files`.split($RS)
|
|
25
|
+
s.files = `git ls-files | grep -E -v '^(test/|\\.)'`.split($RS)
|
|
27
26
|
s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
28
|
-
s.extra_rdoc_files = ['LICENSE', 'README.
|
|
27
|
+
s.extra_rdoc_files = ['LICENSE', 'README.adoc']
|
|
29
28
|
s.metadata['rubygems_mfa_required'] = 'true'
|
|
30
29
|
end
|
metadata
CHANGED
|
@@ -1,35 +1,29 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pls
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.0.
|
|
4
|
+
version: 1.0.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- David Rabkin
|
|
8
|
+
autorequire:
|
|
8
9
|
bindir: bin
|
|
9
10
|
cert_chain: []
|
|
10
|
-
date:
|
|
11
|
+
date: 2026-07-15 00:00:00.000000000 Z
|
|
11
12
|
dependencies: []
|
|
12
|
-
description: " Prints
|
|
13
|
+
description: " Prints dependent package names.\n"
|
|
13
14
|
email: david@rabkin.co.il
|
|
14
15
|
executables:
|
|
15
16
|
- pls
|
|
16
17
|
extensions: []
|
|
17
18
|
extra_rdoc_files:
|
|
18
19
|
- LICENSE
|
|
19
|
-
- README.
|
|
20
|
+
- README.adoc
|
|
20
21
|
files:
|
|
21
|
-
- ".github/workflows/actionlint.yml"
|
|
22
|
-
- ".github/workflows/rake.yml"
|
|
23
|
-
- ".github/workflows/reuse.yml"
|
|
24
|
-
- ".github/workflows/rubocop.yml"
|
|
25
|
-
- ".github/workflows/typos.yml"
|
|
26
|
-
- ".github/workflows/yamllint.yml"
|
|
27
|
-
- ".gitignore"
|
|
28
22
|
- Gemfile
|
|
29
23
|
- Gemfile.lock
|
|
30
24
|
- LICENSE
|
|
31
25
|
- LICENSES/0BSD.txt
|
|
32
|
-
- README.
|
|
26
|
+
- README.adoc
|
|
33
27
|
- REUSE.toml
|
|
34
28
|
- Rakefile
|
|
35
29
|
- bin/pls
|
|
@@ -39,12 +33,12 @@ files:
|
|
|
39
33
|
- lib/pls/reporter.rb
|
|
40
34
|
- lib/pls/version.rb
|
|
41
35
|
- pls.gemspec
|
|
42
|
-
- test/test_pls.rb
|
|
43
36
|
homepage: https://github.com/rdavid/pls
|
|
44
37
|
licenses:
|
|
45
38
|
- 0BSD
|
|
46
39
|
metadata:
|
|
47
40
|
rubygems_mfa_required: 'true'
|
|
41
|
+
post_install_message:
|
|
48
42
|
rdoc_options: []
|
|
49
43
|
require_paths:
|
|
50
44
|
- lib
|
|
@@ -59,7 +53,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
59
53
|
- !ruby/object:Gem::Version
|
|
60
54
|
version: '0'
|
|
61
55
|
requirements: []
|
|
62
|
-
rubygems_version: 3.
|
|
56
|
+
rubygems_version: 3.4.19
|
|
57
|
+
signing_key:
|
|
63
58
|
specification_version: 4
|
|
64
59
|
summary: Package lister
|
|
65
60
|
test_files: []
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2025 David Rabkin
|
|
2
|
-
# SPDX-License-Identifier: 0BSD
|
|
3
|
-
---
|
|
4
|
-
name: actionlint
|
|
5
|
-
'on':
|
|
6
|
-
push:
|
|
7
|
-
branches:
|
|
8
|
-
- master
|
|
9
|
-
pull_request:
|
|
10
|
-
branches:
|
|
11
|
-
- master
|
|
12
|
-
env:
|
|
13
|
-
URL: https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash # yamllint disable-line
|
|
14
|
-
jobs:
|
|
15
|
-
actionlint:
|
|
16
|
-
timeout-minutes: 15
|
|
17
|
-
runs-on: ubuntu-24.04
|
|
18
|
-
steps:
|
|
19
|
-
- uses: actions/checkout@v4
|
|
20
|
-
- name: Download actionlint
|
|
21
|
-
id: get_actionlint
|
|
22
|
-
run: bash <(curl "$URL")
|
|
23
|
-
- name: Check workflow files
|
|
24
|
-
run: ${{ steps.get_actionlint.outputs.executable }}
|
data/.github/workflows/rake.yml
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2025 David Rabkin
|
|
2
|
-
# SPDX-License-Identifier: 0BSD
|
|
3
|
-
---
|
|
4
|
-
name: rake
|
|
5
|
-
'on':
|
|
6
|
-
push:
|
|
7
|
-
branches:
|
|
8
|
-
- master
|
|
9
|
-
pull_request:
|
|
10
|
-
branches:
|
|
11
|
-
- master
|
|
12
|
-
jobs:
|
|
13
|
-
rake:
|
|
14
|
-
strategy:
|
|
15
|
-
fail-fast: false
|
|
16
|
-
matrix:
|
|
17
|
-
os:
|
|
18
|
-
- macos-13
|
|
19
|
-
- macos-14
|
|
20
|
-
- macos-15
|
|
21
|
-
- ubuntu-22.04
|
|
22
|
-
- ubuntu-24.04
|
|
23
|
-
- windows-2022
|
|
24
|
-
- windows-2025
|
|
25
|
-
ruby:
|
|
26
|
-
- 3.2
|
|
27
|
-
- 3.3
|
|
28
|
-
- 3.4
|
|
29
|
-
name: Rake on ${{ matrix.os }} / Ruby ${{ matrix.ruby }}
|
|
30
|
-
runs-on: ${{ matrix.os }}
|
|
31
|
-
steps:
|
|
32
|
-
- uses: actions/checkout@v4
|
|
33
|
-
- uses: ruby/setup-ruby@v1
|
|
34
|
-
with:
|
|
35
|
-
ruby-version: ${{ matrix.ruby }}
|
|
36
|
-
bundler-cache: true
|
|
37
|
-
- run: bundle exec rake
|
data/.github/workflows/reuse.yml
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2025 David Rabkin
|
|
2
|
-
# SPDX-License-Identifier: 0BSD
|
|
3
|
-
---
|
|
4
|
-
name: reuse
|
|
5
|
-
'on':
|
|
6
|
-
push:
|
|
7
|
-
branches:
|
|
8
|
-
- master
|
|
9
|
-
pull_request:
|
|
10
|
-
branches:
|
|
11
|
-
- master
|
|
12
|
-
jobs:
|
|
13
|
-
reuse:
|
|
14
|
-
timeout-minutes: 15
|
|
15
|
-
runs-on: ubuntu-24.04
|
|
16
|
-
steps:
|
|
17
|
-
- uses: actions/checkout@v4
|
|
18
|
-
- uses: fsfe/reuse-action@v5
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2023-2025 David Rabkin
|
|
2
|
-
# SPDX-License-Identifier: 0BSD
|
|
3
|
-
---
|
|
4
|
-
name: rubocop
|
|
5
|
-
'on':
|
|
6
|
-
push:
|
|
7
|
-
branches:
|
|
8
|
-
- master
|
|
9
|
-
pull_request:
|
|
10
|
-
branches:
|
|
11
|
-
- master
|
|
12
|
-
jobs:
|
|
13
|
-
rubocop:
|
|
14
|
-
timeout-minutes: 15
|
|
15
|
-
runs-on: ubuntu-24.04
|
|
16
|
-
steps:
|
|
17
|
-
- uses: actions/checkout@v4
|
|
18
|
-
- uses: andrewmcodes/rubocop-linter-action@v3.3.0
|
|
19
|
-
with:
|
|
20
|
-
exit_on_failure: true
|
data/.github/workflows/typos.yml
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2025 David Rabkin
|
|
2
|
-
# SPDX-License-Identifier: 0BSD
|
|
3
|
-
---
|
|
4
|
-
name: typos
|
|
5
|
-
'on':
|
|
6
|
-
push:
|
|
7
|
-
branches:
|
|
8
|
-
- master
|
|
9
|
-
pull_request:
|
|
10
|
-
branches:
|
|
11
|
-
- master
|
|
12
|
-
jobs:
|
|
13
|
-
typos:
|
|
14
|
-
timeout-minutes: 15
|
|
15
|
-
runs-on: ubuntu-24.04
|
|
16
|
-
steps:
|
|
17
|
-
- uses: actions/checkout@v4
|
|
18
|
-
- uses: crate-ci/typos@v1.34.0
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# SPDX-FileCopyrightText: 2025 David Rabkin
|
|
2
|
-
# SPDX-License-Identifier: 0BSD
|
|
3
|
-
---
|
|
4
|
-
name: yamllint
|
|
5
|
-
'on':
|
|
6
|
-
push:
|
|
7
|
-
branches:
|
|
8
|
-
- master
|
|
9
|
-
pull_request:
|
|
10
|
-
branches:
|
|
11
|
-
- master
|
|
12
|
-
jobs:
|
|
13
|
-
yamllint:
|
|
14
|
-
timeout-minutes: 15
|
|
15
|
-
runs-on: ubuntu-24.04
|
|
16
|
-
steps:
|
|
17
|
-
- uses: actions/checkout@v4
|
|
18
|
-
- uses: ibiqlik/action-yamllint@v3
|
|
19
|
-
with:
|
|
20
|
-
file_or_dir: ./.github/*.yml ./.github/workflows/*.yml
|
|
21
|
-
strict: true
|
data/.gitignore
DELETED
data/README.md
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
# Pls  [](https://badge.fury.io/rb/pls) [](https://hitsofcode.com/view/github/rdavid/pls) [](https://github.com/rdavid/pls/blob/master/LICENSE)
|
|
2
|
-
Prints the full NodeJS package dependency tree based on a given package name.
|
|
3
|
-
|
|
4
|
-
* [About](#about)
|
|
5
|
-
* [Installation](#installation)
|
|
6
|
-
* [Usage](#usage)
|
|
7
|
-
* [License](#license)
|
|
8
|
-
|
|
9
|
-
## About
|
|
10
|
-
Developers working with NodeJS use packages in their code. A package is a
|
|
11
|
-
functional NodeJS module that includes versioning, documentation, dependencies
|
|
12
|
-
(in the form of other packages), and more. NodeJS has a managed packages
|
|
13
|
-
environment called npm. npm is regularly updated with new packages and new
|
|
14
|
-
versions of existing packages. The user provides the name of the package for
|
|
15
|
-
analysis. The tool fetches the overall set of dependencies from the relevant
|
|
16
|
-
package manager, for the given package.
|
|
17
|
-
|
|
18
|
-
## Installation
|
|
19
|
-
The tool is designed to work on macOS, GNU/Linux, Windows, Unix-like OS. It is
|
|
20
|
-
packaged as a Gem and require Ruby version 3.2 or later. See “[Installing
|
|
21
|
-
Ruby](https://www.ruby-lang.org/en/documentation/installation/)” if you don't
|
|
22
|
-
have the proper version on your platform.
|
|
23
|
-
|
|
24
|
-
Use this command to install:
|
|
25
|
-
|
|
26
|
-
gem install pls
|
|
27
|
-
|
|
28
|
-
### Updating
|
|
29
|
-
Use this command to update the package:
|
|
30
|
-
|
|
31
|
-
gem update pls
|
|
32
|
-
|
|
33
|
-
## Usage
|
|
34
|
-
pls [options]
|
|
35
|
-
-p, --pac package Package name.
|
|
36
|
-
-v, --version Shows version.
|
|
37
|
-
|
|
38
|
-
### Example
|
|
39
|
-
pls -p express
|
|
40
|
-
|
|
41
|
-
## License
|
|
42
|
-
Pls is copyright [David Rabkin](http://cv.rabkin.co.il) and
|
|
43
|
-
available under a [Zero-Clause BSD license](https://github.com/rdavid/pls/blob/master/LICENSE).
|
data/test/test_pls.rb
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
|
|
3
|
-
# vi:ts=2 sw=2 tw=79 et lbr wrap
|
|
4
|
-
# SPDX-FileCopyrightText: 2021-2025 David Rabkin
|
|
5
|
-
# SPDX-License-Identifier: 0BSD
|
|
6
|
-
|
|
7
|
-
require 'minitest/autorun'
|
|
8
|
-
require_relative '../lib/pls/pls'
|
|
9
|
-
|
|
10
|
-
# Main functions.
|
|
11
|
-
class TestPls < Minitest::Test
|
|
12
|
-
def setup
|
|
13
|
-
ARGV << '-pexpress'
|
|
14
|
-
@pls = Pls::Pls.new
|
|
15
|
-
end
|
|
16
|
-
|
|
17
|
-
def test_pls
|
|
18
|
-
@pls.do
|
|
19
|
-
end
|
|
20
|
-
end
|