scryglass 0.1.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2ba13f5c4e89b1e2750fd307557d9093cbc8194fa3696fc314515011322786cf
4
- data.tar.gz: 853762f415aada3e416f20beb12b1033620d60747a5ca49c76a1f4ab53af7073
3
+ metadata.gz: e64cacb2e1c0e588ffa8554c9203f73a5aa11f565454f0e7e190328b18acaaa8
4
+ data.tar.gz: 4435413405197c4dbf03a80bff4632b29cf09d44b0f53de45894ea426c858091
5
5
  SHA512:
6
- metadata.gz: c58c3f36b278b03c0ab7105eb7e72eb6ae0db614945623752096ce07e5ca8401b03d3e23761fc79336f335d63d4ee9ef9dc12a3c9ede29121e74cf966124940a
7
- data.tar.gz: 1f80a280e9a45cf1407377bf5128c222c4384154b9971992c68b98c8ba02128132d7424c7c12672c4dacf6a22b34616e5630b4ce5b27492580a684e0fb231db8
6
+ metadata.gz: 2d9081ae5876b542f6c17e792f7a02b12f832a128644e3334c0c6b819dc076fb1a8e60f77e9c02e65032e67e2be52fae38f7ba8b0d38fdfced2bac95469b4ff0
7
+ data.tar.gz: adbc658b799af3c4167d132de38d3225db3efaba3e95b39251352b0b8360169419db654605fd88314ccbfce80ce3a78d9cb87c02ff55559ce42a483d086848cf
@@ -1 +1 @@
1
- ruby 2.4.4
1
+ ruby 2.5.3
@@ -0,0 +1,26 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## [Unreleased]
9
+
10
+ ## [1.0.0] - 2020-09-18
11
+
12
+ ### Added
13
+
14
+ - add_development_dependency 'io-console'
15
+ - Added table of contents to README
16
+
17
+ ### Changed
18
+
19
+ - Bumped required_ruby_version from '>= 2.4.4' to '>= 2.5.3'
20
+ - Bumped rake version from '~> 10.0' to '~> 12.0'
21
+
22
+ ## [0.1.0] - 2020-09-17
23
+
24
+ ### Added
25
+
26
+ - The First Commit!
data/Gemfile CHANGED
@@ -2,5 +2,3 @@ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in scryglass.gemspec
4
4
  gemspec
5
-
6
- gem "rake", "~> 12.0"
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- scryglass (0.1.0)
4
+ scryglass (1.0.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -14,6 +14,7 @@ GEM
14
14
  concurrent-ruby (1.1.7)
15
15
  i18n (1.8.5)
16
16
  concurrent-ruby (~> 1.0)
17
+ io-console (0.5.6)
17
18
  minitest (5.14.2)
18
19
  rake (12.3.3)
19
20
  thread_safe (0.3.6)
@@ -26,6 +27,7 @@ PLATFORMS
26
27
  DEPENDENCIES
27
28
  activesupport (~> 5.0)
28
29
  bundler (~> 2.1)
30
+ io-console
29
31
  rake (~> 12.0)
30
32
  scryglass!
31
33
 
data/README.md CHANGED
@@ -1,3 +1,23 @@
1
+ # Table of Contents
2
+
3
+ [🔮 Scryglass Intro Summary](#-scryglass)
4
+ - [⚡️ tl;dr SUPER Quick Start](#%EF%B8%8F-tldr-super-quick-start)
5
+ - [Installing Scryglass](#installing-scryglass)
6
+ - [Enabling Scryglass](#enabling-scryglass)
7
+ - [Launching a Scry Session](#launching-a-scry-session)
8
+ - [Basic Usage](#basic-usage)
9
+ - [Reading the UI](#reading-the-ui)
10
+ - [Tree View (default) Row Sample Strings](#tree-view-default-row-sample-strings)
11
+ - [Known Enumerables](#known-enumerables)
12
+ - [The Cursor, and Unknown Enumerables](#the-cursor-and-unknown-enumerables)
13
+ - [Waiting!](#waiting)
14
+ - [In-Depth Control Rundown](#in-depth-control-rundown)
15
+ - [Configuration / Customization (all optional)](#configuration--customization-all-optional)
16
+ - [A Note on Adding Your Own Lenses](#a-note-on-adding-your-own-lenses)
17
+ - [Controlling How Some Objects Are Displayed in Tree View / Using Scryglass as the UI for Another Tool](#controlling-how-some-objects-are-displayed-in-tree-view--using-scryglass-as-the-ui-for-another-tool)
18
+ - [Miscellaneous Troubleshooting Notes](#miscellaneous-troubleshooting-notes)
19
+ - [Contributing](#contributing)
20
+
1
21
  # 🔮 Scryglass
2
22
 
3
23
  Scryglass is a ruby console tool for visualizing and actively exploring objects (large, nested, interrelated, or unfamiliar). You can navigate nested arrays, hashes, instance variables, ActiveRecord
@@ -205,7 +225,7 @@ Here are some explanations of some less obvious configurations:
205
225
 
206
226
  For properly capturing out*put* methods of various kinds, and for the ability to truncate strings of cosmic scale before they've been *entirely* printed to the invisible IO (can be minutes and trillions of characters), we highly recommend using the `Hexes.capture_io` method with the `char_limit:` keyword argument as seen in the template config file (and Scryglass code). `capture_io` captures console output as a string; `char_limit:` will run the capture in a separate thread which can be truncated before it finishes printing.
207
227
 
208
- ## Controlling how some objects are displayed in tree view / Using Scryglass as the UI for another tool
228
+ ### Controlling how some objects are displayed in tree view / Using Scryglass as the UI for another tool
209
229
 
210
230
  Scryglass originally started as a small subtool to be used as the UI for another console project, which, in short, would output a large branching hash which was then to be navigated. To have more control over the tree panel display, you can wrap objects in a Scryglass::ViewWrapper. For example, by default, this array item: `[unsightly_object]` will appear in the tree view in its `inspect`ed form, "#<UnsightlyObject:0x00007f9ac8224e78>". But say you want it to show it's best face to the user, using the sightly return of it's `best_face` method. You can instead hand scryglass the following item:
211
231
  ```ruby
@@ -35,7 +35,7 @@ module Scryglass
35
35
  "A lambda" => ->(o) { puts o.inspect.upcase.reverse },
36
36
  "\n\n\n" => "If you want to know what that lambda does, move your cursor to it, press ENTER, and it will be returned to your console for you to play with!",
37
37
  'Allll the coolest stuff' => [
38
- Scryglass::ViewWrapper.new('TODO add link', string: '...Is really in the help screens (`?`) and the README. Press spacebar for README link in lens view'),
38
+ Scryglass::ViewWrapper.new('https://github.com/annkissam/scryglass', string: '...Is really in the help screens (`?`) and the README. Press spacebar for README link in lens view'),
39
39
  ],
40
40
  :delicious_data => {
41
41
  :whoa_now => ([1]*800).map { rand(2) }.insert($stdout.winsize.first, 'Press zero to reset view position, then again to reset cursor there!'),
@@ -1,6 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
-
4
3
  ## Bookkeeping and external tools:
5
4
  require "scryglass/version"
6
5
  require 'active_support/core_ext/object/blank' # This gives us `.present?` and `.blank?` # https://stackoverflow.com/questions/4648684/how-to-use-present-in-ruby-projects
@@ -1,3 +1,3 @@
1
1
  module Scryglass
2
- VERSION = "0.1.0"
2
+ VERSION = "1.0.0"
3
3
  end
@@ -8,6 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.version = Scryglass::VERSION
9
9
  spec.authors = ["Gavin Myers"]
10
10
  spec.email = ["gavin.myers@annkissam.com"]
11
+ spec.licenses = ['MIT']
11
12
 
12
13
  spec.summary = 'Scryglass is a ruby console tool for visualizing ' \
13
14
  'and actively exploring objects.'
@@ -38,9 +39,11 @@ Gem::Specification.new do |spec|
38
39
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
39
40
  spec.require_paths = ["lib"]
40
41
 
41
- spec.required_ruby_version = '>= 2.4.4'
42
+ spec.required_ruby_version = '>= 2.5.3'
42
43
 
43
44
  spec.add_development_dependency 'activesupport', '~> 5.0'
45
+ spec.add_development_dependency 'io-console'
44
46
  spec.add_development_dependency 'bundler', '~> 2.1'
45
- spec.add_development_dependency 'rake', '~> 10.0'
47
+ spec.add_development_dependency 'rake', '~> 12.0'
48
+
46
49
  end
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scryglass
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gavin Myers
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
11
  date: 2020-09-18 00:00:00.000000000 Z
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '5.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: io-console
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +58,14 @@ dependencies:
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: '10.0'
61
+ version: '12.0'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: '10.0'
68
+ version: '12.0'
55
69
  description: |-
56
70
  Scryglass is a ruby console tool for visualizing and actively exploring objects (large, nested, interrelated, or unfamiliar). You can navigate nested arrays, hashes, instance variables, ActiveRecord relations, and unknown Enumerable types like anexpandable/collapsable file tree in an intuitive UI.
57
71
 
@@ -64,6 +78,7 @@ extra_rdoc_files: []
64
78
  files:
65
79
  - ".gitignore"
66
80
  - ".tool-versions"
81
+ - CHANGELOG.md
67
82
  - Gemfile
68
83
  - Gemfile.lock
69
84
  - LICENSE.txt
@@ -92,10 +107,11 @@ files:
92
107
  - lib/scryglass/view_wrapper.rb
93
108
  - scryglass.gemspec
94
109
  homepage: https://github.com/annkissam/scryglass
95
- licenses: []
110
+ licenses:
111
+ - MIT
96
112
  metadata:
97
113
  allowed_push_host: https://rubygems.org/
98
- post_install_message:
114
+ post_install_message:
99
115
  rdoc_options: []
100
116
  require_paths:
101
117
  - lib
@@ -103,7 +119,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
103
119
  requirements:
104
120
  - - ">="
105
121
  - !ruby/object:Gem::Version
106
- version: 2.4.4
122
+ version: 2.5.3
107
123
  required_rubygems_version: !ruby/object:Gem::Requirement
108
124
  requirements:
109
125
  - - ">="
@@ -111,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
111
127
  version: '0'
112
128
  requirements: []
113
129
  rubygems_version: 3.1.4
114
- signing_key:
130
+ signing_key:
115
131
  specification_version: 4
116
132
  summary: Scryglass is a ruby console tool for visualizing and actively exploring objects.
117
133
  test_files: []