-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconvert_sdk.gemspec
More file actions
50 lines (44 loc) · 2.45 KB
/
Copy pathconvert_sdk.gemspec
File metadata and controls
50 lines (44 loc) · 2.45 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
# frozen_string_literal: true
require_relative "lib/convert_sdk/version"
Gem::Specification.new do |spec|
spec.name = "convert_sdk"
spec.version = ConvertSdk::VERSION
spec.authors = ["Convert Insights, Inc."]
spec.email = ["support@convert.com"]
spec.summary = "Convert Experiences FullStack Ruby SDK for A/B testing, feature flags, and personalizations."
spec.description = "The official Convert Experiences Ruby SDK. Provides bucketing-compatible " \
"A/B testing, feature flag evaluation, and personalizations for server-side Ruby " \
"applications (Rails, Sinatra, Hanami, and plain scripts). Zero runtime dependencies."
spec.homepage = "https://www.convert.com"
spec.license = "Apache-2.0"
spec.required_ruby_version = ">= 3.1.0"
spec.metadata["homepage_uri"] = spec.homepage
spec.metadata["source_code_uri"] = "https://github.com/convertcom/ruby-sdk"
spec.metadata["changelog_uri"] = "https://github.com/convertcom/ruby-sdk/releases"
spec.metadata["documentation_uri"] = "https://github.com/convertcom/ruby-sdk/wiki"
spec.metadata["rubygems_mfa_required"] = "true"
# 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.
#
# The reject list keeps non-runtime files OUT of the packaged gem. The Node
# release tooling (package.json / release.config.mjs / lockfiles / .releaserc /
# node_modules) is DEV-ONLY: it drives semantic-release on the CI runner and
# must NOT ship inside the gem — the gem keeps ZERO runtime deps and contains
# no Node artifacts. (node_modules is also gitignored, so it won't appear in
# `git ls-files`, but it is listed defensively.)
spec.files = Dir.chdir(__dir__) do
`git ls-files -z`.split("\x0").reject do |f|
(File.expand_path(f) == __FILE__) ||
f.start_with?(*%w[
bin/ test/ spec/ features/ docs/ demo/ sig/
.git .github appveyor Gemfile Steepfile
package.json package-lock.json yarn.lock .yarnrc.yml .yarn/
release.config.mjs .releaserc .npmrc node_modules/
])
end
end
spec.require_paths = ["lib"]
# Runtime dependencies are EMPTY by design (zero-runtime-deps architecture —
# stdlib only at runtime). Adding a runtime dependency is an architecture
# change, not a story decision. All dev/test gems live in the Gemfile.
end