Commit graph

7441 commits

Author SHA1 Message Date
knu
ad4c17c021 * ext/digest/sha2/extconf.rb: fix so that they build from any
directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-14 19:05:37 +00:00
knu
6a581e6317 * ext/digest/defs.h: Define NO_UINT64_T instead of emitting an
error to fail.

* ext/digest/sha2/extconf.rb: Do not exit on error, and utilize
  NO_UINT64_T to detect if the system has a 64bit integer type.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1684 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-14 17:04:00 +00:00
knu
5b63fc556f * ext/digest/sha2/extconf.rb: do not create Makefile when no 64bit
integer type is detected.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-14 12:15:21 +00:00
ttate
56f454f77d bug fix for Window#{keypad,keypad=}
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1677 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-13 02:13:06 +00:00
ttate
9eded5fa13 new methods and constants for using the mouse, character attributes,
colors and key codes.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-12 23:42:44 +00:00
matz
d94dbed46d * socket.c: wrap UNIX code by ifdef HAVE_SYS_UN_H.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1670 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-06 06:10:10 +00:00
matz
f33a61c28d * string.c (rb_str_lstrip_bang): new method.
* string.c (rb_str_rstrip_bang): new method.

* string.c (rb_str_associate): should consider STR_ASSOC too.

* eval.c (rb_undefined): do not recurse if method_missing is
  undefined.

* process.c (proc_waitpid): now all arguments are optional.

* process.c (Init_process): waitpid is now alias to wait.

* process.c (Init_process): waitpid2 is now alias to wait2.

* process.c (rb_waitpid): made public.

* ext/pty/pty.c (pty_getpty): avoid disturbing SIGCHLD using
  thread and rb_waitpid.

* process.c (proc_getpgrp): now takes no argument on all
  platforms.

* process.c (proc_setpgrp): ditto.

* ext/socket/socket.c (sock_s_pack_sockaddr_in): added
  Socket::pack_sockaddr_in(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_un): added
  Socket::pack_sockaddr_un(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_in): added
  Socket::unpack_sockaddr_in(). [new]

* ext/socket/socket.c (sock_s_pack_sockaddr_un): added
  Socket::unpack_sockaddr_un(). [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-08-06 03:05:23 +00:00
nobu
4b7c92fa90 * process.c (last_status_set): nothing returned, should be void.
* ext/socket/socket.c (load_addr_info): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-31 08:04:13 +00:00
knu
e54216b740 * ext/extmk.rb.in, lib/mkmf.rb: dig the target subdirectory for
lib/* files properly in case of create_makefile("dir/name").


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-24 10:29:17 +00:00
knu
9e214f30c4 * ext/extmk.rb.in, lib/mkmf.rb: introduce a couple of new make
variables: CLEANFILES and DISTCLEANFILES.  They'd typically be
  defined in a file "depend".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-22 12:24:12 +00:00
knu
eaddc4a94b Rename *.jp to *.ja, since jp is a region code and ja is a language
code.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1629 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-19 05:44:26 +00:00
matz
f35971afdf * regex.c (NUM_FAILURE_ITEMS): was confusing NUM_REG_ITEMS and
NUM_NONREG_ITEMS, which have happened to be same value.

* class.c (rb_class_new): subclass check moved to this function.

* class.c (rb_class_boot): check less version of rb_class_new().

* eval.c (proc_invoke): should preserve iter status for embedded
  frame in the block.

* file.c (rb_file_s_expand_path): may overrun buffer on stack.

* string.c (rb_str_insert): forgot to call rb_str_modify().


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-18 05:56:05 +00:00
usa
9078b69592 * ext/extmk.rb.in: modify RM macro because command.com/cmd.exe don't
recognize single quotation as quote character.

* lib/mkmf.rb: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-17 02:13:13 +00:00
knu
f4b516777b * ext/digest/*/extconf.rb: fix so that they build from any
directory.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-14 03:29:50 +00:00
knu
76d7dae26a Import the "digest" module and the submodules, from the Rough Ruby
project.

  ext/digest:
    This module provides the module Digest and the abstract class
    Digest::Base.

  ext/digest/md5 (which obsoletes ext/md5):
    This module provides the class Digest::MD5 which implements the
    MD5 Message-Digest Algorithm.

  ext/digest/rmd160:
    This module provides the class Digest::RMD160 which implements the
    RIPEMD-160 cryptographic hash function.

  ext/digest/sha1 (which obsoletes ext/sha1):
    This module provides the class Digest::SHA1 which implements the
    SHA-1 Secure Hash Algorithm.

  ext/digest/sha2:
    This module provides the classes Digest::SHA256, Digest::SHA384
    and Digest::SHA512 which implement the SHA-256, SHA-384 and
    SHA-512 Secure Hash Algorithms, respectively.

  lib/md5.rb, lib/sha1.rb:
    These files are provided for backward compatibility.

All these classes have the common API, which previously ext/md5 and
ext/sha1 modules provided.  While the new API keeps 100% backward
compatibility, it has been enriched with several utility methods.

Read digest.txt for further details.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-13 20:06:14 +00:00
knu
6ecd6fe37b * ext/extmk.rb.in: support multi-level ext/ directories.
(e.g. you can have ext/foo, ext/foo/bar and ext/foo/baz)

* ext/.cvsignore: let cvs ignore extinit.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-13 18:02:10 +00:00
knu
c0a9b71aeb * lib/mkmf.rb: use File::split to split a target into a prefix and
a module name.  This also works around a just found bug of
  String#rindex.

* ext/extmk.rb.in: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-13 14:19:28 +00:00
knu
4439ee97cb Let cvs ignore extmk.log.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-12 12:02:34 +00:00
eban
18efb38b21 * ext/socket/socket.c (ruby_connect): workaround for the setup of
Cygwin socket(EALREADY).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-12 06:16:49 +00:00
eban
4d134d47d6 * ext/extmk.rb.in: modify RM macro.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-09 07:54:49 +00:00
knu
eab46f5fc6 Detypo and reword a bit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-05 15:47:03 +00:00
matz
ffe1cf575e * error.c (exc_exception): clone the receiver exception instead of
creating brand new exception object of the receiver.

* eval.c (rb_eval_string_wrap): extend new ruby_top_self, not
  original self.

* eval.c (rb_eval_cmd): respect ruby_wrapper if set.

* eval.c (eval): do not update ruby_class unless scope is not
  provided.

* eval.c (eval): preserve wrapper information.

* eval.c (proc_invoke): ditto.

* eval.c (block_pass): ditto.

* parse.y (void_expr): too much warnings for void context
  (e.g. foo[1] that can be mere Proc call).

* error.c (rb_name_error): new function to raise NameError with
  name attribute set.

* eval.c (rb_f_missing): set name and args in the exception
  object. [new]

* error.c (name_name): NameError#name - new method.

* error.c (nometh_args): NoMethodError#args - new method.

* lex.c (rb_reserved_word): lex_state after tRESCUE should be
  EXPR_MID.

* gc.c (add_heap): allocation size of the heap unit is doubled for
  each allocation.

* dir.c (isdelim): space, tab, and newline are no longer
  delimiters for glob patterns.

* eval.c (svalue_to_avalue): new conversion scheme between single
  value and array values.

* eval.c (avalue_to_svalue): ditto.

* eval.c (rb_eval): REXPAND now uses avalue_to_svalue(), return
  and yield too.

* eval.c (rb_yield_0): use avalue_to_svalue().

* eval.c (proc_invoke): Proc#call gives avaules, whereas
  Proc#yield gives mvalues.

* eval.c (bmcall): convert given value (svalue) to avalue.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-07-02 08:46:28 +00:00
eban
10e80b2402 * ext/tcltklib/stubs.c (ruby_tcltk_stubs): fix a typo in comment
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-25 01:52:59 +00:00
knu
c0648ecc85 * ext/readline/readline.c (readline_event): a non-void function
should return a value.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-23 09:30:42 +00:00
eban
3aa7e4f741 * ext/socket/socket.c (ruby_connect): typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-22 15:49:08 +00:00
eban
2cf4fce053 * ext/socket/socket.c (ruby_connect): workaround for the setup of
Cygwin socket.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-22 14:44:44 +00:00
matz
def42c9a0c * eval.c (rb_yield_0): no mvalue_to_svalue conversion here.
* eval.c (massign): takes svalue, convert it to mvalue inside.

* eval.c (rb_eval): parameters for yield/return are always
  svalues now.

* eval.c (svalue_to_mvalue): more strict conversion.

* eval.c (mvalue_to_svalue): ditto.

* st.c (new_size): prime hash size enabled.

* ext/socket/socket.c (Init_socket): SO_* constants added.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-22 09:12:24 +00:00
knu
0c92a85e6a * ext/readline/readline.c: add new methods:
Readline::completion_append_character and
  Readline::completion_append_character=.k


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-19 09:21:38 +00:00
usa
a5c0e5a382 * ext/extmk.rb.in: Use -F and -T for mswin32 because cl.exe doesn't support -o officially and cl.exe considers that *.cc and *.cxx are OBJs.
* lib/mkmf.rb: ditto.

* win32/Makefile.sub: Use del instead of rm. All these changes are derived from Nobuyoshi Nakada's patch. Thanks.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1519 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-09 07:41:44 +00:00
eban
21524a3fc0 * ext/extmk.rb.in, lib/mkmf.rb (xsystem): write log file.
print command line.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-05 04:54:52 +00:00
eban
ac376af4f4 * ext/etc/extconf.rb: use egrep_cpp.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-05 04:43:17 +00:00
matz
353650e6b4 * parse.y (yylex): fixed 'print CGI::bar() {}, "\n"' syntax
breakage, adding new lex_state status.  sigh. [new]

* file.c (rb_file_s_unlink): should not allow if $SAFE >= 2.

* range.c (Init_Range): define "to_ary".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-01 06:47:32 +00:00
eban
e8fb16c70f * configure.in: use waitpid on mingw32.
* ext/dbm/extconf.rb: include <ndbm.h>, not <gdbm.h>.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-06-01 02:25:28 +00:00
eban
ac41cd6844 * mkconfig.rb, ext/configsub.rb: VERSION -> RUBY_VERSION.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-31 04:40:37 +00:00
matz
4cd1cd7201 * ruby.c (proc_options): unexpected SecurityError happens when -T4.
* regex.c (re_compile_pattern): * \1 .. \9 should be
  backreferences always.

* regex.c (re_match): backreferences corresponding to
  unclosed/unmatched parentheses should fail always.

* string.c (rb_str_cat): use rb_str_buf_cat() if possible. [new]

* string.c (rb_str_append): ditto.

* string.c (rb_str_buf_cat): remove unnecessary check (type,
  taint, modify) to gain performance.

* string.c (rb_str_buf_append): ditto.

* string.c (rb_str_buf_finish): removed.

* string.c (rb_str_buf_new): buffering string function. [new]

* string.c (rb_str_buf_append): ditto.

* string.c (rb_str_buf_cat): ditto.

* string.c (rb_str_buf_finish): ditto.

* time.c (make_time_t): local time adjustment revised.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-30 09:10:30 +00:00
eban
032825472b * configure.in: remove unnecessary AC_CANONICAL_BUILD
* defins.h: #define HAVE_SETITIMER on Cygwin(bug fixed).
* ruby.c: use relative path from LIBRUBY_SO.
* ruby.c: don't use -mwin32 option on Cygwin.
* cygwin/GNUmakefile.in: ditto.
* ext/sdbm/_sdbm: ditto.
* ext/tcltklib/extconf.rb: ditto.
* ext/tcltklib/stubs.c: ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-28 16:07:34 +00:00
usa
e83171c4c4 * ext/extconf.rb.in: make the priority of the make rule of .c higher than .C .
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-28 13:25:34 +00:00
knu
4e7c81084e * ext/sha1/sha1-ruby.c (sha1_hexdigest): fix buffer overflow. The
buffer for a SHA-1 hexdigest needs to be 41 bytes in length.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-24 20:41:51 +00:00
knu
d6e985ad0b * ext/sha1/sha1-ruby.c (md5i_new): separate initialize() from
new().

* ext/md5/md5init.c (sha1_new): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-24 16:00:54 +00:00
knu
dcd6223c64 * ext/dbm/extconf.rb: fix support for *BSD and set $CFLAGS
properly.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-24 15:55:40 +00:00
matz
0fb0d42369 * eval.c (rb_yield_0): need argument adjustment for C defined
blocks too.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-24 06:10:36 +00:00
matz
2287c526be * eval.c (rb_yield_0): need argument adjustment for C defined
blocks too.

* ext/dbm/extconf.rb: header search added. [new]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-24 05:28:15 +00:00
knu
4a14c9ceb9 * ext/extmk.rb.in (xsystem): backout the previous fix which was
bogus.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 20:37:25 +00:00
knu
0eea0bf571 * lib/mkmf.rb (xsystem): make a temporary fix to get $(...) macros
properly expanded on a command execution.

* ext/extmk.rb.in (xsystem): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 20:23:08 +00:00
knu
98e79eccdf * ext/sha1/sha1-ruby.c (sha1_new): get rid of an unneeded
rb_obj_call_init() call.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 16:13:34 +00:00
knu
7a140a3cb0 * ext/sha1/sha1.txt, ext/sha1/sha1.txt.jp: fix typos.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 16:05:49 +00:00
knu
ddb81a78f3 Add .cvsignore to let CVS ignore Makefile which is automatically
generated.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 07:13:18 +00:00
eban
929f31409e * ext/sha1/MANIFEST: Added.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-17 05:28:39 +00:00
knu
43f76f99b7 * ext/md5/md5.txt.jp, ext/sha1/sha1.txt.jp: s/SuperClass/Superclass/.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-16 22:28:40 +00:00
knu
23423d7d03 * ext/Setup.dj, ext/Setup.emx, ext/Setup.nt, ext/Setup.x68:
compile sha1 in as well as md5.

* ext/Setup: put sha1 in a comment.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2001-05-16 22:25:02 +00:00