tsks 0.0.12 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/tsks/cli.rb +19 -10
- data/lib/tsks/request.rb +2 -1
- data/lib/tsks/storage.rb +25 -17
- data/lib/tsks/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e0ac100edb1bd020860d7f8a63a58e2cca619f8c6c1775db4e9f5d84b5a864ad
|
4
|
+
data.tar.gz: e1e564b30cfb1f4cbe3969dc9b761c13734374a8ee9623818e9d92efd5769f9f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a57c235a7aef701d2a8537f0449213466c905d7432696eb15cdce666270943b1fcf7681613480aa8fece0815962f777ede0f3f81918ddb9b173ccc69ae6a022b
|
7
|
+
data.tar.gz: fed3ec9a4952c847d14c004092de4db6d30d1de4d1b06bfc095b86e4d9aa84ba8b621d2e0f3c9d30658f2f4d4dfcf8beca057c0a457137b82f5354f8f0ead3da
|
data/Gemfile.lock
CHANGED
data/lib/tsks/cli.rb
CHANGED
@@ -6,6 +6,7 @@ require "tsks/actions"
|
|
6
6
|
|
7
7
|
module Tsks
|
8
8
|
class CLI < Thor
|
9
|
+
# @setup_folder = File.expand_path "~/.tsks_tmp"
|
9
10
|
@setup_folder = File.expand_path "~/.tsks"
|
10
11
|
|
11
12
|
def self.setup_folder
|
@@ -83,7 +84,7 @@ module Tsks
|
|
83
84
|
if tsks.count > 0
|
84
85
|
for tsk in tsks
|
85
86
|
tsk_status = Tsks::Actions.get_tsk_status tsk[:status]
|
86
|
-
puts "#{
|
87
|
+
puts "#{tsk[:id]} #{tsk_status} | #{tsk[:tsk]} @#{tsk[:context]}"
|
87
88
|
end
|
88
89
|
else
|
89
90
|
puts "no tsks found."
|
@@ -161,25 +162,33 @@ module Tsks
|
|
161
162
|
Tsks::Storage.delete_removed_uuids
|
162
163
|
local_tsks = Tsks::Storage.select_all local_id=false
|
163
164
|
|
164
|
-
remote_tsks = []
|
165
165
|
begin
|
166
166
|
get_res = Tsks::Request.get "/tsks", token
|
167
|
-
|
168
|
-
for tsk in get_res[:tsks]
|
169
|
-
tsk[:created_at] = Time.parse(tsk[:created_at]).strftime "%F %T"
|
170
|
-
tsk[:updated_at] = Time.parse(tsk[:updated_at]).strftime "%F %T"
|
171
|
-
remote_tsks.append tsk
|
172
|
-
end
|
167
|
+
remote_tsks = get_res[:tsks]
|
173
168
|
|
169
|
+
if get_res[:tsks]
|
174
170
|
if get_res[:ok] == true
|
175
171
|
local_tsks_to_post = local_tsks - remote_tsks
|
172
|
+
|
176
173
|
if local_tsks_to_post.count > 0
|
177
174
|
for tsk in local_tsks_to_post
|
178
|
-
Tsks::Request.post "/tsks", token, {tsk: tsk}
|
175
|
+
post_res = Tsks::Request.post "/tsks", token, {tsk: tsk}
|
176
|
+
posted_tsk = post_res[:tsk]
|
177
|
+
|
178
|
+
if posted_tsk
|
179
|
+
# TODO: write tests for Storage.select_local_id
|
180
|
+
tsk_local_id = Tsks::Storage.select_local_id({tsk: posted_tsk[:tsk],
|
181
|
+
created_at: posted_tsk[:created_at],
|
182
|
+
updated_at: posted_tsk[:updated_at]})
|
183
|
+
|
184
|
+
Tsks::Storage.update tsk_local_id, {id: posted_tsk[:id]}
|
185
|
+
end
|
179
186
|
end
|
180
187
|
end
|
181
188
|
|
182
|
-
|
189
|
+
updated_local_tsks = Tsks::Storage.select_all local_id=false
|
190
|
+
remote_tsks_to_storage = remote_tsks - updated_local_tsks
|
191
|
+
|
183
192
|
if remote_tsks_to_storage.count > 0
|
184
193
|
Tsks::Storage.insert_many remote_tsks_to_storage
|
185
194
|
end
|
data/lib/tsks/request.rb
CHANGED
data/lib/tsks/storage.rb
CHANGED
@@ -7,7 +7,7 @@ module Tsks
|
|
7
7
|
storage = get_storage_instance
|
8
8
|
storage.execute <<-SQL
|
9
9
|
CREATE TABLE tsks (
|
10
|
-
id VARCHAR PRIMARY KEY UNIQUE
|
10
|
+
id VARCHAR PRIMARY KEY UNIQUE,
|
11
11
|
user_id INTEGER DEFAULT 1,
|
12
12
|
tsk VARCHAR NOT NULL,
|
13
13
|
status VARCHAR DEFAULT todo,
|
@@ -19,27 +19,26 @@ module Tsks
|
|
19
19
|
|
20
20
|
storage.execute <<-SQL
|
21
21
|
CREATE TABLE removed_tsks (
|
22
|
-
|
22
|
+
tsk_id VARCHAR UNIQUE NOT NULL
|
23
23
|
)
|
24
24
|
SQL
|
25
25
|
end
|
26
26
|
|
27
27
|
def self.insert tsk, ctx=nil
|
28
28
|
storage = get_storage_instance
|
29
|
-
now = Time.now.strftime
|
30
|
-
uuid = UUID.new.generate
|
29
|
+
now = Time.now.strftime("%Y-%m-%dT%H:%M:%S.%LZ")
|
31
30
|
|
32
31
|
if ctx
|
33
32
|
storage.execute("
|
34
|
-
INSERT INTO tsks (
|
35
|
-
VALUES (?, ?, ?, ?,
|
36
|
-
[
|
33
|
+
INSERT INTO tsks (tsk, status, context, created_at, updated_at)
|
34
|
+
VALUES (?, ?, ?, ?, ?)",
|
35
|
+
[tsk, 'todo', ctx, now, now]
|
37
36
|
)
|
38
37
|
else
|
39
38
|
storage.execute("
|
40
|
-
INSERT INTO tsks (
|
41
|
-
VALUES (?, ?, ?,
|
42
|
-
[
|
39
|
+
INSERT INTO tsks (tsk, status, created_at, updated_at)
|
40
|
+
VALUES (?, ?, ?, ?)",
|
41
|
+
[tsk, 'todo', now, now]
|
43
42
|
)
|
44
43
|
end
|
45
44
|
end
|
@@ -101,6 +100,17 @@ module Tsks
|
|
101
100
|
tsks = structure_tsks raw_tsks
|
102
101
|
end
|
103
102
|
|
103
|
+
# TODO: write tests for Storage.select_local_id
|
104
|
+
def self.select_local_id params
|
105
|
+
storage = get_storage_instance
|
106
|
+
|
107
|
+
tsk = storage.execute(
|
108
|
+
"SELECT rowid, * FROM tsks WHERE #{params.keys.first}=? AND #{params.keys[1]}=? AND #{params.keys.last}=?",
|
109
|
+
params.values.first, params.values[1], params.values.last)
|
110
|
+
|
111
|
+
tsk_local_id = tsk[0][0]
|
112
|
+
end
|
113
|
+
|
104
114
|
def self.select_all local_id=true
|
105
115
|
storage = get_storage_instance
|
106
116
|
raw_tsks = local_id ?
|
@@ -117,13 +127,11 @@ module Tsks
|
|
117
127
|
|
118
128
|
def self.delete local_id
|
119
129
|
storage = get_storage_instance
|
120
|
-
removed_tsks = storage
|
121
|
-
.execute("SELECT * FROM tsks WHERE rowid=?", local_id)
|
130
|
+
removed_tsks = storage.execute("SELECT * FROM tsks WHERE rowid=?", local_id)
|
122
131
|
if removed_tsks.empty?
|
123
132
|
return false
|
124
133
|
end
|
125
|
-
storage
|
126
|
-
.execute("INSERT INTO removed_tsks (tsk_uuid) VALUES (?)", removed_tsks[0][0])
|
134
|
+
storage.execute("INSERT INTO removed_tsks (tsk_id) VALUES (?)", removed_tsks[0][0])
|
127
135
|
storage.execute("DELETE FROM tsks WHERE rowid=?", local_id)
|
128
136
|
end
|
129
137
|
|
@@ -131,11 +139,11 @@ module Tsks
|
|
131
139
|
storage = get_storage_instance
|
132
140
|
result = storage.execute("SELECT * FROM removed_tsks")
|
133
141
|
|
134
|
-
|
142
|
+
tsk_ids = []
|
135
143
|
for item in result
|
136
|
-
|
144
|
+
tsk_ids.append item[0]
|
137
145
|
end
|
138
|
-
return
|
146
|
+
return tsk_ids
|
139
147
|
end
|
140
148
|
|
141
149
|
def self.delete_removed_uuids
|
data/lib/tsks/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tsks
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.14
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luan Ramos Vicente
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-06-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|