translateable 0.2.0 → 0.2.1
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 +4 -4
- data/.github/workflows/tests.yml +48 -0
- data/README.md +1 -1
- data/gemfiles/7.0.gemfile +7 -0
- data/gemfiles/7.1.gemfile +6 -0
- data/gemfiles/7.2.gemfile +6 -0
- data/gemfiles/8.0.gemfile +6 -0
- data/lib/translateable/version.rb +1 -1
- data/lib/translateable.rb +3 -1
- data/translateable.gemspec +2 -2
- metadata +16 -18
- data/.travis.yml +0 -20
- data/gemfiles/5.0.gemfile +0 -6
- data/gemfiles/5.2.gemfile +0 -6
- data/gemfiles/6.0.gemfile +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: defd8be91545d9bcb09d295a8ae09c77c6d8ac54ee98750d0eb147aa7ac5fcca
|
4
|
+
data.tar.gz: 96cbd961acd362feed04bc5f64405c2972fe3449b68967fc8eb4f0a2db4ee70a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7322b573da75338d645a8d5f0b6d772eb9220207ea2bfccf05ef6f8ff918fe23f8dc96fa0bf6985c935d31dd4b43d6ab7b1a384e7a1cef3eb9c66449387dd2cb
|
7
|
+
data.tar.gz: 616042ff3c72df3d6626bc96b5e075d315f7745ac8824aa9852746184df10099946378c90397235ca399c2b6348d04a131715ad81b016d6fa7100452fb280c8d
|
@@ -0,0 +1,48 @@
|
|
1
|
+
name: CI Ruby
|
2
|
+
|
3
|
+
on: [push, pull_request]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
test:
|
7
|
+
runs-on: ubuntu-latest
|
8
|
+
|
9
|
+
services:
|
10
|
+
postgres:
|
11
|
+
image: postgres
|
12
|
+
env:
|
13
|
+
POSTGRES_PASSWORD: postgres
|
14
|
+
# Set health checks to wait until postgres has started
|
15
|
+
options: >-
|
16
|
+
--health-cmd pg_isready
|
17
|
+
--health-interval 10s
|
18
|
+
--health-timeout 5s
|
19
|
+
--health-retries 5
|
20
|
+
ports:
|
21
|
+
# Maps tcp port 5432 on service container to the host
|
22
|
+
- 5432:5432
|
23
|
+
|
24
|
+
strategy:
|
25
|
+
fail-fast: false
|
26
|
+
matrix:
|
27
|
+
ruby-version: ['3.2', '3.3', '3.4']
|
28
|
+
gemfile: ['7.0', '7.1', '7.2', '8.0']
|
29
|
+
exclude:
|
30
|
+
- ruby-version: '3.4'
|
31
|
+
gemfile: '7.0'
|
32
|
+
|
33
|
+
steps:
|
34
|
+
- uses: actions/checkout@v4
|
35
|
+
- uses: ruby/setup-ruby@v1
|
36
|
+
with:
|
37
|
+
ruby-version: ${{ matrix.ruby-version }}
|
38
|
+
- run: bundle install
|
39
|
+
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
|
40
|
+
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
|
41
|
+
- run: bundle exec rspec
|
42
|
+
env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps
|
43
|
+
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
|
44
|
+
# The hostname used to communicate with the PostgreSQL service container
|
45
|
+
POSTGRES_HOST: localhost
|
46
|
+
# The default PostgreSQL port
|
47
|
+
POSTGRES_PORT: 5432
|
48
|
+
POSTGRES_PASSWORD: postgres
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Translateable
|
2
2
|
|
3
|
-
[](https://github.com/olegantonyan/translateable/actions/workflows/tests.yml)
|
4
4
|
[](https://badge.fury.io/rb/translateable)
|
5
5
|
|
6
6
|
Allows you to store text data in multiple languages with your ActiveRecord models. Similar to [globalize](https://github.com/globalize/globalize), but with a few differences:
|
@@ -0,0 +1,7 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
|
3
|
+
gem 'activerecord', '~> 7.0.0'
|
4
|
+
gem 'activesupport', '~> 7.0.0'
|
5
|
+
gem 'concurrent-ruby', '1.3.4' # https://stackoverflow.com/questions/79360526/uninitialized-constant-activesupportloggerthreadsafelevellogger-nameerror
|
6
|
+
|
7
|
+
gemspec path: '../'
|
data/lib/translateable.rb
CHANGED
@@ -9,6 +9,8 @@ module Translateable
|
|
9
9
|
"#{attr}_translateable"
|
10
10
|
end
|
11
11
|
|
12
|
+
AttributeValue = Struct.new(:locale, :data)
|
13
|
+
|
12
14
|
module ClassMethods
|
13
15
|
def translateable(*attrs)
|
14
16
|
attrs.each do |attr|
|
@@ -46,7 +48,7 @@ module Translateable
|
|
46
48
|
|
47
49
|
define_method(Translateable.translateable_attribute_by_name(attr)) do
|
48
50
|
value = send("#{attr}_fetch_translateable")
|
49
|
-
value.map { |k, v|
|
51
|
+
value.map { |k, v| AttributeValue.new(locale: k, data: v) }
|
50
52
|
end
|
51
53
|
|
52
54
|
define_method("#{attr}_translateable_attributes=") do |arg|
|
data/translateable.gemspec
CHANGED
@@ -19,8 +19,8 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.require_paths = %w(lib)
|
20
20
|
|
21
21
|
spec.add_development_dependency 'bundler'
|
22
|
-
spec.add_development_dependency 'rake'
|
23
|
-
spec.add_development_dependency 'rspec'
|
22
|
+
spec.add_development_dependency 'rake'
|
23
|
+
spec.add_development_dependency 'rspec'
|
24
24
|
|
25
25
|
spec.add_dependency 'activerecord', '>= 5.0'
|
26
26
|
spec.add_dependency 'activesupport', '>= 5.0'
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: translateable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Oleg Antonyan
|
8
|
-
autorequire:
|
9
8
|
bindir: exe
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-03-29 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: bundler
|
@@ -28,30 +27,30 @@ dependencies:
|
|
28
27
|
name: rake
|
29
28
|
requirement: !ruby/object:Gem::Requirement
|
30
29
|
requirements:
|
31
|
-
- - "
|
30
|
+
- - ">="
|
32
31
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
32
|
+
version: '0'
|
34
33
|
type: :development
|
35
34
|
prerelease: false
|
36
35
|
version_requirements: !ruby/object:Gem::Requirement
|
37
36
|
requirements:
|
38
|
-
- - "
|
37
|
+
- - ">="
|
39
38
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
39
|
+
version: '0'
|
41
40
|
- !ruby/object:Gem::Dependency
|
42
41
|
name: rspec
|
43
42
|
requirement: !ruby/object:Gem::Requirement
|
44
43
|
requirements:
|
45
|
-
- - "
|
44
|
+
- - ">="
|
46
45
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
46
|
+
version: '0'
|
48
47
|
type: :development
|
49
48
|
prerelease: false
|
50
49
|
version_requirements: !ruby/object:Gem::Requirement
|
51
50
|
requirements:
|
52
|
-
- - "
|
51
|
+
- - ">="
|
53
52
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
53
|
+
version: '0'
|
55
54
|
- !ruby/object:Gem::Dependency
|
56
55
|
name: activerecord
|
57
56
|
requirement: !ruby/object:Gem::Requirement
|
@@ -116,9 +115,9 @@ executables: []
|
|
116
115
|
extensions: []
|
117
116
|
extra_rdoc_files: []
|
118
117
|
files:
|
118
|
+
- ".github/workflows/tests.yml"
|
119
119
|
- ".gitignore"
|
120
120
|
- ".rspec"
|
121
|
-
- ".travis.yml"
|
122
121
|
- CODE_OF_CONDUCT.md
|
123
122
|
- Gemfile
|
124
123
|
- LICENSE.txt
|
@@ -126,9 +125,10 @@ files:
|
|
126
125
|
- Rakefile
|
127
126
|
- bin/console
|
128
127
|
- bin/setup
|
129
|
-
- gemfiles/
|
130
|
-
- gemfiles/
|
131
|
-
- gemfiles/
|
128
|
+
- gemfiles/7.0.gemfile
|
129
|
+
- gemfiles/7.1.gemfile
|
130
|
+
- gemfiles/7.2.gemfile
|
131
|
+
- gemfiles/8.0.gemfile
|
132
132
|
- lib/generators/translateable/migration_generator.rb
|
133
133
|
- lib/generators/translateable/templates/migration.rb.erb
|
134
134
|
- lib/translateable.rb
|
@@ -138,7 +138,6 @@ homepage: https://github.com/olegantonyan/translateable
|
|
138
138
|
licenses:
|
139
139
|
- MIT
|
140
140
|
metadata: {}
|
141
|
-
post_install_message:
|
142
141
|
rdoc_options: []
|
143
142
|
require_paths:
|
144
143
|
- lib
|
@@ -153,8 +152,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
153
152
|
- !ruby/object:Gem::Version
|
154
153
|
version: '0'
|
155
154
|
requirements: []
|
156
|
-
rubygems_version: 3.
|
157
|
-
signing_key:
|
155
|
+
rubygems_version: 3.6.2
|
158
156
|
specification_version: 4
|
159
157
|
summary: Allows to store text data in different languages.
|
160
158
|
test_files: []
|
data/.travis.yml
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
rvm:
|
3
|
-
- 2.5.0
|
4
|
-
- 2.6.1
|
5
|
-
|
6
|
-
gemfile:
|
7
|
-
- gemfiles/5.0.gemfile
|
8
|
-
- gemfiles/5.2.gemfile
|
9
|
-
- gemfiles/6.0.gemfile
|
10
|
-
|
11
|
-
script:
|
12
|
-
- bundle exec rspec
|
13
|
-
|
14
|
-
before_install: gem install bundler
|
15
|
-
|
16
|
-
services:
|
17
|
-
- postgresql
|
18
|
-
|
19
|
-
addons:
|
20
|
-
postgresql: "9.4"
|
data/gemfiles/5.0.gemfile
DELETED
data/gemfiles/5.2.gemfile
DELETED