na 1.2.79 → 1.2.81

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.
@@ -0,0 +1,78 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ # Simple performance test script that doesn't require bundler
5
+ require_relative 'lib/na/benchmark'
6
+
7
+ # Mock the required dependencies
8
+ module NA
9
+ module Color
10
+ def self.template(input)
11
+ input.to_s # Simple mock
12
+ end
13
+ end
14
+
15
+ module Theme
16
+ def self.load_theme
17
+ {
18
+ parent: '{c}',
19
+ bracket: '{dc}',
20
+ parent_divider: '{xw}/',
21
+ action: '{bg}',
22
+ project: '{xbk}',
23
+ templates: {
24
+ output: '%parent%action',
25
+ default: '%parent%action'
26
+ }
27
+ }
28
+ end
29
+ end
30
+
31
+ def self.theme
32
+ @theme ||= Theme.load_theme
33
+ end
34
+
35
+ def self.notify(msg, debug: false)
36
+ puts msg if debug
37
+ end
38
+ end
39
+
40
+ # Initialize benchmark
41
+ NA::Benchmark.init
42
+
43
+ # Test the optimizations
44
+ puts 'Testing performance optimizations...'
45
+
46
+ # Test 1: Theme caching
47
+ NA::Benchmark.measure('Theme loading (first time)') do
48
+ NA::Theme.load_theme
49
+ end
50
+
51
+ NA::Benchmark.measure('Theme loading (cached)') do
52
+ NA.theme
53
+ end
54
+
55
+ # Test 2: Color template caching
56
+ NA::Benchmark.measure('Color template (first time)') do
57
+ NA::Color.template('{bg}Test action{x}')
58
+ end
59
+
60
+ NA::Benchmark.measure('Color template (cached)') do
61
+ NA::Color.template('{bg}Test action{x}')
62
+ end
63
+
64
+ # Test 3: Multiple operations
65
+ NA::Benchmark.measure('Multiple theme calls') do
66
+ 100.times do
67
+ NA.theme
68
+ end
69
+ end
70
+
71
+ NA::Benchmark.measure('Multiple color templates') do
72
+ 100.times do
73
+ NA::Color.template("{bg}Action {c}#{rand(1000)}{x}")
74
+ end
75
+ end
76
+
77
+ # Report results
78
+ NA::Benchmark.report
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: na
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.79
4
+ version: 1.2.81
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brett Terpstra
@@ -57,6 +57,20 @@ dependencies:
57
57
  - - ">="
58
58
  - !ruby/object:Gem::Version
59
59
  version: 0.10.2
60
+ - !ruby/object:Gem::Dependency
61
+ name: git
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - "~>"
65
+ - !ruby/object:Gem::Version
66
+ version: 3.0.0
67
+ type: :runtime
68
+ prerelease: false
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - "~>"
72
+ - !ruby/object:Gem::Version
73
+ version: 3.0.0
60
74
  - !ruby/object:Gem::Dependency
61
75
  name: gli
62
76
  requirement: !ruby/object:Gem::Requirement
@@ -91,6 +105,26 @@ dependencies:
91
105
  - - ">="
92
106
  - !ruby/object:Gem::Version
93
107
  version: 1.0.32
108
+ - !ruby/object:Gem::Dependency
109
+ name: ostruct
110
+ requirement: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - "~>"
113
+ - !ruby/object:Gem::Version
114
+ version: '0.6'
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: 0.6.1
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '0.6'
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ version: 0.6.1
94
128
  - !ruby/object:Gem::Dependency
95
129
  name: tty-reader
96
130
  requirement: !ruby/object:Gem::Requirement
@@ -152,59 +186,53 @@ dependencies:
152
186
  - !ruby/object:Gem::Version
153
187
  version: 0.5.0
154
188
  - !ruby/object:Gem::Dependency
155
- name: git
189
+ name: tty-spinner
156
190
  requirement: !ruby/object:Gem::Requirement
157
191
  requirements:
158
192
  - - "~>"
159
193
  - !ruby/object:Gem::Version
160
- version: 3.0.0
161
- type: :runtime
194
+ version: '0.9'
195
+ - - ">="
196
+ - !ruby/object:Gem::Version
197
+ version: 0.9.0
198
+ type: :development
162
199
  prerelease: false
163
200
  version_requirements: !ruby/object:Gem::Requirement
164
201
  requirements:
165
202
  - - "~>"
166
203
  - !ruby/object:Gem::Version
167
- version: 3.0.0
204
+ version: '0.9'
205
+ - - ">="
206
+ - !ruby/object:Gem::Version
207
+ version: 0.9.0
168
208
  - !ruby/object:Gem::Dependency
169
- name: ostruct
209
+ name: rspec
170
210
  requirement: !ruby/object:Gem::Requirement
171
211
  requirements:
172
212
  - - "~>"
173
213
  - !ruby/object:Gem::Version
174
- version: '0.6'
175
- - - ">="
176
- - !ruby/object:Gem::Version
177
- version: 0.6.1
178
- type: :runtime
214
+ version: '3.0'
215
+ type: :development
179
216
  prerelease: false
180
217
  version_requirements: !ruby/object:Gem::Requirement
181
218
  requirements:
182
219
  - - "~>"
183
220
  - !ruby/object:Gem::Version
184
- version: '0.6'
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: 0.6.1
221
+ version: '3.0'
188
222
  - !ruby/object:Gem::Dependency
189
- name: tty-spinner
223
+ name: bump
190
224
  requirement: !ruby/object:Gem::Requirement
191
225
  requirements:
192
226
  - - "~>"
193
227
  - !ruby/object:Gem::Version
194
- version: '0.9'
195
- - - ">="
196
- - !ruby/object:Gem::Version
197
- version: 0.9.0
228
+ version: 0.6.0
198
229
  type: :development
199
230
  prerelease: false
200
231
  version_requirements: !ruby/object:Gem::Requirement
201
232
  requirements:
202
233
  - - "~>"
203
234
  - !ruby/object:Gem::Version
204
- version: '0.9'
205
- - - ">="
206
- - !ruby/object:Gem::Version
207
- version: 0.9.0
235
+ version: 0.6.0
208
236
  description: A tool for managing a TaskPaper file of project todos for the current
209
237
  directory. Easily create "next actions" to come back to, add tags and priorities,
210
238
  and notes. Add prompt hooks to display your next actions automatically when cd'ing
@@ -243,6 +271,7 @@ files:
243
271
  - bin/commands/prompt.rb
244
272
  - bin/commands/restore.rb
245
273
  - bin/commands/saved.rb
274
+ - bin/commands/scan.rb
246
275
  - bin/commands/tag.rb
247
276
  - bin/commands/tagged.rb
248
277
  - bin/commands/todos.rb
@@ -261,6 +290,7 @@ files:
261
290
  - lib/na/action.rb
262
291
  - lib/na/actions.rb
263
292
  - lib/na/array.rb
293
+ - lib/na/benchmark.rb
264
294
  - lib/na/colors.rb
265
295
  - lib/na/editor.rb
266
296
  - lib/na/hash.rb
@@ -281,6 +311,7 @@ files:
281
311
  - src/_README.md
282
312
  - test.md
283
313
  - test2.txt
314
+ - test_performance.rb
284
315
  homepage: https://brettterpstra.com/projects/na/
285
316
  licenses:
286
317
  - MIT