Граф коммитов

1870 Коммитов

Автор SHA1 Сообщение Дата
Kevin Newton a213d21448 Move CRuby-specific prism files to top level 2023-09-28 09:44:16 -04:00
Kevin Newton 3d0a46796b Rename YARP symbols to prism 2023-09-27 13:57:38 -04:00
Kevin Newton 7e0971eb5d Update YARP build targets 2023-09-27 12:10:23 -04:00
Nobuyoshi Nakada 8bbaa81454
Clean also YARP build directory [ci skip] 2023-09-27 00:16:56 +09:00
Nobuyoshi Nakada 7e2775b057 Invoke the command when RUBY_BUGREPORT_PATH starts with `|` 2023-09-25 22:57:28 +09:00
Nobuyoshi Nakada 20bd19a9ad
Move YARP_BUILD_DIR to common.mk
It does not need to be an absolute path.
2023-09-21 18:18:27 +09:00
Nobuyoshi Nakada 2b41df2477 `.NOTPARALLEL` with prerequisites needs recent GNU Make
GNU Make prior to 4.4 just ignores the prerequisites, and runs
everything in serial.
2023-09-21 12:18:41 +09:00
Nobuyoshi Nakada bcb3247072
[Bug #19778] Pass additional include options to INCFLAGS in common.mk 2023-09-17 19:18:23 +09:00
Nobuyoshi Nakada e22086bb6a
Enable `.NOTPARALLEL` on `ripper_srcs`
And add special treats only for old GNU make.
2023-09-13 12:11:43 +09:00
Nobuyoshi Nakada b1f0d009cb
Use the keyword for output and omit default arguments [ci skip] 2023-09-11 12:23:57 +09:00
Jemma Issroff 3b815ed7da
Add yarp/yarp_compiler.c (#8042)
* Add yarp/yarp_compiler.c as stencil for compiling YARP

This commit adds yarp/yarp_compiler.c, and changes the sync script
to ensure that yarp/yarp_compiler.c will not get overwritten

* [Misc #119772] Create and expose RubyVM::InstructionSequence.compile_yarp

This commit creates the stencil for a compile_yarp function, which
we will continue to fill out. It allows us to check the output
of compiled YARP code against compiled code without using YARP.
2023-08-28 13:55:58 -07:00
Nobuyoshi Nakada 0c9d0684e1
YARP: generated files using from templates depend on config.yml 2023-08-28 09:51:55 +09:00
Kevin Newton 00ec8dedb1 Update deps 2023-08-25 18:20:51 -04:00
Kevin Newton 293959a745 Remove config.h from targets necessary for YARP 2023-08-25 18:20:51 -04:00
Kevin Newton 85c8e8b9bd
Fix VPATH for yarp/version.h 2023-08-25 15:53:01 -04:00
Kevin Newton a7c7cd11bc
Update sync script to handle yarp/version.h 2023-08-25 15:47:25 -04:00
Kevin Newton dd07b70253
Fix mutation visitor build for YARP templating 2023-08-25 15:33:14 -04:00
Peter Zhu bfb395c620 Implement weak references in the GC
[Feature #19783]

This commit adds support for weak references in the GC through the
function `rb_gc_mark_weak`. Unlike strong references, weak references
does not mark the object, but rather lets the GC know that an object
refers to another one. If the child object is freed, the pointer from
the parent object is overwritten with `Qundef`.

Co-Authored-By: Jean Boussier <byroot@ruby-lang.org>
2023-08-25 09:01:21 -04:00
Takashi Kokubun 6f1dfa7411
Resurrect srcs dependency for YARP templates (#8285) 2023-08-24 18:46:06 -07:00
Takashi Kokubun e89150b1d4
Render YARP templates into the build directory (#8266) 2023-08-22 21:56:51 -07:00
Takashi Kokubun 57dfd5c245 Revert "Fix tool/update-deps for YARP files"
This reverts commit 6fff5c5ba2.

Revert "Use $(top_srcdir) entries for mswin (#8244)"

This reverts commit e327bf32bd.

Revert "Update dependencies"

This reverts commit aba26a8804.

Revert "Use {$(VPATH)} for OpenBSD"

This reverts commit 2046e054bc.

---

None of those revisions actually worked for both mswin and OpenBSD at
the same time. I need more time to build something that works for both.
2023-08-18 01:12:41 -07:00
Takashi Kokubun 6fff5c5ba2 Fix tool/update-deps for YARP files 2023-08-18 01:07:05 -07:00
Takashi Kokubun aba26a8804 Update dependencies 2023-08-18 00:34:36 -07:00
Takashi Kokubun 2046e054bc Use {$(VPATH)} for OpenBSD
Scratch build on OpenBSD has been failing since 67b5f63e97.
`make; make` works though. (`make` alone doesn't work)

I have no idea what I'm doing, but I do know that this patch fixes
scratch build on an OpenBSD machine.

My best guess is that BSD make isn't capable of distinguishing foo.c vs
./foo.c in dependencies, and {$(VPATH)} becomes empty when it needs to be.
2023-08-18 00:20:11 -07:00
Takashi Kokubun 78e7fd7b49 Include YARP templated files in snapshots
Those files should be part of CRuby distributions.
2023-08-17 15:04:14 -07:00
Takashi Kokubun 72a16c61dc Move the dependency of node.rb and serialize.rb
to `main`.

This is what lib/ruby_vm/rjit/instruction.rb currently does. Letting
.time depend on those files was just a workaround.
2023-08-17 14:52:23 -07:00
Takashi Kokubun 67b5f63e97
Render YARP templates in the build process (#8228) 2023-08-17 14:39:04 -07:00
Takashi Kokubun 87f74a349e Update dependencies 2023-08-16 17:47:32 -07:00
Nobuyoshi Nakada 2a3acbc420
Fix test and precheck order for old GNU Make 2023-08-14 11:30:05 +09:00
Nobuyoshi Nakada efc9127790
Prefix `excludes` with a dot to prevent chkbuild from firing wrongly
Chkbuild runs for each directories just under `test` directory when
`test-all` failed.  `test/excludes` itself should not be a target.
2023-08-13 15:23:54 +09:00
Nobuyoshi Nakada 475241ee91
Group test-syntax-suggest and leaked-globals [ci skip] 2023-08-11 16:22:18 +09:00
Nobuyoshi Nakada 907560f5dc
Fix test-bundler dependencies 2023-08-11 15:23:48 +09:00
Nobuyoshi Nakada 8fbb79f49e
Fix order of test-syntax-suggest-prepare for old GNU Make 2023-08-11 14:47:20 +09:00
Nobuyoshi Nakada 5397fc315a
Remove duplicate prerequisite [ci skip] 2023-08-10 21:04:27 +09:00
Nobuyoshi Nakada 4ba348ec3e
Explicitly require rspec/expectations tentatively
Maybe only with load-relative, recent changes to bunder/setup.rb seem
affecting weirdly.  It fails to load rspec/expectations.rb inside
rspec-core.
2023-08-10 17:37:19 +09:00
Nobuyoshi Nakada bde55d09ed
Make PREPARE_SYNTAX_SUGGEST include TEST_RUNNABLE prefix
So that `make PREPARE_SYNTAX_SUGGEST= test-syntax-suggest` works.
2023-08-10 17:35:50 +09:00
Takashi Kokubun 38be9a9b72
Clean up OPT_STACK_CACHING (#8132) 2023-07-27 17:27:05 -07:00
Jemma Issroff 84b5274143
[ruby/yarp] Resync YARP (#8098) 2023-07-19 16:15:01 -04:00
Jean Boussier fa30b99c34 Implement Process.warmup
[Feature #18885]

For now, the optimizations performed are:

  - Run a major GC
  - Compact the heap
  - Promote all surviving objects to oldgen

Other optimizations may follow.
2023-07-17 11:20:15 +02:00
yui-knk 82cd70ef93 Use functions defined by parser_st.c to reduce dependency on st.c 2023-07-15 12:50:40 +09:00
Peter Zhu 1e7b67f733 [Feature #19730] Remove transient heap 2023-07-13 09:27:33 -04:00
Nobuyoshi Nakada d516910b61
Serially update only the ripper source, even with old GNU make 2023-07-10 16:36:03 +09:00
Benoit Daloze 9ee1877e4a Ensure the name given to Module#set_temporary_name is not a valid constant path
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2023-07-06 18:27:13 +02:00
Jemma Issroff 9614a61379 Fixed build scripts for YARP 2023-07-05 16:58:55 -04:00
Nobuyoshi Nakada fa6e14c45d
[DOC] Stop downloading Unicode data only for unicode_properties.rdoc 2023-07-02 13:00:44 +09:00
Janosch Müller 08b3fb1152
[Bug #19728] Auto-generate unicode property docs
https://bugs.ruby-lang.org/issues/19728
2023-07-01 23:22:17 +09:00
Jemma Issroff 1272865a8e
Fix broken wiki links (#8002)
Since [Misc #19679] migrated the wiki, these links should be updated
to their new locations.
2023-06-29 17:00:40 -04:00
Nobuyoshi Nakada 3cfcd3d166
Ripper sources are generated at once 2023-06-29 23:08:08 +09:00
Nobuyoshi Nakada c89f519170
More dependencies for ripper 2023-06-29 18:47:56 +09:00
Nobuyoshi Nakada c94b5f121d De-duplicate parse_st.c code from st.c 2023-06-24 19:17:37 +09:00