adncv 0.3 → 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
  SHA1:
3
- metadata.gz: 35dbb7e2a3ea78edd0e3ddd07d5859d2a95a7ea2
4
- data.tar.gz: df4b18cb729f48d9d7902647975074daa36ba660
3
+ metadata.gz: 6b240d2b88fc0750e717354a51149cdd9c2cea31
4
+ data.tar.gz: edff5c392d2afa3cda914313256fa29d7084e57f
5
5
  SHA512:
6
- metadata.gz: 42a8a402031c067812bce3cf5fabdf20fb2f7d7ee9e1a16e12a2c780c2eba611124a06031fe54b461b558cb176a0253327fa1103e64aa6489d750e5765f5b3b7
7
- data.tar.gz: ea22e713f23d8efe5d8f0debcf1eaa32a104ef6e7dee59f66095794382151474a839267275fb1ac7a7f9686101dff473fa4a31b1813b827a8d2dd9ab29e54f27
6
+ metadata.gz: 35d69ebc3988d957f7ce8b1f324f4005b3772439abc87e1d811ece7c4cac84dad0981c4fcf22fbe7494a1be6de65b6104e832b2a13681a2f92ebb6418311fdb0
7
+ data.tar.gz: 4baaad2c56a997471b09d02bd86524b6122f78f6aec6b214c39e772fd7dfea1b441aedb1a1c761eab87c31a1f0cc2032df4ae0a2b1f2a54911ffa9e6018755a7
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 0.4
2
+
3
+ Monthly posting frequency.
4
+ Pretty JSON.
5
+
1
6
  # 0.3
2
7
 
3
8
  Custom path for exported file.
@@ -9,5 +14,4 @@ Added details option for display.
9
14
  # 0.1
10
15
 
11
16
  Displays statistics.
12
-
13
17
  Exports complete results as JSON file.
data/README.md CHANGED
@@ -12,9 +12,7 @@ Statistics from your App.net data.
12
12
 
13
13
  3. Run the Gem on the downloaded file:
14
14
 
15
- ```
16
- adncv -d /path/to/appdotnet-data-you-xxxxx-posts.json
17
- ```
15
+ `adncv -d /path/to/appdotnet-data-you-xxxxx-posts.json`
18
16
 
19
17
  ## Commands
20
18
 
@@ -24,12 +22,36 @@ adncv -d /path/to/appdotnet-data-you-xxxxx-posts.json
24
22
 
25
23
  Displays informations.
26
24
 
27
- Add `-f` for full details (all posted links, mentioned users, etc).
25
+ Add `-f` for full details (posted links, mentioned users, posts per month, etc):
26
+
27
+ `adncv -d -f posts.json`
28
28
 
29
29
  ### Export
30
30
 
31
31
  `adncv -e posts.json`
32
32
 
33
- Exports informations as a JSON file, including all your posted links and mentioned users.
33
+ Exports informations as a JSON file, including full details.
34
+
35
+ Add `-p` to specify the destination folder path (default: ~):
36
+
37
+ `adncv -e posts.json -p ~/Documents`
38
+
39
+ ## Content
40
+
41
+ ADNCV will display/export:
34
42
 
35
- Add `-p` to specify the destination folder path (default: in ~).
43
+ - total posts
44
+ - posts without mentions
45
+ - posts directed to a user
46
+ - posts containing mentions but not directed
47
+ - posts containing mentions and are replies
48
+ - posts containing mentions and are not replies
49
+ - posts containing links
50
+ - times your posts have been reposted
51
+ - times your posts have been starred
52
+ - times your posts have been replied
53
+ - list of users you've posted directly to
54
+ - list of users you've mentioned
55
+ - list of clients you've posted with
56
+ - all your posted links
57
+ - your monthly posting frequency
data/lib/ADNCV/data.rb CHANGED
@@ -2,7 +2,7 @@
2
2
  module ADNCV
3
3
  class Data
4
4
 
5
- attr_reader :filename, :count, :leadings, :without_mentions, :mentions_not_directed, :replies, :mentions_not_replies, :with_links, :sources, :all_links, :directed_users, :names, :clients, :mentions, :all_clients, :all_mentioned, :reposts, :stars
5
+ attr_reader :filename, :count, :leadings, :without_mentions, :mentions_not_directed, :replies, :mentions_not_replies, :with_links, :sources, :all_links, :directed_users, :names, :clients, :mentions, :all_clients, :all_mentioned, :reposts, :stars, :been_replied, :freq
6
6
  attr_accessor :export_path
7
7
 
8
8
  def initialize
@@ -21,10 +21,12 @@ module ADNCV
21
21
  @with_links = 0
22
22
  @reposts = 0
23
23
  @stars = 0
24
+ @been_replied = 0
24
25
  mentioned = Hash.new(0)
25
26
  directed = Hash.new(0)
26
27
  is_reply = Hash.new(0)
27
28
  @clients = Hash.new(0)
29
+ @freq = Hash.new(0)
28
30
 
29
31
  decoded.each do |post|
30
32
  @clients[post["source"]["name"]] += 1
@@ -57,6 +59,11 @@ module ADNCV
57
59
  unless post["num_stars"].nil?
58
60
  @stars += post["num_stars"]
59
61
  end
62
+ unless post["num_replies"].nil?
63
+ @been_replied += post["num_replies"]
64
+ end
65
+ dd = Date.parse(post["created_at"])
66
+ @freq[[dd.year, dd.month]] += 1
60
67
  end
61
68
 
62
69
  all_directed = directed.sort_by {|k,v| v}
@@ -100,7 +107,9 @@ module ADNCV
100
107
  with_mentions_are_not_replies: @mentions_not_replies,
101
108
  with_links: @with_links,
102
109
  have_been_reposted: @reposts,
103
- have_been_starred: @stars
110
+ have_been_starred: @stars,
111
+ have_been_replied: @been_replied,
112
+ posts_per_month: @freq
104
113
  }]
105
114
  },
106
115
  users: {
@@ -118,7 +127,7 @@ module ADNCV
118
127
  }
119
128
  }
120
129
 
121
- File.write(@export_path, export.to_json)
130
+ File.write(@export_path, JSON.pretty_generate(export))
122
131
  end
123
132
 
124
133
  end
data/lib/ADNCV/display.rb CHANGED
@@ -32,7 +32,7 @@ module ADNCV
32
32
  end
33
33
 
34
34
  def exported(filename)
35
- @thor.say_status :done, "Data exported in #{filename}", :green
35
+ @thor.say_status :done, "Data exported in #{filename}\n", :green
36
36
  end
37
37
 
38
38
  def clear_screen
@@ -50,13 +50,19 @@ module ADNCV
50
50
  puts "Containing links:".ljust(50) + "#{data.with_links}" + "\n\n"
51
51
  puts "Times your posts have been reposted:".ljust(50) + "#{data.reposts}" + "\n\n"
52
52
  puts "Times your posts have been starred:".ljust(50) + "#{data.stars}" + "\n\n"
53
+ puts "Times your posts have been replied:".ljust(50) + "#{data.been_replied}" + "\n\n"
53
54
  puts "Users you've posted directly to:".ljust(50) + "#{data.directed_users.size}" + "\n\n"
54
55
  puts "Users you've mentioned:".ljust(50) + "#{data.names.size}" + "\n\n"
55
56
  puts "You've posted with #{data.clients.size} clients:\n\n#{data.sources.reverse.join(', ')}" + "\n\n"
56
57
  if options["full"]
57
- puts "Your posted links:".ljust(50) + "#{data.all_links.join(', ')}" + "\n\n"
58
+ puts "Your posted links: #{data.all_links.join(', ')}" + "\n\n"
58
59
  puts "Users you've posted directly to: #{data.directed_users.reverse.join(', ')}" + "\n\n"
59
60
  puts "Users you've mentioned: #{data.names.reverse.join(', ')}" + "\n\n"
61
+ puts "Your monthly posting frequency:\n\n"
62
+ @thor.print_table([["Year", "Month", "Posts\n"]])
63
+ puts "------------------"
64
+ @thor.print_table(data.freq)
65
+ puts "\n"
60
66
  end
61
67
  end
62
68
 
data/lib/ADNCV/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module ADNCV
2
- VERSION = "0.3"
2
+ VERSION = "0.4"
3
3
  end
data/lib/ADNCV.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require 'thor'
2
2
  require 'json'
3
+ require 'date'
3
4
  require_relative "ADNCV/version"
4
5
  require_relative "ADNCV/app"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adncv
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.3'
4
+ version: '0.4'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Dejonckheere