pls 1.0.3 → 1.0.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5f648766cc73dcdeb5e8c5d229b12361b471a5e0795b956caeeb65339137034a
4
- data.tar.gz: 686b5e21bdbfcc4cf047b31d82229b51ef9c46bf1dd65f5c78d7dda99ad337b4
3
+ metadata.gz: e29e8adf7c20a487bdaf8dbfba216e90e9a1e1a437e3b4dd898a4215d26c5b23
4
+ data.tar.gz: d588aa8b0bcb1e89c913d25693527e0891f1b0ce1d528d8d901e7ed4276f831f
5
5
  SHA512:
6
- metadata.gz: a3eca7062ae6ea7c79e19a191244c1ef25ac8068cd812b1e3bc1d199fc5069485580ad0f535627fd67223ef141a4312a8ae1d2298121126b927e0c1125473d0c
7
- data.tar.gz: 2951092338d802aacf3e62958a67518dde7a74ef916efdabc15055ac40957f3d3e39f35d4a21b74a7a3653f5a4c4b149bb856b8edb58e3a1577c98d1ec28b5c3
6
+ metadata.gz: fcfa540e6b32134b4027eef99b8436cc08823a802e377ca762244ce1d0bdfe32f041590dadebb91dfbee634f000bea8eaaca07bd7582d026c5c6c1d7ed48a097
7
+ data.tar.gz: dc168e92e90d20ef6a9ebae1bc19ab662b89fd4a9daa6c8d6d97d0bdb52eb9d5cdc56619a78da67699494d2be62cd0d9ef6c6e2e651979b6b947b3f77df1dbac
data/Gemfile CHANGED
@@ -1,11 +1,17 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # vi:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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 'rubocop'
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 (3.2.2)
7
+ bigdecimal (4.0.1)
8
+ crack (1.0.1)
9
+ bigdecimal
10
+ rexml
6
11
  csv (3.3.5)
7
- httparty (0.23.1)
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.13.2)
12
- language_server-protocol (3.17.0.5)
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 (5.25.5)
16
- multi_xml (0.7.2)
17
- bigdecimal (~> 3.1)
18
- parallel (1.27.0)
19
- parser (3.3.9.0)
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.4.0)
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.3.0)
26
- regexp_parser (2.11.0)
27
- rubocop (1.79.2)
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 (~> 1.10)
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.0, < 2.0)
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.46.0)
49
+ rubocop-ast (1.50.0)
39
50
  parser (>= 3.3.7.2)
40
- prism (~> 1.4)
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.1.4)
43
- unicode-emoji (~> 4.0, >= 4.0.4)
44
- unicode-emoji (4.0.4)
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
@@ -1,4 +1,4 @@
1
- Copyright 2021-2025 David Rabkin
1
+ Copyright 2021-2026 David Rabkin
2
2
 
3
3
  Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
4
4
 
data/LICENSES/0BSD.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright 2021-2025 David Rabkin
1
+ Copyright 2021-2026 David Rabkin
2
2
 
3
3
  Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.
4
4
 
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.md",
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,14 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # vi:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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 'bundler/gem_tasks'
8
+
7
9
  task default: %w[test]
8
10
 
11
+ desc 'Run the test suite'
9
12
  task :test do
10
13
  ruby 'test/test_pls.rb'
11
14
  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:ts=2 sw=2 tw=79 et lbr wrap
5
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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'
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # vi:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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
- # Data structure is hash, key - package name, val - array of hashes:
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) # rubocop:disable Metrics/MethodLength
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 validation for cache data.
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.to_a.empty?
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
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # vi:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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
data/lib/pls/version.rb CHANGED
@@ -1,10 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # vi:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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.3'
9
- DATE = '2025-08-06'
8
+ VERSION = '1.0.4'
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:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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:ts=2 sw=2 tw=79 et lbr wrap
4
- # SPDX-FileCopyrightText: 2021-2025 David Rabkin
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 dependant package names.
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.md']
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.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Rabkin
8
+ autorequire:
8
9
  bindir: bin
9
10
  cert_chain: []
10
- date: 2025-08-06 00:00:00.000000000 Z
11
+ date: 2026-07-15 00:00:00.000000000 Z
11
12
  dependencies: []
12
- description: " Prints dependant package names.\n"
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.md
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.md
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.6.9
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 }}
@@ -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
@@ -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
@@ -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
@@ -1,6 +0,0 @@
1
- coverage/
2
- .idea/
3
- *.gem
4
- .bundle/
5
- .DS_Store
6
- rdoc/
data/README.md DELETED
@@ -1,43 +0,0 @@
1
- # Pls ![rake](https://github.com/rdavid/pls/workflows/rake/badge.svg) [![Gem Version](https://badge.fury.io/rb/pls.svg)](https://badge.fury.io/rb/pls) [![Hits-of-Code](https://hitsofcode.com/github/rdavid/pls)](https://hitsofcode.com/view/github/rdavid/pls) [![License](https://img.shields.io/badge/license-0BSD-green)](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