Commit graph

8776 commits

Author SHA1 Message Date
Stan Lo
629bad4aba Update PTY.spawn's document
Passing the optional env hash to PTY.spawn has been supported for years, but it's never documented.
More info: https://bugs.ruby-lang.org/issues/12312
2022-04-13 15:43:28 -04:00
Nobuyoshi Nakada
697eed63e8 [ruby/psych] Update autoconf files bundled with yaml-2.5
e28f17ac18
2022-04-07 22:38:39 +09:00
Nobuyoshi Nakada
d7afaf21f2 Move the target directory of bundled gems like as rubygems 2022-04-07 09:47:10 +09:00
Nobuyoshi Nakada
db3d111c1d Bundled gems are expanded under .bundle/gems now 2022-04-07 09:47:10 +09:00
Hiroshi SHIBATA
5e7ebc7e6e
Ignore yaml source 2022-04-05 14:31:54 +09:00
Hiroshi SHIBATA
839577d833
Removed mswin patch for zlib-1.2.11 2022-04-05 14:30:47 +09:00
Alan Wu
18044f4fbb [ruby/psych] Improve libyaml source downloading error messages
People trying to build CRuby by following the instructions in its
[README] have been running into [errors] due to missing `libyaml`
on their system. Let's try to present a better error message when
it happens.

[README]: fb5aa31e2d (how-to-compile-and-install)
[errors]: https://github.com/ruby/psych/issues/552

20a633028e
2022-04-05 08:56:21 +09:00
Nobuyoshi Nakada
57377e5d53 [ruby/psych] Propagate CC to libyaml
It is needed for cross-compiling to set properly.  Just
`--target`/`--host`/`--build` seems insufficient on some
platforms.

2d00c0c203
2022-04-04 16:06:16 +09:00
Nobuyoshi Nakada
07acd6006c [ruby/zlib] Use z_size_t version functions
1ce6625fff
2022-04-02 19:34:05 +09:00
Nobuyoshi Nakada
4ee71097a0 [ruby/zlib] Mask checksums to lower 32bits on also IL32 platforms
e1ead85113
2022-04-02 19:23:59 +09:00
Nobuyoshi Nakada
1cbdedec89 [ruby/zlib] Mask checksums to lower 32bits
Upper bits affect the result of `crc32` in zlib 1.2.12.

9ab6d04af1
2022-04-02 17:01:33 +09:00
Nobuyoshi Nakada
e680e63e7e [ruby/psych] Output libyaml configure log
c2e3c8579c
2022-04-01 11:48:50 +09:00
Nobuyoshi Nakada
af2ab0dd1c [ruby/psych] Make a static library from PIC object files
On some platforms, PIC and non-PIC code are incompatible and the
latter cannot be used for shared objects.

5652e32733
2022-03-31 21:34:48 +09:00
Nobuyoshi Nakada
217cea7812 [ruby/psych] Remove unknown vendor for cross-compiling tool prefix
a4ffa06646
2022-03-31 12:18:28 +09:00
Nobuyoshi Nakada
75efbb98af [ruby/psych] Propagate the host configuration to libyaml
0e37e19707
2022-03-30 23:08:13 +09:00
Nobuyoshi Nakada
71aa43c725 [ruby/psych] Configure libyaml from the original source
54a9ba9d10
2022-03-30 11:31:04 +09:00
Nobuyoshi Nakada
c67088dbae [ruby/psych] Try bundled libyaml source if pre-installed is unavailable
f78e1dba89
2022-03-29 20:57:58 +09:00
Hiroshi SHIBATA
8e2a2ba0f9 Merge psych master
c386ecb0c2
2022-03-29 19:07:12 +09:00
Yusuke Endoh
ca85f16a7d ext/psych/extconf.rb: Fail when libyaml is unavailable
WHen libyaml is not installed, make fails with the following cryptic
message:

```
gmake[2]: Entering directory '/home/chkbuild/chkbuild-crossruby/tmp/build/20220325T045825Z/ruby/ext/psych'
gmake[2]: *** No rule to make target 'yaml/yaml.h', needed by 'psych.o'.  Stop.
gmake[2]: Leaving directory '/home/chkbuild/chkbuild-crossruby/tmp/build/20220325T045825Z/ruby/ext/psych'
```

I think it should give up building psych with a clear message.
2022-03-27 19:34:07 +09:00
Hiroshi SHIBATA
4acc757d04 [ruby/psych] Added condition for macOS homebrew
a876de5a82

Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
2022-03-26 07:49:52 +09:00
Hiroshi SHIBATA
7ee26740e4 [ruby/readline-ext] Removed the duplicated dependencies
324d324427
2022-03-25 20:27:58 +09:00
Hiroshi SHIBATA
0292a34c9c Removed libyaml object files from depends 2022-03-25 09:53:07 +09:00
Hiroshi SHIBATA
bfdceab313 Try to remove yaml sources from depend 2022-03-25 09:53:07 +09:00
Hiroshi SHIBATA
8e3fbf9432 Merge psych master: Removed the bundled libyaml 2022-03-25 09:53:07 +09:00
Kazuhiro NISHIYAMA
d06f787e9f
Fix broken links of rdoc
- `www.ruby-lang.org` links to `./www.ruby-lang.org`
- `cgi['field_name']` links to `./'field_name'`
2022-03-17 10:11:38 +09:00
Nobuyoshi Nakada
6d8f396f37 Suppress warnings by OpenSSL 3 2022-03-16 20:49:00 +09:00
xtkoba
63b1633f86 [ruby/win32ole] Get rid of potential undefined behavior
See https://bugs.llvm.org/show_bug.cgi?id=50236

019ec2b3cb
2022-03-15 08:33:40 +09:00
Nobuyoshi Nakada
aa347cbe65 [ruby/win32ole] Rename toplevel WIN32OLE_* classes
bc7deb6a6a
2022-03-15 08:20:47 +09:00
Charles Oliver Nutter
bd18623307 [ruby/io-wait] Update version to 0.2.2.pre1 for testing
12e26f574e
2022-03-10 22:58:31 +09:00
Peter Zhu
fb724a887a Show embed status of array when len is 0 in objspace dump 2022-03-01 10:55:53 -05:00
Nobuyoshi Nakada
0db5ee5195 [ruby/date] Suppress declaration-after-statement warnings
60bd16009d
2022-02-25 20:01:06 +09:00
Nobuyoshi Nakada
bb22bc76b0 [ruby/date] Deprecate the unintentional ability to parse Symbol
d57818f3b3
2022-02-25 19:57:50 +09:00
Nobuyoshi Nakada
b5c2a0840f [ruby/date] Anchor at beginning of numbers
https://hackerone.com/reports/1254844

2f7814cc22
2022-02-25 19:52:31 +09:00
Nobuyoshi Nakada
1758eade57 [ruby/date] Anchor at beginning of numbers
https://hackerone.com/reports/1254844

7ffe25e458
2022-02-25 19:52:31 +09:00
Nobuyoshi Nakada
d54a3df2e5 [ruby/date] Separate era from preceding word
017149e53e
2022-02-25 19:52:30 +09:00
Nobuyoshi Nakada
c8cddac45c [ruby/date] Use possessive match
Reduce backtracks at the same character classes arounding an
optional pattern.

1fd15f7c49
2022-02-25 19:52:29 +09:00
Nobuyoshi Nakada
9f59a2bd87 [ruby/date] Extracted common leading pattern
ec86dbbdc1
2022-02-25 19:52:28 +09:00
John Hawthorn
764e4fa850 Never call kind_of with klass=0 2022-02-23 19:57:42 -08:00
Peter Zhu
68847794bf Update ext/-test-/dln/empty/depend
Dependencies was not updated in
06dab12717.
2022-02-22 16:49:20 -05:00
Peter Zhu
06dab12717 Include ruby.h in empty.c to have ABI version
I forgot to include this as part of
638fd8774b.
2022-02-22 12:00:15 -05:00
Peter Zhu
2d5ecd60a5 [Feature #18249] Update dependencies 2022-02-22 09:55:21 -05:00
Peter Zhu
638fd8774b [Feature #18249] Include ruby.h in extensions to have ABI version
All shared libraries must have `include/ruby/internal/abi.h` to include
the ABI version. Including `ruby.h` will guarantee that.
2022-02-22 09:55:21 -05:00
Peter Zhu
3df16924b4 [Feature #18249] Implement ABI checking
Header file include/ruby/internal/abi.h contains RUBY_ABI_VERSION which
is the ABI version. This value should be bumped whenever an ABI
incompatible change is introduced.

When loading dynamic libraries, Ruby will compare its own
`ruby_abi_version` and the `ruby_abi_version` of the loaded library. If
these two values don't match it will raise a `LoadError`. This feature
can also be turned off by setting the environment variable
`RUBY_RUBY_ABI_CHECK=0`.

This feature will prevent cases where previously installed native gems
fail in unexpected ways due to incompatibility of changes in header
files. This will force the developer to recompile their gems to use the
same header files as the built Ruby.

In Ruby, the ABI version is exposed through
`RbConfig::CONFIG["ruby_abi_version"]`.
2022-02-22 09:55:21 -05:00
Mau Magnaguagno
50098f4b61 [ruby/zlib] [DOC] Fix typo in Zlib.adler32_combine
5e8f0b4164
2022-02-22 18:01:53 +09:00
John Hawthorn
05b1944c53 objspace: Hide identhash containing internal objs
Inside ObjectSpace.reachable_objects_from we keep an internal identhash
in order to de-duplicate reachable objects when wrapping them as
InternalObject. Previously this hash was not hidden, making it possible
to leak references to those internal objects to Ruby if using
ObjectSpace.each_object.

This commit solves this by hiding the hash. To simplify collection of
values, we instead now just use the hash as a set of visited objects,
and collect an Array (not hidden) of values to be returned.
2022-02-09 17:32:43 -08:00
Matt Valentine-House
9fab2c1a1a Add the size pool slot size to the output of ObjectSpace.dump/dump_all 2022-02-03 15:07:35 -05:00
Nobuyoshi Nakada
f6894711a4 [ruby/io-wait] Exclude rake files from packages
7be58cd7f4
2022-02-01 20:04:15 +09:00
Jean Boussier
ddb9d60f7d
[ruby/io-wait] Make the gem a noop on Rubies older than 2.6
Ref: https://github.com/mikel/mail/pull/1439

Some gems depend on io-wait, but still support older rubies,
so they have to chose between droping support or not listing io-wait.

But io-wait could act a a noop on older rubies.

75fcb74c32
2022-02-01 14:11:16 +09:00
Nobuyoshi Nakada
fc4fbeef28 [ruby/io-wait] bump up to 0.2.2
e15a2486b2
2022-02-01 13:22:03 +09:00
Koichi Sasada
cc8064ba2e Do not need to print to stderr 2022-01-26 10:05:10 +09:00