etc 1.4.5 → 1.5.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 498daaac5148043cbab0229b5d3b61e9a21686221526d500e9a9e1230a87ee54
4
- data.tar.gz: 7795ea2122ceb03395ad234b35786bb6730689fbde1c7d1eb371e13a2c33e443
3
+ metadata.gz: 943a3225a878dc77a8bd71d1e30810d146928883be47a544e1a73cfe52572cba
4
+ data.tar.gz: 361fa2972e93f1839201229103c9805b79f3b94f8aaf5c596d91cb3ab945a274
5
5
  SHA512:
6
- metadata.gz: f5aaafa9514d0d6655cc50214ed8e6429618b0ab1ae400db59d31e454258e0e205d51b32c67b2bc9809c49f2fe34a0b79907c61458427f640529830753bebbec
7
- data.tar.gz: 6ffe4ac0df5f414a4f7e6ca3597267eec3487230e5b646a316ce22d1688e7b4b0490a9e4dee39f72cad16263e55bca6342c4fe40e32cb724b904d3d0b4e332fa
6
+ metadata.gz: 92fcbcbe5e6dcc8eac8f993d264dca6cc47aa75025c24921d1e571a829fbf7bbd44dd34dacca2ccff5841d711562d00899d4fb5f9d9ecc8510d9a1eeaf3f25ae
7
+ data.tar.gz: e64f3c4e450c1c7c3bb02d490b8af1e4166715e2f9f8a04d02805cd7ca39e465089007752155728e3f999ae7971cfc9c16de4995cb1c2a34fdd58c5d6e584fc9
data/COPYING ADDED
@@ -0,0 +1,56 @@
1
+ Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
2
+ You can redistribute it and/or modify it under either the terms of the
3
+ 2-clause BSDL (see the file BSDL), or the conditions below:
4
+
5
+ 1. You may make and give away verbatim copies of the source form of the
6
+ software without restriction, provided that you duplicate all of the
7
+ original copyright notices and associated disclaimers.
8
+
9
+ 2. You may modify your copy of the software in any way, provided that
10
+ you do at least ONE of the following:
11
+
12
+ a. place your modifications in the Public Domain or otherwise
13
+ make them Freely Available, such as by posting said
14
+ modifications to Usenet or an equivalent medium, or by allowing
15
+ the author to include your modifications in the software.
16
+
17
+ b. use the modified software only within your corporation or
18
+ organization.
19
+
20
+ c. give non-standard binaries non-standard names, with
21
+ instructions on where to get the original software distribution.
22
+
23
+ d. make other distribution arrangements with the author.
24
+
25
+ 3. You may distribute the software in object code or binary form,
26
+ provided that you do at least ONE of the following:
27
+
28
+ a. distribute the binaries and library files of the software,
29
+ together with instructions (in the manual page or equivalent)
30
+ on where to get the original distribution.
31
+
32
+ b. accompany the distribution with the machine-readable source of
33
+ the software.
34
+
35
+ c. give non-standard binaries non-standard names, with
36
+ instructions on where to get the original software distribution.
37
+
38
+ d. make other distribution arrangements with the author.
39
+
40
+ 4. You may modify and include the part of the software into any other
41
+ software (possibly commercial). But some files in the distribution
42
+ are not written by the author, so that they are not under these terms.
43
+
44
+ For the list of those files and their copying conditions, see the
45
+ file LEGAL.
46
+
47
+ 5. The scripts and library files supplied as input to or produced as
48
+ output from the software do not automatically fall under the
49
+ copyright of the software, but belong to whomever generated them,
50
+ and may be sold commercially, and may be aggregated with this
51
+ software.
52
+
53
+ 6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
54
+ IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
55
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
56
+ PURPOSE.
data/ChangeLog CHANGED
@@ -1,9 +1,9 @@
1
1
  -*- coding: utf-8 -*-
2
2
 
3
- commit 5019f4314a899cd231c51e1e1225fe035adf4aac
3
+ commit a14a3088be679154dddab67f4cae2ff395598b78
4
4
  Author: Hiroshi SHIBATA <hsbt@ruby-lang.org>
5
- AuthorDate: 2024-12-03 13:53:43 +0900
5
+ AuthorDate: 2026-10-08 12:10:35 +0900
6
6
  Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org>
7
- CommitDate: 2024-12-03 13:53:43 +0900
7
+ CommitDate: 2026-10-08 12:10:35 +0900
8
8
 
9
- Bump up 1.4.5
9
+ Bump up to 1.5.0
data/README.md CHANGED
@@ -5,6 +5,7 @@ The Etc module provides access to information typically stored in files in the /
5
5
  The information accessible consists of the information found in the `/etc/passwd` and `/etc/group` files, plus information about he system's temporary directory (/tmp) and configuration directory (/etc).
6
6
 
7
7
  The Etc module provides a more reliable way to access information about the logged in user than environment variables such as +$USER+.
8
+ Read the [API RDoc](https://docs.ruby-lang.org/en/master/Etc.html).
8
9
 
9
10
  ## Installation
10
11
 
data/ext/etc/etc.c CHANGED
@@ -56,7 +56,7 @@ static VALUE sGroup;
56
56
  #endif
57
57
  RUBY_EXTERN char *getlogin(void);
58
58
 
59
- #define RUBY_ETC_VERSION "1.4.5"
59
+ #define RUBY_ETC_VERSION "1.5.0"
60
60
 
61
61
  #define SYMBOL_LIT(str) ID2SYM(rb_intern_const(str ""))
62
62
 
@@ -800,6 +800,8 @@ static VALUE
800
800
  etc_uname(VALUE obj)
801
801
  {
802
802
  #ifdef _WIN32
803
+ typedef long (WINAPI version_func)(OSVERSIONINFOW *);
804
+ version_func *pRtlGetVersion;
803
805
  OSVERSIONINFOW v;
804
806
  SYSTEM_INFO s;
805
807
  const char *sysname, *mach;
@@ -808,23 +810,14 @@ etc_uname(VALUE obj)
808
810
  DWORD len = 0;
809
811
  WCHAR *buf;
810
812
 
813
+ /* GetVersionEx reports 6.2 unless the manifest declares Windows 8.1 or later */
814
+ pRtlGetVersion = (version_func *)GetProcAddress(GetModuleHandleW(L"ntdll.dll"), "RtlGetVersion");
811
815
  v.dwOSVersionInfoSize = sizeof(v);
812
- if (!GetVersionExW(&v))
813
- rb_sys_fail("GetVersionEx");
816
+ if (!pRtlGetVersion || pRtlGetVersion(&v))
817
+ rb_notimplement();
814
818
 
815
819
  result = rb_hash_new();
816
- switch (v.dwPlatformId) {
817
- case VER_PLATFORM_WIN32s:
818
- sysname = "Win32s";
819
- break;
820
- case VER_PLATFORM_WIN32_NT:
821
- sysname = "Windows_NT";
822
- break;
823
- case VER_PLATFORM_WIN32_WINDOWS:
824
- default:
825
- sysname = "Windows";
826
- break;
827
- }
820
+ sysname = "Windows_NT";
828
821
  rb_hash_aset(result, SYMBOL_LIT("sysname"), rb_str_new_cstr(sysname));
829
822
  release = rb_sprintf("%lu.%lu.%lu", v.dwMajorVersion, v.dwMinorVersion, v.dwBuildNumber);
830
823
  rb_hash_aset(result, SYMBOL_LIT("release"), release);
@@ -832,11 +825,7 @@ etc_uname(VALUE obj)
832
825
  rb_w32_conv_from_wchar(v.szCSDVersion, rb_utf8_encoding()));
833
826
  rb_hash_aset(result, SYMBOL_LIT("version"), version);
834
827
 
835
- # if defined _MSC_VER && _MSC_VER < 1300
836
- # define GET_COMPUTER_NAME(ptr, plen) GetComputerNameW(ptr, plen)
837
- # else
838
828
  # define GET_COMPUTER_NAME(ptr, plen) GetComputerNameExW(ComputerNameDnsFullyQualified, ptr, plen)
839
- # endif
840
829
  GET_COMPUTER_NAME(NULL, &len);
841
830
  buf = ALLOCV_N(WCHAR, vbuf, len);
842
831
  if (GET_COMPUTER_NAME(buf, &len)) {
@@ -851,6 +840,9 @@ etc_uname(VALUE obj)
851
840
  # endif
852
841
  # ifndef PROCESSOR_ARCHITECTURE_INTEL
853
842
  # define PROCESSOR_ARCHITECTURE_INTEL 0
843
+ # endif
844
+ # ifndef PROCESSOR_ARCHITECTURE_ARM64
845
+ # define PROCESSOR_ARCHITECTURE_ARM64 12
854
846
  # endif
855
847
  GetSystemInfo(&s);
856
848
  switch (s.wProcessorArchitecture) {
@@ -860,6 +852,9 @@ etc_uname(VALUE obj)
860
852
  case PROCESSOR_ARCHITECTURE_ARM:
861
853
  mach = "ARM";
862
854
  break;
855
+ case PROCESSOR_ARCHITECTURE_ARM64:
856
+ mach = "ARM64";
857
+ break;
863
858
  case PROCESSOR_ARCHITECTURE_INTEL:
864
859
  mach = "x86";
865
860
  break;
@@ -952,7 +947,7 @@ etc_confstr(VALUE obj, VALUE arg)
952
947
  int name;
953
948
  char localbuf[128], *buf = localbuf;
954
949
  size_t bufsize = sizeof(localbuf), ret;
955
- VALUE tmp;
950
+ VALUE tmp = 0, str;
956
951
 
957
952
  name = NUM2INT(arg);
958
953
 
@@ -967,11 +962,15 @@ etc_confstr(VALUE obj, VALUE arg)
967
962
  if (bufsize < ret)
968
963
  rb_bug("required buffer size for confstr() changed dynamically.");
969
964
  if (ret == 0) {
970
- if (errno == 0) /* no configuration-defined value */
965
+ int e = errno;
966
+ ALLOCV_END(tmp);
967
+ if (e == 0) /* no configuration-defined value */
971
968
  return Qnil;
972
- rb_sys_fail("confstr");
969
+ rb_syserr_fail(e, "confstr");
973
970
  }
974
- return rb_str_new_cstr(buf);
971
+ str = rb_str_new_cstr(buf);
972
+ ALLOCV_END(tmp);
973
+ return str;
975
974
  }
976
975
  #else
977
976
  #define etc_confstr rb_f_notimplement
@@ -1083,6 +1082,7 @@ etc_nprocessors_affin(void)
1083
1082
  * This method is implemented using:
1084
1083
  * - sched_getaffinity(): Linux
1085
1084
  * - sysconf(_SC_NPROCESSORS_ONLN): GNU/Linux, NetBSD, FreeBSD, OpenBSD, DragonFly BSD, OpenIndiana, Mac OS X, AIX
1085
+ * - GetActiveProcessorCount(ALL_PROCESSOR_GROUPS): Windows
1086
1086
  *
1087
1087
  * *Example:*
1088
1088
  *
@@ -1121,9 +1121,24 @@ etc_nprocessors(VALUE obj)
1121
1121
  rb_sys_fail("sysconf(_SC_NPROCESSORS_ONLN)");
1122
1122
  }
1123
1123
  #else
1124
- SYSTEM_INFO si;
1125
- GetSystemInfo(&si);
1126
- ret = (long)si.dwNumberOfProcessors;
1124
+ # ifndef ALL_PROCESSOR_GROUPS
1125
+ # define ALL_PROCESSOR_GROUPS 0xffff
1126
+ # endif
1127
+ /* GetSystemInfo() counts the current processor group only, and mingw-w64 declares GetActiveProcessorCount() only for _WIN32_WINNT >= 0x0601 */
1128
+ typedef DWORD (WINAPI *GetActiveProcessorCount_t)(WORD);
1129
+ GetActiveProcessorCount_t pGetActiveProcessorCount =
1130
+ (GetActiveProcessorCount_t)GetProcAddress(GetModuleHandleW(L"kernel32.dll"), "GetActiveProcessorCount");
1131
+ DWORD n = 0;
1132
+
1133
+ if (pGetActiveProcessorCount) {
1134
+ n = pGetActiveProcessorCount(ALL_PROCESSOR_GROUPS);
1135
+ }
1136
+ if (n == 0) {
1137
+ SYSTEM_INFO si;
1138
+ GetSystemInfo(&si);
1139
+ n = si.dwNumberOfProcessors;
1140
+ }
1141
+ ret = (long)n;
1127
1142
  #endif
1128
1143
  return LONG2NUM(ret);
1129
1144
  }
@@ -1163,14 +1178,26 @@ Init_etc(void)
1163
1178
  {
1164
1179
  VALUE mEtc;
1165
1180
 
1166
- #ifdef HAVE_RB_EXT_RACTOR_SAFE
1167
- RB_EXT_RACTOR_SAFE(true);
1168
- #endif
1169
1181
  mEtc = rb_define_module("Etc");
1170
1182
  /* The version */
1171
1183
  rb_define_const(mEtc, "VERSION", rb_str_new_cstr(RUBY_ETC_VERSION));
1172
1184
  init_constants(mEtc);
1173
1185
 
1186
+ /* Ractor-safe methods */
1187
+ #ifdef HAVE_RB_EXT_RACTOR_SAFE
1188
+ RB_EXT_RACTOR_SAFE(true);
1189
+ #endif
1190
+ rb_define_module_function(mEtc, "systmpdir", etc_systmpdir, 0);
1191
+ rb_define_module_function(mEtc, "uname", etc_uname, 0);
1192
+ rb_define_module_function(mEtc, "sysconf", etc_sysconf, 1);
1193
+ rb_define_module_function(mEtc, "confstr", etc_confstr, 1);
1194
+ rb_define_method(rb_cIO, "pathconf", io_pathconf, 1);
1195
+ rb_define_module_function(mEtc, "nprocessors", etc_nprocessors, 0);
1196
+
1197
+ /* Non-Ractor-safe methods, see https://bugs.ruby-lang.org/issues/21115 */
1198
+ #ifdef HAVE_RB_EXT_RACTOR_SAFE
1199
+ RB_EXT_RACTOR_SAFE(false);
1200
+ #endif
1174
1201
  rb_define_module_function(mEtc, "getlogin", etc_getlogin, 0);
1175
1202
 
1176
1203
  rb_define_module_function(mEtc, "getpwuid", etc_getpwuid, -1);
@@ -1186,13 +1213,9 @@ Init_etc(void)
1186
1213
  rb_define_module_function(mEtc, "setgrent", etc_setgrent, 0);
1187
1214
  rb_define_module_function(mEtc, "endgrent", etc_endgrent, 0);
1188
1215
  rb_define_module_function(mEtc, "getgrent", etc_getgrent, 0);
1216
+
1217
+ /* Uses RbConfig::CONFIG so does not work in a Ractor */
1189
1218
  rb_define_module_function(mEtc, "sysconfdir", etc_sysconfdir, 0);
1190
- rb_define_module_function(mEtc, "systmpdir", etc_systmpdir, 0);
1191
- rb_define_module_function(mEtc, "uname", etc_uname, 0);
1192
- rb_define_module_function(mEtc, "sysconf", etc_sysconf, 1);
1193
- rb_define_module_function(mEtc, "confstr", etc_confstr, 1);
1194
- rb_define_method(rb_cIO, "pathconf", io_pathconf, 1);
1195
- rb_define_module_function(mEtc, "nprocessors", etc_nprocessors, 0);
1196
1219
 
1197
1220
  sPasswd = rb_struct_define_under(mEtc, "Passwd",
1198
1221
  "name",
@@ -1303,4 +1326,8 @@ Init_etc(void)
1303
1326
  rb_extend_object(sGroup, rb_mEnumerable);
1304
1327
  rb_define_singleton_method(sGroup, "each", etc_each_group, 0);
1305
1328
  #endif
1329
+
1330
+ #if defined(HAVE_GETPWENT) || defined(HAVE_GETGRENT)
1331
+ (void)safe_setup_str;
1332
+ #endif
1306
1333
  }
data/ext/etc/extconf.rb CHANGED
@@ -7,11 +7,32 @@ headers = []
7
7
  headers << h
8
8
  end
9
9
  }
10
- have_library("sun", "getpwnam") # NIS (== YP) interface for IRIX 4
11
10
  have_func("uname((struct utsname *)NULL)", headers)
12
11
  have_func("getlogin")
13
- have_func("getpwent")
14
- have_func("getgrent")
12
+ if have_func("getpwent")
13
+ have_struct_member('struct passwd', 'pw_gecos', 'pwd.h')
14
+ have_struct_member('struct passwd', 'pw_change', 'pwd.h')
15
+ have_struct_member('struct passwd', 'pw_quota', 'pwd.h')
16
+ if have_struct_member('struct passwd', 'pw_age', 'pwd.h')
17
+ case what_type?('struct passwd', 'pw_age', 'pwd.h')
18
+ when "string"
19
+ f = "safe_setup_str"
20
+ when "long long"
21
+ f = "LL2NUM"
22
+ else
23
+ f = "INT2NUM"
24
+ end
25
+ $defs.push("-DPW_AGE2VAL="+f)
26
+ end
27
+ have_struct_member('struct passwd', 'pw_class', 'pwd.h')
28
+ have_struct_member('struct passwd', 'pw_comment', 'pwd.h') unless /cygwin/ === RUBY_PLATFORM
29
+ have_struct_member('struct passwd', 'pw_expire', 'pwd.h')
30
+ have_struct_member('struct passwd', 'pw_passwd', 'pwd.h')
31
+ end
32
+ if have_func("getgrent")
33
+ have_struct_member('struct group', 'gr_passwd', 'grp.h')
34
+ end
35
+
15
36
  if (sysconfdir = RbConfig::CONFIG["sysconfdir"] and
16
37
  !RbConfig.expand(sysconfdir.dup, "prefix"=>"", "DESTDIR"=>"").empty?)
17
38
  $defs.push("-DSYSCONFDIR=#{Shellwords.escape(sysconfdir.dump)}")
@@ -21,26 +42,6 @@ have_func("sysconf")
21
42
  have_func("confstr")
22
43
  have_func("fpathconf")
23
44
 
24
- have_struct_member('struct passwd', 'pw_gecos', 'pwd.h')
25
- have_struct_member('struct passwd', 'pw_change', 'pwd.h')
26
- have_struct_member('struct passwd', 'pw_quota', 'pwd.h')
27
- if have_struct_member('struct passwd', 'pw_age', 'pwd.h')
28
- case what_type?('struct passwd', 'pw_age', 'pwd.h')
29
- when "string"
30
- f = "safe_setup_str"
31
- when "long long"
32
- f = "LL2NUM"
33
- else
34
- f = "INT2NUM"
35
- end
36
- $defs.push("-DPW_AGE2VAL="+f)
37
- end
38
- have_struct_member('struct passwd', 'pw_class', 'pwd.h')
39
- have_struct_member('struct passwd', 'pw_comment', 'pwd.h') unless /cygwin/ === RUBY_PLATFORM
40
- have_struct_member('struct passwd', 'pw_expire', 'pwd.h')
41
- have_struct_member('struct passwd', 'pw_passwd', 'pwd.h')
42
- have_struct_member('struct group', 'gr_passwd', 'grp.h')
43
-
44
45
  # for https://github.com/ruby/etc
45
46
  srcdir = File.expand_path("..", __FILE__)
46
47
  constdefs = "#{srcdir}/constdefs.h"
@@ -58,7 +59,7 @@ end
58
59
  # TODO: remove when dropping 2.7 support, as exported since 3.0
59
60
  have_func('rb_deprecate_constant(Qnil, "None")')
60
61
 
61
- have_func("rb_io_descriptor")
62
+ have_func("rb_io_descriptor", "ruby/io.h")
62
63
 
63
64
  $distcleanfiles << "constdefs.h"
64
65
 
@@ -0,0 +1,65 @@
1
+ -*- coding: utf-8 -*-
2
+
3
+ commit 3402a9366fba4d2bf2f4ea20df16c95121876bc4
4
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
5
+ AuthorDate: 2017-12-13 14:31:00 +0900
6
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
7
+ CommitDate: 2017-12-13 14:31:00 +0900
8
+
9
+ Bump release date
10
+
11
+ commit be7fadb654340282ff71a500a47f88a0b4c47a1d
12
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
13
+ AuthorDate: 2017-12-13 14:30:42 +0900
14
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
15
+ CommitDate: 2017-12-13 14:30:42 +0900
16
+
17
+ Added badge of Travis
18
+
19
+ commit 97aca32b82f6cd8c309ae515e36d86c4d4822e4c
20
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
21
+ AuthorDate: 2017-12-13 14:23:26 +0900
22
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
23
+ CommitDate: 2017-12-13 14:23:26 +0900
24
+
25
+ prepare to release 1.0.0
26
+
27
+ commit 744646073bcd4e7c5b65ae5921cf4c1d5697e35e
28
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
29
+ AuthorDate: 2017-11-28 12:17:10 +0900
30
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
31
+ CommitDate: 2017-11-28 12:20:44 +0900
32
+
33
+ Pick commits from ruby core repository.
34
+
35
+ * https://github.com/ruby/ruby/commit/0f7fed9253
36
+ * https://github.com/ruby/ruby/commit/8fc8587e05
37
+ * https://github.com/ruby/ruby/commit/1333c0f0df
38
+ * https://github.com/ruby/ruby/commit/e4ff51b05a
39
+ * https://github.com/ruby/ruby/commit/1852b4a866
40
+ * https://github.com/ruby/ruby/commit/b5b2bd86f1
41
+ * https://github.com/ruby/ruby/commit/253fd5fe6b
42
+
43
+ commit 0e8f8547412d33a35752ef4272d78fc18cf3a5ed
44
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
45
+ AuthorDate: 2017-10-20 16:51:22 +0900
46
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
47
+ CommitDate: 2017-10-20 16:51:22 +0900
48
+
49
+ Update README with rdoc of Etc module
50
+
51
+ commit 86a04b45feed2bc88d44399e127ed675d5d0f41c
52
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
53
+ AuthorDate: 2017-09-13 14:32:17 +0900
54
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
55
+ CommitDate: 2017-09-13 14:32:17 +0900
56
+
57
+ make frozen
58
+
59
+ commit 91ce5d0039fe10d86b35a3c114fabb9a7ae86344
60
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
61
+ AuthorDate: 2017-07-18 14:38:26 +0900
62
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
63
+ CommitDate: 2017-07-18 14:38:26 +0900
64
+
65
+ fixed wrong license name
@@ -0,0 +1,63 @@
1
+ -*- coding: utf-8 -*-
2
+
3
+ commit 041c4a0cc91ce9140cc41641f4a16016349ecf30
4
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
5
+ AuthorDate: 2018-05-26 09:13:47 +0900
6
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
7
+ CommitDate: 2018-05-26 09:13:47 +0900
8
+
9
+ bump version to 1.0.1
10
+
11
+ commit 4a7571b310da6a40a337421412e2db6ad379d066
12
+ Author: k0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
13
+ AuthorDate: 2018-02-27 11:12:23 +0000
14
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
15
+ CommitDate: 2018-05-26 08:29:39 +0900
16
+
17
+ Refactor ERB version checking for keyword arguments
18
+
19
+ Improving code like r62590. See r62529 for details.
20
+
21
+ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
22
+
23
+ commit 5903c2ff093fc176a564053aa3b6a09e7ef7b5a3
24
+ Author: k0kubun <k0kubun@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
25
+ AuthorDate: 2018-02-22 13:28:25 +0000
26
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
27
+ CommitDate: 2018-05-26 08:29:15 +0900
28
+
29
+ erb.rb: deprecate safe_level of ERB.new
30
+
31
+ Also, as it's in the middle of the list of 4 arguments, 3rd and 4th arguments
32
+ (trim_mode, eoutvar) are changed to keyword arguments.
33
+ Old ways to specify arguments are deprecated and warned now.
34
+
35
+ bin/erb: deprecate -S option.
36
+
37
+ We'll remove all of deprecated ones at Ruby 2.7+.
38
+
39
+ enc/make_encmake.rb: stopped using deprecated interface
40
+ ext/etc/mkconstants.rb: ditto
41
+ ext/socket/mkconstants.rb: ditto
42
+ sample/ripper/ruby2html.rb: ditto
43
+ spec/ruby/library/erb/defmethod/def_erb_method_spec.rb: ditto
44
+ spec/ruby/library/erb/new_spec.rb: ditto
45
+ test/erb/test_erb.rb: ditto
46
+ test/erb/test_erb_command.rb: ditto
47
+ tool/generic_erb.rb: ditto
48
+ tool/ruby_vm/helpers/dumper.rb: ditto
49
+ tool/transcode-tblgen.rb: ditto
50
+ lib/rdoc/erbio.rb: ditto
51
+ lib/rdoc/generator/darkfish.rb: ditto
52
+
53
+ [Feature #14256]
54
+
55
+ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
56
+
57
+ commit 16aba3206fb5335638f40d0a3969bf93e73af64b
58
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
59
+ AuthorDate: 2018-01-05 09:23:48 +0900
60
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
61
+ CommitDate: 2018-01-05 09:23:48 +0900
62
+
63
+ Fixed installation error with standalone gem.
@@ -0,0 +1,143 @@
1
+ -*- coding: utf-8 -*-
2
+
3
+ commit 78987ce56a489cb7ee82595c8354469f712195ce
4
+ Author: Hiroshi SHIBATA <hsbt@ruby-lang.org>
5
+ AuthorDate: 2019-11-30 18:03:57 +0900
6
+ Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org>
7
+ CommitDate: 2019-11-30 18:03:57 +0900
8
+
9
+ Bump version to 1.1.0
10
+
11
+ commit b6a02c1193c0bfb89b71fdfe3fe9b282e61465cd
12
+ Author: Jeremy Evans <code@jeremyevans.net>
13
+ AuthorDate: 2019-10-18 12:10:03 -0700
14
+ Commit: Jeremy Evans <code@jeremyevans.net>
15
+ CommitDate: 2019-10-30 13:49:52 -0700
16
+
17
+ Remove taint support
18
+
19
+ Ruby 2.7 deprecates taint and it no longer has an effect.
20
+ The lack of taint support should not cause a problem in
21
+ previous Ruby versions.
22
+
23
+ Still untaint the tmpdir object on Ruby <2.7, as returning
24
+ a tainted string there could cause problems.
25
+
26
+ commit 5157aeaa08b60561a036d7c8269a514430cdd16f
27
+ Author: 卜部昌平 <shyouhei@ruby-lang.org>
28
+ AuthorDate: 2019-08-28 17:48:48 +0900
29
+ Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org>
30
+ CommitDate: 2019-10-26 06:55:50 +0900
31
+
32
+ drop-in type check for rb_define_module_function
33
+
34
+ We can check the function pointer passed to rb_define_module_function
35
+ like how we do so in rb_define_method. The difference is that this
36
+ changeset reveales lots of atiry mismatches.
37
+
38
+ commit 8c93da18680cd1421cb52cd9b15aeb2b593cdb02
39
+ Author: 卜部昌平 <shyouhei@ruby-lang.org>
40
+ AuthorDate: 2019-08-26 15:20:15 +0900
41
+ Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org>
42
+ CommitDate: 2019-10-26 06:55:33 +0900
43
+
44
+ rb_ensure now free from ANYARGS
45
+
46
+ After 5e86b005c0f2ef30df2f9906c7e2f3abefe286a2, I now think ANYARGS is
47
+ dangerous and should be extinct. This commit deletes ANYARGS from
48
+ rb_ensure, which also revealed many arity / type mismatches.
49
+
50
+ commit 941b2e47a5511bfcb306fe24c021e5cf2b5f8eed
51
+ Author: hsbt <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
52
+ AuthorDate: 2018-10-20 10:30:42 +0000
53
+ Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org>
54
+ CommitDate: 2019-10-26 06:55:15 +0900
55
+
56
+ Retry r65211.
57
+
58
+ * Maybe, RbConfig.ruby only provides after Ruby installation.
59
+
60
+ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
61
+
62
+ commit b344460f8fc13cb3c71780e997582df2431bccfb
63
+ Author: Samuel Williams <samuel.williams@oriontransfer.co.nz>
64
+ AuthorDate: 2019-06-19 21:06:57 +1200
65
+ Commit: Hiroshi SHIBATA <hsbt@ruby-lang.org>
66
+ CommitDate: 2019-07-12 10:39:00 +0900
67
+
68
+ Remove IA64 support.
69
+
70
+ commit e9a48c774672a1bb5de5905aa7b5ac2becf895c3
71
+ Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
72
+ AuthorDate: 2019-07-10 12:27:25 +0900
73
+ Commit: Nobuyoshi Nakada <nobu@ruby-lang.org>
74
+ CommitDate: 2019-07-10 12:27:25 +0900
75
+
76
+ Update binary versions
77
+
78
+ commit f622b5a6ae2939af0338b043aca90ffd335fa90d
79
+ Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
80
+ AuthorDate: 2019-07-10 10:51:24 +0900
81
+ Commit: Nobuyoshi Nakada <nobu@ruby-lang.org>
82
+ CommitDate: 2019-07-10 10:55:21 +0900
83
+
84
+ Make constdefs.h with rake
85
+
86
+ `RbConfig.ruby` is not runnable but the target platform binary
87
+ when cross-compiling in rake-compiler-dock.
88
+
89
+ commit e1674c18f5a0faf881b362363f428d139baef3b4
90
+ Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
91
+ AuthorDate: 2019-07-10 10:50:29 +0900
92
+ Commit: Nobuyoshi Nakada <nobu@ruby-lang.org>
93
+ CommitDate: 2019-07-10 10:51:01 +0900
94
+
95
+ Added build:mingw
96
+
97
+ commit 4f791590d95a410d4225b71f35b27d0f14dc2acd
98
+ Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
99
+ AuthorDate: 2019-07-10 10:44:10 +0900
100
+ Commit: Nobuyoshi Nakada <nobu@ruby-lang.org>
101
+ CommitDate: 2019-07-10 10:44:10 +0900
102
+
103
+ Added Etc::VERSION
104
+
105
+ commit 37bf414e7031e77eea82f0a72d461a6c09383797
106
+ Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
107
+ AuthorDate: 2019-07-10 10:42:45 +0900
108
+ Commit: Nobuyoshi Nakada <nobu@ruby-lang.org>
109
+ CommitDate: 2019-07-10 10:42:45 +0900
110
+
111
+ Unnecessary files for gem packages
112
+
113
+ commit 63da66202ff93060f6fc2fb92e257809d59661e5
114
+ Author: Nobuyoshi Nakada <nobu@ruby-lang.org>
115
+ AuthorDate: 2019-07-10 08:22:37 +0900
116
+ Commit: Nobuyoshi Nakada <nobu@ruby-lang.org>
117
+ CommitDate: 2019-07-10 08:22:37 +0900
118
+
119
+ Removed unused files
120
+
121
+ commit f1fad5e4ae6e5eadd4d7a9a9d9e8868f18acbef8
122
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
123
+ AuthorDate: 2018-10-20 19:26:59 +0900
124
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
125
+ CommitDate: 2018-10-20 19:26:59 +0900
126
+
127
+ Prefer to use File.exist?
128
+
129
+ commit 07ab6655d07c5b9cd5f115e5ebe449c90777b349
130
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
131
+ AuthorDate: 2018-10-20 19:26:00 +0900
132
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
133
+ CommitDate: 2018-10-20 19:26:00 +0900
134
+
135
+ Use `depend` file insted of dependency target file.
136
+
137
+ commit 5a9187a647db1a11588082e63607edcc975a9170
138
+ Author: SHIBATA Hiroshi <hsbt@ruby-lang.org>
139
+ AuthorDate: 2018-10-20 16:37:05 +0900
140
+ Commit: SHIBATA Hiroshi <hsbt@ruby-lang.org>
141
+ CommitDate: 2018-10-20 16:37:05 +0900
142
+
143
+ Added comments for constdefs.h.