checkoff 0.1.7 → 0.4.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
- SHA1:
3
- metadata.gz: d463623cca7d57fbc1823ab627cc56b6af825a12
4
- data.tar.gz: d608449d6a739d8b50cbde305dea8fcfdecf5fc0
2
+ SHA256:
3
+ metadata.gz: abb481b28efc4dc6131fdc028fe0bffb8c441dc92c95474e23455f7a1fed8ede
4
+ data.tar.gz: 98e270c7be0078e5efa19425affc4692c3343d093e5ab96d027eb5b643d8b141
5
5
  SHA512:
6
- metadata.gz: 1557db8281aec27a1f2263a095a7504cd3ebfed2e7ed9470957f3f44e0da1542cdb5261480e197dae44ef8b39b204f40ab9ccd46c82a19fa03ae22c202ecf0f6
7
- data.tar.gz: 596ac6cfe0a1f99e06de239fe6e6be615b1fdf8a0709dd7016f45aa09101edee57dea12a04a74b6000297454f9b2530daf28d186c136d0eaec964f57f5dcc66d
6
+ metadata.gz: 2c6ddd7d5092290e0fbc953274f98c2b0b68262aef2201a378fa71a947152ee3c0d331c730127e5ba05616e7e9afc3261324a5d0b6babbaf63c4bd96115fcfa2
7
+ data.tar.gz: 3ba297866e0c3970e12a8f31b796359f58b93d02a2d7aae5aef04dd071e68a5d4d41a4c5c4e8b3ec5f38123b0f7072f1dd2ee98217fae9bd3d1a6fb2aa843012
@@ -0,0 +1,17 @@
1
+ version: 2
2
+ jobs:
3
+ build:
4
+ working_directory: ~/checkoff
5
+ docker:
6
+ - image: apiology/circleci-ruby:latest
7
+ steps:
8
+ - checkout
9
+ - type: cache-restore
10
+ key: checkoff-{{ checksum "checkoff.gemspec" }}-{{ checksum "Gemfile" }}
11
+ - run: gem install --no-document bundler
12
+ - run: bundle install --path vendor/bundle --jobs=4
13
+ - type: cache-save
14
+ key: checkoff-{{ checksum "checkoff.gemspec" }}-{{ checksum "Gemfile" }}
15
+ paths:
16
+ - "vendor/bundle"
17
+ - run: bundle exec rake --jobs=4 ci
@@ -1,27 +1,27 @@
1
- # I like trailing commas in maps. They let me insert new elements and
1
+ # I like trailing commas in hashes. They let me insert new elements and
2
2
  # see them as one line in a diff, not two.
3
- Style/TrailingCommaInLiteral:
3
+ Style/TrailingCommaInHashLiteral:
4
+ EnforcedStyleForMultiline: comma
5
+
6
+ Style/TrailingCommaInArrayLiteral:
4
7
  EnforcedStyleForMultiline: comma
5
8
 
6
9
  # I use keyword arguments for a poor man's dependency injection to cut
7
10
  # down on the magic in my tests.
8
- ParameterLists:
11
+ Metrics/ParameterLists:
9
12
  CountKeywordArgs: false
10
13
 
11
- # If i'm using one function name and returning the contents of an
14
+ # If I'm using one function name and returning the contents of an
12
15
  # attribute, that's OK. The alternative would be this, which I find
13
16
  # confusing and often not really what I mean:
14
17
  #
15
18
  # attr_reader :something_else
16
19
  # alias_method :something, :something_else
17
- TrivialAccessors:
20
+ Style/TrivialAccessors:
18
21
  ExactNameMatch: true
19
22
 
20
- Layout/MultilineMethodCallIndentation:
21
- EnforcedStyle: indented
22
-
23
23
  #
24
- # Add 'XXX' to the standard list
24
+ # Add 'XX X' to the standard list
25
25
  #
26
26
  Style/CommentAnnotation:
27
27
  Keywords:
@@ -37,3 +37,41 @@ Style/CommentAnnotation:
37
37
  W"
38
38
  - "XX\
39
39
  X"
40
+
41
+ # https://stackoverflow.com/questions/40934345/rubocop-25-line-block-size-and-rspec-tests
42
+ Metrics/BlockLength:
43
+ # Exclude DSLs
44
+ Exclude:
45
+ - 'Rakefile'
46
+ - '*.gemspec'
47
+ - '**/*.rake'
48
+ - 'spec/**/*.rb'
49
+ - 'feature/**/*.rb'
50
+
51
+ # http://www.betterspecs.org/#single
52
+ #
53
+ # > in tests that are not isolated (e.g. ones that integrate with a
54
+ # > DB, an external webservice, or end-to-end-tests), you take a
55
+ # > massive performance hit to do the same setup over and over again,
56
+ # > just to set a different expectation in each test. In these sorts
57
+ # > of slower tests, I think it's fine to specify more than one
58
+ # > isolated behavior.
59
+ RSpec/MultipleExpectations:
60
+ Exclude:
61
+ - 'feature/**/*.rb'
62
+
63
+ Style/StringLiterals:
64
+ EnforcedStyle: single_quotes
65
+ SupportedStyles:
66
+ - single_quotes
67
+ - double_quotes
68
+ ConsistentQuotesInMultiline: true
69
+
70
+ AllCops:
71
+ TargetRubyVersion: 2.4
72
+
73
+
74
+ require:
75
+ - rubocop-rspec
76
+ - rubocop-minitest
77
+ - rubocop-rake
@@ -1 +1 @@
1
- ruby-2.3.1
1
+ 2.6.6
@@ -1,10 +1,17 @@
1
+ language: ruby
2
+ cache: bundler
1
3
  before_install:
4
+ # https://bundler.io/blog/2019/05/14/
5
+ # solutions-for-cant-find-gem-bundler-with-executable-bundle.html
6
+ - gem update --system
2
7
  - gem install bundler
3
- language: ruby
4
8
  rvm:
5
- - ruby-2.2.2
6
- - ruby-2.3.1
7
- # - jruby-head # see https://github.com/apiology/quality/issues/59
8
- # - jruby-9.0 # see https://github.com/apiology/quality/issues/59
9
- # - ruby-head # Upstream bug - see https://travis-ci.org/apiology/checkoff/jobs/138626934
10
-
9
+ # JRuby error with native code build - possibly can be overcome?
10
+ # checking for main() in -lstdc++... RuntimeError: The compiler failed to generate
11
+ # https://travis-ci.com/apiology/pronto-punchlist/jobs/264907931
12
+ # - jruby-head
13
+ - ruby-head
14
+ - ruby-2.7
15
+ - ruby-2.6
16
+ - ruby-2.5
17
+ - ruby-2.4
@@ -0,0 +1,27 @@
1
+ .PHONY: spec feature
2
+
3
+ all: localtest
4
+
5
+ localtest:
6
+ @bundle exec rake localtest
7
+
8
+ feature:
9
+ @bundle exec rake feature
10
+
11
+ spec:
12
+ @bundle exec rake spec
13
+
14
+ rubocop:
15
+ @bundle exec rake rubocop
16
+
17
+ punchlist:
18
+ @bundle exec rake punchlist
19
+
20
+ pronto:
21
+ @bundle exec rake pronto
22
+
23
+ bigfiles:
24
+ @bundle exec rake bigfiles
25
+
26
+ quality:
27
+ @bundle exec rake quality
data/README.md CHANGED
@@ -75,7 +75,7 @@ And even gather counts for project metrics:
75
75
  ```bash
76
76
  $ checkoff view 'Personal Projects' 'Create demo' | jq 'to_entries | map(.value) | flatten | map(.name) | length'
77
77
  4
78
- $
78
+ $
79
79
  ```
80
80
 
81
81
  ## Caching
@@ -1,7 +1,7 @@
1
- # frozen_string_literal: true
2
1
  # coding: ascii
2
+ # frozen_string_literal: true
3
3
 
4
- lib = File.expand_path('../lib', __FILE__)
4
+ lib = File.expand_path('lib', __dir__)
5
5
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
6
  require 'checkoff/version'
7
7
 
@@ -22,16 +22,16 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ['lib']
24
24
 
25
- spec.add_runtime_dependency 'dalli'
26
- spec.add_runtime_dependency 'cache_method'
27
- spec.add_runtime_dependency 'asana'
28
25
  spec.add_runtime_dependency 'activesupport'
26
+ spec.add_runtime_dependency 'asana'
27
+ spec.add_runtime_dependency 'cache_method'
28
+ spec.add_runtime_dependency 'dalli'
29
29
 
30
- spec.add_development_dependency 'bundler', '~> 1.12'
31
- spec.add_development_dependency 'rake', '~> 10.0'
32
- spec.add_development_dependency 'rspec', '>=3.4'
33
- spec.add_development_dependency 'quality'
34
- spec.add_development_dependency 'simplecov'
30
+ spec.add_development_dependency 'bundler'
35
31
  spec.add_development_dependency 'minitest-profile'
36
32
  spec.add_development_dependency 'mocha'
33
+ spec.add_development_dependency 'quality', '~> 37'
34
+ spec.add_development_dependency 'rake', '~> 13.0'
35
+ spec.add_development_dependency 'rspec', '>=3.4'
36
+ spec.add_development_dependency 'simplecov'
37
37
  end
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "result": {
3
- "covered_percent": 98.78
3
+ "covered_percent": 88.54
4
4
  }
5
5
  }
@@ -63,7 +63,7 @@ module Checkoff
63
63
  def quickadd(workspace_name, task_name)
64
64
  workspace = @workspaces.workspace_by_name(workspace_name)
65
65
  @tasks.add_task(task_name,
66
- workspace_id: workspace.id)
66
+ workspace_gid: workspace.gid)
67
67
  end
68
68
 
69
69
  def validate_args!(args)
@@ -103,7 +103,7 @@ module Checkoff
103
103
  stderr.puts " #{$PROGRAM_NAME} quickadd workspace task_name"
104
104
  stderr.puts
105
105
  stderr.puts "'project' can be set to a project name, or :my_tasks, " \
106
- ':my_tasks_upcoming, :my_tasks_new, or :my_tasks_today'
106
+ ":my_tasks_upcoming, :my_tasks_new, or :my_tasks_today"
107
107
  end
108
108
 
109
109
  def view(workspace_name, project_name, section_name)
@@ -10,7 +10,7 @@ module Checkoff
10
10
  def self.load(sym)
11
11
  file = "#{sym}.yml"
12
12
  YAML.load_file(File.expand_path("~/.#{file}"))
13
- .with_indifferent_access
13
+ .with_indifferent_access
14
14
  end
15
15
  end
16
16
  end
@@ -43,16 +43,18 @@ module Checkoff
43
43
  def projects_by_workspace_name(workspace_name)
44
44
  workspace = @workspaces.workspace_by_name(workspace_name)
45
45
  raise "Could not find workspace named #{workspace_name}" unless workspace
46
- projects.find_by_workspace(workspace: workspace.id)
46
+
47
+ projects.find_by_workspace(workspace: workspace.gid)
47
48
  end
48
49
 
49
50
  def my_tasks(workspace_name)
50
51
  my_tasks = @config[:my_tasks]
51
- id = @config[:my_tasks][workspace_name] unless my_tasks.nil?
52
- if my_tasks.nil? || id.nil?
52
+ gid = @config[:my_tasks][workspace_name] unless my_tasks.nil?
53
+ if my_tasks.nil? || gid.nil?
53
54
  raise "Please define [:my_tasks][#{workspace_name}] in config file"
54
55
  end
55
- projects.find_by_id(id)
56
+
57
+ projects.find_by_id(gid)
56
58
  end
57
59
 
58
60
  def project(workspace_name, project_name)
@@ -75,7 +77,8 @@ module Checkoff
75
77
  {
76
78
  per_page: 100,
77
79
  options: {
78
- fields: %w[name completed_at due_at due_on assignee_status],
80
+ fields: %w[name completed_at due_at due_on assignee_status tags
81
+ memberships.project.gid memberships.section.name],
79
82
  },
80
83
  }
81
84
  end
@@ -83,10 +86,10 @@ module Checkoff
83
86
  def tasks_from_project(project, only_uncompleted: true, extra_fields: [])
84
87
  options = task_options
85
88
  options[:completed_since] = '9999-12-01' if only_uncompleted
86
- options[:project] = project.id
89
+ options[:project] = project.gid
87
90
  options[:options][:fields] += extra_fields
88
- client.tasks.find_all(options).to_a
91
+ client.tasks.find_all(**options).to_a
89
92
  end
90
- cache_method :tasks_from_project, LONG_CACHE_TIME
93
+ cache_method :tasks_from_project, SHORT_CACHE_TIME
91
94
  end
92
95
  end
@@ -21,23 +21,17 @@ module Checkoff
21
21
 
22
22
  def_delegators :@projects, :client
23
23
 
24
- def file_task_by_section(current_section, by_section, task)
25
- if task.name =~ /:$/
26
- current_section = task.name
27
- by_section[current_section] = []
28
- else
29
- by_section[current_section] ||= []
30
- by_section[current_section] << task
31
- end
32
- [current_section, by_section]
24
+ def file_task_by_section(by_section, task, project_gid)
25
+ membership = task.memberships.find { |m| m.project.gid == project_gid }
26
+ current_section = membership.section.name
27
+ by_section[current_section] ||= []
28
+ by_section[current_section] << task
33
29
  end
34
30
 
35
- def by_section(tasks)
36
- current_section = nil
31
+ def by_section(tasks, project_gid)
37
32
  by_section = {}
38
33
  tasks.each do |task|
39
- current_section, by_section = file_task_by_section(current_section,
40
- by_section, task)
34
+ file_task_by_section(by_section, task, project_gid)
41
35
  end
42
36
  by_section
43
37
  end
@@ -46,7 +40,7 @@ module Checkoff
46
40
  def tasks_by_section_for_project(project)
47
41
  raw_tasks = projects.tasks_from_project(project)
48
42
  active_tasks = projects.active_tasks(raw_tasks)
49
- by_section(active_tasks)
43
+ by_section(active_tasks, project.gid)
50
44
  end
51
45
 
52
46
  def tasks_by_section_for_project_and_assignee_status(project,
@@ -54,9 +48,9 @@ module Checkoff
54
48
  raw_tasks = projects.tasks_from_project(project)
55
49
  by_assignee_status =
56
50
  projects.active_tasks(raw_tasks)
57
- .group_by(&:assignee_status)
51
+ .group_by(&:assignee_status)
58
52
  active_tasks = by_assignee_status[assignee_status]
59
- by_section(active_tasks)
53
+ by_section(active_tasks, project.gid)
60
54
  end
61
55
 
62
56
  def project_or_raise(workspace_name, project_name)
@@ -42,15 +42,15 @@ module Checkoff
42
42
  end
43
43
 
44
44
  def add_task(name,
45
- workspace_id: default_workspace_id,
46
- assignee_id: default_assignee_id)
45
+ workspace_gid: default_workspace_gid,
46
+ assignee_gid: default_assignee_gid)
47
47
  @asana_task.create(client,
48
- assignee: assignee_id,
49
- workspace: workspace_id, name: name)
48
+ assignee: assignee_gid,
49
+ workspace: workspace_gid, name: name)
50
50
  end
51
51
 
52
- def default_assignee_id
53
- @config[:default_assignee_id]
52
+ def default_assignee_gid
53
+ @config[:default_assignee_gid]
54
54
  end
55
55
  end
56
56
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Checkoff
4
- VERSION = '0.1.7'
4
+ VERSION = '0.4.0'
5
5
  end
@@ -12,11 +12,12 @@ module Checkoff
12
12
  def client
13
13
  @client ||= @asana_client.new do |c|
14
14
  c.authentication :access_token, @config[:personal_access_token]
15
+ c.default_headers 'asana-enable' => 'string_ids,new_sections'
15
16
  end
16
17
  end
17
18
 
18
- def default_workspace_id
19
- @config[:default_workspace_id]
19
+ def default_workspace_gid
20
+ @config[:default_workspace_gid]
20
21
  end
21
22
 
22
23
  def workspace_by_name(workspace_name)
@@ -1,3 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ desc 'Run tasks to be done during a continuous integration (CI) build'
3
4
  task ci: :localtest
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ desc 'Rebaseline quality thresholds to last commit'
3
4
  task :clear_metrics do |_t|
4
5
  ret =
5
6
  system('git checkout coverage/.last_run.json metrics/*_high_water_mark')
@@ -1,3 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ desc 'Standard build when running on a workstation'
3
4
  task localtest: %i[clear_metrics test quality]
@@ -1 +1 @@
1
- 459
1
+ 390
@@ -1 +1 @@
1
- 8
1
+ 7
@@ -1,2 +1 @@
1
- 11
2
-
1
+ 3
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: checkoff
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vince Broz
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-30 00:00:00.000000000 Z
11
+ date: 2020-10-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: dalli
14
+ name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: cache_method
28
+ name: asana
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: asana
42
+ name: cache_method
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -53,7 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: activesupport
56
+ name: dalli
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -70,88 +70,88 @@ dependencies:
70
70
  name: bundler
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '1.12'
75
+ version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '1.12'
82
+ version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: rake
84
+ name: minitest-profile
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - "~>"
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
- version: '10.0'
89
+ version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - "~>"
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
- version: '10.0'
96
+ version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
- name: rspec
98
+ name: mocha
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - ">="
102
102
  - !ruby/object:Gem::Version
103
- version: '3.4'
103
+ version: '0'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: '3.4'
110
+ version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: quality
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ">="
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '0'
117
+ version: '37'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ">="
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '0'
124
+ version: '37'
125
125
  - !ruby/object:Gem::Dependency
126
- name: simplecov
126
+ name: rake
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ">="
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: '0'
131
+ version: '13.0'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - ">="
136
+ - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: '0'
138
+ version: '13.0'
139
139
  - !ruby/object:Gem::Dependency
140
- name: minitest-profile
140
+ name: rspec
141
141
  requirement: !ruby/object:Gem::Requirement
142
142
  requirements:
143
143
  - - ">="
144
144
  - !ruby/object:Gem::Version
145
- version: '0'
145
+ version: '3.4'
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
- version: '0'
152
+ version: '3.4'
153
153
  - !ruby/object:Gem::Dependency
154
- name: mocha
154
+ name: simplecov
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - ">="
@@ -164,7 +164,7 @@ dependencies:
164
164
  - - ">="
165
165
  - !ruby/object:Gem::Version
166
166
  version: '0'
167
- description:
167
+ description:
168
168
  email:
169
169
  - vince@broz.cc
170
170
  executables:
@@ -172,6 +172,7 @@ executables:
172
172
  extensions: []
173
173
  extra_rdoc_files: []
174
174
  files:
175
+ - ".circleci/config.yml"
175
176
  - ".gitignore"
176
177
  - ".rubocop.yml"
177
178
  - ".ruby-version"
@@ -179,12 +180,12 @@ files:
179
180
  - CODE_OF_CONDUCT.md
180
181
  - Gemfile
181
182
  - LICENSE.txt
183
+ - Makefile
182
184
  - README.md
183
185
  - Rakefile
184
186
  - bin/console
185
187
  - bin/setup
186
188
  - checkoff.gemspec
187
- - circle.yml
188
189
  - coverage/.last_run.json
189
190
  - docs/example_project.png
190
191
  - exe/checkoff
@@ -216,6 +217,7 @@ files:
216
217
  - metrics/mdl_high_water_mark
217
218
  - metrics/pep8_high_water_mark
218
219
  - metrics/punchlist_high_water_mark
220
+ - metrics/pycodestyle_high_water_mark
219
221
  - metrics/rails_best_practices_high_water_mark
220
222
  - metrics/rubocop_high_water_mark
221
223
  - metrics/scalastyle_high_water_mark
@@ -224,7 +226,7 @@ homepage: http://github.com/apiology/checkoff
224
226
  licenses:
225
227
  - MIT
226
228
  metadata: {}
227
- post_install_message:
229
+ post_install_message:
228
230
  rdoc_options: []
229
231
  require_paths:
230
232
  - lib
@@ -239,9 +241,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
239
241
  - !ruby/object:Gem::Version
240
242
  version: '0'
241
243
  requirements: []
242
- rubyforge_project:
243
- rubygems_version: 2.5.1
244
- signing_key:
244
+ rubygems_version: 3.0.3
245
+ signing_key:
245
246
  specification_version: 4
246
247
  summary: Command-line and gem client for Asana (unofficial)
247
248
  test_files: []
data/circle.yml DELETED
@@ -1,6 +0,0 @@
1
- test:
2
- override:
3
- - bundle exec rake localtest
4
- general:
5
- artifacts:
6
- - "coverage"