-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjsonapi-query_builder.gemspec
More file actions
56 lines (47 loc) · 2.52 KB
/
jsonapi-query_builder.gemspec
File metadata and controls
56 lines (47 loc) · 2.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# frozen_string_literal: true
lib = File.expand_path("../lib", __FILE__)
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
require "jsonapi/query_builder/version"
Gem::Specification.new do |spec|
spec.name = "jsonapi-query_builder"
spec.version = Jsonapi::QueryBuilder::VERSION
spec.authors = ["Jure Cindro"]
spec.email = ["jure.cindro@infinum.co"]
spec.summary = "Support `json:api` querying with ease!"
spec.description = <<~MD
`Jsonapi::QueryBuilder` serves the purpose of adding the json api query related SQL conditions to the already scoped collection, usually used in controller index actions.
With the query builder we can easily define logic for query filters, attributes by which we can sort, and delegate pagination parameters to the underlying paginator. Included relationships are automatically included via the `ActiveRecord::QueryMethods#includes`, to prevent N+1 query problems.
MD
spec.homepage = "https://github.com/infinum/jsonapi-query_builder"
spec.license = "MIT"
if spec.respond_to?(:metadata)
spec.metadata["homepage_uri"] = spec.homepage
spec.metadata["source_code_uri"] = "https://github.com/infinum/jsonapi-query_builder"
spec.metadata["changelog_uri"] = "https://github.com/infinum/jsonapi-query_builder/blob/master/CHANGELOG.md"
else
raise "RubyGems 2.0 or newer is required to protect against public gem pushes."
end
# Specify which files should be added to the gem when it is released.
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
spec.files = Dir.chdir(File.expand_path("..", __FILE__)) do
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
end
spec.bindir = "exe"
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
spec.require_paths = ["lib"]
spec.required_ruby_version = ">= 3.2"
spec.add_runtime_dependency "activerecord", ">= 7.2"
spec.add_runtime_dependency "pagy", ">= 3.5"
spec.add_development_dependency "bundler", "~> 2.0"
spec.add_development_dependency "bundler-audit"
spec.add_development_dependency "rake", "~> 13.0"
spec.add_development_dependency "rspec", "~> 3.0"
spec.add_development_dependency "standardrb"
spec.add_development_dependency "standard"
spec.add_development_dependency "rubocop-rspec"
spec.add_development_dependency "lefthook"
spec.add_development_dependency "kaminari", "~> 1.2"
spec.add_development_dependency "activerecord"
spec.add_development_dependency "sqlite3"
spec.add_development_dependency "pry"
end