sidekiq 3.4.1 → 7.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (235) hide show
  1. checksums.yaml +5 -5
  2. data/Changes.md +1118 -4
  3. data/LICENSE.txt +9 -0
  4. data/README.md +55 -47
  5. data/bin/multi_queue_bench +271 -0
  6. data/bin/sidekiq +26 -3
  7. data/bin/sidekiqload +247 -0
  8. data/bin/sidekiqmon +11 -0
  9. data/lib/generators/sidekiq/job_generator.rb +57 -0
  10. data/lib/generators/sidekiq/templates/{worker.rb.erb → job.rb.erb} +2 -2
  11. data/lib/generators/sidekiq/templates/job_spec.rb.erb +6 -0
  12. data/lib/generators/sidekiq/templates/job_test.rb.erb +8 -0
  13. data/lib/sidekiq/api.rb +714 -312
  14. data/lib/sidekiq/capsule.rb +130 -0
  15. data/lib/sidekiq/cli.rb +275 -241
  16. data/lib/sidekiq/client.rb +141 -110
  17. data/lib/sidekiq/component.rb +68 -0
  18. data/lib/sidekiq/config.rb +291 -0
  19. data/lib/sidekiq/deploy.rb +62 -0
  20. data/lib/sidekiq/embedded.rb +61 -0
  21. data/lib/sidekiq/fetch.rb +53 -121
  22. data/lib/sidekiq/iterable_job.rb +53 -0
  23. data/lib/sidekiq/job/interrupt_handler.rb +22 -0
  24. data/lib/sidekiq/job/iterable/active_record_enumerator.rb +53 -0
  25. data/lib/sidekiq/job/iterable/csv_enumerator.rb +47 -0
  26. data/lib/sidekiq/job/iterable/enumerators.rb +135 -0
  27. data/lib/sidekiq/job/iterable.rb +231 -0
  28. data/lib/sidekiq/job.rb +385 -0
  29. data/lib/sidekiq/job_logger.rb +64 -0
  30. data/lib/sidekiq/job_retry.rb +305 -0
  31. data/lib/sidekiq/job_util.rb +107 -0
  32. data/lib/sidekiq/launcher.rb +241 -66
  33. data/lib/sidekiq/logger.rb +131 -0
  34. data/lib/sidekiq/manager.rb +91 -192
  35. data/lib/sidekiq/metrics/query.rb +156 -0
  36. data/lib/sidekiq/metrics/shared.rb +95 -0
  37. data/lib/sidekiq/metrics/tracking.rb +140 -0
  38. data/lib/sidekiq/middleware/chain.rb +114 -56
  39. data/lib/sidekiq/middleware/current_attributes.rb +111 -0
  40. data/lib/sidekiq/middleware/i18n.rb +8 -7
  41. data/lib/sidekiq/middleware/modules.rb +21 -0
  42. data/lib/sidekiq/monitor.rb +146 -0
  43. data/lib/sidekiq/paginator.rb +29 -16
  44. data/lib/sidekiq/processor.rb +248 -112
  45. data/lib/sidekiq/rails.rb +61 -27
  46. data/lib/sidekiq/redis_client_adapter.rb +114 -0
  47. data/lib/sidekiq/redis_connection.rb +68 -48
  48. data/lib/sidekiq/ring_buffer.rb +29 -0
  49. data/lib/sidekiq/scheduled.rb +173 -52
  50. data/lib/sidekiq/sd_notify.rb +149 -0
  51. data/lib/sidekiq/systemd.rb +24 -0
  52. data/lib/sidekiq/testing/inline.rb +7 -5
  53. data/lib/sidekiq/testing.rb +206 -65
  54. data/lib/sidekiq/transaction_aware_client.rb +51 -0
  55. data/lib/sidekiq/version.rb +4 -1
  56. data/lib/sidekiq/web/action.rb +99 -0
  57. data/lib/sidekiq/web/application.rb +479 -0
  58. data/lib/sidekiq/web/csrf_protection.rb +183 -0
  59. data/lib/sidekiq/web/helpers.rb +415 -0
  60. data/lib/sidekiq/web/router.rb +104 -0
  61. data/lib/sidekiq/web.rb +158 -200
  62. data/lib/sidekiq/worker_compatibility_alias.rb +13 -0
  63. data/lib/sidekiq.rb +100 -132
  64. data/sidekiq.gemspec +27 -23
  65. data/web/assets/images/apple-touch-icon.png +0 -0
  66. data/web/assets/images/favicon.ico +0 -0
  67. data/web/assets/javascripts/application.js +177 -72
  68. data/web/assets/javascripts/base-charts.js +106 -0
  69. data/web/assets/javascripts/chart.min.js +13 -0
  70. data/web/assets/javascripts/chartjs-plugin-annotation.min.js +7 -0
  71. data/web/assets/javascripts/dashboard-charts.js +192 -0
  72. data/web/assets/javascripts/dashboard.js +37 -286
  73. data/web/assets/javascripts/metrics.js +298 -0
  74. data/web/assets/stylesheets/application-dark.css +147 -0
  75. data/web/assets/stylesheets/application-rtl.css +163 -0
  76. data/web/assets/stylesheets/application.css +228 -247
  77. data/web/assets/stylesheets/bootstrap-rtl.min.css +9 -0
  78. data/web/assets/stylesheets/bootstrap.css +4 -8
  79. data/web/locales/ar.yml +87 -0
  80. data/web/locales/cs.yml +62 -52
  81. data/web/locales/da.yml +60 -53
  82. data/web/locales/de.yml +65 -53
  83. data/web/locales/el.yml +43 -24
  84. data/web/locales/en.yml +86 -61
  85. data/web/locales/es.yml +70 -53
  86. data/web/locales/fa.yml +80 -0
  87. data/web/locales/fr.yml +86 -56
  88. data/web/locales/gd.yml +99 -0
  89. data/web/locales/he.yml +80 -0
  90. data/web/locales/hi.yml +59 -59
  91. data/web/locales/it.yml +53 -53
  92. data/web/locales/ja.yml +78 -56
  93. data/web/locales/ko.yml +52 -52
  94. data/web/locales/lt.yml +83 -0
  95. data/web/locales/{no.yml → nb.yml} +62 -54
  96. data/web/locales/nl.yml +52 -52
  97. data/web/locales/pl.yml +45 -45
  98. data/web/locales/pt-br.yml +83 -55
  99. data/web/locales/pt.yml +51 -51
  100. data/web/locales/ru.yml +68 -60
  101. data/web/locales/sv.yml +53 -53
  102. data/web/locales/ta.yml +60 -60
  103. data/web/locales/tr.yml +101 -0
  104. data/web/locales/uk.yml +77 -0
  105. data/web/locales/ur.yml +80 -0
  106. data/web/locales/vi.yml +83 -0
  107. data/web/locales/zh-cn.yml +43 -16
  108. data/web/locales/zh-tw.yml +42 -8
  109. data/web/views/_footer.erb +22 -9
  110. data/web/views/_job_info.erb +27 -6
  111. data/web/views/_metrics_period_select.erb +12 -0
  112. data/web/views/_nav.erb +8 -22
  113. data/web/views/_paging.erb +3 -1
  114. data/web/views/_poll_link.erb +4 -0
  115. data/web/views/_summary.erb +7 -7
  116. data/web/views/busy.erb +91 -31
  117. data/web/views/dashboard.erb +52 -22
  118. data/web/views/dead.erb +5 -4
  119. data/web/views/filtering.erb +7 -0
  120. data/web/views/layout.erb +19 -7
  121. data/web/views/metrics.erb +91 -0
  122. data/web/views/metrics_for_job.erb +59 -0
  123. data/web/views/morgue.erb +26 -20
  124. data/web/views/queue.erb +36 -25
  125. data/web/views/queues.erb +24 -7
  126. data/web/views/retries.erb +29 -21
  127. data/web/views/retry.erb +6 -5
  128. data/web/views/scheduled.erb +20 -17
  129. data/web/views/scheduled_job_info.erb +2 -1
  130. metadata +101 -232
  131. data/.gitignore +0 -12
  132. data/.travis.yml +0 -16
  133. data/3.0-Upgrade.md +0 -70
  134. data/COMM-LICENSE +0 -85
  135. data/Contributing.md +0 -32
  136. data/Gemfile +0 -22
  137. data/LICENSE +0 -9
  138. data/Pro-2.0-Upgrade.md +0 -138
  139. data/Pro-Changes.md +0 -412
  140. data/Rakefile +0 -9
  141. data/bin/sidekiqctl +0 -93
  142. data/lib/generators/sidekiq/templates/worker_spec.rb.erb +0 -6
  143. data/lib/generators/sidekiq/templates/worker_test.rb.erb +0 -8
  144. data/lib/generators/sidekiq/worker_generator.rb +0 -49
  145. data/lib/sidekiq/actor.rb +0 -39
  146. data/lib/sidekiq/core_ext.rb +0 -105
  147. data/lib/sidekiq/exception_handler.rb +0 -30
  148. data/lib/sidekiq/extensions/action_mailer.rb +0 -56
  149. data/lib/sidekiq/extensions/active_record.rb +0 -39
  150. data/lib/sidekiq/extensions/class_methods.rb +0 -39
  151. data/lib/sidekiq/extensions/generic_proxy.rb +0 -24
  152. data/lib/sidekiq/logging.rb +0 -104
  153. data/lib/sidekiq/middleware/server/active_record.rb +0 -13
  154. data/lib/sidekiq/middleware/server/logging.rb +0 -35
  155. data/lib/sidekiq/middleware/server/retry_jobs.rb +0 -206
  156. data/lib/sidekiq/util.rb +0 -55
  157. data/lib/sidekiq/web_helpers.rb +0 -234
  158. data/lib/sidekiq/worker.rb +0 -89
  159. data/test/config.yml +0 -9
  160. data/test/env_based_config.yml +0 -11
  161. data/test/fake_env.rb +0 -0
  162. data/test/fixtures/en.yml +0 -2
  163. data/test/helper.rb +0 -39
  164. data/test/test_api.rb +0 -494
  165. data/test/test_cli.rb +0 -365
  166. data/test/test_client.rb +0 -269
  167. data/test/test_exception_handler.rb +0 -55
  168. data/test/test_extensions.rb +0 -120
  169. data/test/test_fetch.rb +0 -104
  170. data/test/test_logging.rb +0 -34
  171. data/test/test_manager.rb +0 -164
  172. data/test/test_middleware.rb +0 -159
  173. data/test/test_processor.rb +0 -166
  174. data/test/test_redis_connection.rb +0 -127
  175. data/test/test_retry.rb +0 -373
  176. data/test/test_scheduled.rb +0 -120
  177. data/test/test_scheduling.rb +0 -71
  178. data/test/test_sidekiq.rb +0 -69
  179. data/test/test_testing.rb +0 -82
  180. data/test/test_testing_fake.rb +0 -271
  181. data/test/test_testing_inline.rb +0 -93
  182. data/test/test_web.rb +0 -594
  183. data/test/test_web_helpers.rb +0 -52
  184. data/test/test_worker_generator.rb +0 -17
  185. data/web/assets/images/bootstrap/glyphicons-halflings-white.png +0 -0
  186. data/web/assets/images/bootstrap/glyphicons-halflings.png +0 -0
  187. data/web/assets/images/status/active.png +0 -0
  188. data/web/assets/images/status/idle.png +0 -0
  189. data/web/assets/javascripts/locales/README.md +0 -27
  190. data/web/assets/javascripts/locales/jquery.timeago.ar.js +0 -96
  191. data/web/assets/javascripts/locales/jquery.timeago.bg.js +0 -18
  192. data/web/assets/javascripts/locales/jquery.timeago.bs.js +0 -49
  193. data/web/assets/javascripts/locales/jquery.timeago.ca.js +0 -18
  194. data/web/assets/javascripts/locales/jquery.timeago.cs.js +0 -18
  195. data/web/assets/javascripts/locales/jquery.timeago.cy.js +0 -20
  196. data/web/assets/javascripts/locales/jquery.timeago.da.js +0 -18
  197. data/web/assets/javascripts/locales/jquery.timeago.de.js +0 -18
  198. data/web/assets/javascripts/locales/jquery.timeago.el.js +0 -18
  199. data/web/assets/javascripts/locales/jquery.timeago.en-short.js +0 -20
  200. data/web/assets/javascripts/locales/jquery.timeago.en.js +0 -20
  201. data/web/assets/javascripts/locales/jquery.timeago.es.js +0 -18
  202. data/web/assets/javascripts/locales/jquery.timeago.et.js +0 -18
  203. data/web/assets/javascripts/locales/jquery.timeago.fa.js +0 -22
  204. data/web/assets/javascripts/locales/jquery.timeago.fi.js +0 -28
  205. data/web/assets/javascripts/locales/jquery.timeago.fr-short.js +0 -16
  206. data/web/assets/javascripts/locales/jquery.timeago.fr.js +0 -17
  207. data/web/assets/javascripts/locales/jquery.timeago.he.js +0 -18
  208. data/web/assets/javascripts/locales/jquery.timeago.hr.js +0 -49
  209. data/web/assets/javascripts/locales/jquery.timeago.hu.js +0 -18
  210. data/web/assets/javascripts/locales/jquery.timeago.hy.js +0 -18
  211. data/web/assets/javascripts/locales/jquery.timeago.id.js +0 -18
  212. data/web/assets/javascripts/locales/jquery.timeago.it.js +0 -16
  213. data/web/assets/javascripts/locales/jquery.timeago.ja.js +0 -19
  214. data/web/assets/javascripts/locales/jquery.timeago.ko.js +0 -17
  215. data/web/assets/javascripts/locales/jquery.timeago.lt.js +0 -20
  216. data/web/assets/javascripts/locales/jquery.timeago.mk.js +0 -20
  217. data/web/assets/javascripts/locales/jquery.timeago.nl.js +0 -20
  218. data/web/assets/javascripts/locales/jquery.timeago.no.js +0 -18
  219. data/web/assets/javascripts/locales/jquery.timeago.pl.js +0 -31
  220. data/web/assets/javascripts/locales/jquery.timeago.pt-br.js +0 -16
  221. data/web/assets/javascripts/locales/jquery.timeago.pt.js +0 -16
  222. data/web/assets/javascripts/locales/jquery.timeago.ro.js +0 -18
  223. data/web/assets/javascripts/locales/jquery.timeago.rs.js +0 -49
  224. data/web/assets/javascripts/locales/jquery.timeago.ru.js +0 -34
  225. data/web/assets/javascripts/locales/jquery.timeago.sk.js +0 -18
  226. data/web/assets/javascripts/locales/jquery.timeago.sl.js +0 -44
  227. data/web/assets/javascripts/locales/jquery.timeago.sv.js +0 -18
  228. data/web/assets/javascripts/locales/jquery.timeago.th.js +0 -20
  229. data/web/assets/javascripts/locales/jquery.timeago.tr.js +0 -16
  230. data/web/assets/javascripts/locales/jquery.timeago.uk.js +0 -34
  231. data/web/assets/javascripts/locales/jquery.timeago.uz.js +0 -19
  232. data/web/assets/javascripts/locales/jquery.timeago.zh-cn.js +0 -20
  233. data/web/assets/javascripts/locales/jquery.timeago.zh-tw.js +0 -20
  234. data/web/views/_poll.erb +0 -10
  235. /data/web/assets/images/{status-sd8051fd480.png → status.png} +0 -0
@@ -1,96 +0,0 @@
1
- (function() {
2
- function numpf(n, a) {
3
- return a[plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5];
4
- }
5
-
6
- jQuery.timeago.settings.strings = {
7
- prefixAgo: "منذ",
8
- prefixFromNow: "بعد",
9
- suffixAgo: null,
10
- suffixFromNow: null, // null OR "من الآن"
11
- second: function(value) { return numpf(value, [
12
- 'أقل من ثانية',
13
- 'ثانية واحدة',
14
- 'ثانيتين',
15
- '%d ثوانٍ',
16
- '%d ثانية',
17
- '%d ثانية']); },
18
- seconds: function(value) { return numpf(value, [
19
- 'أقل من ثانية',
20
- 'ثانية واحدة',
21
- 'ثانيتين',
22
- '%d ثوانٍ',
23
- '%d ثانية',
24
- '%d ثانية']); },
25
- minute: function(value) { return numpf(value, [
26
- 'أقل من دقيقة',
27
- 'دقيقة واحدة',
28
- 'دقيقتين',
29
- '%d دقائق',
30
- '%d دقيقة',
31
- 'دقيقة']); },
32
- minutes: function(value) { return numpf(value, [
33
- 'أقل من دقيقة',
34
- 'دقيقة واحدة',
35
- 'دقيقتين',
36
- '%d دقائق',
37
- '%d دقيقة',
38
- 'دقيقة']); },
39
- hour: function(value) { return numpf(value, [
40
- 'أقل من ساعة',
41
- 'ساعة واحدة',
42
- 'ساعتين',
43
- '%d ساعات',
44
- '%d ساعة',
45
- '%d ساعة']); },
46
- hours: function(value) { return numpf(value, [
47
- 'أقل من ساعة',
48
- 'ساعة واحدة',
49
- 'ساعتين',
50
- '%d ساعات',
51
- '%d ساعة',
52
- '%d ساعة']); },
53
- day: function(value) { return numpf(value, [
54
- 'أقل من يوم',
55
- 'يوم واحد',
56
- 'يومين',
57
- '%d أيام',
58
- '%d يومًا',
59
- '%d يوم']); },
60
- days: function(value) { return numpf(value, [
61
- 'أقل من يوم',
62
- 'يوم واحد',
63
- 'يومين',
64
- '%d أيام',
65
- '%d يومًا',
66
- '%d يوم']); },
67
- month: function(value) { return numpf(value, [
68
- 'أقل من شهر',
69
- 'شهر واحد',
70
- 'شهرين',
71
- '%d أشهر',
72
- '%d شهرًا',
73
- '%d شهر']); },
74
- months: function(value) { return numpf(value, [
75
- 'أقل من شهر',
76
- 'شهر واحد',
77
- 'شهرين',
78
- '%d أشهر',
79
- '%d شهرًا',
80
- '%d شهر']); },
81
- year: function(value) { return numpf(value, [
82
- 'أقل من عام',
83
- 'عام واحد',
84
- '%d عامين',
85
- '%d أعوام',
86
- '%d عامًا']);
87
- },
88
- years: function(value) { return numpf(value, [
89
- 'أقل من عام',
90
- 'عام واحد',
91
- 'عامين',
92
- '%d أعوام',
93
- '%d عامًا',
94
- '%d عام']);}
95
- };
96
- })();
@@ -1,18 +0,0 @@
1
- // Bulgarian
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "преди",
4
- prefixFromNow: "след",
5
- suffixAgo: null,
6
- suffixFromNow: null,
7
- seconds: "по-малко от минута",
8
- minute: "една минута",
9
- minutes: "%d минути",
10
- hour: "един час",
11
- hours: "%d часа",
12
- day: "един ден",
13
- days: "%d дни",
14
- month: "един месец",
15
- months: "%d месеца",
16
- year: "една година",
17
- years: "%d години"
18
- };
@@ -1,49 +0,0 @@
1
- // Bosnian
2
- (function() {
3
- var numpf;
4
-
5
- numpf = function(n, f, s, t) {
6
- var n10;
7
- n10 = n % 10;
8
- if (n10 === 1 && (n === 1 || n > 20)) {
9
- return f;
10
- } else if (n10 > 1 && n10 < 5 && (n > 20 || n < 10)) {
11
- return s;
12
- } else {
13
- return t;
14
- }
15
- };
16
-
17
- jQuery.timeago.settings.strings = {
18
- prefixAgo: "prije",
19
- prefixFromNow: "za",
20
- suffixAgo: null,
21
- suffixFromNow: null,
22
- second: "sekund",
23
- seconds: function(value) {
24
- return numpf(value, "%d sekund", "%d sekunde", "%d sekundi");
25
- },
26
- minute: "oko minut",
27
- minutes: function(value) {
28
- return numpf(value, "%d minut", "%d minute", "%d minuta");
29
- },
30
- hour: "oko sat",
31
- hours: function(value) {
32
- return numpf(value, "%d sat", "%d sata", "%d sati");
33
- },
34
- day: "oko jednog dana",
35
- days: function(value) {
36
- return numpf(value, "%d dan", "%d dana", "%d dana");
37
- },
38
- month: "mjesec dana",
39
- months: function(value) {
40
- return numpf(value, "%d mjesec", "%d mjeseca", "%d mjeseci");
41
- },
42
- year: "prije godinu dana ",
43
- years: function(value) {
44
- return numpf(value, "%d godinu", "%d godine", "%d godina");
45
- },
46
- wordSeparator: " "
47
- };
48
-
49
- }).call(this);
@@ -1,18 +0,0 @@
1
- // Catalan
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "fa",
4
- prefixFromNow: "d'aqui a",
5
- suffixAgo: null,
6
- suffixFromNow: null,
7
- seconds: "menys d'1 minut",
8
- minute: "1 minut",
9
- minutes: "uns %d minuts",
10
- hour: "1 hora",
11
- hours: "unes %d hores",
12
- day: "1 dia",
13
- days: "%d dies",
14
- month: "aproximadament un mes",
15
- months: "%d mesos",
16
- year: "aproximadament un any",
17
- years: "%d anys"
18
- };
@@ -1,18 +0,0 @@
1
- // Czech
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "před",
4
- prefixFromNow: null,
5
- suffixAgo: null,
6
- suffixFromNow: null,
7
- seconds: "méně než minutou",
8
- minute: "minutou",
9
- minutes: "%d minutami",
10
- hour: "hodinou",
11
- hours: "%d hodinami",
12
- day: "1 dnem",
13
- days: "%d dny",
14
- month: "1 měsícem",
15
- months: "%d měsíci",
16
- year: "1 rokem",
17
- years: "%d roky"
18
- };
@@ -1,20 +0,0 @@
1
- // Welsh
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "yn ôl",
6
- suffixFromNow: "o hyn",
7
- seconds: "llai na munud",
8
- minute: "am funud",
9
- minutes: "%d munud",
10
- hour: "tua awr",
11
- hours: "am %d awr",
12
- day: "y dydd",
13
- days: "%d diwrnod",
14
- month: "tua mis",
15
- months: "%d mis",
16
- year: "am y flwyddyn",
17
- years: "%d blynedd",
18
- wordSeparator: " ",
19
- numbers: []
20
- };
@@ -1,18 +0,0 @@
1
- // Danish
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "for",
4
- prefixFromNow: "om",
5
- suffixAgo: "siden",
6
- suffixFromNow: "",
7
- seconds: "mindre end et minut",
8
- minute: "ca. et minut",
9
- minutes: "%d minutter",
10
- hour: "ca. en time",
11
- hours: "ca. %d timer",
12
- day: "en dag",
13
- days: "%d dage",
14
- month: "ca. en måned",
15
- months: "%d måneder",
16
- year: "ca. et år",
17
- years: "%d år"
18
- };
@@ -1,18 +0,0 @@
1
- // German
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "vor",
4
- prefixFromNow: "in",
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "wenigen Sekunden",
8
- minute: "etwa einer Minute",
9
- minutes: "%d Minuten",
10
- hour: "etwa einer Stunde",
11
- hours: "%d Stunden",
12
- day: "etwa einem Tag",
13
- days: "%d Tagen",
14
- month: "etwa einem Monat",
15
- months: "%d Monaten",
16
- year: "etwa einem Jahr",
17
- years: "%d Jahren"
18
- };
@@ -1,18 +0,0 @@
1
- // Greek
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "πριν",
4
- prefixFromNow: "σε",
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "λιγότερο από ένα λεπτό",
8
- minute: "περίπου ένα λεπτό",
9
- minutes: "%d λεπτά",
10
- hour: "περίπου μία ώρα",
11
- hours: "περίπου %d ώρες",
12
- day: "μία μέρα",
13
- days: "%d μέρες",
14
- month: "περίπου ένα μήνα",
15
- months: "%d μήνες",
16
- year: "περίπου ένα χρόνο",
17
- years: "%d χρόνια"
18
- };
@@ -1,20 +0,0 @@
1
- // English shortened
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "1m",
8
- minute: "1m",
9
- minutes: "%dm",
10
- hour: "1h",
11
- hours: "%dh",
12
- day: "1d",
13
- days: "%dd",
14
- month: "1mo",
15
- months: "%dmo",
16
- year: "1yr",
17
- years: "%dyr",
18
- wordSeparator: " ",
19
- numbers: []
20
- };
@@ -1,20 +0,0 @@
1
- // English (Template)
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "ago",
6
- suffixFromNow: "from now",
7
- seconds: "less than a minute",
8
- minute: "about a minute",
9
- minutes: "%d minutes",
10
- hour: "about an hour",
11
- hours: "about %d hours",
12
- day: "a day",
13
- days: "%d days",
14
- month: "about a month",
15
- months: "%d months",
16
- year: "about a year",
17
- years: "%d years",
18
- wordSeparator: " ",
19
- numbers: []
20
- };
@@ -1,18 +0,0 @@
1
- // Spanish
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "hace",
4
- prefixFromNow: "dentro de",
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "menos de un minuto",
8
- minute: "un minuto",
9
- minutes: "unos %d minutos",
10
- hour: "una hora",
11
- hours: "%d horas",
12
- day: "un día",
13
- days: "%d días",
14
- month: "un mes",
15
- months: "%d meses",
16
- year: "un año",
17
- years: "%d años"
18
- };
@@ -1,18 +0,0 @@
1
- // Estonian
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "tagasi",
6
- suffixFromNow: "pärast",
7
- seconds: function(n, d) { return d < 0 ? "vähem kui minuti aja" : "vähem kui minut aega" },
8
- minute: function(n, d) { return d < 0 ? "umbes minuti aja" : "umbes minut aega" },
9
- minutes: function(n, d) { return d < 0 ? "%d minuti" : "%d minutit" },
10
- hour: function(n, d) { return d < 0 ? "umbes tunni aja" : "umbes tund aega" },
11
- hours: function(n, d) { return d < 0 ? "%d tunni" : "%d tundi" },
12
- day: function(n, d) { return d < 0 ? "umbes päeva" : "umbes päev" },
13
- days: function(n, d) { return d < 0 ? "%d päeva" : "%d päeva" },
14
- month: function(n, d) { return d < 0 ? "umbes kuu aja" : "umbes kuu aega" },
15
- months: function(n, d) { return d < 0 ? "%d kuu" : "%d kuud" },
16
- year: function(n, d) { return d < 0 ? "umbes aasta aja" : "umbes aasta aega" },
17
- years: function(n, d) { return d < 0 ? "%d aasta" : "%d aastat" }
18
- };
@@ -1,22 +0,0 @@
1
- 
2
- // Persian
3
- // Use DIR attribute for RTL text in Persian Language for ABBR tag .
4
- // By MB.seifollahi@gmail.com
5
- jQuery.timeago.settings.strings = {
6
- prefixAgo: null,
7
- prefixFromNow: null,
8
- suffixAgo: "پیش",
9
- suffixFromNow: "از حال",
10
- seconds: "کمتر از یک دقیقه",
11
- minute: "حدود یک دقیقه",
12
- minutes: "%d دقیقه",
13
- hour: "حدود یک ساعت",
14
- hours: "حدود %d ساعت",
15
- day: "یک روز",
16
- days: "%d روز",
17
- month: "حدود یک ماه",
18
- months: "%d ماه",
19
- year: "حدود یک سال",
20
- years: "%d سال",
21
- wordSeparator: " "
22
- };
@@ -1,28 +0,0 @@
1
- // Finnish
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "sitten",
6
- suffixFromNow: "tulevaisuudessa",
7
- seconds: "alle minuutti",
8
- minute: "minuutti",
9
- minutes: "%d minuuttia",
10
- hour: "tunti",
11
- hours: "%d tuntia",
12
- day: "päivä",
13
- days: "%d päivää",
14
- month: "kuukausi",
15
- months: "%d kuukautta",
16
- year: "vuosi",
17
- years: "%d vuotta"
18
- };
19
-
20
- // The above is not a great localization because one would usually
21
- // write "2 days ago" in Finnish as "2 päivää sitten", however
22
- // one would write "2 days into the future" as "2:n päivän päästä"
23
- // which cannot be achieved with localization support this simple.
24
- // This is because Finnish has word suffixes (attached directly
25
- // to the end of the word). The word "day" is "päivä" in Finnish.
26
- // As workaround, the above localizations will say
27
- // "2 päivää tulevaisuudessa" which is understandable but
28
- // not as fluent.
@@ -1,16 +0,0 @@
1
- // French shortened
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "il y a",
4
- prefixFromNow: "d'ici",
5
- seconds: "moins d'une minute",
6
- minute: "une minute",
7
- minutes: "%d minutes",
8
- hour: "une heure",
9
- hours: "%d heures",
10
- day: "un jour",
11
- days: "%d jours",
12
- month: "un mois",
13
- months: "%d mois",
14
- year: "un an",
15
- years: "%d ans"
16
- };
@@ -1,17 +0,0 @@
1
- // French
2
- jQuery.timeago.settings.strings = {
3
- // environ ~= about, it's optional
4
- prefixAgo: "il y a",
5
- prefixFromNow: "d'ici",
6
- seconds: "moins d'une minute",
7
- minute: "environ une minute",
8
- minutes: "environ %d minutes",
9
- hour: "environ une heure",
10
- hours: "environ %d heures",
11
- day: "environ un jour",
12
- days: "environ %d jours",
13
- month: "environ un mois",
14
- months: "environ %d mois",
15
- year: "un an",
16
- years: "%d ans"
17
- };
@@ -1,18 +0,0 @@
1
- // Hebrew
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "לפני",
4
- prefixFromNow: "מעכשיו",
5
- suffixAgo: "",
6
- suffixFromNow: "",
7
- seconds: "פחות מדקה",
8
- minute: "דקה",
9
- minutes: "%d דקות",
10
- hour: "שעה",
11
- hours: "%d שעות",
12
- day: "יום",
13
- days: "%d ימים",
14
- month: "חודש",
15
- months: "%d חודשים",
16
- year: "שנה",
17
- years: "%d שנים"
18
- };
@@ -1,49 +0,0 @@
1
- // Croatian
2
- (function () {
3
- var numpf;
4
-
5
- numpf = function (n, f, s, t) {
6
- var n10;
7
- n10 = n % 10;
8
- if (n10 === 1 && (n === 1 || n > 20)) {
9
- return f;
10
- } else if (n10 > 1 && n10 < 5 && (n > 20 || n < 10)) {
11
- return s;
12
- } else {
13
- return t;
14
- }
15
- };
16
-
17
- jQuery.timeago.settings.strings = {
18
- prefixAgo: "prije",
19
- prefixFromNow: "za",
20
- suffixAgo: null,
21
- suffixFromNow: null,
22
- second: "sekundu",
23
- seconds: function (value) {
24
- return numpf(value, "%d sekundu", "%d sekunde", "%d sekundi");
25
- },
26
- minute: "oko minutu",
27
- minutes: function (value) {
28
- return numpf(value, "%d minutu", "%d minute", "%d minuta");
29
- },
30
- hour: "oko jedan sat",
31
- hours: function (value) {
32
- return numpf(value, "%d sat", "%d sata", "%d sati");
33
- },
34
- day: "jedan dan",
35
- days: function (value) {
36
- return numpf(value, "%d dan", "%d dana", "%d dana");
37
- },
38
- month: "mjesec dana",
39
- months: function (value) {
40
- return numpf(value, "%d mjesec", "%d mjeseca", "%d mjeseci");
41
- },
42
- year: "prije godinu dana",
43
- years: function (value) {
44
- return numpf(value, "%d godinu", "%d godine", "%d godina");
45
- },
46
- wordSeparator: " "
47
- };
48
-
49
- }).call(this);
@@ -1,18 +0,0 @@
1
- // Hungarian
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: null,
6
- suffixFromNow: null,
7
- seconds: "kevesebb mint egy perce",
8
- minute: "körülbelül egy perce",
9
- minutes: "%d perce",
10
- hour: "körülbelül egy órája",
11
- hours: "körülbelül %d órája",
12
- day: "körülbelül egy napja",
13
- days: "%d napja",
14
- month: "körülbelül egy hónapja",
15
- months: "%d hónapja",
16
- year: "körülbelül egy éve",
17
- years: "%d éve"
18
- };
@@ -1,18 +0,0 @@
1
- // Armenian
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "առաջ",
6
- suffixFromNow: "հետո",
7
- seconds: "վայրկյաններ",
8
- minute: "մեկ րոպե",
9
- minutes: "%d րոպե",
10
- hour: "մեկ ժամ",
11
- hours: "%d ժամ",
12
- day: "մեկ օր",
13
- days: "%d օր",
14
- month: "մեկ ամիս",
15
- months: "%d ամիս",
16
- year: "մեկ տարի",
17
- years: "%d տարի"
18
- };
@@ -1,18 +0,0 @@
1
- // Indonesian
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: null,
4
- prefixFromNow: null,
5
- suffixAgo: "yang lalu",
6
- suffixFromNow: "dari sekarang",
7
- seconds: "kurang dari semenit",
8
- minute: "sekitar satu menit",
9
- minutes: "%d menit",
10
- hour: "sekitar sejam",
11
- hours: "sekitar %d jam",
12
- day: "sehari",
13
- days: "%d hari",
14
- month: "sekitar sebulan",
15
- months: "%d bulan",
16
- year: "sekitar setahun",
17
- years: "%d tahun"
18
- };
@@ -1,16 +0,0 @@
1
- // Italian
2
- jQuery.timeago.settings.strings = {
3
- suffixAgo: "fa",
4
- suffixFromNow: "da ora",
5
- seconds: "meno di un minuto",
6
- minute: "circa un minuto",
7
- minutes: "%d minuti",
8
- hour: "circa un'ora",
9
- hours: "circa %d ore",
10
- day: "un giorno",
11
- days: "%d giorni",
12
- month: "circa un mese",
13
- months: "%d mesi",
14
- year: "circa un anno",
15
- years: "%d anni"
16
- };
@@ -1,19 +0,0 @@
1
- // Japanese
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "",
4
- prefixFromNow: "今から",
5
- suffixAgo: "前",
6
- suffixFromNow: "後",
7
- seconds: "1 分未満",
8
- minute: "約 1 分",
9
- minutes: "%d 分",
10
- hour: "約 1 時間",
11
- hours: "約 %d 時間",
12
- day: "約 1 日",
13
- days: "約 %d 日",
14
- month: "約 1 月",
15
- months: "約 %d 月",
16
- year: "約 1 年",
17
- years: "約 %d 年",
18
- wordSeparator: ""
19
- };
@@ -1,17 +0,0 @@
1
- // Korean
2
- jQuery.timeago.settings.strings = {
3
- suffixAgo: "전",
4
- suffixFromNow: "후",
5
- seconds: "1분 이내",
6
- minute: "1분",
7
- minutes: "%d분",
8
- hour: "1시간",
9
- hours: "%d시간",
10
- day: "하루",
11
- days: "%d일",
12
- month: "한 달",
13
- months: "%d달",
14
- year: "1년",
15
- years: "%d년",
16
- wordSeparator: " "
17
- };
@@ -1,20 +0,0 @@
1
- //Lithuanian
2
- jQuery.timeago.settings.strings = {
3
- prefixAgo: "prieš",
4
- prefixFromNow: null,
5
- suffixAgo: null,
6
- suffixFromNow: "nuo dabar",
7
- seconds: "%d sek.",
8
- minute: "min.",
9
- minutes: "%d min.",
10
- hour: "val.",
11
- hours: "%d val.",
12
- day: "1 d.",
13
- days: "%d d.",
14
- month: "mėn.",
15
- months: "%d mėn.",
16
- year: "metus",
17
- years: "%d metus",
18
- wordSeparator: " ",
19
- numbers: []
20
- };